2
2
const f = Object.freeze(function foo(a: number, b: string) { return false; });
3
3
>f : (a: number, b: string) => false
4
4
>Object.freeze(function foo(a: number, b: string) { return false; }) : (a: number, b: string) => false
5
- >Object.freeze : { <T>(a: T[]): readonly T[]; <T extends Function>(f: T): T; <T extends { [idx: string]: object | U; }, U extends string | number | bigint | symbol>(o: T): Readonly<T>; <T>(o: T): Readonly<T>; }
5
+ >Object.freeze : { <T>(a: T[]): readonly T[]; <T extends Function>(f: T): T; <T extends { [idx: string]: object | U; }, U extends string | number | bigint | boolean | symbol>(o: T): Readonly<T>; <T>(o: T): Readonly<T>; }
6
6
>Object : ObjectConstructor
7
- >freeze : { <T>(a: T[]): readonly T[]; <T extends Function>(f: T): T; <T extends { [idx: string]: object | U; }, U extends string | number | bigint | symbol>(o: T): Readonly<T>; <T>(o: T): Readonly<T>; }
7
+ >freeze : { <T>(a: T[]): readonly T[]; <T extends Function>(f: T): T; <T extends { [idx: string]: object | U; }, U extends string | number | bigint | boolean | symbol>(o: T): Readonly<T>; <T>(o: T): Readonly<T>; }
8
8
>function foo(a: number, b: string) { return false; } : (a: number, b: string) => false
9
9
>foo : (a: number, b: string) => false
10
10
>a : number
@@ -26,9 +26,9 @@ class C { constructor(a: number) { } }
26
26
const c = Object.freeze(C);
27
27
>c : typeof C
28
28
>Object.freeze(C) : typeof C
29
- >Object.freeze : { <T>(a: T[]): readonly T[]; <T extends Function>(f: T): T; <T extends { [idx: string]: object | U; }, U extends string | number | bigint | symbol>(o: T): Readonly<T>; <T>(o: T): Readonly<T>; }
29
+ >Object.freeze : { <T>(a: T[]): readonly T[]; <T extends Function>(f: T): T; <T extends { [idx: string]: object | U; }, U extends string | number | bigint | boolean | symbol>(o: T): Readonly<T>; <T>(o: T): Readonly<T>; }
30
30
>Object : ObjectConstructor
31
- >freeze : { <T>(a: T[]): readonly T[]; <T extends Function>(f: T): T; <T extends { [idx: string]: object | U; }, U extends string | number | bigint | symbol>(o: T): Readonly<T>; <T>(o: T): Readonly<T>; }
31
+ >freeze : { <T>(a: T[]): readonly T[]; <T extends Function>(f: T): T; <T extends { [idx: string]: object | U; }, U extends string | number | bigint | boolean | symbol>(o: T): Readonly<T>; <T>(o: T): Readonly<T>; }
32
32
>C : typeof C
33
33
34
34
new c(1);
@@ -39,9 +39,9 @@ new c(1);
39
39
const a = Object.freeze([1, 2, 3]);
40
40
>a : readonly number[]
41
41
>Object.freeze([1, 2, 3]) : readonly number[]
42
- >Object.freeze : { <T>(a: T[]): readonly T[]; <T extends Function>(f: T): T; <T extends { [idx: string]: object | U; }, U extends string | number | bigint | symbol>(o: T): Readonly<T>; <T>(o: T): Readonly<T>; }
42
+ >Object.freeze : { <T>(a: T[]): readonly T[]; <T extends Function>(f: T): T; <T extends { [idx: string]: object | U; }, U extends string | number | bigint | boolean | symbol>(o: T): Readonly<T>; <T>(o: T): Readonly<T>; }
43
43
>Object : ObjectConstructor
44
- >freeze : { <T>(a: T[]): readonly T[]; <T extends Function>(f: T): T; <T extends { [idx: string]: object | U; }, U extends string | number | bigint | symbol>(o: T): Readonly<T>; <T>(o: T): Readonly<T>; }
44
+ >freeze : { <T>(a: T[]): readonly T[]; <T extends Function>(f: T): T; <T extends { [idx: string]: object | U; }, U extends string | number | bigint | boolean | symbol>(o: T): Readonly<T>; <T>(o: T): Readonly<T>; }
45
45
>[1, 2, 3] : number[]
46
46
>1 : 1
47
47
>2 : 2
@@ -59,27 +59,29 @@ a[0] = a[2].toString();
59
59
>2 : 2
60
60
>toString : (radix?: number) => string
61
61
62
- const o = Object.freeze({ a: 1, b: "string" });
63
- >o : Readonly<{ a: 1; b: "string"; }>
64
- >Object.freeze({ a: 1, b: "string" }) : Readonly<{ a: 1; b: "string"; }>
65
- >Object.freeze : { <T>(a: T[]): readonly T[]; <T extends Function>(f: T): T; <T extends { [idx: string]: object | U; }, U extends string | number | bigint | symbol>(o: T): Readonly<T>; <T>(o: T): Readonly<T>; }
62
+ const o = Object.freeze({ a: 1, b: "string", c: true });
63
+ >o : Readonly<{ a: 1; b: "string"; c: true; }>
64
+ >Object.freeze({ a: 1, b: "string", c: true }) : Readonly<{ a: 1; b: "string"; c: true ; }>
65
+ >Object.freeze : { <T>(a: T[]): readonly T[]; <T extends Function>(f: T): T; <T extends { [idx: string]: object | U; }, U extends string | number | bigint | boolean | symbol>(o: T): Readonly<T>; <T>(o: T): Readonly<T>; }
66
66
>Object : ObjectConstructor
67
- >freeze : { <T>(a: T[]): readonly T[]; <T extends Function>(f: T): T; <T extends { [idx: string]: object | U; }, U extends string | number | bigint | symbol>(o: T): Readonly<T>; <T>(o: T): Readonly<T>; }
68
- >{ a: 1, b: "string" } : { a: 1; b: "string"; }
67
+ >freeze : { <T>(a: T[]): readonly T[]; <T extends Function>(f: T): T; <T extends { [idx: string]: object | U; }, U extends string | number | bigint | boolean | symbol>(o: T): Readonly<T>; <T>(o: T): Readonly<T>; }
68
+ >{ a: 1, b: "string", c: true } : { a: 1; b: "string"; c: true ; }
69
69
>a : 1
70
70
>1 : 1
71
71
>b : "string"
72
72
>"string" : "string"
73
+ >c : true
74
+ >true : true
73
75
74
76
o.b = o.a.toString();
75
77
>o.b = o.a.toString() : string
76
78
>o.b : any
77
- >o : Readonly<{ a: 1; b: "string"; }>
79
+ >o : Readonly<{ a: 1; b: "string"; c: true; }>
78
80
>b : any
79
81
>o.a.toString() : string
80
82
>o.a.toString : (radix?: number) => string
81
83
>o.a : 1
82
- >o : Readonly<{ a: 1; b: "string"; }>
84
+ >o : Readonly<{ a: 1; b: "string"; c: true; }>
83
85
>a : 1
84
86
>toString : (radix?: number) => string
85
87
0 commit comments