@mirad-work/sms-core
Version:
A framework-agnostic TypeScript SMS service core with provider abstraction for Iranian SMS providers
58 lines • 1.28 kB
TypeScript
import { DriverType } from "../types/driver-types";
/**
* Kavenegar provider configuration
*/
export interface IKavenegarConfig {
url: string;
apiKey: string;
lineNumber: string;
}
/**
* SMS.ir provider configuration
*/
export interface ISmsIrConfig {
url: string;
apiKey: string;
lineNumber: string;
}
/**
* Melipayamak provider configuration
*/
export interface IMelipayamakConfig {
url: string;
username: string;
password: string;
}
/**
* IPPanel provider configuration
*/
export interface IIppanelConfig {
url: string;
apiKey: string;
lineNumber: string;
}
/**
* Mock driver configuration (for testing)
*/
export interface IMockConfig {
shouldFail?: boolean;
delay?: number;
}
/**
* Main SMS service configuration
*/
export interface ISmsConfig {
/** Default driver to use when none is specified */
defaultDriver: DriverType;
/** Global timeout for HTTP requests (in milliseconds) */
timeout?: number;
/** Provider-specific configurations */
drivers: {
kavenegar?: IKavenegarConfig;
smsir?: ISmsIrConfig;
melipayamak?: IMelipayamakConfig;
ippanel?: IIppanelConfig;
mock?: IMockConfig;
};
}
//# sourceMappingURL=sms-config.interface.d.ts.map