@@ -21,66 +21,65 @@ for (var x of Object.values(o)) {
21
21
>x : number
22
22
}
23
23
24
- var entries = Object.entries(o); // <-- entries: [( 'a' & string) | ( 'b' & string) , number][]
25
- >entries : [( "a" & string) | ( "b" & string) , number][]
26
- >Object.entries(o) : [( "a" & string) | ( "b" & string) , number][]
27
- >Object.entries : { <T>(o: T[]): [string, T][]; <T extends { [key: string]: any; }, K extends keyof T>(o: T): [keyof T & string , T[K]][]; (o: any): [string, any][]; }
24
+ var entries = Object.entries(o); // <-- entries: ['a' | 'b', number][]
25
+ >entries : ["a" | "b", number][]
26
+ >Object.entries(o) : ["a" | "b", number][]
27
+ >Object.entries : { <T>(o: T[]): [string, T][]; <T extends { [key: string]: any; }, K extends keyof T>(o: T): [keyof T, T[K]][]; (o: any): [string, any][]; }
28
28
>Object : ObjectConstructor
29
- >entries : { <T>(o: T[]): [string, T][]; <T extends { [key: string]: any; }, K extends keyof T>(o: T): [keyof T & string , T[K]][]; (o: any): [string, any][]; }
29
+ >entries : { <T>(o: T[]): [string, T][]; <T extends { [key: string]: any; }, K extends keyof T>(o: T): [keyof T, T[K]][]; (o: any): [string, any][]; }
30
30
>o : { a: number; b: number; }
31
31
32
32
var entries1 = Object.entries(1); // <-- entries: [string, any][]
33
33
>entries1 : [string, any][]
34
34
>Object.entries(1) : [string, any][]
35
- >Object.entries : { <T>(o: T[]): [string, T][]; <T extends { [key: string]: any; }, K extends keyof T>(o: T): [keyof T & string , T[K]][]; (o: any): [string, any][]; }
35
+ >Object.entries : { <T>(o: T[]): [string, T][]; <T extends { [key: string]: any; }, K extends keyof T>(o: T): [keyof T, T[K]][]; (o: any): [string, any][]; }
36
36
>Object : ObjectConstructor
37
- >entries : { <T>(o: T[]): [string, T][]; <T extends { [key: string]: any; }, K extends keyof T>(o: T): [keyof T & string , T[K]][]; (o: any): [string, any][]; }
37
+ >entries : { <T>(o: T[]): [string, T][]; <T extends { [key: string]: any; }, K extends keyof T>(o: T): [keyof T, T[K]][]; (o: any): [string, any][]; }
38
38
>1 : 1
39
39
40
- var entries2 = Object.entries({a: true, b: 2}) // [('a' & string) | ( 'b' & string ), number | boolean][]
41
- >entries2 : [( "a" & string) | ( "b" & string) , number | boolean][]
42
- >Object.entries({a: true, b: 2}) : [( "a" & string) | ( "b" & string) , number | boolean][]
43
- >Object.entries : { <T>(o: T[]): [string, T][]; <T extends { [key: string]: any; }, K extends keyof T>(o: T): [keyof T & string , T[K]][]; (o: any): [string, any][]; }
40
+ var entries2 = Object.entries({a: true, b: 2}) // [('a' | 'b'), number | boolean][]
41
+ >entries2 : ["a" | "b", number | boolean][]
42
+ >Object.entries({a: true, b: 2}) : ["a" | "b", number | boolean][]
43
+ >Object.entries : { <T>(o: T[]): [string, T][]; <T extends { [key: string]: any; }, K extends keyof T>(o: T): [keyof T, T[K]][]; (o: any): [string, any][]; }
44
44
>Object : ObjectConstructor
45
- >entries : { <T>(o: T[]): [string, T][]; <T extends { [key: string]: any; }, K extends keyof T>(o: T): [keyof T & string , T[K]][]; (o: any): [string, any][]; }
45
+ >entries : { <T>(o: T[]): [string, T][]; <T extends { [key: string]: any; }, K extends keyof T>(o: T): [keyof T, T[K]][]; (o: any): [string, any][]; }
46
46
>{a: true, b: 2} : { a: true; b: number; }
47
47
>a : boolean
48
48
>true : true
49
49
>b : number
50
50
>2 : 2
51
51
52
- var entries3 = Object.entries({}) // [string , any][]
53
- >entries3 : [string , any][]
54
- >Object.entries({}) : [string , any][]
55
- >Object.entries : { <T>(o: T[]): [string, T][]; <T extends { [key: string]: any; }, K extends keyof T>(o: T): [keyof T & string , T[K]][]; (o: any): [string, any][]; }
52
+ var entries3 = Object.entries({}) // [never , any][]
53
+ >entries3 : [never , any][]
54
+ >Object.entries({}) : [never , any][]
55
+ >Object.entries : { <T>(o: T[]): [string, T][]; <T extends { [key: string]: any; }, K extends keyof T>(o: T): [keyof T, T[K]][]; (o: any): [string, any][]; }
56
56
>Object : ObjectConstructor
57
- >entries : { <T>(o: T[]): [string, T][]; <T extends { [key: string]: any; }, K extends keyof T>(o: T): [keyof T & string , T[K]][]; (o: any): [string, any][]; }
57
+ >entries : { <T>(o: T[]): [string, T][]; <T extends { [key: string]: any; }, K extends keyof T>(o: T): [keyof T, T[K]][]; (o: any): [string, any][]; }
58
58
>{} : {}
59
59
60
60
var entries4 = Object.entries([1, 2, 3, 4]); // [string, number][]
61
61
>entries4 : [string, number][]
62
62
>Object.entries([1, 2, 3, 4]) : [string, number][]
63
- >Object.entries : { <T>(o: T[]): [string, T][]; <T extends { [key: string]: any; }, K extends keyof T>(o: T): [keyof T & string , T[K]][]; (o: any): [string, any][]; }
63
+ >Object.entries : { <T>(o: T[]): [string, T][]; <T extends { [key: string]: any; }, K extends keyof T>(o: T): [keyof T, T[K]][]; (o: any): [string, any][]; }
64
64
>Object : ObjectConstructor
65
- >entries : { <T>(o: T[]): [string, T][]; <T extends { [key: string]: any; }, K extends keyof T>(o: T): [keyof T & string , T[K]][]; (o: any): [string, any][]; }
65
+ >entries : { <T>(o: T[]): [string, T][]; <T extends { [key: string]: any; }, K extends keyof T>(o: T): [keyof T, T[K]][]; (o: any): [string, any][]; }
66
66
>[1, 2, 3, 4] : number[]
67
67
>1 : 1
68
68
>2 : 2
69
69
>3 : 3
70
70
>4 : 4
71
71
72
- // type below should be [string | (string & number), any] NOT [string | number, any]
73
72
var x2: { [index: string]: any } = {1: 2};
74
73
>x2 : { [index: string]: any; }
75
74
>index : string
76
75
>{1: 2} : { 1: number; }
77
76
>2 : 2
78
77
79
- var entries5 = Object.entries(x2);
80
- >entries5 : [string | (number & string) , any][]
81
- >Object.entries(x2) : [string | (number & string) , any][]
82
- >Object.entries : { <T>(o: T[]): [string, T][]; <T extends { [key: string]: any; }, K extends keyof T>(o: T): [keyof T & string , T[K]][]; (o: any): [string, any][]; }
78
+ var entries5 = Object.entries(x2); // [string, any][]
79
+ >entries5 : [string, any][]
80
+ >Object.entries(x2) : [string, any][]
81
+ >Object.entries : { <T>(o: T[]): [string, T][]; <T extends { [key: string]: any; }, K extends keyof T>(o: T): [keyof T, T[K]][]; (o: any): [string, any][]; }
83
82
>Object : ObjectConstructor
84
- >entries : { <T>(o: T[]): [string, T][]; <T extends { [key: string]: any; }, K extends keyof T>(o: T): [keyof T & string , T[K]][]; (o: any): [string, any][]; }
83
+ >entries : { <T>(o: T[]): [string, T][]; <T extends { [key: string]: any; }, K extends keyof T>(o: T): [keyof T, T[K]][]; (o: any): [string, any][]; }
85
84
>x2 : { [index: string]: any; }
86
85
0 commit comments