import type { SmsDriver, SmsMessage, SmsSendResult, SmsStatusUpdate, SmsVerificationDriver, TwilioConfig, VerificationCheckRequest, VerificationRequest, VerificationResult } from '@stacksjs/types';
// =============================================================================
// Factory Function
// =============================================================================
export declare function createTwilioDriver(config: TwilioConfig, verifyServiceSid?: string): TwilioDriver;
export declare class TwilioDriver implements SmsDriver, SmsVerificationDriver {
  constructor(config: TwilioConfig, verifyServiceSid?: string);
  send(message: SmsMessage): Promise<SmsSendResult>;
  sendBulk(messages: SmsMessage[]): Promise<SmsSendResult[]>;
  getStatus(messageId: string): Promise<SmsStatusUpdate>;
  verify(phoneNumber: string): Promise<{ valid: boolean, carrier?: string, type?: string }>;
  getBalance(): Promise<{ balance: number, currency: string }>;
  startVerification(request: VerificationRequest): Promise<VerificationResult>;
  checkVerification(request: VerificationCheckRequest): Promise<VerificationResult>;
  cancelVerification(verificationId: string): Promise<boolean>;
}
export { TwilioDriver as default };
