export interface RaceViewData {
  id: string;
  track: string;
  car: string;
  scheduledAt: string;
  scheduledAtLabel: string;
  timeLabel: string;
  relativeTimeLabel: string;
  status: 'scheduled' | 'running' | 'completed' | 'cancelled';
  statusLabel: string;
  statusVariant: string;
  statusIconName: string;
  sessionType: string;
  leagueId: string | null;
  leagueName: string | null;
  strengthOfField: number | null;
  isUpcoming: boolean;
  isLive: boolean;
  isPast: boolean;
}

export interface RacesViewData {
  races: RaceViewData[];
  totalCount: number;
  scheduledCount: number;
  runningCount: number;
  completedCount: number;
  leagues: Array<{ id: string; name: string }>;
  upcomingRaces: RaceViewData[];
  liveRaces: RaceViewData[];
  recentResults: RaceViewData[];
  racesByDate: Array<{
    dateKey: string;
    dateLabel: string;
    races: RaceViewData[];
  }>;
}
