import { Source, Flow, Trigger } from '@walkeros/core'; /** * Environment interface for dataLayer source */ interface DataLayerEnv extends Source.BaseEnv { window?: typeof window; } /** * Standard mock environment for testing dataLayer source * * Use this for testing dataLayer.push interception and event transformation * without requiring a real browser environment. */ declare const push: DataLayerEnv; declare const env_push: typeof push; declare namespace env { export { env_push as push }; } declare const gtagPurchase: Flow.StepExample; declare const consentUpdate: Flow.StepExample; declare const gtagAddToCart: Flow.StepExample; declare const gtagViewItem: Flow.StepExample; declare const directEvent: Flow.StepExample; declare const step_consentUpdate: typeof consentUpdate; declare const step_directEvent: typeof directEvent; declare const step_gtagAddToCart: typeof gtagAddToCart; declare const step_gtagPurchase: typeof gtagPurchase; declare const step_gtagViewItem: typeof gtagViewItem; declare namespace step { export { step_consentUpdate as consentUpdate, step_directEvent as directEvent, step_gtagAddToCart as gtagAddToCart, step_gtagPurchase as gtagPurchase, step_gtagViewItem as gtagViewItem }; } declare const createTrigger: Trigger.CreateFn; /** Pushes step example input to window.dataLayer after source init. */ declare const trigger: (input: unknown, env: Record) => void; export { createTrigger, env, step, trigger };