import type { GoogleTagManagerApi } from 'third-party-capital';
import type { RegistryScriptInput } from '#nuxt-scripts';
declare const GoogleTagManagerOptions: import("valibot").ObjectSchema<{
    id: import("valibot").StringSchema<string>;
}, undefined, {
    id: string;
}>;
export type GoogleTagManagerInput = RegistryScriptInput<typeof GoogleTagManagerOptions>;
declare global {
    interface Window extends GoogleTagManagerApi {
    }
}
/**
 * useScriptGoogleTagManager
 *
 * A 3P wrapper for Google Tag Manager that takes an options input to feed into third-party-capital({@link https://github.com/GoogleChromeLabs/third-party-capital}), which returns instructions for nuxt-scripts.
 */
export declare function useScriptGoogleTagManager<T extends GoogleTagManagerApi>(options?: GoogleTagManagerInput): T & {
    $script: Promise<T> & import("@unhead/vue").VueScriptInstance<T>;
};
export {};
