import type { ITeamMembershipRepository } from '../../domain/repositories/ITeamMembershipRepository'; import type { TeamJoinRequest } from '../../domain/entities/Team'; import type { GetTeamJoinRequestsQueryParamsDTO } from '../dto/TeamCommandAndQueryDTO'; export class GetTeamJoinRequestsQuery { constructor( private readonly membershipRepository: ITeamMembershipRepository, ) {} async execute(params: GetTeamJoinRequestsQueryParamsDTO): Promise { const { teamId } = params; return this.membershipRepository.getJoinRequests(teamId); } }