Gostaria de deixar aqui uma observação/dica sobre a exibição da mensagem de erro quando a idade do usuário não é 18 ou maior.
No meu caso, quando informei no validador a interface "Validator", automaticamente o vs code importou os métodos "validate" e "registerOnValidatorChange".
O método "registerOnValidatorChange" estava dessa forma e impediu a exibição da mensagem do erro referente a idade:
registerOnValidatorChange?(fn: () => void): void {
throw new Error("Method not implemented.");
}
Removi o método e a mensagem passou a ser mostrada normalmente.