TypeScript/tests/cases/conformance/generators/generatorReturnContextualType.ts

22 lines
438 B
TypeScript
Raw Normal View History

// @target: esnext
// @strict: true
// #35995
function* f1(): Generator<any, { x: 'x' }, any> {
return { x: 'x' };
}
async function* f2(): AsyncGenerator<any, { x: 'x' }, any> {
return { x: 'x' };
}
async function* f3(): AsyncGenerator<any, { x: 'x' }, any> {
return Promise.resolve({ x: 'x' });
}
async function* f4(): AsyncGenerator<any, { x: 'x' }, any> {
const ret = { x: 'x' };
return Promise.resolve(ret); // Error
}