1+ /*! *****************************************************************************
2+ Copyright (c) Microsoft Corporation. All rights reserved.
3+ Licensed under the Apache License, Version 2.0 (the "License"); you may not use
4+ this file except in compliance with the License. You may obtain a copy of the
5+ License at http://www.apache.org/licenses/LICENSE-2.0
6+
7+ THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
8+ KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
9+ WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
10+ MERCHANTABLITY OR NON-INFRINGEMENT.
11+
12+ See the Apache Version 2.0 License for specific language governing permissions
13+ and limitations under the License.
14+ ***************************************************************************** */
15+
16+ interface IteratorYieldResult < TYield > {
17+ done ?: false ;
18+ value : TYield ;
19+ }
20+
21+ interface IteratorReturnResult < TReturn > {
22+ done : true ;
23+ value : TReturn ;
24+ }
25+
26+ type IteratorResult < T , TReturn = any > = IteratorYieldResult < T > | IteratorReturnResult < TReturn > ;
27+
28+ interface Iterator < T , TReturn = any , TNext = undefined > {
29+ next ( ...args : [ ] | [ TNext ] ) : IteratorResult < T , TReturn > ;
30+ return ?( value ?: TReturn ) : IteratorResult < T , TReturn > ;
31+ throw ?( e ?: any ) : IteratorResult < T , TReturn > ;
32+ }
33+
34+ interface Iterable < T > {
35+ [ Symbol . iterator ] ( ) : Iterator < T > ;
36+ }
37+
38+ interface IterableIterator < T > extends Iterator < T > {
39+ [ Symbol . iterator ] ( ) : IterableIterator < T > ;
40+ }
41+
42+ interface ArrayLike < T > {
43+ readonly length : number ;
44+ readonly [ n : number ] : T ;
45+ }
46+
47+ interface Array < T > {
48+ length : number ;
49+ toString ( ) : string ;
50+ toLocaleString ( ) : string ;
51+ pop ( ) : T | undefined ;
52+ push ( ...items : T [ ] ) : number ;
53+ concat ( ...items : ConcatArray < T > [ ] ) : T [ ] ;
54+ concat ( ...items : ( T | ConcatArray < T > ) [ ] ) : T [ ] ;
55+ join ( separator ?: string ) : string ;
56+ reverse ( ) : T [ ] ;
57+ shift ( ) : T | undefined ;
58+ slice ( start ?: number , end ?: number ) : T [ ] ;
59+ sort ( compareFn ?: ( a : T , b : T ) => number ) : this;
60+ splice ( start : number , deleteCount ?: number ) : T [ ] ;
61+ splice ( start : number , deleteCount : number , ...items : T [ ] ) : T [ ] ;
62+ unshift ( ...items : T [ ] ) : number ;
63+ indexOf ( searchElement : T , fromIndex ?: number ) : number ;
64+ lastIndexOf ( searchElement : T , fromIndex ?: number ) : number ;
65+ every < S extends T > ( predicate : ( value : T , index : number , array : T [ ] ) => value is S , thisArg ?: any ) : this is S [ ] ;
66+ every ( predicate : ( value : T , index : number , array : T [ ] ) => unknown , thisArg ?: any ) : boolean ;
67+ some ( predicate : ( value : T , index : number , array : T [ ] ) => unknown , thisArg ?: any ) : boolean ;
68+ forEach ( callbackfn : ( value : T , index : number , array : T [ ] ) => void , thisArg ?: any ) : void ;
69+ map < U > ( callbackfn : ( value : T , index : number , array : T [ ] ) => U , thisArg ?: any ) : U [ ] ;
70+ filter < S extends T > ( predicate : ( value : T , index : number , array : T [ ] ) => value is S , thisArg ?: any ) : S [ ] ;
71+ filter ( predicate : ( value : T , index : number , array : T [ ] ) => unknown , thisArg ?: any ) : T [ ] ;
72+ reduce ( callbackfn : ( previousValue : T , currentValue : T , currentIndex : number , array : T [ ] ) => T ) : T ;
73+ reduce ( callbackfn : ( previousValue : T , currentValue : T , currentIndex : number , array : T [ ] ) => T , initialValue : T ) : T ;
74+ reduce < U > ( callbackfn : ( previousValue : U , currentValue : T , currentIndex : number , array : T [ ] ) => U , initialValue : U ) : U ;
75+ reduceRight ( callbackfn : ( previousValue : T , currentValue : T , currentIndex : number , array : T [ ] ) => T ) : T ;
76+ reduceRight ( callbackfn : ( previousValue : T , currentValue : T , currentIndex : number , array : T [ ] ) => T , initialValue : T ) : T ;
77+ reduceRight < U > ( callbackfn : ( previousValue : U , currentValue : T , currentIndex : number , array : T [ ] ) => U , initialValue : U ) : U ;
78+ [ n : number ] : T ;
79+
80+ find < S extends T > ( predicate : ( this : void , value : T , index : number , obj : T [ ] ) => value is S , thisArg ?: any ) : S | undefined ;
81+ find ( predicate : ( value : T , index : number , obj : T [ ] ) => unknown , thisArg ?: any ) : T | undefined ;
82+ findIndex ( predicate : ( value : T , index : number , obj : T [ ] ) => unknown , thisArg ?: any ) : number ;
83+ fill ( value : T , start ?: number , end ?: number ) : this;
84+ copyWithin ( target : number , start : number , end ?: number ) : this;
85+
86+ [ Symbol . iterator ] ( ) : IterableIterator < T > ;
87+ entries ( ) : IterableIterator < [ number , T ] > ;
88+ keys ( ) : IterableIterator < number > ;
89+ values ( ) : IterableIterator < T > ;
90+ }
91+
92+ interface ArrayConstructor {
93+ new ( arrayLength ?: number ) : any [ ] ;
94+ new < T > ( arrayLength : number ) : T [ ] ;
95+ new < T > ( ...items : T [ ] ) : T [ ] ;
96+ ( arrayLength ?: number ) : any [ ] ;
97+ < T > ( arrayLength : number ) : T [ ] ;
98+ < T > ( ...items : T [ ] ) : T [ ] ;
99+ isArray ( arg : any ) : arg is any [ ] ;
100+ readonly prototype : any [ ] ;
101+ }
102+ declare var Array : ArrayConstructor ;
103+
104+ interface Map < K , V > {
105+ clear ( ) : void ;
106+ delete ( key : K ) : boolean ;
107+ forEach ( callbackfn : ( value : V , key : K , map : Map < K , V > ) => void , thisArg ?: any ) : void ;
108+ get ( key : K ) : V | undefined ;
109+ has ( key : K ) : boolean ;
110+ set ( key : K , value : V ) : this;
111+ readonly size : number ;
112+
113+ [ Symbol . iterator ] ( ) : IterableIterator < [ K , V ] > ;
114+ entries ( ) : IterableIterator < [ K , V ] > ;
115+ keys ( ) : IterableIterator < K > ;
116+ values ( ) : IterableIterator < V > ;
117+ }
118+
119+ interface MapConstructor {
120+ new ( ) : Map < any , any > ;
121+ new < K , V > ( entries ?: readonly ( readonly [ K , V ] ) [ ] | null ) : Map < K , V > ;
122+ readonly prototype : Map < any , any > ;
123+ }
124+ declare var Map : MapConstructor ;
125+
126+ interface ReadonlyMap < K , V > {
127+ forEach ( callbackfn : ( value : V , key : K , map : ReadonlyMap < K , V > ) => void , thisArg ?: any ) : void ;
128+ get ( key : K ) : V | undefined ;
129+ has ( key : K ) : boolean ;
130+ readonly size : number ;
131+ }
132+
133+ interface WeakMap < K extends object , V > {
134+ delete ( key : K ) : boolean ;
135+ get ( key : K ) : V | undefined ;
136+ has ( key : K ) : boolean ;
137+ set ( key : K , value : V ) : this;
138+ }
139+
140+ interface WeakMapConstructor {
141+ new < K extends object = object , V = any > ( entries ?: readonly [ K , V ] [ ] | null ) : WeakMap < K , V > ;
142+ readonly prototype : WeakMap < object , any > ;
143+ }
144+ declare var WeakMap : WeakMapConstructor ;
145+
146+ interface Set < T > {
147+ add ( value : T ) : this;
148+ clear ( ) : void ;
149+ delete ( value : T ) : boolean ;
150+ forEach ( callbackfn : ( value : T , value2 : T , set : Set < T > ) => void , thisArg ?: any ) : void ;
151+ has ( value : T ) : boolean ;
152+ readonly size : number ;
153+
154+ [ Symbol . iterator ] ( ) : IterableIterator < T > ;
155+ entries ( ) : IterableIterator < [ T , T ] > ;
156+ keys ( ) : IterableIterator < T > ;
157+ values ( ) : IterableIterator < T > ;
158+ }
159+
160+ interface SetConstructor {
161+ new < T = any > ( values ?: readonly T [ ] | null ) : Set < T > ;
162+ readonly prototype : Set < any > ;
163+ }
164+ declare var Set : SetConstructor ;
165+
166+ interface ReadonlySet < T > {
167+ forEach ( callbackfn : ( value : T , value2 : T , set : ReadonlySet < T > ) => void , thisArg ?: any ) : void ;
168+ has ( value : T ) : boolean ;
169+ readonly size : number ;
170+ }
171+
172+ interface WeakSet < T extends object > {
173+ add ( value : T ) : this;
174+ delete ( value : T ) : boolean ;
175+ has ( value : T ) : boolean ;
176+ }
177+
178+ interface WeakSetConstructor {
179+ new < T extends object = object > ( values ?: readonly T [ ] | null ) : WeakSet < T > ;
180+ readonly prototype : WeakSet < object > ;
181+ }
182+ declare var WeakSet : WeakSetConstructor ;
183+
184+ interface PromiseLike < T > {
185+ then < TResult1 = T , TResult2 = never > ( onfulfilled ?: ( ( value : T ) => TResult1 | PromiseLike < TResult1 > ) | undefined | null , onrejected ?: ( ( reason : any ) => TResult2 | PromiseLike < TResult2 > ) | undefined | null ) : PromiseLike < TResult1 | TResult2 > ;
186+ }
187+
188+ interface Promise < T > {
189+ $Promise$T : T ;
190+ then < TResult1 = T , TResult2 = never > ( onfulfilled ?: ( ( value : T ) => TResult1 | PromiseLike < TResult1 > ) | undefined | null , onrejected ?: ( ( reason : any ) => TResult2 | PromiseLike < TResult2 > ) | undefined | null ) : Promise < TResult1 | TResult2 > ;
191+ catch < TResult = never > ( onrejected ?: ( ( reason : any ) => TResult | PromiseLike < TResult > ) | undefined | null ) : Promise < T | TResult > ;
192+ }
193+ interface PromiseConstructor {
194+ new < T > ( executor : ( resolve : ( value : T | PromiseLike < T > ) => void , reject : ( reason ?: any ) => void ) => void ) : Promise < T > ;
195+ all < T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 > ( values : readonly [ T1 | PromiseLike < T1 > , T2 | PromiseLike < T2 > , T3 | PromiseLike < T3 > , T4 | PromiseLike < T4 > , T5 | PromiseLike < T5 > , T6 | PromiseLike < T6 > , T7 | PromiseLike < T7 > , T8 | PromiseLike < T8 > , T9 | PromiseLike < T9 > , T10 | PromiseLike < T10 > ] ) : Promise < [ T1 , T2 , T3 , T4 ,
196+ T5 , T6 , T7 , T8 , T9 , T10 ] > ;
197+ all < T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 > ( values : readonly [ T1 | PromiseLike < T1 > , T2 | PromiseLike < T2 > , T3 | PromiseLike < T3 > , T4 | PromiseLike < T4 > , T5 | PromiseLike < T5 > , T6 | PromiseLike < T6 > , T7 | PromiseLike < T7 > , T8 | PromiseLike < T8 > , T9 | PromiseLike < T9 > ] ) : Promise < [ T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 ] > ;
198+ all < T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 > ( values : readonly [ T1 | PromiseLike < T1 > , T2 | PromiseLike < T2 > , T3 | PromiseLike < T3 > , T4 | PromiseLike < T4 > , T5 | PromiseLike < T5 > , T6 | PromiseLike < T6 > , T7 | PromiseLike < T7 > , T8 | PromiseLike < T8 > ] ) : Promise < [ T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 ] > ;
199+ all < T1 , T2 , T3 , T4 , T5 , T6 , T7 > ( values : readonly [ T1 | PromiseLike < T1 > , T2 | PromiseLike < T2 > , T3 | PromiseLike < T3 > , T4 | PromiseLike < T4 > , T5 | PromiseLike < T5 > , T6 | PromiseLike < T6 > , T7 | PromiseLike < T7 > ] ) : Promise < [ T1 , T2 , T3 , T4 , T5 , T6 , T7 ] > ;
200+ all < T1 , T2 , T3 , T4 , T5 , T6 > ( values : readonly [ T1 | PromiseLike < T1 > , T2 | PromiseLike < T2 > , T3 | PromiseLike < T3 > , T4 | PromiseLike < T4 > , T5 | PromiseLike < T5 > , T6 | PromiseLike < T6 > ] ) : Promise < [ T1 , T2 , T3 , T4 , T5 , T6 ] > ;
201+ all < T1 , T2 , T3 , T4 , T5 > ( values : readonly [ T1 | PromiseLike < T1 > , T2 | PromiseLike < T2 > , T3 | PromiseLike < T3 > , T4 | PromiseLike < T4 > , T5 | PromiseLike < T5 > ] ) : Promise < [ T1 , T2 , T3 , T4 , T5 ] > ;
202+ all < T1 , T2 , T3 , T4 > ( values : readonly [ T1 | PromiseLike < T1 > , T2 | PromiseLike < T2 > , T3 | PromiseLike < T3 > , T4 | PromiseLike < T4 > ] ) : Promise < [ T1 , T2 , T3 , T4 ] > ;
203+ all < T1 , T2 , T3 > ( values : readonly [ T1 | PromiseLike < T1 > , T2 | PromiseLike < T2 > , T3 | PromiseLike < T3 > ] ) : Promise < [ T1 , T2 , T3 ] > ;
204+ all < T1 , T2 > ( values : readonly [ T1 | PromiseLike < T1 > , T2 | PromiseLike < T2 > ] ) : Promise < [ T1 , T2 ] > ;
205+ all < T > ( values : readonly ( T | PromiseLike < T > ) [ ] ) : Promise < T [ ] > ;
206+
207+ all < T > ( values : Iterable < T | PromiseLike < T > > ) : Promise < T [ ] > ;
208+ race < T > ( values : Iterable < T > ) : Promise < T extends PromiseLike < infer U > ? U : T > ;
209+ race < T > ( values : Iterable < T | PromiseLike < T > > ) : Promise < T > ;
210+ race < T > ( values : readonly T [ ] ) : Promise < T extends PromiseLike < infer U > ? U : T > ;
211+
212+ reject < T = never > ( reason ?: any ) : Promise < T > ;
213+ resolve ( ) : Promise < void > ;
214+ resolve < T > ( value : T | PromiseLike < T > ) : Promise < T > ;
215+ } ;
216+
217+ declare var Promise : PromiseConstructor ;
0 commit comments