Trait UserRepositoryInterface
Source pub trait UserRepositoryInterface:
Repository<User>
+ Send
+ Sync {
// Required methods
fn find_by_external_id(
&self,
external_id: i64,
) -> Result<Option<User>, GameRepositoryError>;
fn find_unlocked_locations(
&self,
id: i64,
) -> Result<Vec<UserLocation>, GameRepositoryError>;
fn find_unlocked_location_ids(
&self,
id: i64,
) -> Result<Vec<i32>, GameRepositoryError>;
fn unlock_location(
&self,
id: i64,
location_id: i32,
) -> Result<UserLocation, GameRepositoryError>;
}