/** * MCP Approval Workflow * * Handles interactive approval for external MCP server connections, * displaying server info, security assessment, and tool listings. */ import type { ExternalMCPServerConfig, ExternalMCPTool, MCPAccessRequest, MCPApprovalResult } from '../types/mcp-client.types.js'; /** * MCP Approval Workflow * * Responsibilities: * - Display server info (name, description, requester, reason) * - Show security assessment (risk level, capabilities) * - List available tools from the MCP * - Handle approval decisions (Approve, Session, Configure, Deny) */ export declare class MCPApprovalWorkflow { private readonly color; private readonly console; private readonly logger; private readonly promptAdapter; private readonly renderer; /** * Request user approval for an external MCP connection */ requestApproval(serverConfig: ExternalMCPServerConfig, accessRequest: MCPAccessRequest, availableTools: ExternalMCPTool[]): Promise; /** * Display the approval header */ private displayApprovalHeader; /** * Display request details */ private displayRequestDetails; /** * Display security assessment */ private displaySecurityAssessment; /** * Display available tools */ private displayAvailableTools; /** * Display risk warning for high/critical risk servers */ private displayRiskWarning; /** * Apply risk level color to text */ private applyRiskColor; /** * Prompt for approval decision */ private promptForDecision; /** * Handle the configure flow for filtering tools */ private handleConfigureFlow; /** * Display denial message */ private displayDenialMessage; /** * Display approval message */ private displayApprovalMessage; /** * Display quick approval info (for auto-approved servers) */ displayAutoApproveInfo(config: ExternalMCPServerConfig): void; /** * Display connection summary */ displayConnectionSummary(_serverId: string, serverName: string, toolCount: number, success: boolean): void; /** * Display disconnection summary */ displayDisconnectionSummary(serverName: string): void; /** * Display error message */ displayError(message: string, details?: string): void; } /** * Get the MCP Approval Workflow instance */ export declare function getMCPApprovalWorkflow(): MCPApprovalWorkflow; /** * Reset the singleton (for testing) */ export declare function resetMCPApprovalWorkflow(): void; //# sourceMappingURL=mcp-approval-workflow.d.ts.map