22const f = Object.freeze(function foo(a: number, b: string) { return false; });
33>f : (a: number, b: string) => false
44>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>; }
66>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>; }
88>function foo(a: number, b: string) { return false; } : (a: number, b: string) => false
99>foo : (a: number, b: string) => false
1010>a : number
@@ -26,9 +26,9 @@ class C { constructor(a: number) { } }
2626const c = Object.freeze(C);
2727>c : typeof C
2828>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>; }
3030>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>; }
3232>C : typeof C
3333
3434new c(1);
@@ -39,9 +39,9 @@ new c(1);
3939const a = Object.freeze([1, 2, 3]);
4040>a : readonly number[]
4141>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>; }
4343>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>; }
4545>[1, 2, 3] : number[]
4646>1 : 1
4747>2 : 2
@@ -59,27 +59,29 @@ a[0] = a[2].toString();
5959>2 : 2
6060>toString : (radix?: number) => string
6161
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>; }
6666>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 ; }
6969>a : 1
7070>1 : 1
7171>b : "string"
7272>"string" : "string"
73+ >c : true
74+ >true : true
7375
7476o.b = o.a.toString();
7577>o.b = o.a.toString() : string
7678>o.b : any
77- >o : Readonly<{ a: 1; b: "string"; }>
79+ >o : Readonly<{ a: 1; b: "string"; c: true; }>
7880>b : any
7981>o.a.toString() : string
8082>o.a.toString : (radix?: number) => string
8183>o.a : 1
82- >o : Readonly<{ a: 1; b: "string"; }>
84+ >o : Readonly<{ a: 1; b: "string"; c: true; }>
8385>a : 1
8486>toString : (radix?: number) => string
8587
0 commit comments