/** * Persistent device identifier for telemetry correlation. * * Stored at ~/.workos/device-id as a plain UTF-8 UUID string. Not a secret * — this is a convenience identifier that survives keyring unavailability. * Any IO failure falls through to a one-shot UUID for the current session. */ /** * Asynchronously resolve (and lazily create) the device id without blocking * the event loop. Memoized: the first call performs the IO, concurrent and * later callers await the same promise. Populates the shared cache that the * synchronous getDeviceId() reads, so prewarming this at startup keeps the * synchronous telemetry path off blocking fs IO. Never rejects. */ export declare function loadDeviceId(): Promise; /** * Synchronous accessor for the telemetry event path. Returns the prewarmed * value when loadDeviceId() has run; otherwise falls back to a one-time * synchronous read of the same file (returning the persisted id, so the value * never diverges from the async path). On any IO failure, returns a one-shot * UUID scoped to the current process — never throws. */ export declare function getDeviceId(): string; /** Test seam — resets the in-memory cache between test cases. */ export declare function __resetDeviceIdCache(): void;