import { BaseEsmsService } from './base.service'; import type { SendSmsRequest, SmsSendResponse, SendSmsV4Response, SendBrandnameSmsRequest, SendFixedPriceSmsRequest, EsmsBaseResponse } from '../types'; /** * SMS Service - handles all SMS-related operations */ export declare class SmsService extends BaseEsmsService { private readonly endpoints; /** * Send SMS using V4 JSON API * @param request SMS request data * @param credentials Optional credentials, will use default from constructor if not provided */ sendMessageV4(request: Omit & { SmsType: '1' | '2' | '8' | '23'; }, credentials?: { apiKey: string; secretKey: string; }): Promise; /** * Send Fixed Price SMS (SmsType = 8) * @param request Fixed Price SMS request data * @param credentials Optional credentials, will use default from constructor if not provided */ sendFixedPriceSms(request: SendFixedPriceSmsRequest, credentials?: { apiKey: string; secretKey: string; }): Promise; /** * Send SMS using GET method * @param params SMS parameters * @param credentials Optional credentials, will use default from constructor if not provided */ sendSmsGet(params: { Phone: string; Content: string; IsUnicode?: '0' | '1'; Brandname?: string; SmsType?: '2' | '8'; CallbackUrl?: string; RequestId?: string; SendDate?: string; SandBox?: string; }, credentials?: { apiKey: string; secretKey: string; }): Promise; /** * Send SMS using form data * @param params SMS parameters * @param credentials Optional credentials, will use default from constructor if not provided */ sendMessageForm(params: { Phone: string; Content: string; Brandname?: string; }, credentials?: { apiKey: string; secretKey: string; }): Promise; /** * Send branded SMS (advertising) * @param request SMS request data * @param credentials Optional credentials, will use default from constructor if not provided */ sendMultipleSMSBrandnameJson(request: SendBrandnameSmsRequest, credentials?: { apiKey: string; secretKey: string; }): Promise; /** * Send SMS with XML body * @param xmlBody XML body content * @param credentials Optional credentials, will use default from constructor if not provided */ sendMultipleSMSBrandnameXml(xmlBody: string, credentials?: { apiKey: string; secretKey: string; }): Promise; /** * Send auto-generated code SMS * @param params SMS parameters * @param credentials Optional credentials, will use default from constructor if not provided */ sendMessageAutoGenCodeV4Get(params: { Phone: string; Content: string; Brandname?: string; SmsType?: '2' | '8'; }, credentials?: { apiKey: string; secretKey: string; }): Promise; /** * Send auto-generated code SMS V5 * @param request SMS request data * @param credentials Optional credentials, will use default from constructor if not provided */ sendMessageAutoGenCodeV5(request: { Phone: string; Content: string; Brandname?: string; SmsType?: '2' | '8'; }, credentials?: { apiKey: string; secretKey: string; }): Promise; /** * Check generated code * @param params Check parameters * @param credentials Optional credentials, will use default from constructor if not provided */ checkCodeGenV4Get(params: { Phone: string; Code: string; }, credentials?: { apiKey: string; secretKey: string; }): Promise; }