import TrackingManager from '../TrackingManager'; import type { GTMTrackingDelegate } from './GTMTrackingDelegate'; /** * Google Tag Manager-specific wrapper for TrackingManager. * Provides GTM-specific functionality and convenience methods. */ export declare class GTMTrackingManager { private base; constructor(base: TrackingManager); /** * Configures GTM through the base manager. * @param measurementId - The GA4 measurement ID (e.g., G-XXXXXXXXXX) * @param params - Optional configuration parameters */ config(measurementId: string, params?: Record): void; /** * Records an event through the base manager. * @param eventName - The name of the event to track * @param params - Optional event parameters */ event(eventName: string, params?: Record): void; /** * Sets global parameters through the base manager. * @param params - Parameters to set globally */ set(params: Record): void; /** * Retrieves a configuration value through the base manager. * @param measurementId - The measurement ID to query * @param callback - Callback function that receives the value */ get(measurementId: string, callback: (value: any) => void): void; /** * Manages user consent through the base manager. * @param command - Consent command (e.g., 'update', 'default') * @param params - Consent parameters */ consent(command: string, params?: Record): void; /** * Returns the underlying GTM delegate instance. */ getDelegate(): GTMTrackingDelegate | null; /** * Returns the underlying TrackingManager instance. */ getBaseManager(): TrackingManager; } export default GTMTrackingManager;