import type { McpClient } from "./types/mcp.js"; export interface ManagedConnection { name: string; client: McpClient; status: "connected" | "disconnected" | "error" | "connecting"; lastConnectedAt?: number; error?: string; reconnectAttempts: number; } export declare class McpConnectionManager { private connections; private maxReconnectAttempts; private autoReconnect; constructor(options?: { maxReconnectAttempts?: number; autoReconnect?: boolean; }); /** 注册并连接一个 MCP server。 */ connect(name: string, client: McpClient): Promise; /** 断开一个 MCP server。 */ disconnect(name: string): Promise; /** 尝试重连一个断开的 MCP server。 */ reconnect(name: string): Promise; /** 获取连接状态。 */ getStatus(name: string): ManagedConnection["status"] | undefined; /** 列出所有连接。 */ list(): ManagedConnection[]; /** 获取所有已连接的 MCP client。 */ getConnectedClients(): McpClient[]; /** 获取所有已连接 server 的 instructions(用于注入 systemPrompt)。 */ getInstructions(): Array<{ serverName: string; instructions: string; }>; /** 检查并重连所有断开的 server(定期调用)。 */ checkAndReconnect(): Promise; }