Skip to main content

TeamStore

Trait TeamStore 

Source
pub trait TeamStore: Send + Sync {
    // Provided methods
    fn create_team<'life0, 'async_trait>(
        &'life0 self,
        _data: CreateTeam,
    ) -> Pin<Box<dyn Future<Output = AuthResult<Team>> + Send + 'async_trait>>
       where Self: 'async_trait,
             'life0: 'async_trait { ... }
    fn get_team<'life0, 'life1, 'life2, 'async_trait>(
        &'life0 self,
        _organization_id: Option<&'life1 str>,
        _team_id: &'life2 str,
    ) -> Pin<Box<dyn Future<Output = AuthResult<Option<Team>>> + Send + 'async_trait>>
       where Self: 'async_trait,
             'life0: 'async_trait,
             'life1: 'async_trait,
             'life2: 'async_trait { ... }
    fn list_teams<'life0, 'life1, 'async_trait>(
        &'life0 self,
        _organization_id: &'life1 str,
    ) -> Pin<Box<dyn Future<Output = AuthResult<Vec<Team>>> + Send + 'async_trait>>
       where Self: 'async_trait,
             'life0: 'async_trait,
             'life1: 'async_trait { ... }
    fn update_team<'life0, 'life1, 'life2, 'async_trait>(
        &'life0 self,
        _organization_id: &'life1 str,
        _team_id: &'life2 str,
        _update: UpdateTeam,
    ) -> Pin<Box<dyn Future<Output = AuthResult<Team>> + Send + 'async_trait>>
       where Self: 'async_trait,
             'life0: 'async_trait,
             'life1: 'async_trait,
             'life2: 'async_trait { ... }
    fn delete_team<'life0, 'life1, 'life2, 'async_trait>(
        &'life0 self,
        _organization_id: &'life1 str,
        _team_id: &'life2 str,
    ) -> Pin<Box<dyn Future<Output = AuthResult<bool>> + Send + 'async_trait>>
       where Self: 'async_trait,
             'life0: 'async_trait,
             'life1: 'async_trait,
             'life2: 'async_trait { ... }
    fn get_team_member<'life0, 'life1, 'life2, 'async_trait>(
        &'life0 self,
        _team_id: &'life1 str,
        _user_id: &'life2 str,
    ) -> Pin<Box<dyn Future<Output = AuthResult<Option<TeamMember>>> + Send + 'async_trait>>
       where Self: 'async_trait,
             'life0: 'async_trait,
             'life1: 'async_trait,
             'life2: 'async_trait { ... }
    fn add_team_member<'life0, 'life1, 'life2, 'async_trait>(
        &'life0 self,
        _team_id: &'life1 str,
        _user_id: &'life2 str,
        _maximum: Option<f64>,
    ) -> Pin<Box<dyn Future<Output = AuthResult<AddTeamMemberResult>> + Send + 'async_trait>>
       where Self: 'async_trait,
             'life0: 'async_trait,
             'life1: 'async_trait,
             'life2: 'async_trait { ... }
    fn remove_team_member<'life0, 'life1, 'life2, 'async_trait>(
        &'life0 self,
        _team_id: &'life1 str,
        _user_id: &'life2 str,
    ) -> Pin<Box<dyn Future<Output = AuthResult<usize>> + Send + 'async_trait>>
       where Self: 'async_trait,
             'life0: 'async_trait,
             'life1: 'async_trait,
             'life2: 'async_trait { ... }
    fn list_team_members<'life0, 'life1, 'async_trait>(
        &'life0 self,
        _team_id: &'life1 str,
    ) -> Pin<Box<dyn Future<Output = AuthResult<Vec<TeamMember>>> + Send + 'async_trait>>
       where Self: 'async_trait,
             'life0: 'async_trait,
             'life1: 'async_trait { ... }
    fn list_user_teams<'life0, 'life1, 'async_trait>(
        &'life0 self,
        _user_id: &'life1 str,
    ) -> Pin<Box<dyn Future<Output = AuthResult<Vec<Team>>> + Send + 'async_trait>>
       where Self: 'async_trait,
             'life0: 'async_trait,
             'life1: 'async_trait { ... }
}

Provided Methods§

Source

fn create_team<'life0, 'async_trait>( &'life0 self, _data: CreateTeam, ) -> Pin<Box<dyn Future<Output = AuthResult<Team>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

Source

fn get_team<'life0, 'life1, 'life2, 'async_trait>( &'life0 self, _organization_id: Option<&'life1 str>, _team_id: &'life2 str, ) -> Pin<Box<dyn Future<Output = AuthResult<Option<Team>>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait, 'life2: 'async_trait,

Source

fn list_teams<'life0, 'life1, 'async_trait>( &'life0 self, _organization_id: &'life1 str, ) -> Pin<Box<dyn Future<Output = AuthResult<Vec<Team>>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait,

Source

fn update_team<'life0, 'life1, 'life2, 'async_trait>( &'life0 self, _organization_id: &'life1 str, _team_id: &'life2 str, _update: UpdateTeam, ) -> Pin<Box<dyn Future<Output = AuthResult<Team>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait, 'life2: 'async_trait,

Source

fn delete_team<'life0, 'life1, 'life2, 'async_trait>( &'life0 self, _organization_id: &'life1 str, _team_id: &'life2 str, ) -> Pin<Box<dyn Future<Output = AuthResult<bool>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait, 'life2: 'async_trait,

Remove the scoped team, its memberships, and its IDs from pending invitations atomically.

Source

fn get_team_member<'life0, 'life1, 'life2, 'async_trait>( &'life0 self, _team_id: &'life1 str, _user_id: &'life2 str, ) -> Pin<Box<dyn Future<Output = AuthResult<Option<TeamMember>>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait, 'life2: 'async_trait,

Source

fn add_team_member<'life0, 'life1, 'life2, 'async_trait>( &'life0 self, _team_id: &'life1 str, _user_id: &'life2 str, _maximum: Option<f64>, ) -> Pin<Box<dyn Future<Output = AuthResult<AddTeamMemberResult>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait, 'life2: 'async_trait,

Existing membership is idempotent, including when the capacity has since been reached. maximum is a raw Source Number bound to the durable seat predicate; custom stores must not round or cap it. Integer callers migrate to Some(3.0); None retains unlimited admission.

Source

fn remove_team_member<'life0, 'life1, 'life2, 'async_trait>( &'life0 self, _team_id: &'life1 str, _user_id: &'life2 str, ) -> Pin<Box<dyn Future<Output = AuthResult<usize>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait, 'life2: 'async_trait,

Source

fn list_team_members<'life0, 'life1, 'async_trait>( &'life0 self, _team_id: &'life1 str, ) -> Pin<Box<dyn Future<Output = AuthResult<Vec<TeamMember>>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait,

Source

fn list_user_teams<'life0, 'life1, 'async_trait>( &'life0 self, _user_id: &'life1 str, ) -> Pin<Box<dyn Future<Output = AuthResult<Vec<Team>>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait,

Dyn Compatibility§

This trait is dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementors§