use crate::cli_state::NamedCredential;
use ockam::identity::models::CredentialAndPurposeKey;
use ockam::identity::Identity;
use ockam_core::async_trait;
use ockam_core::Result;
#[async_trait]
pub trait CredentialsRepository: Send + Sync + 'static {
async fn store_credential(
&self,
name: &str,
issuer: &Identity,
credential: CredentialAndPurposeKey,
) -> Result<NamedCredential>;
async fn get_credential(&self, name: &str) -> Result<Option<NamedCredential>>;
async fn get_credentials(&self) -> Result<Vec<NamedCredential>>;
}