/**
 * Configuration file loader for DataPilot CLI
 * Supports multiple configuration formats and environment variable overrides
 */
import type { CLIOptions } from './types';
export interface DataPilotConfig {
    defaults?: Partial<CLIOptions>;
    commands?: {
        [command: string]: Partial<CLIOptions>;
    };
    environments?: {
        [env: string]: {
            defaults?: Partial<CLIOptions>;
            commands?: Record<string, Partial<CLIOptions>>;
        };
    };
    aliases?: {
        [alias: string]: {
            command: string;
            options?: Partial<CLIOptions>;
        };
    };
    presets?: {
        [preset: string]: Partial<CLIOptions>;
    };
}
export declare class ConfigLoader {
    private static readonly CONFIG_FILES;
    private static readonly ENV_PREFIX;
    /**
     * Load configuration from files and environment
     */
    static loadConfig(startDir?: string): Promise<DataPilotConfig>;
    /**
     * Search for and load configuration files
     */
    private static loadFromFiles;
    /**
     * Load configuration from a specific directory
     */
    private static loadFromDirectory;
    /**
     * Load configuration from environment variables
     */
    private static loadFromEnvironment;
    /**
     * Merge two configuration objects
     */
    private static mergeConfigs;
    /**
     * Apply configuration to CLI options
     */
    static applyConfig(options: CLIOptions, config: DataPilotConfig, command?: string): CLIOptions;
    /**
     * Resolve command aliases
     */
    static resolveAlias(alias: string, config: DataPilotConfig): {
        command: string;
        options?: Partial<CLIOptions>;
    } | null;
    /**
     * Get example configuration
     */
    static getExampleConfig(): DataPilotConfig;
}
//# sourceMappingURL=config-loader.d.ts.map