import { Repository } from 'typeorm';
import { EmailSettings } from './entities/email-settings.entity';
export declare class EmailService {
    private emailSettingsRepository;
    private readonly logger;
    private transporter;
    constructor(emailSettingsRepository: Repository<EmailSettings>);
    private initializeTransporter;
    private createTransporter;
    getSettings(): Promise<EmailSettings | null>;
    updateSettings(data: Partial<EmailSettings>): Promise<EmailSettings>;
    testConnection(): Promise<{
        success: boolean;
        message: string;
    }>;
    sendTestEmail(toEmail: string): Promise<{
        success: boolean;
        message: string;
    }>;
    private getTestEmailHtml;
    sendEmail(options: {
        to: string | string[];
        subject: string;
        html: string;
        text?: string;
    }): Promise<boolean>;
    renderTemplate(template: string, variables: Record<string, any>): string;
    sendTemplatedEmail(options: {
        to: string | string[];
        subject: string;
        body: string;
        variables: Record<string, any>;
    }): Promise<boolean>;
    private wrapInEmailTemplate;
}
