/** * Type definitions for Heatmap Tracking */ export interface HeatmapClickData { pageUrl: string; xpath: string; selector?: string; relX?: number; relY?: number; viewportX: number; viewportY: number; pageX: number; pageY: number; elementTag: string; elementText?: string; timestamp: number; deviceType: 'mobile' | 'desktop'; } export interface HeatmapSnapshot { sessionId: string; pageUrl: string; snapshot: unknown; timestamp: number; } export interface HeatmapScrollData { pageUrl: string; viewportSection: number; scrollDepthPx: number; durationMs: number; entryTimestamp: number; exitTimestamp: number; pageHeight: number; viewportHeight: number; deviceType: 'mobile' | 'desktop'; } export interface HeatmapTrackingOptions { scrollDebounceDelay: number; batchDelay: number; maxBatchSize: number; debug?: boolean; maxSectionDuration?: number; minScrollDistance?: number; idleThreshold?: number; } export interface HeatmapScrollState { viewportSection: number; entryTime: number; scrollDepthPx: number; } export interface HeatmapTrackingState { currentScrollState: HeatmapScrollState | null; pendingClicks: HeatmapClickData[]; pendingScrolls: HeatmapScrollData[]; } //# sourceMappingURL=heatmap-tracking.d.ts.map