@click-chutney/clickanalytics
Version:
Simplified analytics library inspired by Vercel Analytics - privacy-first, lightweight tracking
27 lines (26 loc) • 676 B
TypeScript
export interface ClickAnalyticsConfig {
trackingId: string;
debug?: boolean;
apiUrl?: string;
disableInDev?: boolean;
beforeSend?: (event: AnalyticsEvent) => AnalyticsEvent | false;
}
export interface AnalyticsEvent {
type: 'pageview' | 'event';
url?: string;
title?: string;
event?: string;
properties?: Record<string, any>;
timestamp?: number;
sessionId?: string;
userId?: string;
}
export interface TrackingData {
trackingId: string;
events: AnalyticsEvent[];
sessionId: string;
userId?: string;
userAgent?: string;
timestamp: number;
}
export type EventHandler = (event: AnalyticsEvent) => void;