TypeScript

Default types not applying when explicit type is provided in TypeScript

TypeScriptGenericsDefault Generic Typesintermediate

What this snippet does

Explicitly providing a type argument overrides the default, breaking type inference from the arguments.

Expected output

Compile Error: Argument of type 'string' is not assignable to parameter of type 'number'.

Why practise typing this

Typing generics 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

Browse all TypeScript snippets →