1use thiserror::Error;
2
3#[derive(Error, Debug)]
4pub enum SecretsError {
5 #[error("Secret not found: {name}")]
6 NotFound { name: String },
7
8 #[error("Access denied to secret: {name}")]
9 AccessDenied { name: String },
10
11 #[error("Encryption error: {0}")]
12 Encryption(String),
13
14 #[error("Decryption error: {0}")]
15 Decryption(String),
16
17 #[error("Storage error: {0}")]
18 Storage(String),
19
20 #[error("Invalid secret name: {name}")]
21 InvalidName { name: String },
22
23 #[error("Secret already exists: {name}")]
24 AlreadyExists { name: String },
25
26 #[error("Provider error: {0}")]
27 Provider(String),
28}
29
30pub type Result<T> = std::result::Result<T, SecretsError>;