import type { RegistryScriptInput } from '#nuxt-scripts';
export declare const FathomAnalyticsOptions: import("valibot").ObjectSchema<{
    /**
     * The Fathom Analytics site ID.
     */
    site: import("valibot").StringSchema<string>;
    /**
     * The Fathom Analytics tracking mode.
     */
    spa: import("valibot").OptionalSchema<import("valibot").UnionSchema<(import("valibot").LiteralSchema<"auto", "auto"> | import("valibot").LiteralSchema<"history", "history"> | import("valibot").LiteralSchema<"hash", "hash">)[], "auto" | "history" | "hash">, undefined, "auto" | "history" | "hash" | undefined>;
    /**
     * Automatically track page views.
     */
    auto: import("valibot").OptionalSchema<import("valibot").BooleanSchema<boolean>, undefined, boolean | undefined>;
    /**
     * Enable canonical URL tracking.
     */
    canonical: import("valibot").OptionalSchema<import("valibot").BooleanSchema<boolean>, undefined, boolean | undefined>;
    /**
     * Honor Do Not Track requests.
     */
    honorDnt: import("valibot").OptionalSchema<import("valibot").BooleanSchema<boolean>, undefined, boolean | undefined>;
}, undefined, {
    site: string;
    spa?: "auto" | "history" | "hash" | undefined;
    auto?: boolean | undefined;
    canonical?: boolean | undefined;
    honorDnt?: boolean | undefined;
}>;
export type FathomAnalyticsInput = RegistryScriptInput<typeof FathomAnalyticsOptions, false>;
export interface FathomAnalyticsApi {
    beacon: (ctx: {
        url: string;
        referrer?: string;
    }) => void;
    blockTrackingForMe: () => void;
    enableTrackingForMe: () => void;
    isTrackingEnabled: () => boolean;
    send: (type: string, data: unknown) => void;
    setSite: (siteId: string) => void;
    sideId: string;
    trackPageview: (ctx?: {
        url: string;
        referrer?: string;
    }) => void;
    trackGoal: (goalId: string, cents: number) => void;
    trackEvent: (eventName: string, value: {
        _value: number;
    }) => void;
}
declare global {
    interface Window {
        fathom: FathomAnalyticsApi;
    }
}
export declare function useScriptFathomAnalytics<T extends FathomAnalyticsApi>(_options?: FathomAnalyticsInput): T & {
    $script: Promise<T> & import("@unhead/vue").VueScriptInstance<T>;
};
