export { ConfigValidator, configValidator, ConfigValidationOptions, ConfigValidationResult, ConfigField } from './validation.js';
export { configSchema, developmentDefaults, productionDefaults, testDefaults, getEnvironmentDefaults } from './schema.js';
import { ConfigField } from './validation.js';
export interface SecureConfigOptions {
    validateOnLoad?: boolean;
    strictMode?: boolean;
    logSecurityIssues?: boolean;
    throwOnValidationError?: boolean;
    environment?: string;
}
export declare class SecureConfigManager {
    private static instance;
    private validatedConfig;
    private lastValidation;
    private securityIssuesCount;
    private constructor();
    static getInstance(): SecureConfigManager;
    validateCurrentConfig(options?: SecureConfigOptions): Promise<void>;
    getValidatedConfig(): any;
    reloadAndValidateConfig(options?: SecureConfigOptions): Promise<void>;
    validateCliArguments(args: any): {
        isValid: boolean;
        errors: string[];
        sanitizedArgs: any;
    };
    generateSecurityReport(): {
        validationStatus: 'passed' | 'failed' | 'not_validated';
        lastValidation: Date | null;
        securityIssuesCount: number;
        recommendations: string[];
    };
    private mergeConfigWithDefaults;
    private getNestedValue;
    private setNestedValue;
    getConfigFieldInfo(fieldName: string): ConfigField | undefined;
    listSensitiveFields(): string[];
    maskSensitiveValues(config: any): any;
}
export declare const secureConfigManager: SecureConfigManager;
