Conditional Types TypeScript 2.8 introduces conditional types which add the ability to express non-uniform type mappings. A conditional type selects one of two possible types based on a condition expressed as a type relationship test: The type above means when T is assignable to U the type is X, otherwise the type is Y. A conditional type T extends U ? X : Y is either resolved to X or Y, or deferr