export interface TagManagerOptions {
    /** GTM ID */
    gtmId: string;
    /** Query parameters to be added to the script URL, such as
     * `gtm_preview` any `gtm_id` for environment switching. Defaults to
     * empty object.
     */
    queryParams?: object;
    /**
     * Global Data Layer variable name. Defaults to `dataLayer`
     */
    dataLayerName?: string;
    /** Items that the dataLayer get's initilised with. Defaults to null. */
    dataLayer?: object;
    /** Url for pulling the GTM script. Defaults to general GTM url. */
    scriptUrl?: string;
}
/**
 * Global Tag Manager instance
 */
declare class TagManager {
    options: TagManagerOptions;
    constructor(options: TagManagerOptions);
    /**
     * Returns the URL and query params to get the tag manager script
     */
    getScriptUrl(): string;
    /**
     * Returns the script to initialize the data layer
     */
    getDataLayerScriptContent(): string;
    /**
     * Push an event to the data layer
     * @param event event object
     */
    push(event: object): void;
}
export default TagManager;
