import { ConfigService } from "@nestjs/config"; export function smsConfigs() { return { inject: [ConfigService], useFactory(configService: ConfigService) { return { API_URL: configService.getOrThrow("SMS_API_URL"), API_KEY: configService.getOrThrow("SMS_API_KEY"), SMS_PATTERN_OTP: configService.getOrThrow("SMS_PATTERN_OTP"), SMS_PATTERN_INVOICE: configService.getOrThrow("SMS_PATTERN_INVOICE"), SMS_PATTERN_LOGIN: configService.getOrThrow("SMS_PATTERN_LOGIN"), SMS_PATTERN_INVOICE_CREATED: configService.getOrThrow("SMS_PATTERN_INVOICE_CREATED"), SMS_PATTERN_ANNOUNCEMENT: configService.getOrThrow("SMS_PATTERN_ANNOUNCEMENT"), SMS_PATTERN_TICKET_CREATED: configService.getOrThrow("SMS_PATTERN_TICKET_CREATED"), SMS_PATTERN_TICKET_ASSIGNED_ADMIN: configService.getOrThrow("SMS_PATTERN_TICKET_ASSIGNED_ADMIN"), SMS_PATTERN_INVOICE_APPROVED: configService.getOrThrow("SMS_PATTERN_INVOICE_APPROVED"), SMS_PATTERN_INVOICE_PAID: configService.getOrThrow("SMS_PATTERN_INVOICE_PAID"), SMS_PATTERN_RECURRING_INVOICE_DRAFT: configService.getOrThrow("SMS_PATTERN_RECURRING_INVOICE_DRAFT"), SMS_PATTERN_SUBSCRIPTION_CANCELLED: configService.getOrThrow("SMS_PATTERN_SUBSCRIPTION_CANCELLED"), SMS_PATTERN_INVOICE_REMINDER: configService.getOrThrow("SMS_PATTERN_INVOICE_REMINDER"), SMS_PATTERN_INVOICE_OVERDUE: configService.getOrThrow("SMS_PATTERN_INVOICE_OVERDUE"), SMS_PATTERN_PAYMENT_REMINDER: configService.getOrThrow("SMS_PATTERN_PAYMENT_REMINDER"), SMS_PATTERN_PAYMENT_CANCELLATION: configService.getOrThrow("SMS_PATTERN_PAYMENT_CANCELLATION"), }; }, }; } export interface ISmsConfigs { API_URL: string; API_KEY: string; SMS_PATTERN_OTP: string; SMS_PATTERN_INVOICE: string; SMS_PATTERN_LOGIN: string; SMS_PATTERN_INVOICE_CREATED: string; SMS_PATTERN_ANNOUNCEMENT: string; SMS_PATTERN_TICKET_CREATED: string; SMS_PATTERN_TICKET_ANSWERED: string; SMS_PATTERN_TICKET_ASSIGNED_ADMIN: string; SMS_PATTERN_INVOICE_APPROVED: string; SMS_PATTERN_INVOICE_PAID: string; SMS_PATTERN_RECURRING_INVOICE_DRAFT: string; SMS_PATTERN_SUBSCRIPTION_CANCELLED: string; SMS_PATTERN_INVOICE_REMINDER: string; SMS_PATTERN_INVOICE_OVERDUE: string; SMS_PATTERN_PAYMENT_REMINDER: string; SMS_PATTERN_PAYMENT_CANCELLATION: string; }