import type { RegistryScriptInput } from '#nuxt-scripts';
export interface HotjarApi {
    hj: ((event: 'identify', userId: string, attributes?: Record<string, any>) => void) & ((event: 'stateChange', path: string) => void) & ((event: 'event', eventName: string) => void) & ((event: string, arg?: string) => void) & ((...params: any[]) => void) & {
        q: any[];
    };
}
declare global {
    interface Window extends HotjarApi {
        _hjSettings: {
            hjid: number;
            hjsv?: number;
        };
    }
}
export declare const HotjarOptions: import("valibot").ObjectSchema<{
    id: import("valibot").NumberSchema<number>;
    sv: import("valibot").OptionalSchema<import("valibot").NumberSchema<number>, undefined, number | undefined>;
}, undefined, {
    id: number;
    sv?: number | undefined;
}>;
export type HotjarInput = RegistryScriptInput<typeof HotjarOptions>;
export declare function useScriptHotjar<T extends HotjarApi>(_options?: HotjarInput): T & {
    $script: Promise<T> & import("@unhead/vue").VueScriptInstance<T>;
};
