use thiserror::Error;
pub type Result<T> = std::result::Result<T, Error>;
#[derive(Debug, Error)]
#[non_exhaustive]
pub enum Error {
#[error("storage I/O: {0}")]
Io(String),
#[error("codec: {0}")]
Codec(String),
#[error("unsupported schema version: {0}")]
UnsupportedSchema(i64),
#[error("encryption key mismatch — wrong key or non-encrypted file")]
EncryptionKeyMismatch,
}