import { RaceDetailEntryViewModel } from './RaceDetailEntryViewModel'; import { RaceDetailUserResultViewModel } from './RaceDetailUserResultViewModel'; import { ViewModel } from "../contracts/view-models/ViewModel"; export type RaceDetailsRaceViewModel = ViewModel & { id: string; track: string; car: string; scheduledAt: string; status: string; sessionType: string; }; import { ViewModel } from "../contracts/view-models/ViewModel"; export type RaceDetailsLeagueViewModel = ViewModel & { id: string; name: string; description?: string | null; settings?: unknown; }; import { ViewModel } from "../contracts/view-models/ViewModel"; export type RaceDetailsRegistrationViewModel = ViewModel & { canRegister: boolean; isUserRegistered: boolean; }; import { ViewModel } from "../contracts/view-models/ViewModel"; export type RaceDetailsViewModel = ViewModel & { race: RaceDetailsRaceViewModel | null; league: RaceDetailsLeagueViewModel | null; entryList: RaceDetailEntryViewModel[]; registration: RaceDetailsRegistrationViewModel; userResult: RaceDetailUserResultViewModel | null; canReopenRace: boolean; error?: string; };