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).

24 lines (23 loc) 1.2 kB
import type { WebHookResponse } from '../types/email.type.js'; import type { SuppressionReason } from '../types/bulk.type.js'; /** * Convertit une WebHookResponse normalisée (retournée par `webHookManagement`) * en entrée prête à persister dans une suppression list côté consommateur. * * Retourne `null` si l'event ne doit pas créer d'entrée (DELIVERED, OPENED, * CLICKED, SOFT_BOUNCE, erreur de parsing, etc.) — le consommateur peut * ignorer silencieusement. * * Mapping (aligné sur les WebHookStatus normalisés par la lib) : * - `HARD_BOUNCE` → `hard_bounce` * - `SPAM_COMPLAINT` / `SPAM` → `spam_complaint` * - `SUBSCRIPTION_CHANGE` → `unsubscribe_marketing` par défaut (conservative : * on préserve le canal transactionnel). Si `metaData.stream === 'transactional'` * est présent, on considère `unsubscribe_all` (le destinataire s'est * désinscrit d'une notif transactionnelle, c'est qu'il ne veut plus rien). * - autres (DELIVERED, OPENED, CLICKED, SOFT_BOUNCE, DELAYED, REJECTED, …) → null */ export declare function normalizeSuppressionFromWebhook(response: WebHookResponse): { email: string; reason: SuppressionReason; } | null;