import { Team } from '../core/entity/Team.ts'; import { TeamMember } from '../core/entity/TeamMember.ts'; import { TeamPackage } from '../core/entity/TeamPackage.ts'; import { AbstractRepository } from './AbstractRepository.ts'; export declare class TeamRepository extends AbstractRepository { private readonly Team; private readonly TeamMember; private readonly TeamPackage; findTeam(orgId: string, name: string): Promise; findTeamByTeamId(teamId: string): Promise; listTeamsByOrgId(orgId: string): Promise; saveTeam(team: Team): Promise; removeTeam(teamId: string): Promise; removeAllTeamsByOrgId(orgId: string): Promise; listTeamsByUserId(userId: string): Promise; listTeamsByUserIdAndOrgId(userId: string, orgId: string): Promise<{ team: Team; role: string; }[]>; findMember(teamId: string, userId: string): Promise; addMember(member: TeamMember): Promise; removeMember(teamId: string, userId: string): Promise; removeMemberFromAllTeams(orgId: string, userId: string): Promise; listMembers(teamId: string): Promise; removeAllMembersByTeamId(teamId: string): Promise; removeAllMembersByOrgId(orgId: string): Promise; findPackage(teamId: string, packageId: string): Promise; addPackage(teamPackage: TeamPackage): Promise; removePackage(teamId: string, packageId: string): Promise; listPackages(teamId: string): Promise; removeAllPackagesByTeamId(teamId: string): Promise; removeTeamCascade(teamId: string): Promise; removeAllPackagesByOrgId(orgId: string): Promise; hasAnyTeamBinding(packageId: string): Promise; hasPackageAccess(packageId: string, userId: string): Promise; }