import { type ChildProcess } from "node:child_process";
import type { ActivityWatchdogDiagnostic } from "../interactive-engine/activity-watchdog.ts";
export interface RpcClientProcessOptions {
    cliPath: string;
    cliArgs: string[];
    cwd?: string;
    env?: Record<string, string>;
    runtimeExecutable?: string;
    runtimeArgs?: string[];
    interactiveEngine: boolean;
}
export declare function spawnRpcClientProcess(options: RpcClientProcessOptions): ChildProcess;
export declare function terminateRpcClientProcess(child: ChildProcess, processTree: boolean): Promise<void>;
export declare function createInteractiveJsonlOptions(enabled: boolean, onDiagnostic: ((diagnostic: ActivityWatchdogDiagnostic) => void) | undefined): {
    maxBytesPerTurn?: number;
    maxFrameBytes?: number;
    onOversizedLine?: () => void;
};
//# sourceMappingURL=rpc-client-process.d.ts.map