Skip to content
docs

SecureStorageErrorCode

SecureStorageErrorCode = "cancelled" | "biometry-changed" | "lockout" | "no-passcode" | "not-available" | "locked" | "auth-failed" | "invalid" | "storage" | "stale-copy"

Defined in: errors.ts:20

Every failure the store can report, as a stable code the app can branch on.

  • cancelled — the user dismissed the Face ID / passcode / fingerprint sheet.
  • biometry-changed — a strict (biometricsOnly) secret whose biometrics were re-enrolled or removed. The OS has made it unreadable for good; the app offers a restore from backup. Never retried.
  • lockout — too many failed biometric attempts; the OS unlocks it later or with the passcode.
  • no-passcode — the device has no passcode / screen lock, so nothing can be stored safely.
  • not-available — the device cannot give the protection asked for (no biometrics enrolled for strict mode, no secure hardware, Android older than 11). Fail closed.
  • locked — the device is locked; secrets are readable only while it is unlocked.
  • auth-failed — the OS refused the authentication for another reason.
  • invalid — a bad id or option, rejected before any native call.
  • storage — anything else from the Keychain / Keystore / file layer.
  • stale-copy — the newest copy of a secret is stored, but an older one (maybe under a weaker protection) could not be removed. info / list report the weakest protection left, and the store retries the removal on its next operation.