Files
gridpilot.gg/apps/website/lib/view-data/RaceDetailsViewData.ts
2026-01-23 15:30:23 +01:00

38 lines
955 B
TypeScript

import type { RaceDetailEntryViewData } from './RaceDetailEntryViewData';
import type { RaceDetailUserResultViewData } from './RaceDetailUserResultViewData';
export interface RaceDetailsRaceViewData {
id: string;
track: string;
car: string;
scheduledAt: string;
status: string;
sessionType: string;
}
export interface RaceDetailsLeagueViewData {
id: string;
name: string;
description?: string | null;
settings?: unknown;
}
export interface RaceDetailsRegistrationViewData {
canRegister: boolean;
isUserRegistered: boolean;
}
/**
* ViewData for RaceDetails
* This is the JSON-serializable input for the Template.
*/
export interface RaceDetailsViewData {
race: RaceDetailsRaceViewData | null;
league: RaceDetailsLeagueViewData | null;
entryList: RaceDetailEntryViewData[];
registration: RaceDetailsRegistrationViewData;
userResult: RaceDetailUserResultViewData | null;
canReopenRace: boolean;
error?: string;
}