import { type EmailType, type EmailService, SmtpServerConfig } from './types';
interface EmailParams {
    url: string;
    host: string;
    theme?: {
        brandColor?: string;
        buttonText?: string;
    };
    type: EmailType;
    otp?: string;
    customContent?: string;
}
/**
 * Email HTML body
 * Insert invisible space into domains from being turned into a hyperlink by email
 * clients like Outlook and Apple mail, as this is confusing because it seems
 * like they are supposed to click on it to sign in.
 *
 * @note We don't add the email address to avoid needing to escape it, if you do, remember to sanitize it!
 */
export declare function html(params: EmailParams): string;
/**
 * Email Text body (fallback for email clients that don't render HTML, e.g. feature phones)
 */
export declare function text(params: EmailParams): string;
export declare function validateEmailProviderConfig(config: EmailProviderConfig): void;
export declare function validateNodemailerServiceConfig(config: NodemailerServiceConfig): void;
export declare function isNodemailerServiceConfig(config: NodemailerServiceConfig): boolean;
export declare function getSmtpConfig(service: EmailService): SmtpServerConfig;
export {};
