svelte-guardian
Version:
Batteries included authentication for SvelteKit applications.
31 lines (30 loc) • 1.22 kB
TypeScript
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 {};