From b2fdd4df7e00cb316d5fc0a93e790874560b0c92 Mon Sep 17 00:00:00 2001 From: HoonDongKang Date: Wed, 29 Jul 2026 14:16:03 +0900 Subject: [PATCH] typings: add heap_utils internalBinding types Add typings for the heap_utils internal binding and register it in InternalBindingMap. Signed-off-by: HoonDongKang --- typings/globals.d.ts | 10 ++++++---- typings/internalBinding/heap_utils.d.ts | 17 +++++++++++++++++ 2 files changed, 23 insertions(+), 4 deletions(-) create mode 100644 typings/internalBinding/heap_utils.d.ts diff --git a/typings/globals.d.ts b/typings/globals.d.ts index 1ae7088ca7e7ee..83fcec8e19a5cd 100644 --- a/typings/globals.d.ts +++ b/typings/globals.d.ts @@ -8,14 +8,16 @@ import { ConstantsBinding } from './internalBinding/constants'; import { CryptoBinding } from './internalBinding/crypto'; import { DebugBinding } from './internalBinding/debug'; import { EncodingBinding } from './internalBinding/encoding_binding'; -import { HttpParserBinding } from './internalBinding/http_parser'; -import { InspectorBinding } from './internalBinding/inspector'; -import { IPCSerdesBinding } from './internalBinding/ipc_serdes'; import { FsBinding } from './internalBinding/fs'; import { FsDirBinding } from './internalBinding/fs_dir'; +import { HeapUtilsBinding } from './internalBinding/heap_utils'; +import { HttpParserBinding } from './internalBinding/http_parser'; import { ICUBinding } from './internalBinding/icu'; +import { InspectorBinding } from './internalBinding/inspector'; +import { IPCSerdesBinding } from './internalBinding/ipc_serdes'; import { LocksBinding } from './internalBinding/locks'; import { MessagingBinding } from './internalBinding/messaging'; +import { ModulesBinding } from './internalBinding/modules'; import { OptionsBinding } from './internalBinding/options'; import { OSBinding } from './internalBinding/os'; import { ProcessBinding } from './internalBinding/process'; @@ -32,7 +34,6 @@ import { UtilBinding } from './internalBinding/util'; import { UVBinding } from './internalBinding/uv'; import { WASIBinding } from './internalBinding/wasi'; import { WorkerBinding } from './internalBinding/worker'; -import { ModulesBinding } from './internalBinding/modules'; import { ZlibBinding } from './internalBinding/zlib'; interface InternalBindingMap { @@ -48,6 +49,7 @@ interface InternalBindingMap { encoding_binding: EncodingBinding; fs: FsBinding; fs_dir: FsDirBinding; + heap_utils: HeapUtilsBinding; http_parser: HttpParserBinding; icu: ICUBinding; inspector: InspectorBinding; diff --git a/typings/internalBinding/heap_utils.d.ts b/typings/internalBinding/heap_utils.d.ts new file mode 100644 index 00000000000000..506adf61beb510 --- /dev/null +++ b/typings/internalBinding/heap_utils.d.ts @@ -0,0 +1,17 @@ +import { owner_symbol } from './symbols'; + +declare namespace InternalHeapUtilsBinding { + interface HeapSnapshotStreamHandle { + [owner_symbol]?: object; + onread?: (arrayBuffer: ArrayBuffer | undefined) => void; + readStart(): number; + } +} + +export interface HeapUtilsBinding { + buildEmbedderGraph(): object[]; + triggerHeapSnapshot(filename: string | undefined, options: Uint8Array): string; + createHeapSnapshotStream( + options: Uint8Array, + ): InternalHeapUtilsBinding.HeapSnapshotStreamHandle; +}