import { type EmailBatch, type EmailBatchResult, type EmailMessage } from './index'; export interface JetEmailConfig { /** EU residency endpoint. */ eu?: boolean; /** Bare sender mailbox. JetEmail's wire API receives it as `Name `. */ from?: string; /** Optional display name. Defaults to the sender mailbox local part. */ fromName?: string; endpoint?: string; batchEndpoint?: string; fetch?: typeof globalThis.fetch; } export declare const jetemail: import("./index").ProviderDefinition<{ send: import("./index").ProviderMethodSpec; sendBatch: import("./index").ProviderMethodSpec; }>; /** * A transport, so this package holds no socket code and no nodemailer. * * Supplied by the host: on Bun or Node that is a nodemailer transport, in a * Worker it is an HTTP relay. The provider is the same either way, which is * what lets one config work in both places. */ export interface SmtpTransport { send(envelope: { host: string; port: number; secure: boolean; user?: string; password?: string; from: string; to: readonly string[]; subject: string; html?: string; text?: string; replyTo?: string; }): Promise<{ messageId: string; }>; } export declare const smtp: import("./index").ProviderDefinition<{ send: import("./index").ProviderMethodSpec; }>; /** Ready to register for the email service's `send` method. */ export declare const emailProviders: readonly [import("./index").ProviderDefinition<{ send: import("./index").ProviderMethodSpec; sendBatch: import("./index").ProviderMethodSpec; }>, import("./index").ProviderDefinition<{ send: import("./index").ProviderMethodSpec; }>]; /** Provider-neutral service contract applications and SSOT handlers call. */ export declare const emailService: import("./index").ServiceDefinition<"email", { send: import("./index").ServiceMethodContract; sendBatch: import("./index").ServiceMethodContract; }>;