import { type SupervisedRunnerResult } from "./child-runner-supervisor.js"; import { ServerProcessRegistry, type ProcessIdentity } from "./processes.js"; import type { WorkflowRunnerLaunchEnvelope, RunnerOutcome } from "./state.js"; import { type WorkflowRunnerMessage, type WorkflowRunnerResponse } from "./workflow-runner-protocol.js"; export type WorkflowRunnerResult = SupervisedRunnerResult; export declare class WorkflowRunnerSupervisor { readonly envelope: WorkflowRunnerLaunchEnvelope; private readonly options; private readonly supervisor; constructor(envelope: WorkflowRunnerLaunchEnvelope, options: { registry: ServerProcessRegistry; onMessage: (message: WorkflowRunnerMessage) => Promise; env?: Record; startupTimeoutMs?: number; runnerEntryPath?: string; onSpawn?: (identity: ProcessIdentity) => void; onDiagnostic?: (message: string) => void; }); start(): Promise; wait(): Promise; stop(outcome?: RunnerOutcome): Promise; }