1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
//! Encrypted on-device storage primitives for `WalletKit`.
//!
//! The crate provides building blocks shared by `walletkit-core::storage` and
//! sibling SDKs (e.g. `OrbKit`'s `OrbPcpStore`):
//!
//! - [`Connection`], [`Transaction`], [`Statement`], [`cipher`] — encrypted
//! `SQLite` (`sqlite3mc`) wrapper with safe Rust types.
//! - [`Vault`] — encrypted-database wrapper around a caller-supplied schema,
//! exposing the underlying [`Connection`].
//! - [`blobs`] — content-addressed blob storage (`ensure_schema`, `put`,
//! `get`), [`ContentId`], and [`compute_content_id`].
//! - [`init_or_open_envelope_key`] — sealed intermediate key persisted via
//! [`AtomicBlobStore`].
//! - [`Lock`] / [`LockGuard`] — cross-process exclusive lock (`flock` /
//! `LockFileEx` native, no-op on WASM).
//! - [`Keystore`] / [`AtomicBlobStore`] — plain-Rust trait surface for
//! consumer-supplied platform integrations. Consumers that need FFI define
//! their own annotated traits and adapt to these.
//!
//! Consumers own their schemas, FFI surfaces, and storage policy on top of
//! these primitives.
pub use ;
pub use init_or_open_envelope_key;
pub use ;
pub use ;
pub use ;
pub use ;
pub use Vault;