import { Mailable } from '../Mailable.mjs'; import { MailerProvider } from '../MailerProvider.mjs'; /** * Configuration options for the MailgunProvider. */ type MailgunProviderConfig = { /** Mailgun API key */ api_key: string; /** Mailgun domain */ domain: string; /** Default sender email address */ default_from: string; /** Use EU servers (default: false) */ eu?: boolean; }; /** * Mailer provider that sends emails via Mailgun API. * Supports both US and EU Mailgun servers. * API key and domain can be provided via configuration or environment variables. */ declare class MailgunProvider implements MailerProvider { private defaultFrom; private apiKey; private domain; private baseUrl; /** * Creates a new MailgunProvider instance. * @param options - Provider configuration options */ constructor(options?: Partial); /** * Sets the default sender email address. * @param from - The default sender email address */ setDefaultFrom(from: string): void; /** * Sends an email via Mailgun API. * @param mail - The email message to send * @throws Error if the Mailgun API request fails */ sendMail(mail: Mailable): Promise; } export { MailgunProvider, type MailgunProviderConfig };