1use cosmwasm_std::StdError;
2use thiserror::Error;
3
4use cw_controllers::{AdminError, HookError};
5
6#[derive(Error, Debug, PartialEq)]
7pub enum ContractError {
8 #[error("{0}")]
9 Std(#[from] StdError),
10
11 #[error("{0}")]
12 Admin(#[from] AdminError),
13
14 #[error("{0}")]
15 Hook(#[from] HookError),
16
17 #[error("Unauthorized")]
18 Unauthorized {},
19
20 #[error("No claims that can be released currently")]
21 NothingToClaim {},
22
23 #[error("Must send '{0}' to stake")]
24 MissingDenom(String),
25
26 #[error("Sent unsupported denoms, must send '{0}' to stake")]
27 ExtraDenoms(String),
28
29 #[error("Must send valid address to stake")]
30 InvalidDenom(String),
31
32 #[error("Missed address or denom")]
33 MixedNativeAndCw20(String),
34
35 #[error("No funds sent")]
36 NoFunds {},
37
38 #[error("No data in ReceiveMsg")]
39 NoData {},
40}