/**
 * MCP配置生成器
 * 负责为不同编辑器生成标准MCP配置文件
 */
import { EditorType, MCPConfig, MCPConfigOptions, ValidationResult, TestResult } from '../../types/mcp';
import { Logger } from '../logger';
/**
 * MCP配置生成器类
 */
export declare class MCPConfigGenerator {
    private logger;
    constructor(logger: Logger);
    /**
     * 为指定编辑器生成MCP配置
     * @param editor 编辑器类型
     * @param options 配置选项
     * @returns MCP配置对象
     */
    generateMCPConfig(editor: EditorType, options?: MCPConfigOptions): MCPConfig;
    /**
     * 验证MCP配置
     * @param config MCP配置对象
     * @returns 验证结果
     */
    validateMCPConfig(config: MCPConfig): ValidationResult;
    /**
     * 导出编辑器特定格式的配置
     * @param config MCP配置对象
     * @returns 编辑器特定格式的配置JSON字符串
     */
    exportMCPConfig(config: MCPConfig): string;
    /**
     * 生成Cursor配置
     */
    private generateCursorConfig;
    /**
     * 生成Windsurf配置
     */
    private generateWindsurfConfig;
    /**
     * 生成Trae配置
     */
    private generateTraeConfig;
    /**
     * 生成VSCode配置
     */
    private generateVSCodeConfig;
    /**
     * 转换环境变量为VSCode格式
     */
    private convertToVSCodeEnv;
    /**
     * 写入配置文件到磁盘
     * @param config MCP配置对象
     * @param projectRoot 项目根目录
     */
    writeMCPConfigFiles(config: MCPConfig, projectRoot?: string): Promise<void>;
    /**
     * 生成额外的配置文件
     */
    private generateAdditionalFiles;
    /**
     * 测试MCP配置
     * @param config MCP配置对象
     * @returns 测试结果
     */
    testMCPConfiguration(config: MCPConfig): Promise<TestResult>;
    /**
     * 获取MCP服务支持的能力
     * @returns MCP能力对象
     */
    getMCPCapabilities(): {
        supportedEditors: string[];
        supportedModels: string[];
        features: {
            prdParsing: boolean;
            taskManagement: boolean;
            codeAnalysis: boolean;
            multiModelOrchestration: boolean;
            streamingResponse: boolean;
            configurationGeneration: boolean;
        };
        resources: boolean;
        tools: boolean;
        prompts: boolean;
        streaming: boolean;
    };
}
