UNPKG

@randyd45/web-behavior-tracker

Version:

A framework-agnostic package for tracking user behavior on web forms

45 lines (44 loc) 1.41 kB
import { BehaviorEvent, BehaviorMetrics, BehaviorInsights, TrackingOptions } from './types.js'; export declare class BehaviorTracker { private events; private startTime; private options; private formFields; private isTracking; private sessionId; private static readonly STORAGE_KEY; private debounceTimers; private lastInputValues; private static readonly THROTTLE_DELAY; private lastThrottledEvent; constructor(options?: TrackingOptions); private getOrCreateSessionId; private saveSessionData; private loadSessionData; startTracking(): void; stopTracking(): void; private setupPageUnloadHandler; private removePageUnloadHandler; private handlePageUnload; getMetrics(): BehaviorMetrics; getInsights(): BehaviorInsights; getEvents(): BehaviorEvent[]; private setupEventListeners; private removeEventListeners; private handleInputEvent; private handleEvent; private isFormElement; private getElementValue; private getElementAttributes; private handleSelectChange; private handleCheckboxRadioChange; private handleFormSubmit; private getElementPath; private getFieldInteractionOrder; private detectSuspiciousPatterns; private calculateRiskScore; private calculateCompletionRate; getSessionId(): string; clearSession(): void; private getElementState; }