/**
 * MCP Configuration Loading
 *
 * Loads MCP server configurations from XDG-compliant paths:
 * - Project: ./.indusvx/mcp.json
 * - User: ~/.config/indusvx/mcp.json (XDG)
 * - Legacy: ~/.indusvx/agent/mcp.json
 *
 * Reference: MCP configuration loading patterns.
 */
import type { MCPConnectionOptions, MCPConfigFile } from "./types.js";
/**
 * Load MCP configuration from all sources.
 *
 * If a specific file path is provided, loads from that file directly.
 * Otherwise merges configurations from:
 * 1. Project-level config: ./.indusvx/mcp.json
 * 2. User-level (XDG): ~/.config/indusvx/mcp.json
 * 3. Legacy: ~/.indusvx/agent/mcp.json or ~/.indusvx/agent/mcp-servers.json
 *
 * @param configPathOrCwd - Either a specific config file path, or a working directory
 * @returns Array of MCP connection options
 */
export declare function loadMCPConfig(configPathOrCwd?: string): MCPConnectionOptions[];
/**
 * Get the path where user config should be saved.
 */
export declare function getUserConfigPath(): string;
/**
 * Get the path where project config should be saved.
 */
export declare function getProjectConfigPath(cwd?: string): string;
/**
 * Ensure the user config directory exists.
 */
export declare function ensureUserConfigDir(): string;
/**
 * Ensure the project config directory exists.
 */
export declare function ensureProjectConfigDir(cwd?: string): string;
/**
 * Save configuration to a file.
 */
export declare function saveConfig(path: string, config: MCPConfigFile): void;
/**
 * Save user configuration.
 */
export declare function saveUserConfig(config: MCPConfigFile): void;
/**
 * Save project configuration.
 */
export declare function saveProjectConfig(config: MCPConfigFile, cwd?: string): void;
/**
 * Create a default configuration.
 */
export declare function createDefaultConfig(): MCPConfigFile;
/**
 * Example configuration for documentation.
 */
export declare const EXAMPLE_CONFIG: MCPConfigFile;
