import React from 'react';
import { Heartbeep, EventType, TrackEventPayload } from './index.mjs';

interface HeartbeepContextValue {
    heartbeep: Heartbeep | null;
    track: (event: EventType, payload?: TrackEventPayload) => void;
    pageview: (name?: string) => void;
    click: (name: string, metadata?: Record<string, any>) => void;
    purchase: (name: string, metadata?: Record<string, any>) => void;
}
interface HeartbeepProviderProps {
    children: React.ReactNode;
    siteId: string;
    apiUrl?: string;
    debug?: boolean;
}
declare function HeartbeepProvider({ children, siteId, apiUrl, debug, }: HeartbeepProviderProps): React.JSX.Element;
declare function useHeartbeep(): HeartbeepContextValue;
declare function AutoPageview({ children }: {
    children?: React.ReactNode;
}): React.JSX.Element;

export { AutoPageview, HeartbeepProvider, type HeartbeepProviderProps, useHeartbeep };
