    IO(#[from] std::io::Error),
    #[error("Tried to delete non-existent key {0:?}")]
    KeyDelete(Vec<u8>),
    #[error("Key Error: {0}")]
    Key(String),
    #[error("Key not found: {0}")]
    KeyNotFound(String),
    #[error("Proof is missing data for query")]
    MissingData,
    #[error("Path Error: {0}")]
    Path(String),
    #[error("Proof Error: {0}")]
    Proof(String),
    #[cfg(feature = "full")]