import { HttpService } from '@nestjs/axios';
export interface Send019Response {
    success: boolean;
    ans?: {
        status: 'OK' | 'FAIL';
        unique?: string;
        timestamp?: number;
        from?: number | string;
        to?: string;
        body?: string;
        templateTimeLeft?: number;
        conversationTimeLeft?: number;
        reason?: number;
    };
    message?: string;
}
export declare class Whatsapp019Service {
    private readonly httpService;
    private readonly logger;
    private readonly baseUrl;
    private readonly apiToken;
    private readonly sourceNumber;
    private readonly fallbackTemplateId;
    constructor(httpService: HttpService);
    private getHeaders;
    private requestConfig;
    normalizePhone(to: string): string;
    getPhones(): Promise<string[]>;
    sendText(to: string, message: string, replyTo?: string): Promise<Send019Response>;
    sendButtons(params: {
        to: string;
        body: string;
        footer?: string;
        buttons: string[];
        headerURL?: string;
        headerType?: '1' | '2' | '3' | '4';
        replyTo?: string;
    }): Promise<Send019Response>;
    sendImage(to: string, imageUrl: string, caption?: string): Promise<Send019Response>;
    sendTemplate(params: {
        to: string;
        templateId: string;
        bodyVariables?: string[];
        headerLink?: string;
    }): Promise<Send019Response>;
    sendTextWithTemplateFallback(to: string, message: string): Promise<Send019Response>;
    downloadMedia(url: string): Promise<{
        buffer: Buffer;
        mimeType: string;
    } | null>;
}
