Skip to main content

figment_keyring/
error.rs

1// SPDX-License-Identifier: MIT OR Apache-2.0
2
3use thiserror::Error;
4
5/// Result type for keyring operations.
6pub type Result<T> = std::result::Result<T, KeyringError>;
7
8/// Errors that can occur when accessing keyrings.
9#[derive(Debug, Error)]
10pub enum KeyringError {
11    #[error("secret not found: {0}")]
12    NotFound(String),
13
14    #[error("keyring config error: {0}")]
15    ConfigError(String),
16
17    #[error("keyring service unavailable: {0}")]
18    ServiceUnavailable(String),
19
20    #[error("permission denied")]
21    PermissionDenied,
22
23    #[error("backend error: {0}")]
24    BackendError(String),
25}