Skip to content

Commit 76bc4d6

Browse files
targosRafaelGSS
authored andcommitted
typings: improve internal binding types
- Add typings for `async_context_frame`, `icu`, and `sea` bindings - Add a few missing exports on other bindings - Add a few missing primordials PR-URL: #59176 Reviewed-By: Zeyu "Alex" Yang <himself65@outlook.com> Reviewed-By: Yagiz Nizipli <yagiz@nizipli.com>
1 parent 244d0c3 commit 76bc4d6

9 files changed

Lines changed: 72 additions & 1 deletion

File tree

‎typings/globals.d.ts‎

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
1+
import{AsyncContextFrameBinding}from'./internalBinding/async_context_frame';
12
import{AsyncWrapBinding}from'./internalBinding/async_wrap';
23
import{BlobBinding}from'./internalBinding/blob';
34
import{ConfigBinding}from'./internalBinding/config';
@@ -7,11 +8,13 @@ import { HttpParserBinding } from './internalBinding/http_parser';
78
import{InspectorBinding}from'./internalBinding/inspector';
89
import{FsBinding}from'./internalBinding/fs';
910
import{FsDirBinding}from'./internalBinding/fs_dir';
11+
import{ICUBinding}from'./internalBinding/icu';
1012
import{LocksBinding}from'./internalBinding/locks';
1113
import{MessagingBinding}from'./internalBinding/messaging';
1214
import{OptionsBinding}from'./internalBinding/options';
1315
import{OSBinding}from'./internalBinding/os';
1416
import{ProcessBinding}from'./internalBinding/process';
17+
import{SeaBinding}from'./internalBinding/sea';
1518
import{SerdesBinding}from'./internalBinding/serdes';
1619
import{SymbolsBinding}from'./internalBinding/symbols';
1720
import{TimersBinding}from'./internalBinding/timers';
@@ -25,6 +28,7 @@ import { ModulesBinding } from './internalBinding/modules';
2528
import{ZlibBinding}from'./internalBinding/zlib';
2629

2730
interfaceInternalBindingMap{
31+
async_context_frame: AsyncContextFrameBinding;
2832
async_wrap: AsyncWrapBinding;
2933
blob: BlobBinding;
3034
config: ConfigBinding;
@@ -33,13 +37,15 @@ interface InternalBindingMap {
3337
fs: FsBinding;
3438
fs_dir: FsDirBinding;
3539
http_parser: HttpParserBinding;
40+
icu: ICUBinding;
3641
inspector: InspectorBinding;
3742
locks: LocksBinding;
3843
messaging: MessagingBinding;
3944
modules: ModulesBinding;
4045
options: OptionsBinding;
4146
os: OSBinding;
4247
process: ProcessBinding;
48+
sea: SeaBinding;
4349
serdes: SerdesBinding;
4450
symbols: SymbolsBinding;
4551
timers: TimersBinding;
@@ -65,6 +71,7 @@ declare global {
6571
|Int8Array
6672
|Int16Array
6773
|Int32Array
74+
|Float16Array
6875
|Float32Array
6976
|Float64Array
7077
|BigUint64Array
Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
exportinterfaceAsyncContextFrameBinding{
2+
getContinuationPreservedEmbedderData(): unknown,
3+
setContinuationPreservedEmbedderData(frame: unknown): void,
4+
}

‎typings/internalBinding/constants.d.ts‎

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -287,6 +287,9 @@ export interface ConstantsBinding {
287287
BROTLI_ENCODE: 9;
288288
ZSTD_COMPRESS: 10;
289289
ZSTD_DECOMPRESS: 11;
290+
ZSTD_e_continue: 0;
291+
ZSTD_e_flush: 1;
292+
ZSTD_e_end: 2;
290293
Z_MIN_WINDOWBITS: 8;
291294
Z_MAX_WINDOWBITS: 15;
292295
Z_DEFAULT_WINDOWBITS: 15;

‎typings/internalBinding/http_parser.d.ts‎

Lines changed: 12 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,15 @@ declare namespace InternalHttpParserBinding {
22
typeBuffer=Uint8Array;
33
typeStream=object;
44

5+
classConnectionsList{
6+
constructor();
7+
8+
all(): HTTPParser[];
9+
idle(): HTTPParser[];
10+
active(): HTTPParser[];
11+
expired(): HTTPParser[];
12+
}
13+
514
classHTTPParser{
615
staticREQUEST: 1;
716
staticRESPONSE: 2;
@@ -40,6 +49,8 @@ declare namespace InternalHttpParserBinding {
4049
}
4150

4251
exportinterfaceHttpParserBinding{
43-
methods: string[];
52+
ConnectionsList: typeofInternalHttpParserBinding.ConnectionsList;
4453
HTTPParser: typeofInternalHttpParserBinding.HTTPParser;
54+
allMethods: string[];
55+
methods: string[];
4556
}

‎typings/internalBinding/icu.d.ts‎

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
exportinterfaceICUBinding{
2+
Converter: object;
3+
decode(
4+
converter: object,
5+
input: ArrayBufferView|ArrayBuffer|SharedArrayBuffer,
6+
flags: number,
7+
fromEncoding: string,
8+
): string;
9+
getConverter(label: string,flags: number): object|undefined;
10+
getStringWidth(value: string,ambiguousAsFullWidth?: boolean,expandEmojiSequence?: boolean): number;
11+
hasConverter(label: string): boolean;
12+
icuErrName(status: number): string;
13+
transcode(
14+
input: ArrayBufferView|ArrayBuffer|SharedArrayBuffer,
15+
fromEncoding: string,
16+
toEncoding: string,
17+
): Buffer|number;
18+
}

‎typings/internalBinding/sea.d.ts‎

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
exportinterfaceSeaBinding{
2+
getAsset(key: string): ArrayBuffer|undefined;
3+
isExperimentalSeaWarningNeeded(): boolean;
4+
isSea(): boolean;
5+
}

‎typings/internalBinding/symbols.d.ts‎

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
exportconstasync_id_symbol: unique symbol;
22
exportconsthandle_onclose_symbol: unique symbol;
3+
exportconstimported_cjs_symbol: unique symbol;
34
exportconstno_message_symbol: unique symbol;
45
exportconstmessaging_deserialize_symbol: unique symbol;
56
exportconstmessaging_transfer_symbol: unique symbol;
@@ -13,6 +14,7 @@ export const trigger_async_id_symbol: unique symbol;
1314
exportinterfaceSymbolsBinding{
1415
async_id_symbol: typeofasync_id_symbol;
1516
handle_onclose_symbol: typeofhandle_onclose_symbol;
17+
imported_cjs_symbol: typeofimported_cjs_symbol;
1618
no_message_symbol: typeofno_message_symbol;
1719
messaging_deserialize_symbol: typeofmessaging_deserialize_symbol;
1820
messaging_transfer_symbol: typeofmessaging_transfer_symbol;

‎typings/internalBinding/util.d.ts‎

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -46,4 +46,22 @@ export interface UtilBinding {
4646
parseEnv(content: string): Record<string,string>;
4747
styleText(format: Array<string>|string,text: string): string;
4848
isInsideNodeModules(frameLimit: number,defaultValue: unknown): boolean;
49+
50+
constants: {
51+
kPending: 0;
52+
kFulfilled: 1;
53+
kRejected: 2;
54+
kExiting: 0;
55+
kExitCode: 1;
56+
kHasExitCode: 2;
57+
ALL_PROPERTIES: 0;
58+
ONLY_WRITABLE: 1;
59+
ONLY_ENUMERABLE: 2;
60+
ONLY_CONFIGURABLE: 4;
61+
SKIP_STRINGS: 8;
62+
SKIP_SYMBOLS: 16;
63+
kDisallowCloneAndTransfer: 0;
64+
kTransferable: 1;
65+
kCloneable: 2;
66+
};
4967
}

‎typings/primordials.d.ts‎

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -280,6 +280,7 @@ declare namespace primordials {
280280
exportconstFunctionPrototypeApply: UncurryThis<typeofFunction.prototype.apply>
281281
exportconstFunctionPrototypeBind: UncurryThis<typeofFunction.prototype.bind>
282282
exportconstFunctionPrototypeCall: UncurryThis<typeofFunction.prototype.call>
283+
exportconstFunctionPrototypeSymbolHasInstance: UncurryMethod<typeofFunction.prototype,typeofSymbol.hasInstance>
283284
exportconstFunctionPrototypeToString: UncurryThis<typeofFunction.prototype.toString>
284285
exportimportInt16Array=globalThis.Int16Array;
285286
exportconstInt16ArrayPrototype: typeofInt16Array.prototype
@@ -371,6 +372,8 @@ declare namespace primordials {
371372
exportconstRegExpPrototypeGetSource: UncurryGetter<typeofRegExp.prototype,"source">;
372373
exportconstRegExpPrototypeGetSticky: UncurryGetter<typeofRegExp.prototype,"sticky">;
373374
exportconstRegExpPrototypeGetUnicode: UncurryGetter<typeofRegExp.prototype,"unicode">;
375+
exportconstRegExpPrototypeSymbolReplace: UncurryMethod<typeofRegExp.prototype,typeofSymbol.replace>
376+
exportconstRegExpPrototypeSymbolSplit: UncurryMethod<typeofRegExp.prototype,typeofSymbol.split>
374377
exportimportSet=globalThis.Set;
375378
exportconstSetLength: typeofSet.length
376379
exportconstSetName: typeofSet.name

0 commit comments

Comments
 (0)