2026-04-01 21:16:39 -04:00
|
|
|
use crate::error::AgeError;
|
|
|
|
|
use crate::identities::Identity;
|
|
|
|
|
|
2026-03-31 17:26:10 -04:00
|
|
|
pub mod bitwarden;
|
|
|
|
|
pub mod file;
|
|
|
|
|
pub mod prompt;
|
|
|
|
|
|
|
|
|
|
pub use bitwarden::BitwardenSource;
|
|
|
|
|
pub use file::FileSource;
|
|
|
|
|
pub use prompt::PromptSource;
|
2026-04-01 21:16:39 -04:00
|
|
|
|
|
|
|
|
/// Infra boundary trait: an identity resolver that loads key material from an
|
|
|
|
|
/// external source and returns a concrete Identity.
|
|
|
|
|
pub trait IdentitySource {
|
|
|
|
|
fn name(&self) -> &str;
|
|
|
|
|
fn load(&self) -> Result<Box<dyn Identity>, AgeError>;
|
|
|
|
|
}
|