use async_trait::async_trait;
use crate::domain::{error::DppError, identity::SignedCredential, passport::PassportId};
#[async_trait]
pub trait IdentityPort: Send + Sync {
async fn sign_passport(
&self,
passport_id: PassportId,
payload: &serde_json::Value,
) -> Result<SignedCredential, DppError>;
async fn verify_signature(
&self,
jws: &str,
payload: &serde_json::Value,
) -> Result<bool, DppError>;
}