/** * Email OTP retrieval — supports 3 providers: * mailslurp — managed SaaS (existing, no self-hosting) * imap — any real IMAP mailbox (Gmail, Outlook, custom domain catch-all) * mailpit — self-hosted SMTP trap (dev/staging only) * * Use mailslurp or imap for production apps. * Use mailpit only when you can point the app's SMTP at the trap server. */ export type EmailOTPProvider = 'mailslurp' | 'imap' | 'mailpit'; export interface EmailContent { /** 4-8 digit OTP code, if found. */ otp?: string; /** Magic link URL to navigate to, if found. */ magicLink?: string; } export interface EmailOTPConfig { provider: EmailOTPProvider; apiKey?: string; inboxId?: string; imapHost?: string; imapPort?: number; imapUser?: string; imapPass?: string; imapTls?: boolean; mailpitBaseUrl?: string; } /** * Wait for an email and return its OTP code or magic link URL. * Prefer this over waitForEmailOTP when the app may send passwordless magic links. */ export declare function waitForEmailContent(config: EmailOTPConfig, since: string | Date): Promise; /** * Wait for an OTP email and extract the code. * @deprecated Use waitForEmailContent which also handles magic links. */ export declare function waitForEmailOTP(config: EmailOTPConfig, since: string | Date): Promise; /** * Get the email address for a MailSlurp inbox (used to display in UI). * Returns null for IMAP/Mailpit providers — use imapUser directly. */ export declare function getInboxEmail(configOrApiKey: EmailOTPConfig | string, inboxId?: string): Promise;