export declare const AdvancedEmailJobService: Readonly<{
    sendScheduledLock(to: string, subject: string, template: string, templateData: Record<string, unknown>, delayMs: number, queueName?: string): Promise<string>;
    /**
     * Send an advanced email with deduplication support
     */
    sendWithDeduplication(to: string, subject: string, template: string, templateData: Record<string, unknown>, deduplicationId: string, queueName?: string): Promise<string>;
    /**
     * Send an email with unique lock to prevent duplicates
     */
    sendWithUniqueLock(to: string, subject: string, template: string, templateData: Record<string, unknown>, uniqueVia: string, queueName?: string): Promise<string>;
    /**
     * Send a high-priority email with custom options
     */
    sendHighPriority(to: string, subject: string, template: string, templateData: Record<string, unknown>, options?: {
        priority?: number;
        delay?: number;
        attempts?: number;
    }, queueName?: string): Promise<string>;
    /**
     * Send a bulk email with batch processing support
     */
    sendBulk(recipients: string[], subject: string, template: string, templateData: Record<string, unknown>, batchId?: string, queueName?: string): Promise<string[]>;
    /**
     * Send an email with custom envelope metadata
     */
    sendWithMetadata(to: string, subject: string, template: string, templateData: Record<string, unknown>, metadata: {
        campaign?: string;
        source?: string;
        priority?: string;
        tags?: string[];
    }, queueName?: string): Promise<string>;
    /**
     * Send a scheduled email with delay
     */
    sendScheduled(to: string, subject: string, template: string, templateData: Record<string, unknown>, delayMs: number, queueName?: string): Promise<string>;
    /**
     * Process a single advanced email job
     */
    processOne(queueName?: string): Promise<boolean>;
    /**
     * Process all advanced email jobs in queue
     */
    processAll(queueName?: string): Promise<number>;
    /**
     * Start the advanced email worker
     */
    start(queueName?: string): Promise<void>;
}>;
export default AdvancedEmailJobService;
export declare const testSamples: Readonly<{
    advancedQueuePatternsHeadline: "Advanced Queue Patterns";
    uniqueIdExample: "await AdvancedEmailJobService.sendWithDeduplication('user@example.com', 'Welcome', 'welcome', { name: 'User' }, 'welcome-user-123')";
    uniqueViaExample: "await AdvancedEmailJobService.sendWithUniqueLock('user@example.com', 'Reset Password', 'password-reset', { token: 'abc123' }, 'user-email')";
    bulkExample: "await AdvancedEmailJobService.sendBulk(['user1@example.com', 'user2@example.com'], 'Newsletter', 'newsletter', { issue: 'Q1-2024' })";
    scheduledExample: "await AdvancedEmailJobService.sendScheduled('user@example.com', 'Reminder', 'reminder', { event: 'meeting' }, 3600000)";
}>;
//# sourceMappingURL=AdvancedEmailJobService.d.ts.map