import { ISmsConfig } from "../interfaces/sms-config.interface";
/**
 * Configuration manager for SMS service
 * Supports environment variables, config objects, and default values
 */
export declare class SmsConfigManager {
    /**
     * Create configuration from environment variables
     */
    static fromEnvironment(): ISmsConfig;
    /**
     * Create configuration with validation
     */
    static create(config: Partial<ISmsConfig>): ISmsConfig;
    /**
     * Create a simple configuration for testing with mock driver
     */
    static createForTesting(options?: {
        shouldFail?: boolean;
        delay?: number;
    }): ISmsConfig;
    /**
     * Create configuration for Kavenegar
     */
    static createKavenegarConfig(options: {
        apiKey: string;
        lineNumber: string;
        url?: string;
    }): ISmsConfig;
    /**
     * Create configuration for SMS.ir
     */
    static createSmsIrConfig(options: {
        apiKey: string;
        lineNumber: string;
        url?: string;
    }): ISmsConfig;
    /**
     * Create configuration for Melipayamak
     */
    static createMelipayamakConfig(options: {
        apiKey: string;
        lineNumber: string;
        url?: string;
    }): ISmsConfig;
    /**
     * Merge multiple configurations
     */
    static merge(...configs: Partial<ISmsConfig>[]): ISmsConfig;
    /**
     * Validate configuration
     */
    private static validateConfig;
    /**
     * Get sample environment variables
     */
    static getSampleEnvVars(): string;
}
//# sourceMappingURL=sms-config.d.ts.map