import { type ChorusMcpScope } from "./mcp-config"; import type { ChorusToolTextContent, McpClientStatus } from "./types"; export type ChorusMcpClientOptions = { chorusUrl: string; apiKey: string; }; export type ChorusMcpToolDefinition = { name: string; description?: string; inputSchema: Record; }; export declare function parseToolResult(content: ChorusToolTextContent[]): unknown; export declare function isRetryableMcpSessionError(error: unknown): boolean; export declare class ChorusMcpClient { private readonly options; private client; private transport; private connectPromise; private connectionGeneration; private statusValue; constructor(options: ChorusMcpClientOptions); get status(): McpClientStatus; connect(): Promise; disconnect(): Promise; callTool(name: string, args?: Record, scope?: ChorusMcpScope): Promise; listTools(): Promise; private openConnection; private callConnectedTool; private callScopedTool; private createClientAndTransport; private formatToolError; }