UNPKG

@elhamdev/tracejs

Version:

A modern, privacy-conscious alternative to browser fingerprinting for unique user identification.

49 lines (48 loc) 1.2 kB
/** * Types for behavioral fingerprinting */ export interface MouseMetrics { averageSpeed?: number; curveDeviation?: number; cornerRounding?: number; clickPressure?: number; hesitations?: number; movementVariance?: number; directionChanges?: number; accelerationProfile?: number[]; } export interface KeyboardMetrics { typingSpeed?: number; typingRhythm?: number[]; keyPressTime?: number; doubleLetterSpeed?: number; commonErrors?: string[]; deletionRate?: number; keyPressForce?: number; } export interface TouchMetrics { touchSize?: number; touchPressure?: number; multiTouchPatterns?: number[]; swipeCharacteristics?: { speed?: number; straightness?: number; consistency?: number; }; tapSpeed?: number; pinchCharacteristics?: { speed?: number; symmetry?: number; }; } export interface BehaviorProfile { mouse?: MouseMetrics; keyboard?: KeyboardMetrics; touch?: TouchMetrics; interactionPatterns?: { timeOfDay?: number[]; sessionDuration?: number; interactionDensity?: number; navigationPatterns?: string[]; }; }