import { AgentSessionStore } from './agent-session-store.js'; import { findOnPath } from './find-on-path.js'; import { type AgentSessionConfigOptionPatch, type AwbConfig } from './rest.js'; import type { RuntimeProfileSpec } from './cli-adapters/base.js'; import type { AcpMcpServer } from './runtime/acp/acp-types.js'; export interface AgentSessionRequest { manager_id: string; workspace_id?: string; cli: string; op: 'list' | 'history' | 'open' | 'prompt' | 'permission' | 'elicitation' | 'cancel' | 'set_mode' | 'set_config_option' | 'close' | 'restart'; request_id?: string; session_id?: string | null; cwd?: string; title?: string; turn_id?: string; text?: string; permission_request_id?: string; option_id?: string | null; mode_id?: string; config_id?: string; config_value?: string | boolean; config_defaults?: Record; runtime_profile?: RuntimeProfileSpec | null; elicitation_id?: string; elicitation_action?: 'accept' | 'decline' | 'cancel'; elicitation_content?: Record | null; credential_id?: string | null; driver_user_id: string; issued_at: string; } export interface ResolvedAcpCommand { command: string; args: string[]; } export interface AgentSessionRunnerOptions { getManagerId: () => string; store?: AgentSessionStore; idleMinutes?: number; permissionTimeoutMs?: number; requestTimeoutMs?: number; promptTimeoutMs?: number; silenceWarnMs?: number; flushIntervalMs?: number; commandResolver?: (cli: string) => Promise; baseEnv?: NodeJS.ProcessEnv; clientVersion?: string; mcpServers?: (sessionId: string) => AcpMcpServer[]; sessionHomesDir?: string; credentialFetcher?: (credentialId: string, workspaceId: string) => Promise; maxLineBytes?: number; } export interface SessionCredential { credential_id: string; provider: string; fields: Record; } export declare function sessionCredentialPrefix(cli: string): string | null; export declare const SESSION_CLI_CREDENTIAL_PREFIX: Record; export declare function redactSecrets(text: string): string; type CommandPatch = { name: string; description: string; input_hint?: string; }; export declare const ACP_SESSION_CLIS: readonly string[]; export declare function parseConfigOptions(raw: unknown): AgentSessionConfigOptionPatch[]; export declare function parseCommands(raw: unknown): CommandPatch[]; export declare function parsePlanEntries(raw: unknown): Array<{ content: string; priority: string; status: string; }> | null; export declare function mcpStartupServerOf(toolCallId: string): string | null; export { findOnPath }; export declare function resolveAcpCommandForCli(cli: string): Promise; export declare function detectAcpSessionClis(env?: NodeJS.ProcessEnv): Promise; export declare class AgentSessionRunner { #private; constructor(config: AwbConfig, options: AgentSessionRunnerOptions); get store(): AgentSessionStore; _snapshot(): Array<{ cli: string; session_id: string; busy: boolean; pid: number | null; }>; countInFlight(): number; liveStates(): Array<{ cli: string; session_id: string; status: string; }>; handle(request: AgentSessionRequest): Promise; stopAll(reason?: string): Promise; }