TypeScript

Failing to remove keys due to incorrect conditional logic in TypeScript

TypeScriptType ManipulationRemoving Keys via Mapped Typesadvanced

What this snippet does

If the conditional logic doesn't evaluate to 'never' for the targeted key, the key remains in the resulting type.

Expected output

Compile Error: Object literal may only specify known properties, and 'a' does not exist in type 'Pick<{ a: 1; b: 2; }, "b">'.

Why practise typing this

Typing type manipulation 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 →