import { ClaudeAgentClient } from "./claudeAgentClient";
import { ProjectContext } from "./contextManager";
export interface MCPServer {
    name: string;
    url: string;
    token?: string;
    capabilities: string[];
    status: "active" | "inactive" | "error";
    lastUsed?: string;
}
export interface MCPIntegration {
    servers: MCPServer[];
    activeServer?: string;
    configuration: {
        autoConnect: boolean;
        timeout: number;
        retries: number;
        cacheResults: boolean;
    };
}
export declare class MCPAgentIntegration {
    private mcpConfigFile;
    private workingDirectory;
    private contextManager;
    private permissionManager;
    private claudeAgentClient;
    constructor(workingDirectory?: string);
    /**
     * Initialize MCP integration with Claude Agent SDK
     */
    initialize(claudeAgentClient: ClaudeAgentClient): Promise<void>;
    /**
     * Add MCP server to configuration
     */
    addMCPServer(server: Omit<MCPServer, "status" | "lastUsed">): Promise<void>;
    /**
     * Remove MCP server from configuration
     */
    removeMCPServer(serverName: string): Promise<void>;
    /**
     * Execute MCP workflow with Claude Agent SDK
     */
    executeMCPWorkflow(workflowPrompt: string, context?: ProjectContext, options?: any): Promise<{
        content: string;
        context: ProjectContext;
        mcpResults: any[];
    }>;
    /**
     * Get MCP server status
     */
    getMCPServerStatus(): Promise<{
        servers: MCPServer[];
        activeServer?: string;
    }>;
    /**
     * List available MCP capabilities
     */
    listMCPCapabilities(): Promise<Record<string, string[]>>;
    /**
     * Configure Claude Agent with MCP tools
     */
    private configureClaudeAgentWithMCP;
    /**
     * Test MCP server connection
     */
    private testMCPServer;
    /**
     * Get MCP tools from configuration
     */
    private getMCPTools;
    /**
     * Build MCP-enhanced workflow prompt
     */
    private buildMCPWorkflowPrompt;
    /**
     * Process MCP results from agent response
     */
    private processMCPResults;
    /**
     * Update context with MCP results
     */
    private updateContextWithMCPResults;
    /**
     * Load MCP configuration
     */
    private loadMCPConfig;
    /**
     * Load MCP configuration synchronously
     */
    private loadMCPConfigSync;
    /**
     * Save MCP configuration
     */
    private saveMCPConfig;
    /**
     * Get default MCP configuration
     */
    private getDefaultMCPConfig;
    /**
     * Get MCP integration summary
     */
    getMCPSummary(): string;
}
//# sourceMappingURL=mcpAgentIntegration.d.ts.map