1use cosmwasm_std::StdError;
2use thiserror::Error;
3
4use cw_controllers::AdminError;
5use tg_utils::{HookError, PreauthError, SlasherError};
6
7#[derive(Error, Debug, PartialEq)]
8pub enum ContractError {
9 #[error("{0}")]
10 Admin(#[from] AdminError),
11
12 #[error("{0}")]
13 Std(#[from] StdError),
14
15 #[error("{0}")]
16 Hook(#[from] HookError),
17
18 #[error("{0}")]
19 Preauth(#[from] PreauthError),
20
21 #[error("{0}")]
22 Slashing(#[from] SlasherError),
23
24 #[error("Unauthorized: {0}")]
25 Unauthorized(String),
26
27 #[error("Unknown sudo message")]
28 UnknownSudoMsg {},
29
30 #[error("No members to distribute tokens to")]
31 NoMembersToDistributeTo {},
32}