What this snippet does
Conditional types that continuously wrap themselves without a base case cause the compiler to give up and throw an instantiation error.
Expected output
Compile Error: Type instantiation is excessively deep and possibly infinite.
Why practise typing this
Typing type system limits code builds muscle memory for the symbols and indentation TypeScript uses most, which prose-based typing tests never cover. DevType measures your words per minute and accuracy on this snippet and tracks the individual characters you mistype, so later lessons can target them.
More TypeScript practice
- Contrasting any, unknown, and neverType System Limits · advanced
- Using never to filter union typesType System Limits · advanced
- Assigning values to a never variableType System Limits · advanced
- Deeply nested type instantiationType System Limits · advanced
- Exceeding tuple recursion limitsType System Limits · advanced
- Defining a circular type referenceType System Limits · advanced