Conditional types choose between two output types based on a type-level check: CheckType extends ExtendsType ? TrueType : FalseType.

Conditional types choose between two output types based on a type-level check: CheckType extends ExtendsType ? TrueType : FalseType.