blueprint_eigenlayer_extra/
error.rs

1use thiserror::Error as ThisError;
2
3#[derive(ThisError, Debug)]
4#[allow(clippy::large_enum_variant)]
5pub enum EigenlayerExtraError {
6    #[error("Keystore error: {0}")]
7    Keystore(#[from] blueprint_keystore::Error),
8
9    #[error("Contract interaction failed: {0}")]
10    Contract(String),
11
12    #[error("Transaction failed: {0}")]
13    Transaction(String),
14
15    #[error("Operator not registered")]
16    OperatorNotRegistered,
17
18    #[error("No rewards available to claim")]
19    NoRewardsAvailable,
20
21    #[error("Operator is slashed")]
22    OperatorSlashed,
23
24    #[error("Invalid configuration: {0}")]
25    InvalidConfiguration(String),
26
27    #[error("EigenSDK error: {0}")]
28    EigenSdk(String),
29
30    #[error("Provider error: {0}")]
31    Provider(String),
32
33    #[error("Other error: {0}")]
34    Other(String),
35}
36
37/// Type alias for convenience
38pub type Error = EigenlayerExtraError;
39
40pub type Result<T> = std::result::Result<T, EigenlayerExtraError>;