import { AnalyzerConfig, OutputConfig, AnalysisConfig, PathsConfig, EditorConfig } from './types';
/**
 * Configuration loader with comprehensive fallback system
 */
export declare class ConfigLoader {
    private static readonly DEFAULT_CONFIG_PATHS;
    private static readonly DEFAULT_CONFIG;
    /**
     * Load configuration with comprehensive fallback system
     */
    static loadConfig(customConfigPath?: string): AnalyzerConfig;
    /**
     * Find the first available config file
     */
    private static findConfigFile;
    /**
     * Load and parse config file
     */
    private static loadConfigFile;
    /**
     * Deep merge two configuration objects
     */
    private static mergeConfigs;
    /**
     * Deep merge utility
     */
    private static mergeDeep;
    /**
     * Deep clone utility
     */
    private static deepClone;
    /**
     * Validate and normalize configuration
     */
    private static validateAndNormalizeConfig;
    /**
     * Get output configuration with fallbacks
     */
    static getOutputConfig(config: AnalyzerConfig): Required<OutputConfig>;
    /**
     * Get analysis configuration with fallbacks
     */
    static getAnalysisConfig(config: AnalyzerConfig): Required<AnalysisConfig>;
    /**
     * Get paths configuration with fallbacks
     */
    static getPathsConfig(config: AnalyzerConfig): Required<PathsConfig>;
    /**
     * Get editor configuration with fallbacks
     */
    static getEditorConfig(config: AnalyzerConfig): Required<EditorConfig>;
}
//# sourceMappingURL=config-loader.d.ts.map