20 lines
810 B
TypeScript
20 lines
810 B
TypeScript
import type { AnalyticsConfig } from './types.js';
|
|
declare global {
|
|
interface Window {
|
|
dataLayer?: unknown[];
|
|
}
|
|
}
|
|
/**
|
|
* Loads Google Analytics — GTM if a container ID is set, otherwise GA4 gtag.
|
|
*
|
|
* Consent Mode is initialised to the visitor's stored consent BEFORE the tag
|
|
* loads (via setDefaultConsent from the consent module), so tags respect the
|
|
* choice from the first hit; useConsent sends an update the moment the visitor
|
|
* decides. IDs are public and come from SiteIntegrations, passed in as props
|
|
* (the client project reads them server-side).
|
|
*
|
|
* Renders nothing — it only injects the scripts. Mount once, high in the tree
|
|
* (e.g. root layout), inside ConsentProvider.
|
|
*/
|
|
export declare function Analytics({ ga4MeasurementId, gtmContainerId }: AnalyticsConfig): null;
|