@mirad-work/sms-core
Version:
A framework-agnostic TypeScript SMS service core with provider abstraction for Iranian SMS providers
59 lines • 1.57 kB
TypeScript
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