1use cosmwasm_std::{StdError, VerificationError};
2#[cfg(not(target_arch = "wasm32"))]
3use cosmwasm_crypto::CryptoError;
4use thiserror::Error;
5
6#[derive(Error, Debug)]
7pub enum AuthError {
8 #[error("{0}")]
9 StdError(#[from] StdError),
10
11 #[cfg(not(target_arch = "wasm32"))]
12 #[error("{0}")]
13 CryptoError(#[from] CryptoError),
14
15 #[error("{0}")]
16 Bech32Error(#[from] bech32::Error),
17
18 #[error("{0}")]
19 Base64Error(#[from] base64::DecodeError),
20
21 #[error("{0}")]
22 VerificationError(#[from] VerificationError),
23
24 #[error("{0}")]
25 DecodeJsonError(#[from] serde_json_wasm::de::Error),
26
27 #[error("{0}")]
28 Utf8Error(#[from] std::str::Utf8Error),
29
30 #[error("Invalid signature")]
31 InvalidSignature,
32
33 #[error("Signer address does not match pubkey")]
34 SignerPubkeyMismatch,
35
36 #[error("Token expired")]
37 TokenExpired,
38
39 #[error("Token address does not match signer address")]
40 TokenAddressMismatch,
41}