import type { StructuredRunState, StructuredSpawnRequest } from "./structured-exec-host.js"; import type { TerminalSessionState, TerminalSpawnRequest } from "./terminal-host.js"; export declare const TERMINAL_DAEMON_PROTOCOL_VERSION = 2; export interface TerminalDaemonPaths { socketPath: string; tokenPath: string; pidPath: string; } export type TerminalDaemonRequest = { kind: "request"; id: number; token: string; protocolVersion: number; method: "hello" | "list" | "createOrAttach" | "write" | "resize" | "kill" | "forget" | "structuredSpawn" | "structuredAttach" | "structuredList" | "structuredKill" | "structuredForget"; params?: Record; }; export type TerminalDaemonResponse = { kind: "response"; id: number; ok: true; result?: unknown; } | { kind: "response"; id: number; ok: false; error: string; }; export type TerminalDaemonEvent = { kind: "event"; event: "data" | "exit" | "sdata" | "sexit"; sessionId: string; incarnationId: string; data?: string; seq?: number; exitCode?: number; signal?: number; stream?: "stdout" | "stderr"; }; export interface TerminalDaemonStructuredAttachPayload { state: StructuredRunState | null; } export interface TerminalDaemonStructuredSpawnParams extends StructuredSpawnRequest { } export interface TerminalDaemonCreateParams extends TerminalSpawnRequest { afterSeq?: number; } export interface TerminalDaemonAttachPayload { state: TerminalSessionState; isNew: boolean; } export declare function terminalDaemonPaths(configPath: string): TerminalDaemonPaths;