Files
gridpilot.gg/packages/racing/application/presenters/ITeamJoinRequestsPresenter.ts
2025-12-11 13:50:38 +01:00

25 lines
631 B
TypeScript

import type { TeamJoinRequest } from '../../domain/types/TeamMembership';
export interface TeamJoinRequestViewModel {
requestId: string;
driverId: string;
driverName: string;
teamId: string;
status: 'pending' | 'approved' | 'rejected';
requestedAt: string;
avatarUrl: string;
}
export interface TeamJoinRequestsViewModel {
requests: TeamJoinRequestViewModel[];
pendingCount: number;
totalCount: number;
}
export interface ITeamJoinRequestsPresenter {
present(
requests: TeamJoinRequest[],
driverNames: Record<string, string>,
avatarUrls: Record<string, string>
): TeamJoinRequestsViewModel;
}