source: trip-planner-front/node_modules/typescript/lib/lib.es2015.iterable.d.ts@ ceaed42

Last change on this file since ceaed42 was 6a3a178, checked in by Ema <ema_spirova@…>, 3 years ago

initial commit

  • Property mode set to 100644
File size: 14.8 KB
Line 
1/*! *****************************************************************************
2Copyright (c) Microsoft Corporation. All rights reserved.
3Licensed under the Apache License, Version 2.0 (the "License"); you may not use
4this file except in compliance with the License. You may obtain a copy of the
5License at http://www.apache.org/licenses/LICENSE-2.0
6
7THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
8KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
9WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
10MERCHANTABLITY OR NON-INFRINGEMENT.
11
12See the Apache Version 2.0 License for specific language governing permissions
13and limitations under the License.
14***************************************************************************** */
15
16
17
18/// <reference no-default-lib="true"/>
19
20
21/// <reference lib="es2015.symbol" />
22
23interface SymbolConstructor {
24 /**
25 * A method that returns the default iterator for an object. Called by the semantics of the
26 * for-of statement.
27 */
28 readonly iterator: unique symbol;
29}
30
31interface IteratorYieldResult<TYield> {
32 done?: false;
33 value: TYield;
34}
35
36interface IteratorReturnResult<TReturn> {
37 done: true;
38 value: TReturn;
39}
40
41type IteratorResult<T, TReturn = any> = IteratorYieldResult<T> | IteratorReturnResult<TReturn>;
42
43interface Iterator<T, TReturn = any, TNext = undefined> {
44 // NOTE: 'next' is defined using a tuple to ensure we report the correct assignability errors in all places.
45 next(...args: [] | [TNext]): IteratorResult<T, TReturn>;
46 return?(value?: TReturn): IteratorResult<T, TReturn>;
47 throw?(e?: any): IteratorResult<T, TReturn>;
48}
49
50interface Iterable<T> {
51 [Symbol.iterator](): Iterator<T>;
52}
53
54interface IterableIterator<T> extends Iterator<T> {
55 [Symbol.iterator](): IterableIterator<T>;
56}
57
58interface Array<T> {
59 /** Iterator */
60 [Symbol.iterator](): IterableIterator<T>;
61
62 /**
63 * Returns an iterable of key, value pairs for every entry in the array
64 */
65 entries(): IterableIterator<[number, T]>;
66
67 /**
68 * Returns an iterable of keys in the array
69 */
70 keys(): IterableIterator<number>;
71
72 /**
73 * Returns an iterable of values in the array
74 */
75 values(): IterableIterator<T>;
76}
77
78interface ArrayConstructor {
79 /**
80 * Creates an array from an iterable object.
81 * @param iterable An iterable object to convert to an array.
82 */
83 from<T>(iterable: Iterable<T> | ArrayLike<T>): T[];
84
85 /**
86 * Creates an array from an iterable object.
87 * @param iterable An iterable object to convert to an array.
88 * @param mapfn A mapping function to call on every element of the array.
89 * @param thisArg Value of 'this' used to invoke the mapfn.
90 */
91 from<T, U>(iterable: Iterable<T> | ArrayLike<T>, mapfn: (v: T, k: number) => U, thisArg?: any): U[];
92}
93
94interface ReadonlyArray<T> {
95 /** Iterator of values in the array. */
96 [Symbol.iterator](): IterableIterator<T>;
97
98 /**
99 * Returns an iterable of key, value pairs for every entry in the array
100 */
101 entries(): IterableIterator<[number, T]>;
102
103 /**
104 * Returns an iterable of keys in the array
105 */
106 keys(): IterableIterator<number>;
107
108 /**
109 * Returns an iterable of values in the array
110 */
111 values(): IterableIterator<T>;
112}
113
114interface IArguments {
115 /** Iterator */
116 [Symbol.iterator](): IterableIterator<any>;
117}
118
119interface Map<K, V> {
120 /** Returns an iterable of entries in the map. */
121 [Symbol.iterator](): IterableIterator<[K, V]>;
122
123 /**
124 * Returns an iterable of key, value pairs for every entry in the map.
125 */
126 entries(): IterableIterator<[K, V]>;
127
128 /**
129 * Returns an iterable of keys in the map
130 */
131 keys(): IterableIterator<K>;
132
133 /**
134 * Returns an iterable of values in the map
135 */
136 values(): IterableIterator<V>;
137}
138
139interface ReadonlyMap<K, V> {
140 /** Returns an iterable of entries in the map. */
141 [Symbol.iterator](): IterableIterator<[K, V]>;
142
143 /**
144 * Returns an iterable of key, value pairs for every entry in the map.
145 */
146 entries(): IterableIterator<[K, V]>;
147
148 /**
149 * Returns an iterable of keys in the map
150 */
151 keys(): IterableIterator<K>;
152
153 /**
154 * Returns an iterable of values in the map
155 */
156 values(): IterableIterator<V>;
157}
158
159interface MapConstructor {
160 new <K, V>(iterable: Iterable<readonly [K, V]>): Map<K, V>;
161}
162
163interface WeakMap<K extends object, V> { }
164
165interface WeakMapConstructor {
166 new <K extends object, V>(iterable: Iterable<[K, V]>): WeakMap<K, V>;
167}
168
169interface Set<T> {
170 /** Iterates over values in the set. */
171 [Symbol.iterator](): IterableIterator<T>;
172 /**
173 * Returns an iterable of [v,v] pairs for every value `v` in the set.
174 */
175 entries(): IterableIterator<[T, T]>;
176 /**
177 * Despite its name, returns an iterable of the values in the set.
178 */
179 keys(): IterableIterator<T>;
180
181 /**
182 * Returns an iterable of values in the set.
183 */
184 values(): IterableIterator<T>;
185}
186
187interface ReadonlySet<T> {
188 /** Iterates over values in the set. */
189 [Symbol.iterator](): IterableIterator<T>;
190
191 /**
192 * Returns an iterable of [v,v] pairs for every value `v` in the set.
193 */
194 entries(): IterableIterator<[T, T]>;
195
196 /**
197 * Despite its name, returns an iterable of the values in the set.
198 */
199 keys(): IterableIterator<T>;
200
201 /**
202 * Returns an iterable of values in the set.
203 */
204 values(): IterableIterator<T>;
205}
206
207interface SetConstructor {
208 new <T>(iterable?: Iterable<T> | null): Set<T>;
209}
210
211interface WeakSet<T extends object> { }
212
213interface WeakSetConstructor {
214 new <T extends object = object>(iterable: Iterable<T>): WeakSet<T>;
215}
216
217interface Promise<T> { }
218
219interface PromiseConstructor {
220 /**
221 * Creates a Promise that is resolved with an array of results when all of the provided Promises
222 * resolve, or rejected when any Promise is rejected.
223 * @param values An iterable of Promises.
224 * @returns A new Promise.
225 */
226 all<T>(values: Iterable<T | PromiseLike<T>>): Promise<T[]>;
227
228 /**
229 * Creates a Promise that is resolved or rejected when any of the provided Promises are resolved
230 * or rejected.
231 * @param values An iterable of Promises.
232 * @returns A new Promise.
233 */
234 race<T>(values: Iterable<T>): Promise<T extends PromiseLike<infer U> ? U : T>;
235
236 /**
237 * Creates a Promise that is resolved or rejected when any of the provided Promises are resolved
238 * or rejected.
239 * @param values An iterable of Promises.
240 * @returns A new Promise.
241 */
242 race<T>(values: Iterable<T | PromiseLike<T>>): Promise<T>;
243}
244
245interface String {
246 /** Iterator */
247 [Symbol.iterator](): IterableIterator<string>;
248}
249
250interface Int8Array {
251 [Symbol.iterator](): IterableIterator<number>;
252 /**
253 * Returns an array of key, value pairs for every entry in the array
254 */
255 entries(): IterableIterator<[number, number]>;
256 /**
257 * Returns an list of keys in the array
258 */
259 keys(): IterableIterator<number>;
260 /**
261 * Returns an list of values in the array
262 */
263 values(): IterableIterator<number>;
264}
265
266interface Int8ArrayConstructor {
267 new (elements: Iterable<number>): Int8Array;
268
269 /**
270 * Creates an array from an array-like or iterable object.
271 * @param arrayLike An array-like or iterable object to convert to an array.
272 * @param mapfn A mapping function to call on every element of the array.
273 * @param thisArg Value of 'this' used to invoke the mapfn.
274 */
275 from(arrayLike: Iterable<number>, mapfn?: (v: number, k: number) => number, thisArg?: any): Int8Array;
276}
277
278interface Uint8Array {
279 [Symbol.iterator](): IterableIterator<number>;
280 /**
281 * Returns an array of key, value pairs for every entry in the array
282 */
283 entries(): IterableIterator<[number, number]>;
284 /**
285 * Returns an list of keys in the array
286 */
287 keys(): IterableIterator<number>;
288 /**
289 * Returns an list of values in the array
290 */
291 values(): IterableIterator<number>;
292}
293
294interface Uint8ArrayConstructor {
295 new (elements: Iterable<number>): Uint8Array;
296
297 /**
298 * Creates an array from an array-like or iterable object.
299 * @param arrayLike An array-like or iterable object to convert to an array.
300 * @param mapfn A mapping function to call on every element of the array.
301 * @param thisArg Value of 'this' used to invoke the mapfn.
302 */
303 from(arrayLike: Iterable<number>, mapfn?: (v: number, k: number) => number, thisArg?: any): Uint8Array;
304}
305
306interface Uint8ClampedArray {
307 [Symbol.iterator](): IterableIterator<number>;
308 /**
309 * Returns an array of key, value pairs for every entry in the array
310 */
311 entries(): IterableIterator<[number, number]>;
312
313 /**
314 * Returns an list of keys in the array
315 */
316 keys(): IterableIterator<number>;
317
318 /**
319 * Returns an list of values in the array
320 */
321 values(): IterableIterator<number>;
322}
323
324interface Uint8ClampedArrayConstructor {
325 new (elements: Iterable<number>): Uint8ClampedArray;
326
327
328 /**
329 * Creates an array from an array-like or iterable object.
330 * @param arrayLike An array-like or iterable object to convert to an array.
331 * @param mapfn A mapping function to call on every element of the array.
332 * @param thisArg Value of 'this' used to invoke the mapfn.
333 */
334 from(arrayLike: Iterable<number>, mapfn?: (v: number, k: number) => number, thisArg?: any): Uint8ClampedArray;
335}
336
337interface Int16Array {
338 [Symbol.iterator](): IterableIterator<number>;
339 /**
340 * Returns an array of key, value pairs for every entry in the array
341 */
342 entries(): IterableIterator<[number, number]>;
343
344 /**
345 * Returns an list of keys in the array
346 */
347 keys(): IterableIterator<number>;
348
349 /**
350 * Returns an list of values in the array
351 */
352 values(): IterableIterator<number>;
353}
354
355interface Int16ArrayConstructor {
356 new (elements: Iterable<number>): Int16Array;
357
358 /**
359 * Creates an array from an array-like or iterable object.
360 * @param arrayLike An array-like or iterable object to convert to an array.
361 * @param mapfn A mapping function to call on every element of the array.
362 * @param thisArg Value of 'this' used to invoke the mapfn.
363 */
364 from(arrayLike: Iterable<number>, mapfn?: (v: number, k: number) => number, thisArg?: any): Int16Array;
365}
366
367interface Uint16Array {
368 [Symbol.iterator](): IterableIterator<number>;
369 /**
370 * Returns an array of key, value pairs for every entry in the array
371 */
372 entries(): IterableIterator<[number, number]>;
373 /**
374 * Returns an list of keys in the array
375 */
376 keys(): IterableIterator<number>;
377 /**
378 * Returns an list of values in the array
379 */
380 values(): IterableIterator<number>;
381}
382
383interface Uint16ArrayConstructor {
384 new (elements: Iterable<number>): Uint16Array;
385
386 /**
387 * Creates an array from an array-like or iterable object.
388 * @param arrayLike An array-like or iterable object to convert to an array.
389 * @param mapfn A mapping function to call on every element of the array.
390 * @param thisArg Value of 'this' used to invoke the mapfn.
391 */
392 from(arrayLike: Iterable<number>, mapfn?: (v: number, k: number) => number, thisArg?: any): Uint16Array;
393}
394
395interface Int32Array {
396 [Symbol.iterator](): IterableIterator<number>;
397 /**
398 * Returns an array of key, value pairs for every entry in the array
399 */
400 entries(): IterableIterator<[number, number]>;
401 /**
402 * Returns an list of keys in the array
403 */
404 keys(): IterableIterator<number>;
405 /**
406 * Returns an list of values in the array
407 */
408 values(): IterableIterator<number>;
409}
410
411interface Int32ArrayConstructor {
412 new (elements: Iterable<number>): Int32Array;
413
414 /**
415 * Creates an array from an array-like or iterable object.
416 * @param arrayLike An array-like or iterable object to convert to an array.
417 * @param mapfn A mapping function to call on every element of the array.
418 * @param thisArg Value of 'this' used to invoke the mapfn.
419 */
420 from(arrayLike: Iterable<number>, mapfn?: (v: number, k: number) => number, thisArg?: any): Int32Array;
421}
422
423interface Uint32Array {
424 [Symbol.iterator](): IterableIterator<number>;
425 /**
426 * Returns an array of key, value pairs for every entry in the array
427 */
428 entries(): IterableIterator<[number, number]>;
429 /**
430 * Returns an list of keys in the array
431 */
432 keys(): IterableIterator<number>;
433 /**
434 * Returns an list of values in the array
435 */
436 values(): IterableIterator<number>;
437}
438
439interface Uint32ArrayConstructor {
440 new (elements: Iterable<number>): Uint32Array;
441
442 /**
443 * Creates an array from an array-like or iterable object.
444 * @param arrayLike An array-like or iterable object to convert to an array.
445 * @param mapfn A mapping function to call on every element of the array.
446 * @param thisArg Value of 'this' used to invoke the mapfn.
447 */
448 from(arrayLike: Iterable<number>, mapfn?: (v: number, k: number) => number, thisArg?: any): Uint32Array;
449}
450
451interface Float32Array {
452 [Symbol.iterator](): IterableIterator<number>;
453 /**
454 * Returns an array of key, value pairs for every entry in the array
455 */
456 entries(): IterableIterator<[number, number]>;
457 /**
458 * Returns an list of keys in the array
459 */
460 keys(): IterableIterator<number>;
461 /**
462 * Returns an list of values in the array
463 */
464 values(): IterableIterator<number>;
465}
466
467interface Float32ArrayConstructor {
468 new (elements: Iterable<number>): Float32Array;
469
470 /**
471 * Creates an array from an array-like or iterable object.
472 * @param arrayLike An array-like or iterable object to convert to an array.
473 * @param mapfn A mapping function to call on every element of the array.
474 * @param thisArg Value of 'this' used to invoke the mapfn.
475 */
476 from(arrayLike: Iterable<number>, mapfn?: (v: number, k: number) => number, thisArg?: any): Float32Array;
477}
478
479interface Float64Array {
480 [Symbol.iterator](): IterableIterator<number>;
481 /**
482 * Returns an array of key, value pairs for every entry in the array
483 */
484 entries(): IterableIterator<[number, number]>;
485 /**
486 * Returns an list of keys in the array
487 */
488 keys(): IterableIterator<number>;
489 /**
490 * Returns an list of values in the array
491 */
492 values(): IterableIterator<number>;
493}
494
495interface Float64ArrayConstructor {
496 new (elements: Iterable<number>): Float64Array;
497
498 /**
499 * Creates an array from an array-like or iterable object.
500 * @param arrayLike An array-like or iterable object to convert to an array.
501 * @param mapfn A mapping function to call on every element of the array.
502 * @param thisArg Value of 'this' used to invoke the mapfn.
503 */
504 from(arrayLike: Iterable<number>, mapfn?: (v: number, k: number) => number, thisArg?: any): Float64Array;
505}
Note: See TracBrowser for help on using the repository browser.