1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
use crate::domain::dtos::{email::EmailDTO, profile::ProfileDTO};
use async_trait::async_trait;
use clean_base::{
entities::default_response::FetchResponseKind, utils::errors::MappedErrors,
};
use shaku::Interface;
#[async_trait]
pub trait ProfileFetching: Interface + Send + Sync {
async fn get(
&self,
email: EmailDTO,
) -> Result<FetchResponseKind<ProfileDTO, EmailDTO>, MappedErrors>;
}