import { spawn } from 'child_process'; import type { Daemon_request, Daemon_response, Daemon_transport, Ipc_opts } from './ipc'; declare const DEFAULT_DAEMON_STARTUP_TIMEOUT_MS = 15000; declare const DEFAULT_LIVENESS_TIMEOUT_MS = 150; type Daemon_opts = Ipc_opts & { cdp_endpoint: string; daemon_script?: string; exec_path?: string; idle_timeout_ms?: number; startup_timeout_ms?: number; }; type Lifecycle_deps = { current_time?: () => number; is_daemon_alive?: (session_name: string, opts?: Ipc_opts) => Promise; pause?: (ms: number) => Promise; resolve_daemon_script?: (opts: Daemon_opts) => string; resolve_exec_path?: (opts: Daemon_opts) => string; spawn_process?: typeof spawn; wait_for_daemon?: (session_name: string, timeout_ms: number, opts?: Ipc_opts, deps?: Pick) => Promise; }; declare const format_transport: (transport: Daemon_transport) => string; declare const cleanup_stale_files: (session_name: string, opts?: Ipc_opts) => void; declare const is_daemon_alive: (session_name: string, opts?: Ipc_opts) => Promise; declare const wait_for_daemon: (session_name: string, timeout_ms?: number, opts?: Ipc_opts, deps?: Pick) => Promise; declare const resolve_daemon_script: (opts: Daemon_opts) => string; declare const resolve_exec_path: (opts: Daemon_opts) => string; declare const ensure_daemon: (session_name: string, opts: Daemon_opts, deps?: Lifecycle_deps) => Promise; declare const send_command: (session_name: string, request: Daemon_request, opts?: Ipc_opts) => Promise; export { DEFAULT_DAEMON_STARTUP_TIMEOUT_MS, DEFAULT_LIVENESS_TIMEOUT_MS, cleanup_stale_files, ensure_daemon, format_transport, is_daemon_alive, resolve_daemon_script, resolve_exec_path, send_command, wait_for_daemon, }; export type { Daemon_opts, Lifecycle_deps }; //# sourceMappingURL=lifecycle.d.ts.map