import { spawn } from 'node:child_process'; import type { OrchestratorInvokeOptions, OrchestratorResult, RuntimeInvokeRoute } from './orchestrator.js'; type KillableChild = Pick, 'pid' | 'kill'>; /** Best-effort tree termination that never prevents timeout settlement. */ export declare function killShellProcessTree(child: KillableChild, platform?: NodeJS.Platform, spawnProcess?: typeof spawn, killGroup?: typeof process.kill): void; /** * Try to parse Gemini CLI JSON output. Returns extracted data or null if * the output is not valid Gemini JSON (e.g. raw text from a non-Gemini orchestrator). */ export declare function tryParseGeminiJson(raw: string): { content: string; inputTokens: number; outputTokens: number; latencyMs: number | null; } | null; /** Unwrap only Claude CLI's typed success envelope, never arbitrary outer JSON. */ export declare function tryParseClaudeJson(raw: string): string | null; export interface ShellOrchestratorOptions extends OrchestratorInvokeOptions { command: string; /** Internal provenance supplied by the factory/fallback wrapper. */ provider?: string; /** Internal provenance supplied by the factory/fallback wrapper. */ route?: RuntimeInvokeRoute; } export declare function invokeShellOrchestrator(opts: ShellOrchestratorOptions): Promise; export {}; //# sourceMappingURL=shell-orchestrator.d.ts.map