@click-chutney/analytics
Version:
Complete website analytics solution. Everything you need to understand your visitors - no Google Analytics required.
52 lines • 1.54 kB
TypeScript
export interface ClickChutneyConfig {
trackingId: string;
apiUrl?: string;
debug?: boolean;
autoTrack?: boolean;
trackOutbound?: boolean;
trackScrolls?: boolean;
trackClicks?: boolean;
trackForms?: boolean;
respectDNT?: boolean;
sessionTimeout?: number;
}
export interface TrackingData {
event: string;
page?: string;
referrer?: string;
properties?: Record<string, any>;
value?: number;
currency?: string;
}
declare class SimpleAnalyticsTracker {
private config;
private sessionId;
private userId?;
private eventQueue;
private isInitialized;
private flushTimer?;
constructor(config: ClickChutneyConfig);
private detectApiUrl;
private initialize;
private setupAutoTracking;
private trackSPANavigation;
private trackOutboundLinks;
private trackScrollDepth;
private trackClicks;
private trackFormSubmissions;
private trackFileDownloads;
private trackTimeOnPage;
private setupPeriodicFlush;
pageView(page?: string, title?: string): void;
track(event: string, properties?: Record<string, any>, value?: number): void;
identify(userId: string, properties?: Record<string, any>): void;
conversion(event: string, value?: number, currency?: string): void;
ecommerce(action: string, data: any): void;
private flush;
private generateSessionId;
private debounce;
private log;
destroy(): void;
}
export default SimpleAnalyticsTracker;
//# sourceMappingURL=simple-tracker.d.ts.map