/** * Config Management * Handles JSON read/write/merge operations for MCP config files */ export interface MCPServerConfig { command: string; args?: string[]; env?: Record; } export interface MCPConfig { mcpServers?: Record; [key: string]: unknown; } export interface ContinueServerConfig { name: string; command: string; args?: string[]; env?: Record; } export interface ContinueConfig { mcpServers?: ContinueServerConfig[]; [key: string]: unknown; } export interface ConfigReadResult { success: boolean; config: MCPConfig | ContinueConfig | null; error?: string; isNew?: boolean; } export interface ConfigWriteResult { success: boolean; error?: string; backupPath?: string | null; } export interface MergeOptions { force?: boolean; workspace?: string; serverName?: string; clientName?: string; } /** * Read and parse a JSON config file */ export declare function readConfig(configPath: string): ConfigReadResult; /** * Write config to file with backup */ export declare function writeConfig(configPath: string, config: MCPConfig | ContinueConfig, createBackupFirst?: boolean): ConfigWriteResult; /** * Deep merge two objects */ export declare function deepMerge>(target: T, source: Partial): T; /** * Generate APIClaw MCP server configuration */ export declare function generateApiclawConfig(options?: MergeOptions): MCPServerConfig; /** * Generate APIClaw config for Continue (array format) */ export declare function generateApiclawContinueConfig(options?: MergeOptions): ContinueServerConfig; /** * Check if APIClaw is already configured */ export declare function hasApiclawConfig(config: MCPConfig | ContinueConfig, serverName?: string): boolean; /** * Merge APIClaw config into existing config (standard format) */ export declare function mergeApiclawConfig(existingConfig: MCPConfig, options?: MergeOptions): MCPConfig; /** * Merge APIClaw config into Continue config (array format) */ export declare function mergeApiclawContinueConfig(existingConfig: ContinueConfig, options?: MergeOptions): ContinueConfig; /** * Remove APIClaw from config */ export declare function removeApiclawConfig(config: MCPConfig | ContinueConfig, serverName?: string): MCPConfig | ContinueConfig; /** * Detect if config uses Continue's array format */ export declare function isContinueFormat(config: MCPConfig | ContinueConfig): config is ContinueConfig; //# sourceMappingURL=config.d.ts.map