/** All valid session lifecycle statuses. Import and use these instead of string literals. */ export declare const SESSION_STATUS: { readonly PENDING: "pending"; readonly RUNNING: "running"; readonly IDLE: "idle"; readonly STOPPED: "stopped"; readonly SUSPENDED: "suspended"; }; /** Lifecycle status of an agent session. */ export type SessionStatus = (typeof SESSION_STATUS)[keyof typeof SESSION_STATUS]; /** Session statuses that represent a terminal (ended) state. */ export declare const TERMINAL_SESSION_STATUSES: ReadonlySet; /** Why a session stopped. Only meaningful when status is STOPPED. */ export declare const END_REASON: { readonly COMPLETED: "completed"; readonly KILLED: "killed"; readonly INTERRUPTED: "interrupted"; readonly TERMINATED: "terminated"; readonly BUDGET_EXCEEDED: "budget_exceeded"; }; /** The reason a session transitioned to STOPPED. */ export type EndReason = (typeof END_REASON)[keyof typeof END_REASON]; /** Pipe mode for parent↔child IPC on spawn. */ export type PipeMode = "sync" | "async" | "detach" | ""; /** All valid task lifecycle statuses. Import and use these instead of string literals. */ export declare const TASK_STATUS: { readonly NOT_STARTED: "not_started"; readonly WORKING: "working"; readonly PAUSED: "paused"; readonly COMPLETE: "complete"; readonly FAILED: "failed"; }; /** Lifecycle status of a task, derived from session history. */ export type TaskStatus = (typeof TASK_STATUS)[keyof typeof TASK_STATUS]; /** Connection status of a remote environment. */ export type EnvironmentStatus = "disconnected" | "connecting" | "connected" | "sleeping" | "error"; /** Discriminator for events emitted by an agent runtime. */ export type AgentEventType = "text" | "tool_use" | "tool_result" | "error" | "status" | "system" | "runtime_session_id" | "usage" | "turn_started" | "turn_complete" | "input_needed"; /** Discriminator for all session events, including user input and signals. */ export type EventType = AgentEventType | "user_input" | "signal"; /** Parsed tool policy — matches the shape of `grackle.ToolConfig`. */ export interface ToolConfigSpec { allowedTools: string[]; disallowedTools: string[]; } /** Parsed MCP server entry — matches the shape of `grackle.McpServerConfig`. */ export interface McpServerSpec { name: string; command: string; args: string[]; tools: string[]; } /** Supported environment adapter backends. */ export type AdapterType = "docker" | "local" | "codespace" | "ssh"; /** Supported agent runtime implementations. */ export type RuntimeName = "claude-code" | "copilot" | "codex" | "goose" | "stub"; /** How a token is delivered to the PowerLine: as an env var or written to a file. */ export type TokenType = "env_var" | "file"; /** Default port the PowerLine gRPC server listens on. */ export declare const DEFAULT_POWERLINE_PORT: number; /** Default port the central Grackle gRPC server listens on. */ export declare const DEFAULT_SERVER_PORT: number; /** Default port for the web UI and WebSocket bridge. */ export declare const DEFAULT_WEB_PORT: number; /** Default port for the MCP (Model Context Protocol) server. */ export declare const DEFAULT_MCP_PORT: number; /** Default port for the MCP Apps widget sandbox (a separate origin for the double-iframe). */ export declare const DEFAULT_SANDBOX_PORT: number; /** Name of the seed persona created on first run. */ export declare const DEFAULT_PERSONA_NAME: string; /** ID of the seed persona created on first run. */ export declare const SEED_PERSONA_ID: string; /** Name of the Grackle config directory under the user's home. */ export declare const GRACKLE_DIR: string; /** SQLite database filename. */ export declare const DB_FILENAME: string; /** Subdirectory for session log files. */ export declare const LOGS_DIR: string; /** Filename for the locally-stored API key. */ export declare const API_KEY_FILENAME: string; /** Maximum allowed nesting depth for task hierarchies. */ export declare const MAX_TASK_DEPTH: number; /** Well-known ID for the System persona (orchestrator). */ export declare const SYSTEM_PERSONA_ID: string; /** Display name for the System persona. */ export declare const SYSTEM_PERSONA_NAME: string; /** Well-known ID for the root task (always present). */ export declare const ROOT_TASK_ID: string; /** Initial prompt sent to the root task on auto-start (and manual restart). */ export declare const ROOT_TASK_INITIAL_PROMPT: string; /** Well-known ID for the default workspace (created on first run, tied to local env). */ export declare const DEFAULT_WORKSPACE_ID: string; /** Default maximum concurrent agent sessions when no limit is configured. */ export declare const DEFAULT_MAX_CONCURRENT_SESSIONS: number; /** Settings-store key for the global concurrent session limit. */ export declare const SETTINGS_KEY_MAX_CONCURRENT_SESSIONS: string; //# sourceMappingURL=types.d.ts.map