import { M as Middleware } from '../payloads-BYtydfZU.js'; /** * Schema Validator Middleware * * Validates event payloads against Zod schemas. * Rejects malformed events by NOT calling next(). */ /** * Creates a schema validator middleware. * Validates event.data against the Zod schema for event.event_type. * * If validation fails, the event is blocked (next() is not called). * In development, validation errors are logged to console. */ declare const createSchemaValidatorMiddleware: () => Middleware; /** * Pre-built schema validator middleware instance. */ declare const schemaValidatorMiddleware: Middleware; /** * Deduplication Middleware * * Prevents the same logical event from being processed twice * (e.g., double-click on Add to Cart). * * Uses a fingerprint-based approach with a 2-second time window. * Fingerprint = eventType:primaryId */ /** * Creates a deduplication middleware. * * @param windowMs - Time window in ms within which duplicates are blocked (default: 2000ms) */ declare const createDeduplicatorMiddleware: (windowMs?: number) => Middleware; /** * Pre-built deduplicator middleware with 2-second window. */ declare const deduplicatorMiddleware: Middleware; /** * User Enricher Middleware * * Enriches events with: * - Tracking cookies (_fbp, _fbc, _ga, gclid, etc.) * - Affiliate/UTM data from sessionStorage * - Raw user identity from auth session (no hashing — each SDK decides how to consume) */ /** * Creates a user enricher middleware. * * Synchronously enriches events with cookies, affiliate data, and raw user identity. * No PII hashing — each SDK subscriber decides how to consume user data. */ declare const createUserEnricherMiddleware: () => Middleware; /** * Pre-built user enricher middleware instance. */ declare const userEnricherMiddleware: Middleware; /** * Dev Logger Middleware * * Logs events to console in development mode. * Uses console.groupCollapsed for clean output. * No-op in production. */ interface DevLoggerOptions { /** Explicitly enable/disable logging. When undefined, defaults to dev mode only. */ enabled?: boolean; } /** * Creates a dev logger middleware. * * Logging is active when ANY of these is true: * 1. options.enabled is true (e.g., NEXT_PUBLIC_EVENT_DEBUG=true) * 2. NODE_ENV === "development" (and options.enabled is not explicitly false) * 3. window.__event_debug === true (ad-hoc toggle from browser console) */ declare const createDevLoggerMiddleware: (options?: DevLoggerOptions) => Middleware; /** * Pre-built dev logger middleware instance. */ declare const devLoggerMiddleware: Middleware; /** * Middleware that reads experiment/A/B test cookies and attaches them * to `event.experiment`. SDKs receive this via `metadata.experiment`. * * @param cookieNames - Optional custom cookie name map. Defaults to Prima experiment cookies. */ declare const createExperimentMiddleware: (cookieNames?: Record) => Middleware; export { createDeduplicatorMiddleware, createDevLoggerMiddleware, createExperimentMiddleware, createSchemaValidatorMiddleware, createUserEnricherMiddleware, deduplicatorMiddleware, devLoggerMiddleware, schemaValidatorMiddleware, userEnricherMiddleware };