isometrik-web-tracker
Version:
Production-grade user tracking library with multiple tracking methods
25 lines • 1.06 kB
TypeScript
import { ElementTrackingData, ElementVisibilityOptions, ElementVisibilityTrackerOptions } from './types';
export declare class ElementVisibilityTracker {
private options;
private trackedElements;
private isDestroyed;
constructor(options: ElementVisibilityTrackerOptions);
trackElement(element: Element, trackingKey: string, options?: ElementVisibilityOptions): void;
untrackElement(trackingKey: string): void;
private handleIntersection;
getElementData(trackingKey: string): ElementTrackingData | null;
getAllElementData(): Map<string, ElementTrackingData>;
addElementInteraction(trackingKey: string, interactionType: 'click' | 'hover' | 'focus' | 'scroll', position?: {
x: number;
y: number;
}): void;
updateVisibleTime(trackingKey: string): void;
pause(): void;
resume(): void;
destroy(): void;
getTrackedElementCount(): number;
isElementTracked(trackingKey: string): boolean;
private formatTime;
private log;
}
//# sourceMappingURL=ElementVisibilityTracker.d.ts.map