/** * Shared types for standings that can be used in both server and client code */ export interface TeamStanding { teamId: string; teamName: string; totalPoints: number; currentRank: number; previousRank: number | null; rankChange: number; // Positive = moved up, negative = moved down placementCounts: { first: number; second: number; third: number; fourth: number; fifth: number; sixth: number; seventh: number; eighth: number; }; participantsRemaining: number; calculatedAt: Date; // Phase 5.4: Expected value projections actualPoints?: number | null; projectedPoints?: number | null; participantsFinished?: number | null; } export interface TeamStandingSnapshot { date: Date; rank: number; totalPoints: number; }