/** * `vt.gtag(...)` escape hatch. * * Power users may need to call `gtag` directly (e.g. to fire a custom * conversion from a third-party widget or to set a debug param). We expose * a flat passthrough that: * * - queues calls made before the SDK has booted (keeps them in FIFO order), * - queues calls made before `gtag.js` has loaded (forwarded via the * `dataLayer` shim, which naturally buffers until the real script runs), * - records every call so tests + the delivery log can see them. */ import type { GtagFn } from "./consent-bridge"; export type GtagCall = unknown[]; export interface PublicGtagApi { /** The flat function exposed as `vt.gtag(...)` */ call: GtagFn; /** Flush queued calls to a now-ready gtag implementation. */ flush(target: GtagFn): void; /** Observability: recent calls sent through this API (ring buffer). */ getRecentCalls(): GtagCall[]; } export declare function createPublicGtagApi(): PublicGtagApi;