@tsonic/js-globals 0.2.3 → 0.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/index.d.ts +49 -5
- package/package.json +1 -1
package/index.d.ts
CHANGED
|
@@ -570,17 +570,27 @@ declare global {
|
|
|
570
570
|
/**
|
|
571
571
|
* Iterator types
|
|
572
572
|
*/
|
|
573
|
-
interface Iterator<T> {
|
|
574
|
-
next(): IteratorResult<T>;
|
|
575
|
-
return?(value?:
|
|
576
|
-
throw?(e?: any): IteratorResult<T>;
|
|
573
|
+
interface Iterator<T, TReturn = any, TNext = undefined> {
|
|
574
|
+
next(...args: [] | [TNext]): IteratorResult<T, TReturn>;
|
|
575
|
+
return?(value?: TReturn): IteratorResult<T, TReturn>;
|
|
576
|
+
throw?(e?: any): IteratorResult<T, TReturn>;
|
|
577
577
|
}
|
|
578
578
|
|
|
579
|
-
interface IteratorResult<T> {
|
|
579
|
+
interface IteratorResult<T, TReturn = any> {
|
|
580
580
|
done: boolean;
|
|
581
|
+
value: T | TReturn;
|
|
582
|
+
}
|
|
583
|
+
|
|
584
|
+
interface IteratorYieldResult<T> {
|
|
585
|
+
done: false;
|
|
581
586
|
value: T;
|
|
582
587
|
}
|
|
583
588
|
|
|
589
|
+
interface IteratorReturnResult<TReturn> {
|
|
590
|
+
done: true;
|
|
591
|
+
value: TReturn;
|
|
592
|
+
}
|
|
593
|
+
|
|
584
594
|
interface Iterable<T> {
|
|
585
595
|
[Symbol.iterator](): Iterator<T>;
|
|
586
596
|
}
|
|
@@ -589,6 +599,40 @@ declare global {
|
|
|
589
599
|
[Symbol.iterator](): IterableIterator<T>;
|
|
590
600
|
}
|
|
591
601
|
|
|
602
|
+
/**
|
|
603
|
+
* Async Iterator types (for for-await loops)
|
|
604
|
+
*/
|
|
605
|
+
interface AsyncIterator<T, TReturn = any, TNext = undefined> {
|
|
606
|
+
next(...args: [] | [TNext]): Promise<IteratorResult<T, TReturn>>;
|
|
607
|
+
return?(value?: TReturn | PromiseLike<TReturn>): Promise<IteratorResult<T, TReturn>>;
|
|
608
|
+
throw?(e?: any): Promise<IteratorResult<T, TReturn>>;
|
|
609
|
+
}
|
|
610
|
+
|
|
611
|
+
interface AsyncIterable<T> {
|
|
612
|
+
[Symbol.asyncIterator](): AsyncIterator<T>;
|
|
613
|
+
}
|
|
614
|
+
|
|
615
|
+
interface AsyncIterableIterator<T> extends AsyncIterator<T> {
|
|
616
|
+
[Symbol.asyncIterator](): AsyncIterableIterator<T>;
|
|
617
|
+
}
|
|
618
|
+
|
|
619
|
+
/**
|
|
620
|
+
* Generator types
|
|
621
|
+
*/
|
|
622
|
+
interface Generator<T = unknown, TReturn = any, TNext = unknown> extends Iterator<T, TReturn, TNext> {
|
|
623
|
+
next(...args: [] | [TNext]): IteratorResult<T, TReturn>;
|
|
624
|
+
return(value: TReturn): IteratorResult<T, TReturn>;
|
|
625
|
+
throw(e: any): IteratorResult<T, TReturn>;
|
|
626
|
+
[Symbol.iterator](): Generator<T, TReturn, TNext>;
|
|
627
|
+
}
|
|
628
|
+
|
|
629
|
+
interface AsyncGenerator<T = unknown, TReturn = any, TNext = unknown> extends AsyncIterator<T, TReturn, TNext> {
|
|
630
|
+
next(...args: [] | [TNext]): Promise<IteratorResult<T, TReturn>>;
|
|
631
|
+
return(value: TReturn | PromiseLike<TReturn>): Promise<IteratorResult<T, TReturn>>;
|
|
632
|
+
throw(e: any): Promise<IteratorResult<T, TReturn>>;
|
|
633
|
+
[Symbol.asyncIterator](): AsyncGenerator<T, TReturn, TNext>;
|
|
634
|
+
}
|
|
635
|
+
|
|
592
636
|
/**
|
|
593
637
|
* Template literal type utilities
|
|
594
638
|
*/
|