From 06e60949596675aa06443063ff0bbd3341ff3c4d Mon Sep 17 00:00:00 2001 From: ExE Boss <3889017+ExE-Boss@users.noreply.github.com> Date: Wed, 26 Aug 2020 22:04:44 +0200 Subject: [PATCH] =?UTF-8?q?=F0=9F=A4=96=20Merge=20PR=20#47049=20test(es?= =?UTF-8?q?=E2=80=91abstract/GetIntrinsic):=20Use=C2=A0`expectType`=C2=A0f?= =?UTF-8?q?unction=20by=20@ExE-Boss?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- types/es-abstract/test/GetIntrinsic.test.ts | 222 +++++++++++--------- 1 file changed, 122 insertions(+), 100 deletions(-) diff --git a/types/es-abstract/test/GetIntrinsic.test.ts b/types/es-abstract/test/GetIntrinsic.test.ts index 44a8989b63..668176af33 100644 --- a/types/es-abstract/test/GetIntrinsic.test.ts +++ b/types/es-abstract/test/GetIntrinsic.test.ts @@ -1,20 +1,22 @@ import GetIntrinsic = require('es-abstract/GetIntrinsic'); +import { expectType } from './index.test'; + declare const boolean: boolean; // allowMissing = undefined { GetIntrinsic('%Array%'); // $ExpectType ArrayConstructor GetIntrinsic('%Array.prototype%'); // $ExpectType any[] - GetIntrinsic('%Array.prototype.entries%'); // $ExpectType () => IterableIterator<[number, any]> - GetIntrinsic('%Array.prototype.forEach%'); // $ExpectType (callbackfn: (value: any, index: number, array: any[]) => void, thisArg?: any) => void - GetIntrinsic('%Array.prototype.keys%'); // $ExpectType () => IterableIterator - GetIntrinsic('%Array.prototype.values%'); // $ExpectType () => IterableIterator + expectType(GetIntrinsic('%Array.prototype.entries%')); + expectType(GetIntrinsic('%Array.prototype.forEach%')); + expectType(GetIntrinsic('%Array.prototype.keys%')); + expectType(GetIntrinsic('%Array.prototype.values%')); GetIntrinsic('%ArrayPrototype%'); // $ExpectType any[] - GetIntrinsic('%ArrayProto_entries%'); // $ExpectType () => IterableIterator<[number, any]> - GetIntrinsic('%ArrayProto_forEach%'); // $ExpectType (callbackfn: (value: any, index: number, array: any[]) => void, thisArg?: any) => void - GetIntrinsic('%ArrayProto_keys%'); // $ExpectType () => IterableIterator - GetIntrinsic('%ArrayProto_values%'); // $ExpectType () => IterableIterator + expectType(GetIntrinsic('%ArrayProto_entries%')); + expectType(GetIntrinsic('%ArrayProto_forEach%')); + expectType(GetIntrinsic('%ArrayProto_keys%')); + expectType(GetIntrinsic('%ArrayProto_values%')); GetIntrinsic('%ArrayBuffer%'); // $ExpectType ArrayBufferConstructor GetIntrinsic('%ArrayBuffer.prototype%'); // $ExpectType ArrayBuffer @@ -46,17 +48,17 @@ declare const boolean: boolean; GetIntrinsic('%Date.prototype%'); // $ExpectType Date GetIntrinsic('%DatePrototype%'); // $ExpectType Date - GetIntrinsic('%decodeURI%'); // $ExpectType (encodedURI: string) => string - GetIntrinsic('%decodeURIComponent%'); // $ExpectType (encodedURIComponent: string) => string + expectType(GetIntrinsic('%decodeURI%')); + expectType(GetIntrinsic('%decodeURIComponent%')); - GetIntrinsic('%encodeURI%'); // $ExpectType (uri: string) => string - GetIntrinsic('%encodeURIComponent%'); // $ExpectType (uriComponent: string | number | boolean) => string + expectType(GetIntrinsic('%encodeURI%')); + expectType(GetIntrinsic('%encodeURIComponent%')); GetIntrinsic('%Error%'); // $ExpectType ErrorConstructor GetIntrinsic('%Error.prototype%'); // $ExpectType Error GetIntrinsic('%ErrorPrototype%'); // $ExpectType Error - GetIntrinsic('%eval%'); // $ExpectType (x: string) => any + expectType(GetIntrinsic('%eval%')); GetIntrinsic('%EvalError%'); // $ExpectType EvalErrorConstructor GetIntrinsic('%EvalError.prototype%'); // $ExpectType EvalError @@ -91,11 +93,13 @@ declare const boolean: boolean; GetIntrinsic('%Int32Array.prototype%'); // $ExpectType Int32Array GetIntrinsic('%Int32ArrayPrototype%'); // $ExpectType Int32Array - GetIntrinsic('%isFinite%'); // $ExpectType (number: number) => boolean - GetIntrinsic('%isNaN%'); // $ExpectType (number: number) => boolean + expectType(GetIntrinsic('%isFinite%')); + expectType(GetIntrinsic('%isNaN%')); GetIntrinsic('%JSON%'); // $ExpectType JSON - GetIntrinsic('%JSONParse%'); // $ExpectType (text: string, reviver?: ((this: any, key: string, value: any) => any) | undefined) => any + expectType(GetIntrinsic('%JSON.parse%')); + expectType(GetIntrinsic('%JSONParse%')); + expectType(GetIntrinsic('%JSON.stringify%')); GetIntrinsic('%Map%'); // $ExpectType MapConstructor GetIntrinsic('%Map.prototype%'); // $ExpectType Map @@ -110,21 +114,24 @@ declare const boolean: boolean; GetIntrinsic('%Object%'); // $ExpectType ObjectConstructor GetIntrinsic('%Object.prototype%'); // $ExpectType Object - GetIntrinsic('%ObjectPrototype%'); // $ExpectType Object - GetIntrinsic('%ObjProto_toString%'); // $ExpectType () => string - GetIntrinsic('%ObjProto_valueOf%'); // $ExpectType () => Object + expectType(GetIntrinsic('%Object.prototype.toString%')); + expectType(GetIntrinsic('%Object.prototype.valueOf%')); - GetIntrinsic('%parseFloat%'); // $ExpectType (string: string) => number - GetIntrinsic('%parseInt%'); // $ExpectType (s: string, radix?: number | undefined) => number + GetIntrinsic('%ObjectPrototype%'); // $ExpectType Object + expectType(GetIntrinsic('%ObjProto_toString%')); + expectType(GetIntrinsic('%ObjProto_valueOf%')); + + expectType(GetIntrinsic('%parseFloat%')); + expectType(GetIntrinsic('%parseInt%')); GetIntrinsic('%Promise%'); // $ExpectType PromiseConstructor GetIntrinsic('%Promise.prototype%'); // $ExpectType Promise - GetIntrinsic('%Promise.reject%'); // $ExpectType (reason?: any) => Promise - GetIntrinsic('%Promise.resolve%'); // $ExpectType { (value: T | PromiseLike): Promise; (): Promise; } + expectType(GetIntrinsic('%Promise.reject%')); + expectType(GetIntrinsic('%Promise.resolve%')); GetIntrinsic('%PromisePrototype%'); // $ExpectType Promise - GetIntrinsic('%Promise_reject%'); // $ExpectType (reason?: any) => Promise - GetIntrinsic('%Promise_resolve%'); // $ExpectType { (value: T | PromiseLike): Promise; (): Promise; } + expectType(GetIntrinsic('%Promise_reject%')); + expectType(GetIntrinsic('%Promise_resolve%')); GetIntrinsic('%Proxy%'); // $ExpectType ProxyConstructor @@ -209,16 +216,16 @@ declare const boolean: boolean; { GetIntrinsic('%Array%', false); // $ExpectType ArrayConstructor GetIntrinsic('%Array.prototype%', false); // $ExpectType any[] - GetIntrinsic('%Array.prototype.entries%', false); // $ExpectType () => IterableIterator<[number, any]> - GetIntrinsic('%Array.prototype.forEach%', false); // $ExpectType (callbackfn: (value: any, index: number, array: any[]) => void, thisArg?: any) => void - GetIntrinsic('%Array.prototype.keys%', false); // $ExpectType () => IterableIterator - GetIntrinsic('%Array.prototype.values%', false); // $ExpectType () => IterableIterator + expectType(GetIntrinsic('%Array.prototype.entries%', false)); + expectType(GetIntrinsic('%Array.prototype.forEach%', false)); + expectType(GetIntrinsic('%Array.prototype.keys%', false)); + expectType(GetIntrinsic('%Array.prototype.values%', false)); GetIntrinsic('%ArrayPrototype%', false); // $ExpectType any[] - GetIntrinsic('%ArrayProto_entries%', false); // $ExpectType () => IterableIterator<[number, any]> - GetIntrinsic('%ArrayProto_forEach%', false); // $ExpectType (callbackfn: (value: any, index: number, array: any[]) => void, thisArg?: any) => void - GetIntrinsic('%ArrayProto_keys%', false); // $ExpectType () => IterableIterator - GetIntrinsic('%ArrayProto_values%', false); // $ExpectType () => IterableIterator + expectType(GetIntrinsic('%ArrayProto_entries%', false)); + expectType(GetIntrinsic('%ArrayProto_forEach%', false)); + expectType(GetIntrinsic('%ArrayProto_keys%', false)); + expectType(GetIntrinsic('%ArrayProto_values%', false)); GetIntrinsic('%ArrayBuffer%', false); // $ExpectType ArrayBufferConstructor GetIntrinsic('%ArrayBuffer.prototype%', false); // $ExpectType ArrayBuffer @@ -250,17 +257,17 @@ declare const boolean: boolean; GetIntrinsic('%Date.prototype%', false); // $ExpectType Date GetIntrinsic('%DatePrototype%', false); // $ExpectType Date - GetIntrinsic('%decodeURI%', false); // $ExpectType (encodedURI: string) => string - GetIntrinsic('%decodeURIComponent%', false); // $ExpectType (encodedURIComponent: string) => string + expectType(GetIntrinsic('%decodeURI%', false)); + expectType(GetIntrinsic('%decodeURIComponent%', false)); - GetIntrinsic('%encodeURI%', false); // $ExpectType (uri: string) => string - GetIntrinsic('%encodeURIComponent%', false); // $ExpectType (uriComponent: string | number | boolean) => string + expectType(GetIntrinsic('%encodeURI%', false)); + expectType(GetIntrinsic('%encodeURIComponent%', false)); GetIntrinsic('%Error%', false); // $ExpectType ErrorConstructor GetIntrinsic('%Error.prototype%', false); // $ExpectType Error GetIntrinsic('%ErrorPrototype%', false); // $ExpectType Error - GetIntrinsic('%eval%', false); // $ExpectType (x: string) => any + expectType(GetIntrinsic('%eval%', false)); GetIntrinsic('%EvalError%', false); // $ExpectType EvalErrorConstructor GetIntrinsic('%EvalError.prototype%', false); // $ExpectType EvalError @@ -295,11 +302,13 @@ declare const boolean: boolean; GetIntrinsic('%Int32Array.prototype%', false); // $ExpectType Int32Array GetIntrinsic('%Int32ArrayPrototype%', false); // $ExpectType Int32Array - GetIntrinsic('%isFinite%', false); // $ExpectType (number: number) => boolean - GetIntrinsic('%isNaN%', false); // $ExpectType (number: number) => boolean + expectType(GetIntrinsic('%isFinite%', false)); + expectType(GetIntrinsic('%isNaN%', false)); GetIntrinsic('%JSON%', false); // $ExpectType JSON - GetIntrinsic('%JSONParse%', false); // $ExpectType (text: string, reviver?: ((this: any, key: string, value: any) => any) | undefined) => any + expectType(GetIntrinsic('%JSON.parse%', false)); + expectType(GetIntrinsic('%JSONParse%', false)); + expectType(GetIntrinsic('%JSON.stringify%', false)); GetIntrinsic('%Map%', false); // $ExpectType MapConstructor GetIntrinsic('%Map.prototype%', false); // $ExpectType Map @@ -314,21 +323,24 @@ declare const boolean: boolean; GetIntrinsic('%Object%', false); // $ExpectType ObjectConstructor GetIntrinsic('%Object.prototype%', false); // $ExpectType Object - GetIntrinsic('%ObjectPrototype%', false); // $ExpectType Object - GetIntrinsic('%ObjProto_toString%', false); // $ExpectType () => string - GetIntrinsic('%ObjProto_valueOf%', false); // $ExpectType () => Object + expectType(GetIntrinsic('%Object.prototype.toString%', false)); + expectType(GetIntrinsic('%Object.prototype.valueOf%', false)); - GetIntrinsic('%parseFloat%', false); // $ExpectType (string: string) => number - GetIntrinsic('%parseInt%', false); // $ExpectType (s: string, radix?: number | undefined) => number + GetIntrinsic('%ObjectPrototype%', false); // $ExpectType Object + expectType(GetIntrinsic('%ObjProto_toString%', false)); + expectType(GetIntrinsic('%ObjProto_valueOf%', false)); + + expectType(GetIntrinsic('%parseFloat%', false)); + expectType(GetIntrinsic('%parseInt%', false)); GetIntrinsic('%Promise%', false); // $ExpectType PromiseConstructor GetIntrinsic('%Promise.prototype%', false); // $ExpectType Promise - GetIntrinsic('%Promise.reject%', false); // $ExpectType (reason?: any) => Promise - GetIntrinsic('%Promise.resolve%', false); // $ExpectType { (value: T | PromiseLike): Promise; (): Promise; } + expectType(GetIntrinsic('%Promise.reject%', false)); + expectType(GetIntrinsic('%Promise.resolve%', false)); GetIntrinsic('%PromisePrototype%', false); // $ExpectType Promise - GetIntrinsic('%Promise_reject%', false); // $ExpectType (reason?: any) => Promise - GetIntrinsic('%Promise_resolve%', false); // $ExpectType { (value: T | PromiseLike): Promise; (): Promise; } + expectType(GetIntrinsic('%Promise_reject%', false)); + expectType(GetIntrinsic('%Promise_resolve%', false)); GetIntrinsic('%Proxy%', false); // $ExpectType ProxyConstructor @@ -413,16 +425,16 @@ declare const boolean: boolean; { GetIntrinsic('%Array%', true); // $ExpectType ArrayConstructor | undefined GetIntrinsic('%Array.prototype%', true); // $ExpectType any[] | undefined - GetIntrinsic('%Array.prototype.entries%', true); // $ExpectType (() => IterableIterator<[number, any]>) | undefined - GetIntrinsic('%Array.prototype.forEach%', true); // $ExpectType ((callbackfn: (value: any, index: number, array: any[]) => void, thisArg?: any) => void) | undefined - GetIntrinsic('%Array.prototype.keys%', true); // $ExpectType (() => IterableIterator) | undefined - GetIntrinsic('%Array.prototype.values%', true); // $ExpectType (() => IterableIterator) | undefined + expectType(GetIntrinsic('%Array.prototype.entries%', true)); + expectType(GetIntrinsic('%Array.prototype.forEach%', true)); + expectType(GetIntrinsic('%Array.prototype.keys%', true)); + expectType(GetIntrinsic('%Array.prototype.values%', true)); GetIntrinsic('%ArrayPrototype%', true); // $ExpectType any[] | undefined - GetIntrinsic('%ArrayProto_entries%', true); // $ExpectType (() => IterableIterator<[number, any]>) | undefined - GetIntrinsic('%ArrayProto_forEach%', true); // $ExpectType ((callbackfn: (value: any, index: number, array: any[]) => void, thisArg?: any) => void) | undefined - GetIntrinsic('%ArrayProto_keys%', true); // $ExpectType (() => IterableIterator) | undefined - GetIntrinsic('%ArrayProto_values%', true); // $ExpectType (() => IterableIterator) | undefined + expectType(GetIntrinsic('%ArrayProto_entries%', true)); + expectType(GetIntrinsic('%ArrayProto_forEach%', true)); + expectType(GetIntrinsic('%ArrayProto_keys%', true)); + expectType(GetIntrinsic('%ArrayProto_values%', true)); GetIntrinsic('%ArrayBuffer%', true); // $ExpectType ArrayBufferConstructor | undefined GetIntrinsic('%ArrayBuffer.prototype%', true); // $ExpectType ArrayBuffer | undefined @@ -454,17 +466,17 @@ declare const boolean: boolean; GetIntrinsic('%Date.prototype%', true); // $ExpectType Date | undefined GetIntrinsic('%DatePrototype%', true); // $ExpectType Date | undefined - GetIntrinsic('%decodeURI%', true); // $ExpectType ((encodedURI: string) => string) | undefined - GetIntrinsic('%decodeURIComponent%', true); // $ExpectType ((encodedURIComponent: string) => string) | undefined + expectType(GetIntrinsic('%decodeURI%', true)); + expectType(GetIntrinsic('%decodeURIComponent%', true)); - GetIntrinsic('%encodeURI%', true); // $ExpectType ((uri: string) => string) | undefined - GetIntrinsic('%encodeURIComponent%', true); // $ExpectType ((uriComponent: string | number | boolean) => string) | undefined + expectType(GetIntrinsic('%encodeURI%', true)); + expectType(GetIntrinsic('%encodeURIComponent%', true)); GetIntrinsic('%Error%', true); // $ExpectType ErrorConstructor | undefined GetIntrinsic('%Error.prototype%', true); // $ExpectType Error | undefined GetIntrinsic('%ErrorPrototype%', true); // $ExpectType Error | undefined - GetIntrinsic('%eval%', true); // $ExpectType ((x: string) => any) | undefined + expectType(GetIntrinsic('%eval%', true)); GetIntrinsic('%EvalError%', true); // $ExpectType EvalErrorConstructor | undefined GetIntrinsic('%EvalError.prototype%', true); // $ExpectType EvalError | undefined @@ -499,11 +511,13 @@ declare const boolean: boolean; GetIntrinsic('%Int32Array.prototype%', true); // $ExpectType Int32Array | undefined GetIntrinsic('%Int32ArrayPrototype%', true); // $ExpectType Int32Array | undefined - GetIntrinsic('%isFinite%', true); // $ExpectType ((number: number) => boolean) | undefined - GetIntrinsic('%isNaN%', true); // $ExpectType ((number: number) => boolean) | undefined + expectType(GetIntrinsic('%isFinite%', true)); + expectType(GetIntrinsic('%isNaN%', true)); GetIntrinsic('%JSON%', true); // $ExpectType JSON | undefined - GetIntrinsic('%JSONParse%', true); // $ExpectType ((text: string, reviver?: ((this: any, key: string, value: any) => any) | undefined) => any) | undefined + expectType(GetIntrinsic('%JSON.parse%', true)); + expectType(GetIntrinsic('%JSONParse%', true)); + expectType(GetIntrinsic('%JSON.stringify%', true)); GetIntrinsic('%Map%', true); // $ExpectType MapConstructor | undefined GetIntrinsic('%Map.prototype%', true); // $ExpectType Map | undefined @@ -518,21 +532,24 @@ declare const boolean: boolean; GetIntrinsic('%Object%', true); // $ExpectType ObjectConstructor | undefined GetIntrinsic('%Object.prototype%', true); // $ExpectType Object | undefined - GetIntrinsic('%ObjectPrototype%', true); // $ExpectType Object | undefined - GetIntrinsic('%ObjProto_toString%', true); // $ExpectType (() => string) | undefined - GetIntrinsic('%ObjProto_valueOf%', true); // $ExpectType (() => Object) | undefined + expectType(GetIntrinsic('%Object.prototype.toString%', true)); + expectType(GetIntrinsic('%Object.prototype.valueOf%', true)); - GetIntrinsic('%parseFloat%', true); // $ExpectType ((string: string) => number) | undefined - GetIntrinsic('%parseInt%', true); // $ExpectType ((s: string, radix?: number | undefined) => number) | undefined + GetIntrinsic('%ObjectPrototype%', true); // $ExpectType Object | undefined + expectType(GetIntrinsic('%ObjProto_toString%', true)); + expectType(GetIntrinsic('%ObjProto_valueOf%', true)); + + expectType(GetIntrinsic('%parseFloat%', true)); + expectType(GetIntrinsic('%parseInt%', true)); GetIntrinsic('%Promise%', true); // $ExpectType PromiseConstructor | undefined GetIntrinsic('%Promise.prototype%', true); // $ExpectType Promise | undefined - GetIntrinsic('%Promise.reject%', true); // $ExpectType ((reason?: any) => Promise) | undefined - GetIntrinsic('%Promise.resolve%', true); // $ExpectType { (value: T | PromiseLike): Promise; (): Promise; } | undefined + expectType(GetIntrinsic('%Promise.reject%', true)); + expectType(GetIntrinsic('%Promise.resolve%', true)); GetIntrinsic('%PromisePrototype%', true); // $ExpectType Promise | undefined - GetIntrinsic('%Promise_reject%', true); // $ExpectType ((reason?: any) => Promise) | undefined - GetIntrinsic('%Promise_resolve%', true); // $ExpectType { (value: T | PromiseLike): Promise; (): Promise; } | undefined + expectType(GetIntrinsic('%Promise_reject%', true)); + expectType(GetIntrinsic('%Promise_resolve%', true)); GetIntrinsic('%Proxy%', true); // $ExpectType ProxyConstructor | undefined @@ -617,16 +634,16 @@ declare const boolean: boolean; { GetIntrinsic('%Array%', boolean); // $ExpectType ArrayConstructor | undefined GetIntrinsic('%Array.prototype%', boolean); // $ExpectType any[] | undefined - GetIntrinsic('%Array.prototype.entries%', boolean); // $ExpectType (() => IterableIterator<[number, any]>) | undefined - GetIntrinsic('%Array.prototype.forEach%', boolean); // $ExpectType ((callbackfn: (value: any, index: number, array: any[]) => void, thisArg?: any) => void) | undefined - GetIntrinsic('%Array.prototype.keys%', boolean); // $ExpectType (() => IterableIterator) | undefined - GetIntrinsic('%Array.prototype.values%', boolean); // $ExpectType (() => IterableIterator) | undefined + expectType(GetIntrinsic('%Array.prototype.entries%', boolean)); + expectType(GetIntrinsic('%Array.prototype.forEach%', boolean)); + expectType(GetIntrinsic('%Array.prototype.keys%', boolean)); + expectType(GetIntrinsic('%Array.prototype.values%', boolean)); GetIntrinsic('%ArrayPrototype%', boolean); // $ExpectType any[] | undefined - GetIntrinsic('%ArrayProto_entries%', boolean); // $ExpectType (() => IterableIterator<[number, any]>) | undefined - GetIntrinsic('%ArrayProto_forEach%', boolean); // $ExpectType ((callbackfn: (value: any, index: number, array: any[]) => void, thisArg?: any) => void) | undefined - GetIntrinsic('%ArrayProto_keys%', boolean); // $ExpectType (() => IterableIterator) | undefined - GetIntrinsic('%ArrayProto_values%', boolean); // $ExpectType (() => IterableIterator) | undefined + expectType(GetIntrinsic('%ArrayProto_entries%', boolean)); + expectType(GetIntrinsic('%ArrayProto_forEach%', boolean)); + expectType(GetIntrinsic('%ArrayProto_keys%', boolean)); + expectType(GetIntrinsic('%ArrayProto_values%', boolean)); GetIntrinsic('%ArrayBuffer%', boolean); // $ExpectType ArrayBufferConstructor | undefined GetIntrinsic('%ArrayBuffer.prototype%', boolean); // $ExpectType ArrayBuffer | undefined @@ -658,17 +675,17 @@ declare const boolean: boolean; GetIntrinsic('%Date.prototype%', boolean); // $ExpectType Date | undefined GetIntrinsic('%DatePrototype%', boolean); // $ExpectType Date | undefined - GetIntrinsic('%decodeURI%', boolean); // $ExpectType ((encodedURI: string) => string) | undefined - GetIntrinsic('%decodeURIComponent%', boolean); // $ExpectType ((encodedURIComponent: string) => string) | undefined + expectType(GetIntrinsic('%decodeURI%', boolean)); + expectType(GetIntrinsic('%decodeURIComponent%', boolean)); - GetIntrinsic('%encodeURI%', boolean); // $ExpectType ((uri: string) => string) | undefined - GetIntrinsic('%encodeURIComponent%', boolean); // $ExpectType ((uriComponent: string | number | boolean) => string) | undefined + expectType(GetIntrinsic('%encodeURI%', boolean)); + expectType(GetIntrinsic('%encodeURIComponent%', boolean)); GetIntrinsic('%Error%', boolean); // $ExpectType ErrorConstructor | undefined GetIntrinsic('%Error.prototype%', boolean); // $ExpectType Error | undefined GetIntrinsic('%ErrorPrototype%', boolean); // $ExpectType Error | undefined - GetIntrinsic('%eval%', boolean); // $ExpectType ((x: string) => any) | undefined + expectType(GetIntrinsic('%eval%', boolean)); GetIntrinsic('%EvalError%', boolean); // $ExpectType EvalErrorConstructor | undefined GetIntrinsic('%EvalError.prototype%', boolean); // $ExpectType EvalError | undefined @@ -703,11 +720,13 @@ declare const boolean: boolean; GetIntrinsic('%Int32Array.prototype%', boolean); // $ExpectType Int32Array | undefined GetIntrinsic('%Int32ArrayPrototype%', boolean); // $ExpectType Int32Array | undefined - GetIntrinsic('%isFinite%', boolean); // $ExpectType ((number: number) => boolean) | undefined - GetIntrinsic('%isNaN%', boolean); // $ExpectType ((number: number) => boolean) | undefined + expectType(GetIntrinsic('%isFinite%', boolean)); + expectType(GetIntrinsic('%isNaN%', boolean)); GetIntrinsic('%JSON%', boolean); // $ExpectType JSON | undefined - GetIntrinsic('%JSONParse%', boolean); // $ExpectType ((text: string, reviver?: ((this: any, key: string, value: any) => any) | undefined) => any) | undefined + expectType(GetIntrinsic('%JSON.parse%', boolean)); + expectType(GetIntrinsic('%JSONParse%', boolean)); + expectType(GetIntrinsic('%JSON.stringify%', boolean)); GetIntrinsic('%Map%', boolean); // $ExpectType MapConstructor | undefined GetIntrinsic('%Map.prototype%', boolean); // $ExpectType Map | undefined @@ -722,21 +741,24 @@ declare const boolean: boolean; GetIntrinsic('%Object%', boolean); // $ExpectType ObjectConstructor | undefined GetIntrinsic('%Object.prototype%', boolean); // $ExpectType Object | undefined - GetIntrinsic('%ObjectPrototype%', boolean); // $ExpectType Object | undefined - GetIntrinsic('%ObjProto_toString%', boolean); // $ExpectType (() => string) | undefined - GetIntrinsic('%ObjProto_valueOf%', boolean); // $ExpectType (() => Object) | undefined + expectType(GetIntrinsic('%Object.prototype.toString%', boolean)); + expectType(GetIntrinsic('%Object.prototype.valueOf%', boolean)); - GetIntrinsic('%parseFloat%', boolean); // $ExpectType ((string: string) => number) | undefined - GetIntrinsic('%parseInt%', boolean); // $ExpectType ((s: string, radix?: number | undefined) => number) | undefined + GetIntrinsic('%ObjectPrototype%', boolean); // $ExpectType Object | undefined + expectType(GetIntrinsic('%ObjProto_toString%', boolean)); + expectType(GetIntrinsic('%ObjProto_valueOf%', boolean)); + + expectType(GetIntrinsic('%parseFloat%', boolean)); + expectType(GetIntrinsic('%parseInt%', boolean)); GetIntrinsic('%Promise%', boolean); // $ExpectType PromiseConstructor | undefined GetIntrinsic('%Promise.prototype%', boolean); // $ExpectType Promise | undefined - GetIntrinsic('%Promise.reject%', boolean); // $ExpectType ((reason?: any) => Promise) | undefined - GetIntrinsic('%Promise.resolve%', boolean); // $ExpectType { (value: T | PromiseLike): Promise; (): Promise; } | undefined + expectType(GetIntrinsic('%Promise.reject%', boolean)); + expectType(GetIntrinsic('%Promise.resolve%', boolean)); GetIntrinsic('%PromisePrototype%', boolean); // $ExpectType Promise | undefined - GetIntrinsic('%Promise_reject%', boolean); // $ExpectType ((reason?: any) => Promise) | undefined - GetIntrinsic('%Promise_resolve%', boolean); // $ExpectType { (value: T | PromiseLike): Promise; (): Promise; } | undefined + expectType(GetIntrinsic('%Promise_reject%', boolean)); + expectType(GetIntrinsic('%Promise_resolve%', boolean)); GetIntrinsic('%Proxy%', boolean); // $ExpectType ProxyConstructor | undefined