Conditional type выбирает тип по условию совместимости: T extends U ? X : Y; это вычисление типов, а не runtime if.
Что такое conditional types в TypeScript?
Conditional type выбирает тип по условию совместимости: T extends U ? X : Y; это вычисление типов, а не runtime if.
Короткий ответ
Что ответить на собеседовании
Подробный разбор
Ответ с пояснениями
Conditional type выбирает тип по условию совместимости: T extends U ? X : Y; это вычисление типов, а не runtime if.
Например, type Element<T> = T extends (infer E)[] ? E : T извлекает тип элемента массива. Условие с «голым» type parameter распределяется по union; обёртка в кортежи может отключить такое распределение.
Источник: www.typescriptlang.org.