/** * Device Fingerprint ID Generator SDK * * A privacy-focused, permission-less device fingerprinting library. * Generates a stable, high-entropy device identifier using browser signals. * * Signals used: * - Canvas: Rendering differences (fonts, emojis, blending) * - Audio: Audio stack processing differences (oscillator, compressor) * - Hardware: Concurrency, memory, platform, language, timezone * - WebGL: GPU vendor, renderer, and WebGL parameters * - Fonts: System installed fonts * * @version 1.1.0 */ /** * Options for generating device fingerprint */ export interface GenerateFingerprintOptions { /** * Enable Canvas fingerprinting * @default true */ canvas?: boolean; /** * Enable Audio fingerprinting * @default true */ audio?: boolean; /** * Enable WebGL fingerprinting * @default true */ webgl?: boolean; /** * Enable font detection * @default true */ fonts?: boolean; /** * Enable hardware feature collection * @default true */ hardware?: boolean; } /** * Hardware traits collected from the browser */ export interface HardwareTraits { concurrency: string | number; memory: string | number; platform: string; language: string; colorDepth: number; pixelDepth: number; timezoneOffset: number; } /** * Detailed fingerprint information */ export interface FingerprintDetails { canvasDataUrl?: string; canvasError?: string; webgl?: string; fonts?: string[]; hardware?: HardwareTraits; } /** * Components used to generate the fingerprint */ export interface FingerprintComponents { canvas?: string; audio?: string; webgl?: string; fonts?: string; hardware?: any; } /** * Result of the fingerprint generation */ export interface GenerateFingerprintResult { /** * The generated device ID (16-character hex string) */ deviceId: string; /** * Estimated entropy score in bits */ entropyScore: number; /** * Time taken to generate the fingerprint in milliseconds */ generationTimeMs: number; /** * Components used to generate the fingerprint */ components: FingerprintComponents; /** * Detailed information about the fingerprint components */ details: FingerprintDetails; /** * Debug feature string used for hashing */ _debug_featureString: string; } /** * Main function to generate device fingerprint * @param options Configuration options * @returns Promise with fingerprint result */ export declare function generateFingerprint(options?: GenerateFingerprintOptions): Promise;