import { ConfigService } from '@nestjs/config'; import { Job, Queue } from 'bull'; import { TemplateService } from '../template'; import { MailAdapter } from './adapters'; import { MailModuleOptions } from './mail.module'; import { SendMailData } from './mail.job'; export type MailContent = { text?: string; html?: string; template?: { name?: string; content?: string; context?: Record; }; }; export type MailAttachment = { filename: string; path?: string; content?: string; }; export declare class MailService { private mailAdapter; private mailModuleOptions; private mailQueue; private templateService; private configService; private readonly logger; private readonly queueEnabled; private readonly templateEnabled; constructor(mailAdapter: MailAdapter, mailModuleOptions: MailModuleOptions, mailQueue: Queue, templateService: TemplateService, configService: ConfigService); send(to: string, subject: string, content: MailContent, attachments?: MailAttachment[]): Promise; sendToQueue(to: string, subject: string, content: MailContent, attachments?: MailAttachment[]): Promise>; sendDirect(to: string, subject: string, content: MailContent, attachments?: MailAttachment[]): Promise; compileContent(content: MailContent): Promise<{ text: string; html: string; }>; checkConnection(): Promise<{ status: boolean; message?: string; }>; }