baseid_wallet_core/
holder.rs1use crate::AnyCredential;
4use baseid_core::types::CredentialId;
5
6#[allow(async_fn_in_trait)]
8pub trait WalletStore: Send + Sync {
9 async fn store_credential(&self, cred: AnyCredential) -> baseid_core::Result<CredentialId>;
11
12 async fn get_credential(&self, id: &CredentialId) -> baseid_core::Result<AnyCredential>;
14
15 async fn list_credentials(
17 &self,
18 filter: crate::CredentialFilter,
19 ) -> baseid_core::Result<Vec<baseid_core::credential::CredentialSummary>>;
20
21 async fn delete_credential(&self, id: &CredentialId) -> baseid_core::Result<()>;
23}