Я допускаю, что возвращаемое значение для валидатора выглядит немного странно, но в документах есть вся необходимая информация: https://angular.io/api/forms/ValidatorFn
Функция, которая получает элемент управления и синхронно возвращаеткарта ошибок валидации, если есть, в противном случае - ноль.
По определению функция валидатора возвращает ноль, если ошибки нет.Иначе, он возвращает объект, где ошибка определяется ключом.
Это именно то, что говорит подпись этого метода:
(control: AbstractControl): { [key: string]: boolean } | null
Эта функция валидатора принимает входные данные типа абстрактного управления и возвращает ЛИБО объект, где ключ является строкой, азначение является логическим ИЛИ null.