import { Mapping } from '@elbwalker/types'; import { DestinationWeb } from '@elbwalker/walker.js'; declare global { interface Window { dataLayer: Array | unknown; gtag: Gtag.Gtag; } } interface Destination extends DestinationWeb.Destination { } type Config = DestinationWeb.Config; interface Custom { measurementId: string; debug?: boolean; include?: Include; pageview?: boolean; server_container_url?: string; snakeCase?: boolean; transport_url?: string; } type EventConfig = Mapping.EventConfig; interface CustomEvent { include?: Include; } type Param = Mapping.Value; type Include = Array<'all' | 'context' | 'data' | 'event' | 'globals' | 'source' | 'user' | 'version'>; type Parameters = Gtag.ControlParams & Gtag.EventParams & Gtag.CustomParams; type index_Config = Config; type index_Custom = Custom; type index_CustomEvent = CustomEvent; type index_Destination = Destination; type index_EventConfig = EventConfig; type index_Include = Include; type index_Param = Param; type index_Parameters = Parameters; declare namespace index { export type { index_Config as Config, index_Custom as Custom, index_CustomEvent as CustomEvent, index_Destination as Destination, index_EventConfig as EventConfig, index_Include as Include, index_Param as Param, index_Parameters as Parameters }; } declare const destinationGoogleGA4: Destination; export { index as DestinationGoogleGA4, destinationGoogleGA4 as default, destinationGoogleGA4 };