Package-level declarations

Types

Link copied to clipboard
sealed class BulkResultEntry

A bulk insert result entry, returned by add_many and add_many_with_meta

Link copied to clipboard
interface Disposable
Link copied to clipboard
Link copied to clipboard
data class Login(var id: String, var timesUsed: Long, var timeCreated: Long, var timeLastUsed: Long, var timePasswordChanged: Long, var timeLastBreachAlertDismissed: Long?, var origin: String, var httpRealm: String?, var formActionOrigin: String?, var usernameField: String, var passwordField: String, var password: String, var username: String)

A login stored in the database

Link copied to clipboard
data class LoginCandidate(var id: String, var timesUsed: Long, var timeCreated: Long, var timeLastUsed: Long, var timePasswordChanged: Long, var timeLastBreachAlertDismissed: Long?, var origin: String, var httpRealm: String?, var formActionOrigin: String?, var usernameField: String, var passwordField: String)

A login stored in the database, minus the encrypted fields.

Link copied to clipboard
data class LoginEntry(var origin: String, var httpRealm: String?, var formActionOrigin: String?, var usernameField: String, var passwordField: String, var password: String, var username: String)

A login entry from the user, not linked to any database record. The add/update APIs input these.

Link copied to clipboard
data class LoginEntryWithMeta(var entry: LoginEntry, var meta: LoginMeta)

A login together with record fields, handed over to the store API; ie a login persisted elsewhere, useful for migrations

Link copied to clipboard
data class LoginMeta(var id: String, var timesUsed: Long, var timeCreated: Long, var timeLastUsed: Long, var timePasswordChanged: Long, var timeLastBreachAlertDismissed: Long?)

Metadata fields managed internally by the library. These are automatically set on add() and updated on operations like touch() and update(). Not included in LoginEntry; use add_with_meta() when importing records with existing metadata.

Link copied to clipboard

These are the errors returned by our public API.

Link copied to clipboard

The Desktop-facing bridged sync engine - a thin wrapper over the sync15::engine::SyncEngine implemented by this component (see sync15::engine::BridgedEngineWrapper). It's only actually used on Desktop, but it's fine to expose this everywhere. NOTE: all timestamps here are milliseconds.

Link copied to clipboard

The Desktop-facing bridged sync engine - a thin wrapper over the sync15::engine::SyncEngine implemented by this component (see sync15::engine::BridgedEngineWrapper). It's only actually used on Desktop, but it's fine to expose this everywhere. NOTE: all timestamps here are milliseconds.

Link copied to clipboard
data class LoginsDeletionMetrics(var localDeleted: ULong, var mirrorDeleted: ULong)

Metrics tracking deletion of logins that cannot be decrypted, see delete_undecryptable_records_for_remote_replacement for more details

Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
data class RunMaintenanceOptions(var deleteUndecryptableRecordsForRemoteReplacement: Boolean = true)

Functions

Link copied to clipboard

Create a LoginStore with StaticKeyManager by passing in a db path and a static key

Link copied to clipboard

Similar to create_static_key_manager above, create a ManagedEncryptorDecryptor by passing in a KeyManager

Link copied to clipboard

We expose the crypto primitives on the namespace Utility function to create a StaticKeyManager to be used for the time being until support lands for trait implementation of an UniFFI * interface in UniFFI.