Задать вопрос
@historydev
long long long long long .... int

Как убрать null так, чтобы получить в initial type исходное поле с удалённым null?

type NonNull<T> = T extends infer O ? {[k in keyof O]: O[k] extends null ? never : O[k]} : never;

type X = NonNull<{email: string | null}>; // Initial type: {email: string | null extends null ? never : (string | null)}

// Ожидаю {email: string}
  • Вопрос задан
  • 48 просмотров
Подписаться 1 Простой Комментировать
Помогут разобраться в теме Все курсы
  • Skillbox
    Курс по TypeScript
    3 месяца
    Далее
  • ProductStar
    Основы TypeScript
    6 недель
    Далее
  • Merion Academy
    Онлайн-курс по TypeScript
    2 месяца
    Далее
Пригласить эксперта
Ответы на вопрос 1
Alexandroppolus
@Alexandroppolus
кодир
type NonNull<T> = {[K in keyof T]: Exclude<T[K], null>};


type X = NonNull<{email: string | null}>;
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы