Skip to content

Commit 141cc57

Browse files
committed
update falling baselines after latest changes
1 parent 10b2cf5 commit 141cc57

File tree

2 files changed

+16
-13
lines changed

2 files changed

+16
-13
lines changed

src/lib/es2015.iterable.d.ts

Lines changed: 7 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -76,21 +76,15 @@ interface Array<T> {
7676
}
7777

7878
interface 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[];
79+
from<T extends Iterable<unknown>>(iterable: T): T extends Iterable<infer U> ? U[] : never;
80+
from<T extends Iterable<unknown>, U>(
81+
iterable: T,
82+
mapfn: (v: T extends Iterable<infer V> ? V : never, k: number) => U,
83+
thisArg?: any
84+
): U[];
9285
}
9386

87+
9488
interface ReadonlyArray<T> {
9589
/** Iterator of values in the array. */
9690
[Symbol.iterator](): ArrayIterator<T>;
Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
// @strict: true
2+
3+
type Foo = Iterable<string> | Iterable<number>;
4+
declare const foo: Foo;
5+
6+
const result = Array.from(foo);
7+
8+
type Expected = string[] | number[];
9+
const check: Expected = result;

0 commit comments

Comments
 (0)