import type { ToolProgressEvent } from '@wrongstack/core/types'; export interface SpawnStreamResult { stdout: string; stderr: string; exitCode: number; truncated: boolean; error?: string | undefined; /** When the output exceeded maxBytes, the FULL output was spooled here. */ spoolPath?: string | undefined; /** Total output bytes produced (only set when spooled). */ spoolBytes?: number | undefined; } interface SpawnStreamOptions { cmd: string; args: string[]; cwd: string; signal?: AbortSignal | undefined; maxBytes?: number | undefined; /** Bytes of new stdout/stderr to accumulate before yielding a `partial_output` event. */ flushBytes?: number | undefined; /** Maximum chunks to buffer before applying backpressure to the child. Default 500. */ maxQueueSize?: number | undefined; /** Maximum UTF-8 bytes retained in the producer/consumer queue. Defaults to 1 MiB. */ maxQueueBytes?: number | undefined; } /** * Spawn a child process and yield `partial_output` progress events as * stdout/stderr arrive (batched by byte threshold), then return the full * buffered result. Shared between install/lint/format/typecheck/test/audit * so the TUI live tail sees consistent progress regardless of which tool * is running. */ export declare function spawnStream(opts: SpawnStreamOptions): AsyncGenerator; export {}; //# sourceMappingURL=_spawn-stream.d.ts.map