use thiserror::Error;
use crate::base58btc::Base58Error;
#[derive(Debug, Error)]
#[non_exhaustive]
pub enum MultibaseError {
#[error("multibase input too large")]
InputTooLarge,
#[error("invalid multibase string: too short")]
TooShort,
#[error("unsupported multibase prefix")]
UnsupportedPrefix,
#[error(transparent)]
Base58(#[from] Base58Error),
#[error("invalid base64url")]
Base64Url,
#[error("multibase encoded length overflow")]
LengthOverflow,
}