use crate::spiffe_id::TrustDomain;
use std::error::Error;
use std::sync::Arc;
#[cfg(feature = "jwt")]
pub mod jwt;
#[cfg(feature = "x509")]
pub mod x509;
pub trait BundleSource {
type Item: Send + Sync + 'static;
type Error: Error + Send + Sync + 'static;
fn bundle_for_trust_domain(
&self,
trust_domain: &TrustDomain,
) -> Result<Option<Arc<Self::Item>>, Self::Error>;
}