TypeScript

Losing literal types by annotating instead of satisfies in TypeScript

TypeScriptModern TypeScriptSatisfies Operatorintermediate

What this snippet does

Direct annotation widens the inferred type of 'a' to the union, whereas satisfies would preserve it as the literal 1.

Expected output

number

Why practise typing this

Typing modern typescript 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 →