2022-09-20 05:14:00 -05:00
|
|
|
package team
|
|
|
|
|
|
|
|
import (
|
|
|
|
"context"
|
|
|
|
|
|
|
|
"github.com/grafana/grafana/pkg/models"
|
|
|
|
)
|
|
|
|
|
|
|
|
type Service interface {
|
2023-01-11 07:20:09 -06:00
|
|
|
CreateTeam(name, email string, orgID int64) (Team, error)
|
|
|
|
UpdateTeam(ctx context.Context, cmd *UpdateTeamCommand) error
|
|
|
|
DeleteTeam(ctx context.Context, cmd *DeleteTeamCommand) error
|
|
|
|
SearchTeams(ctx context.Context, query *SearchTeamsQuery) (SearchTeamQueryResult, error)
|
|
|
|
GetTeamByID(ctx context.Context, query *GetTeamByIDQuery) (*TeamDTO, error)
|
|
|
|
GetTeamsByUser(ctx context.Context, query *GetTeamsByUserQuery) ([]*TeamDTO, error)
|
2022-09-20 05:14:00 -05:00
|
|
|
AddTeamMember(userID, orgID, teamID int64, isExternal bool, permission models.PermissionType) error
|
|
|
|
UpdateTeamMember(ctx context.Context, cmd *models.UpdateTeamMemberCommand) error
|
|
|
|
IsTeamMember(orgId int64, teamId int64, userId int64) (bool, error)
|
|
|
|
RemoveTeamMember(ctx context.Context, cmd *models.RemoveTeamMemberCommand) error
|
|
|
|
GetUserTeamMemberships(ctx context.Context, orgID, userID int64, external bool) ([]*models.TeamMemberDTO, error)
|
|
|
|
GetTeamMembers(ctx context.Context, query *models.GetTeamMembersQuery) error
|
2023-01-11 07:20:09 -06:00
|
|
|
IsAdminOfTeams(ctx context.Context, query *IsAdminOfTeamsQuery) (bool, error)
|
2022-09-20 05:14:00 -05:00
|
|
|
}
|