TypeScript

Missing required properties in structural typing in TypeScript

TypeScriptType CompatibilityStructural Typingintermediate

What this snippet does

Despite structural flexibility, target types must have all required properties present in the source object.

Expected output

Compile Error: Property 'age' is missing in type '{ name: string; }'.

Why practise typing this

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