Skip to content

Update declaration of ts.Iterator to be compatible with ES2015 IteratorResult type #31214

Description

TypeScript Version: 3.5.0-dev.20190502

Search Terms:

Code

I'm trying to use the API changes of #31101, but I run into assignability issues.

import*astsfrom'typescript';returnts.getParsedCommandLineOfConfigFile('foo',{},undefined!,newMap<string,ts.ExtendedConfigCacheEntry>());

Expected behavior:

No type error.

Actual behavior:

Argument of type 'Map<string, ExtendedConfigCacheEntry>' is not assignable to parameter of type 'Map<ExtendedConfigCacheEntry>'.
Types of property 'keys' are incompatible.
Type '() => IterableIterator<string>' is not assignable to type '() => Iterator<string>'.
Type 'IterableIterator<string>' is not assignable to type 'Iterator<string>'.
Types of property 'next' are incompatible.
Type '(value?: any) => IteratorResult<string>' is not assignable to type '() => { value: never; done: true; } | { value: string; done: false; }'.
Type 'IteratorResult<string>' is not assignable to type '{ value: never; done: true; } | { value: string; done: false; }'.
Type 'IteratorResult<string>' is not assignable to type '{ value: string; done: false; }'.
Types of property 'done' are incompatible.
Type 'boolean' is not assignable to type 'false'.

Metadata

Metadata

Labels

BugA bug in TypeScriptDomain: lib.d.tsThe issue relates to the different libraries shipped with TypeScript

Type

No type

Projects

No projects

Relationships

None yet

Development

No branches or pull requests

Issue actions