@heartbeep/beeper
Version:
Modern JavaScript SDK for Heartbeep event tracking - beep beep!
35 lines (32 loc) • 978 B
text/typescript
interface HeartbeepConfig {
siteId: string;
apiUrl?: string;
debug?: boolean;
}
interface TrackEventPayload {
name?: string;
metadata?: Record<string, any>;
}
interface TrackEventData {
event: string;
name?: string;
url: string;
timestamp: number;
metadata?: Record<string, any>;
}
type EventType = "pageview" | "click" | "purchase" | string;
declare class Heartbeep {
private config;
private queue;
private isReady;
constructor(config: HeartbeepConfig);
private init;
private processQueue;
private send;
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;
}
declare function beep(event: EventType, name?: string): void;
export { type EventType, Heartbeep, type HeartbeepConfig, type TrackEventData, type TrackEventPayload, beep };