interface CampaignEmailJobData {
    campaignEmailId: string;
    recipientEmail: string;
    recipientName?: string;
    recipientLevel?: string;
    userEmail: string;
    userName: string;
    postalCode: string;
    subject: string;
    message: string;
    campaignTitle: string;
}
declare class EmailQueueService {
    private queue;
    private worker;
    constructor();
    startWorker(): void;
    addCampaignEmail(data: CampaignEmailJobData): Promise<string>;
    getStats(): Promise<{
        waiting: number;
        active: number;
        completed: number;
        failed: number;
        paused: boolean;
    }>;
    pause(): Promise<void>;
    resume(): Promise<void>;
    clean(grace?: number): Promise<number>;
    close(): Promise<void>;
}
export declare const emailQueueService: EmailQueueService;
export {};
//# sourceMappingURL=email-queue.service.d.ts.map