import type { ChildProcess } from "node:child_process"; export interface ForegroundProcessRunnerOptions { child: ChildProcess; onStdout?: (data: Buffer) => void; onStderr?: (data: Buffer) => void; signal?: AbortSignal; timeout?: number; kill: () => void; drainTimeoutMs?: number; terminationTimeoutMs?: number; } export interface ForegroundProcessResult { exitCode: number | null; } /** * Run a foreground wrapper without making inherited descendant handles part * of its lifecycle. The wrapper exit code is authoritative; stdout/stderr * receive a short bounded drain, then local read handles are closed. */ export declare function runForegroundProcess(options: ForegroundProcessRunnerOptions): Promise; //# sourceMappingURL=process-runner.d.ts.map