Skip to content

Commit 307ff6c

Browse files
bakkotrbuckton
andauthored
add types for iterator helpers proposal (#58222)
Co-authored-by: Ron Buckton <[email protected]>
1 parent 7f978c7 commit 307ff6c

File tree

94 files changed

+1897
-506
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

94 files changed

+1897
-506
lines changed

src/compiler/commandLineParser.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -236,6 +236,7 @@ const libEntries: [string, string][] = [
236236
["esnext.array", "lib.esnext.array.d.ts"],
237237
["esnext.regexp", "lib.esnext.regexp.d.ts"],
238238
["esnext.string", "lib.esnext.string.d.ts"],
239+
["esnext.iterator", "lib.esnext.iterator.d.ts"],
239240
["decorators", "lib.decorators.d.ts"],
240241
["decorators.legacy", "lib.decorators.legacy.d.ts"],
241242
];

src/lib/dom.iterable.d.ts

Lines changed: 23 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -1,30 +1,30 @@
11
/// <reference lib="dom" />
22

33
interface DOMTokenList {
4-
[Symbol.iterator](): IterableIterator<string, BuiltinIteratorReturn>;
4+
[Symbol.iterator](): BuiltinIterator<string, BuiltinIteratorReturn>;
55
}
66

77
interface Headers {
8-
[Symbol.iterator](): IterableIterator<[string, string], BuiltinIteratorReturn>;
8+
[Symbol.iterator](): BuiltinIterator<[string, string], BuiltinIteratorReturn>;
99
/**
1010
* Returns an iterator allowing to go through all key/value pairs contained in this object.
1111
*/
12-
entries(): IterableIterator<[string, string], BuiltinIteratorReturn>;
12+
entries(): BuiltinIterator<[string, string], BuiltinIteratorReturn>;
1313
/**
1414
* Returns an iterator allowing to go through all keys f the key/value pairs contained in this object.
1515
*/
16-
keys(): IterableIterator<string, BuiltinIteratorReturn>;
16+
keys(): BuiltinIterator<string, BuiltinIteratorReturn>;
1717
/**
1818
* Returns an iterator allowing to go through all values of the key/value pairs contained in this object.
1919
*/
20-
values(): IterableIterator<string, BuiltinIteratorReturn>;
20+
values(): BuiltinIterator<string, BuiltinIteratorReturn>;
2121
}
2222

2323
interface NodeList {
2424
/**
2525
* Returns an array of key, value pairs for every entry in the list
2626
*/
27-
entries(): IterableIterator<[number, Node], BuiltinIteratorReturn>;
27+
entries(): BuiltinIterator<[number, Node], BuiltinIteratorReturn>;
2828
/**
2929
* Performs the specified action for each node in an list.
3030
* @param callbackfn A function that accepts up to three arguments. forEach calls the callbackfn function one time for each element in the list.
@@ -34,21 +34,21 @@ interface NodeList {
3434
/**
3535
* Returns an list of keys in the list
3636
*/
37-
keys(): IterableIterator<number, BuiltinIteratorReturn>;
37+
keys(): BuiltinIterator<number, BuiltinIteratorReturn>;
3838

3939
/**
4040
* Returns an list of values in the list
4141
*/
42-
values(): IterableIterator<Node, BuiltinIteratorReturn>;
42+
values(): BuiltinIterator<Node, BuiltinIteratorReturn>;
4343

44-
[Symbol.iterator](): IterableIterator<Node, BuiltinIteratorReturn>;
44+
[Symbol.iterator](): BuiltinIterator<Node, BuiltinIteratorReturn>;
4545
}
4646

4747
interface NodeListOf<TNode extends Node> {
4848
/**
4949
* Returns an array of key, value pairs for every entry in the list
5050
*/
51-
entries(): IterableIterator<[number, TNode], BuiltinIteratorReturn>;
51+
entries(): BuiltinIterator<[number, TNode], BuiltinIteratorReturn>;
5252

5353
/**
5454
* Performs the specified action for each node in an list.
@@ -59,55 +59,55 @@ interface NodeListOf<TNode extends Node> {
5959
/**
6060
* Returns an list of keys in the list
6161
*/
62-
keys(): IterableIterator<number, BuiltinIteratorReturn>;
62+
keys(): BuiltinIterator<number, BuiltinIteratorReturn>;
6363
/**
6464
* Returns an list of values in the list
6565
*/
66-
values(): IterableIterator<TNode, BuiltinIteratorReturn>;
66+
values(): BuiltinIterator<TNode, BuiltinIteratorReturn>;
6767

68-
[Symbol.iterator](): IterableIterator<TNode, BuiltinIteratorReturn>;
68+
[Symbol.iterator](): BuiltinIterator<TNode, BuiltinIteratorReturn>;
6969
}
7070

7171
interface HTMLCollectionBase {
72-
[Symbol.iterator](): IterableIterator<Element, BuiltinIteratorReturn>;
72+
[Symbol.iterator](): BuiltinIterator<Element, BuiltinIteratorReturn>;
7373
}
7474

7575
interface HTMLCollectionOf<T extends Element> {
76-
[Symbol.iterator](): IterableIterator<T, BuiltinIteratorReturn>;
76+
[Symbol.iterator](): BuiltinIterator<T, BuiltinIteratorReturn>;
7777
}
7878

7979
interface FormData {
8080
/**
8181
* Returns an array of key, value pairs for every entry in the list
8282
*/
83-
entries(): IterableIterator<[string, string | File], BuiltinIteratorReturn>;
83+
entries(): BuiltinIterator<[string, string | File], BuiltinIteratorReturn>;
8484
/**
8585
* Returns a list of keys in the list
8686
*/
87-
keys(): IterableIterator<string, BuiltinIteratorReturn>;
87+
keys(): BuiltinIterator<string, BuiltinIteratorReturn>;
8888
/**
8989
* Returns a list of values in the list
9090
*/
91-
values(): IterableIterator<string | File, BuiltinIteratorReturn>;
91+
values(): BuiltinIterator<string | File, BuiltinIteratorReturn>;
9292

93-
[Symbol.iterator](): IterableIterator<string | File, BuiltinIteratorReturn>;
93+
[Symbol.iterator](): BuiltinIterator<string | File, BuiltinIteratorReturn>;
9494
}
9595

9696
interface URLSearchParams {
9797
/**
9898
* Returns an array of key, value pairs for every entry in the search params
9999
*/
100-
entries(): IterableIterator<[string, string], BuiltinIteratorReturn>;
100+
entries(): BuiltinIterator<[string, string], BuiltinIteratorReturn>;
101101
/**
102102
* Returns a list of keys in the search params
103103
*/
104-
keys(): IterableIterator<string, BuiltinIteratorReturn>;
104+
keys(): BuiltinIterator<string, BuiltinIteratorReturn>;
105105
/**
106106
* Returns a list of values in the search params
107107
*/
108-
values(): IterableIterator<string, BuiltinIteratorReturn>;
108+
values(): BuiltinIterator<string, BuiltinIteratorReturn>;
109109
/**
110110
* iterate over key/value pairs
111111
*/
112-
[Symbol.iterator](): IterableIterator<[string, string], BuiltinIteratorReturn>;
112+
[Symbol.iterator](): BuiltinIterator<[string, string], BuiltinIteratorReturn>;
113113
}

src/lib/es2015.generator.d.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
/// <reference lib="es2015.iterable" />
22

3-
interface Generator<T = unknown, TReturn = any, TNext = any> extends Iterator<T, TReturn, TNext> {
3+
interface Generator<T = unknown, TReturn = any, TNext = any> extends BuiltinIterator<T, TReturn, TNext> {
44
// NOTE: 'next' is defined using a tuple to ensure we report the correct assignability errors in all places.
55
next(...[value]: [] | [TNext]): IteratorResult<T, TReturn>;
66
return(value: TReturn): IteratorResult<T, TReturn>;

0 commit comments

Comments
 (0)