import type { LaunchProfile, McpBindingLaunchSpec, NativeEvent } from "../types.js"; export declare const ACP_PROTOCOL_VERSION = 1; export declare const GROUPX_MCP_SERVER_NAME = "groupx"; export interface AcpAgentCapabilities { loadSession?: boolean; mcpCapabilities?: { http?: boolean; sse?: boolean; [key: string]: unknown; }; sessionCapabilities?: { resume?: unknown; close?: unknown; [key: string]: unknown; }; [key: string]: unknown; } export interface AcpImplementationInfo { name: string; title?: string; version?: string; [key: string]: unknown; } export interface AcpInitializeResult { protocolVersion: 1; agentCapabilities: AcpAgentCapabilities; agentInfo?: AcpImplementationInfo; authMethods?: unknown[]; } export type AcpMcpServerDescriptor = { name: typeof GROUPX_MCP_SERVER_NAME; command: string; args: string[]; env: []; } | { type: "http"; name: typeof GROUPX_MCP_SERVER_NAME; url: string; headers: [{ name: "X-GroupX-Binding"; value: string; }]; }; export interface AcpSessionUpdate { sessionId: string; update: Record & { sessionUpdate: string; }; } export interface AcpPromptResult { stopReason: string; userMessageId?: string; usage?: unknown; } export declare function parseInitializeResult(value: unknown): AcpInitializeResult; export declare function parseNewSessionResult(value: unknown): string; export declare function parsePromptResult(value: unknown): AcpPromptResult; export declare function parseSessionUpdate(params: unknown): AcpSessionUpdate | undefined; export declare function buildMcpServers(mcp: McpBindingLaunchSpec | undefined, capabilities: AcpAgentCapabilities, bindingId: string): AcpMcpServerDescriptor[]; export declare function buildPromptBlocks(input: { content: string; contextPacket?: string; }): Array<{ type: "text"; text: string; }>; export declare function normalizeSessionUpdate(adapterId: string, instanceId: string, nativeSessionId: string, nativeTurnId: string, occurredAt: string, update: AcpSessionUpdate["update"]): NativeEvent | undefined; export declare function launchProfileFields(profile: LaunchProfile): Pick; export declare function isRecord(value: unknown): value is Record; //# sourceMappingURL=protocol.d.ts.map