UNPKG

@email-service/email-service

Version:

email-service is a versatile npm package designed to simplify the integration and standardization of email communications across multiple Email Service Providers (ESPs).

52 lines (51 loc) 1.45 kB
export type ESPName = 'postmark' | 'brevo' | 'nodemailer' | 'emailserviceviewer' | 'emailserviceviewerlocal' | 'resend'; /** * Rate limit ESP. Optionnel : si absent, la lib applique un défaut prudent * par ESP (voir RATE_LIMIT_DEFAULTS). Fournir une valeur remplace * complètement le défaut, pas de merge partiel. * * - perSecond et perMinute peuvent être combinés : le rate limiter attendra * sur la plus restrictive des deux contraintes. */ export type RateLimitConfig = { perSecond?: number; perMinute?: number; }; type ConfigBase = { logger?: boolean; rateLimit?: RateLimitConfig; }; export type ConfigPostmark = ConfigBase & { esp: 'postmark'; stream: string; apiKey: string; }; export type ConfigBrevo = ConfigBase & { esp: 'brevo'; apiKey: string; }; export type ConfigNodeMailer = ConfigBase & { esp: 'nodemailer'; host: string; port: number; secure?: boolean; debug?: boolean; auth: { user: string; pass: string; }; }; export type ConfigEmailServiceViewer = ConfigBase & { esp: 'emailserviceviewer' | 'emailserviceviewerlocal'; apiToken: string; webhook: string; }; export type ConfigResend = ConfigBase & { esp: 'resend'; apiKey: string; }; export type ConfigMinimal = ConfigBase & { esp: ESPName; }; export type Config = ConfigPostmark | ConfigBrevo | ConfigNodeMailer | ConfigEmailServiceViewer | ConfigResend; export {};