import type { DeviceFingerprint } from '../interfaces/BrandedTypes.mjs'; import type { SyncDevice } from '../interfaces/SyncTypes.mjs'; /** * Derives the fingerprint a user compares two devices by. * * Synchronous, and deliberately outside `CryptoLib`. This is a digest of values * that are public by definition, with no key and no secret input, so the * provider abstraction would buy nothing but an await on every call -- and * `getSyncDevices` is called from render paths. `@noble/hashes` is already a * direct dependency and already the hash both platform providers agree through * in `platformProviders/shared/curves.mts`, so there is one implementation * here rather than two to keep in step. * @param device - The device to fingerprint. * @returns The fingerprint, as uppercase hex in dash-separated groups. */ export declare const deviceFingerprint: (device: Pick) => DeviceFingerprint;