import { WASIContextOptions } from "../wasi/wasi-context.js"; import type { WASIExecutionResult } from "../types.js"; type WorkerWASIContext = Partial>; type StartWorkerMessage = { target: "client"; type: "start"; binaryURL: string; stdinBuffer: SharedArrayBuffer; } & WorkerWASIContext; export type WorkerMessage = StartWorkerMessage; type StdoutHostMessage = { target: "host"; type: "stdout"; text: string; }; type StderrHostMessage = { target: "host"; type: "stderr"; text: string; }; type DebugHostMessage = { target: "host"; type: "debug"; name: string; args: string[]; ret: number; data: { [key: string]: any; }[]; }; type ResultHostMessage = { target: "host"; type: "result"; result: WASIExecutionResult; }; type CrashHostMessage = { target: "host"; type: "crash"; error: { message: string; type: string; }; }; export type HostMessage = StdoutHostMessage | StderrHostMessage | DebugHostMessage | ResultHostMessage | CrashHostMessage; export {};