/** * Application Use Case Interface: ITeamRankingUseCase * * Use case for computing team rankings from rating snapshots. * This is an application layer concern that orchestrates domain data. */ export interface TeamRanking { teamId: string; teamName: string; drivingRating: number; adminTrustRating: number; overallRating: number; eventCount: number; lastUpdated: Date; overallRank: number | null; } export interface ITeamRankingUseCase { getAllTeamRankings(): Promise; getTeamRanking(teamId: string): Promise; }