import type { McpSpawnConfig, OtelSink, SpawnMode, SpawnResult } from "../types.js"; import type { AcpEvent } from "./types.js"; import { type AcpMiddleware } from "./middleware.js"; import type { HookBridgeOptions } from "../types.js"; export interface SpawnAcpOptions { agentId: string; prompt: string; cwd?: string; model?: string; mode?: SpawnMode; mcpServers?: McpSpawnConfig; skills?: string[]; hooks?: HookBridgeOptions; resumeThreadId?: string; runtime?: "host" | "docker"; runtimeImage?: string; detach?: boolean; mountPoeCode?: boolean; runnerSync?: "both" | "upload" | "none"; signal?: AbortSignal; otelSink?: OtelSink; middlewares?: AcpMiddleware[]; env?: Record; } export interface SpawnAcpResult { events: AsyncIterable; done: Promise; unstable_setSessionModel?(model: string): Promise; } export declare function spawnAcp(input: SpawnAcpOptions): SpawnAcpResult;