@@ -61,8 +61,9 @@ declare class Object {
61
61
62
62
// Well known Symbols.
63
63
declare class $SymbolHasInstance mixins Symbol { }
64
- declare class $SymboIsConcatSpreadable mixins Symbol { }
64
+ declare class $SymbolIsConcatSpreadable mixins Symbol { }
65
65
declare class $SymbolIterator mixins Symbol { }
66
+ declare class $SymbolAsyncIterator mixins Symbol { }
66
67
declare class $SymbolMatch mixins Symbol { }
67
68
declare class $SymbolReplace mixins Symbol { }
68
69
declare class $SymbolSearch mixins Symbol { }
@@ -76,8 +77,9 @@ declare class Symbol {
76
77
static ( value ?:any ) : Symbol ;
77
78
static for ( key : string ) : Symbol ;
78
79
static hasInstance : $SymbolHasInstance ;
79
- static isConcatSpreadable : $SymboIsConcatSpreadable ;
80
+ static isConcatSpreadable : $SymbolIsConcatSpreadable ;
80
81
static iterator : string ; // polyfill '@@iterator'
82
+ static asyncIterator : $SymbolAsyncIterator ;
81
83
static keyFor ( sym : Symbol ) : ?string ;
82
84
static length : 0 ;
83
85
static match : $SymbolMatch ;
@@ -547,20 +549,22 @@ type IteratorResult<Yield,Return> =
547
549
| { done : true , value ? : Return }
548
550
| { done : false , value : Yield } ;
549
551
550
- interface $Iterator< + Yield , + Return , - Next > {
551
- @@iterator ( ) : $Iterator < Yield , Return , Next > ;
552
- next ( value ? : Next ) : IteratorResult < Yield , Return > ;
553
- }
554
- type Iterator< + T > = $Iterator< T , void , void > ;
555
-
556
552
interface $Iterable< + Yield , + Return , - Next > {
557
553
@@iterator ( ) : $Iterator < Yield , Return , Next > ;
558
554
}
559
555
type Iterable< + T > = $Iterable< T , void , void > ;
560
556
561
- interface Generator < + Yield , + Return , - Next > {
557
+ interface $Iterator < + Yield , + Return , - Next > extends $Iterable < Yield , Return , Next > {
562
558
@@iterator ( ) : $Iterator < Yield , Return , Next > ;
563
559
next ( value ? : Next ) : IteratorResult < Yield , Return > ;
560
+ + return ?: < R > (value: R) => IteratorResult < Yield , R | Return > ;
561
+ + throw ?: ( error ? : any ) => IteratorResult < Yield , Return > ;
562
+ }
563
+ type Iterator< + T > = $Iterator< T , void , void > ;
564
+
565
+ interface Generator< + Yield , + Return , - Next > extends $Iterator< Yield , Return , Next > {
566
+ @@iterator ( ) : Generator < Yield , Return , Next > ;
567
+ next ( value ? : Next ) : IteratorResult < Yield , Return > ;
564
568
return < R > (value: R): IteratorResult< Yield , R | Return > ;
565
569
throw(error?: any): IteratorResult< Yield , Return > ;
566
570
}
@@ -569,25 +573,27 @@ declare function $iterate<T>(p: Iterable<T>): T;
569
573
570
574
/* Async Iterable/Iterator/Generator */
571
575
572
- interface $AsyncIterator< + Yield , + Return , - Next > {
573
- @@asyncIterator ( ) : $AsyncIterator < Yield , Return , Next > ;
574
- next ( value ? : Next ) : Promise < IteratorResult < Yield , Return >> ;
575
- }
576
- type AsyncIterator< + T > = $AsyncIterator< T , void , void > ;
577
-
578
576
interface $AsyncIterable< + Yield , + Return , - Next > {
579
577
@@asyncIterator ( ) : $AsyncIterator < Yield , Return , Next > ;
580
578
}
581
579
type AsyncIterable< + T > = $AsyncIterable< T , void , void > ;
582
580
583
- interface AsyncGenerator < + Yield , + Return , - Next > {
581
+ interface $AsyncIterator < + Yield , + Return , - Next > extends $AsyncIterable < Yield , Return , Next > {
584
582
@@asyncIterator ( ) : $AsyncIterator < Yield , Return , Next > ;
585
583
next ( value ? : Next ) : Promise < IteratorResult < Yield , Return >> ;
584
+ + return ?: < R > (value: R) => Promise < IteratorResult < Yield , R | Return >> ;
585
+ + throw ?: ( error ? : any ) => Promise < IteratorResult < Yield , Return >> ;
586
+ }
587
+ type AsyncIterator< + T > = $AsyncIterator< T , void , void > ;
588
+
589
+ interface AsyncGenerator< + Yield , + Return , - Next > extends $AsyncIterator< Yield , Return , Next > {
590
+ @@asyncIterator ( ) : AsyncGenerator < Yield , Return , Next > ;
591
+ next ( value ? : Next ) : Promise < IteratorResult < Yield , Return >> ;
586
592
return < R > (value: R): Promise< IteratorResult < Yield , R | Return > > ;
587
593
throw ( error ? : any ) : Promise < IteratorResult < Yield , Return >> ;
588
594
}
589
595
590
- declare function $asyncIterator < T > (p: AsyncIterable< T > ): T;
596
+ declare function $asyncIterate < T > (p: AsyncIterable< T > ): T;
591
597
592
598
/* Maps and Sets */
593
599
0 commit comments