use thiserror::Error;
pub type Result<T> = std::result::Result<T, Error>;
#[derive(Debug, Error)]
pub enum Error {
#[error("cannot get empty secret")]
GetEmptySecretError,
#[cfg(feature = "command")]
#[error("cannot get secret from command")]
GetSecretFromCommand(#[source] process::Error),
#[cfg(feature = "command")]
#[error("cannot get secret from command: empty output")]
GetSecretFromCommandEmptyOutputError,
#[cfg(feature = "keyring")]
#[error(transparent)]
KeyringError(#[from] keyring::Error),
}