use crate::HOLO_HASH_PREFIX_LEN;
#[derive(thiserror::Error, Debug, Clone, PartialEq, Eq)]
pub enum HoloHashError {
#[error("Holo Hash missing 'u' prefix")]
NoU,
#[error("Holo Hash has invalid base64 encoding")]
BadBase64,
#[error("Holo Hash has incorrect size")]
BadSize,
#[error("Holo Hash {0} has unknown prefix {1:?}")]
BadPrefix(String, [u8; HOLO_HASH_PREFIX_LEN]),
#[error("Holo Hash checksum validation failed")]
BadChecksum(String),
#[error("Bad Blake2B hash size.")]
BadHashSize,
}
pub type HoloHashResult<T> = Result<T, HoloHashError>;