declare module "catbox-v8" { type Transferable = | null | undefined | string | number | boolean | Isolate | Context | Script | ExternalCopy | Copy | Reference | Dereference | Module; /** * This is the main reference to an isolate. Every handle to an isolate is * transferable, which means you can give isolates references to each other. An * isolate will remain valid as long as someone holds a handle to the isolate or * anything created inside that isolate. Once an isolate is lost the garbage * collector should eventually find it and clean up its memory. Since an isolate * and all it contains can represent quite a large chunk of memory though you * may want to explicitly call the dispose() method on isolates that you are * finished with to get that memory back immediately. */ export class Isolate { constructor(options?: IsolateOptions); /** * Isolate snapshots are a very useful feature if you intend to create * several isolates running common libraries between them. A snapshot * serializes the entire v8 heap including parsed code, global variables, * and compiled code. */ static createSnapshot( scripts: ScriptCode[], warmup_script?: string ): ExternalCopy; compileScript(code: string, scriptInfo?: ScriptInfo): Promise