import type { EmscriptenModule, WasmFnPtr } from './types.js'; import { HandleTable } from './handle-table.js'; /** * Manages WASM callback function pointers and JS state handles. * * Uses the Emscripten module's native addFunction/removeFunction * for callback registration. Tracks all outstanding pointers for * bulk cleanup via dispose(). */ export declare class CallbackRegistry { private readonly mod; readonly handles: HandleTable; private readonly ptrs; constructor(mod: EmscriptenModule); addCallback(sig: string, fn: Function): WasmFnPtr; removeCallback(ptr: WasmFnPtr): void; createHandle(value: T): number; getHandle(id: number): T; deleteHandle(id: number): void; dispose(): void; get outstandingCallbacks(): number; get outstandingHandles(): number; } //# sourceMappingURL=callback-registry.d.ts.map