TypeScript

Passing wrong types to async generator next() in TypeScript

TypeScriptAsync IterationAsyncGeneratorsadvanced

What this snippet does

The third type parameter of AsyncGenerator dictates what type can be passed back into next(); passing 42 to a string TNext causes an error.

Expected output

Compile Error: Argument of type 'number' is not assignable to parameter of type 'string | PromiseLike<string>'.

Why practise typing this

Typing async iteration 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 →