pub trait Repo<T>: Send + Syncwhere
T: EntityMeta,{
// Required methods
fn find_all(&self) -> RepoFuture<'_, Result<Vec<T>, OrmError>>;
fn find_by_id(
&self,
id: T::Id,
) -> RepoFuture<'_, Result<Option<T>, OrmError>>;
fn create(&self, entity: T) -> RepoFuture<'_, Result<T, OrmError>>;
fn update_by_id(
&self,
id: T::Id,
entity: T,
) -> RepoFuture<'_, Result<T, OrmError>>;
fn delete_by_id(&self, id: T::Id) -> RepoFuture<'_, Result<(), OrmError>>;
}