/** * Email Core — IMAP read (ImapFlow) + SMTP send (nodemailer). Zero database. * * Supports Gmail OAuth2, Outlook OAuth2, and generic IMAP/SMTP. * Attachments up to 25MB. Thread-aware replies. * Connection pooling for IMAP with idle timeout cleanup. * * Migrated from `imap` (callback-based, unmaintained since 2017) * to `imapflow` (async/await, actively maintained, MIT). */ export interface EmailMessage { uid: number; messageId: string; from: string; fromName: string; to: string; cc?: string; subject: string; date: string; textBody: string; htmlBody?: string; inReplyTo?: string; references?: string[]; attachments: Array<{ filename: string; size: number; contentType: string; }>; flags: string[]; folder: string; } export interface SendInput { to: string; cc?: string; bcc?: string; subject: string; text: string; html?: string; replyTo?: string; inReplyTo?: string; references?: string[]; attachments?: Array<{ path: string; filename?: string; }>; from?: string; } export interface SendResult { success: boolean; messageId?: string; error?: string; } export declare function listEmails(folder?: string, options?: { limit?: number; unseen?: boolean; search?: string; }): Promise<{ emails: EmailMessage[]; total: number; }>; export declare function readEmail(uid: number, folder?: string): Promise; export declare function searchEmails(query: string, folder?: string, limit?: number): Promise; export declare function listFolders(): Promise>; export declare function moveEmail(uid: number, fromFolder: string, toFolder: string): Promise; /** Clear cached SMTP transporter (call after config changes). */ export declare function invalidateTransporterCache(): void; export declare function sendEmail(input: SendInput): Promise; export declare function setEmailFlags(uid: number, folder: string, flags: string[], add: boolean): Promise; export declare function deleteEmail(uid: number, folder: string): Promise; export declare function forwardEmail(uid: number, to: string, options?: { folder?: string; text?: string; attachments?: Array<{ path: string; filename?: string; }>; }): Promise; export declare function replyToEmail(uid: number, text: string, options?: { html?: string; folder?: string; attachments?: Array<{ path: string; filename?: string; }>; }): Promise; //# sourceMappingURL=email-client.d.ts.map