41 lines
1.1 KiB
TypeScript
41 lines
1.1 KiB
TypeScript
export interface LeagueDriverSeasonStatsItemViewModel {
|
|
leagueId: string;
|
|
driverId: string;
|
|
position: number;
|
|
driverName: string;
|
|
teamId?: string;
|
|
teamName?: string;
|
|
totalPoints: number;
|
|
basePoints: number;
|
|
penaltyPoints: number;
|
|
bonusPoints: number;
|
|
pointsPerRace: number;
|
|
racesStarted: number;
|
|
racesFinished: number;
|
|
dnfs: number;
|
|
noShows: number;
|
|
avgFinish: number | null;
|
|
rating: number | null;
|
|
ratingChange: number | null;
|
|
}
|
|
|
|
export interface LeagueDriverSeasonStatsViewModel {
|
|
leagueId: string;
|
|
stats: LeagueDriverSeasonStatsItemViewModel[];
|
|
}
|
|
|
|
export interface ILeagueDriverSeasonStatsPresenter {
|
|
present(
|
|
leagueId: string,
|
|
standings: Array<{
|
|
driverId: string;
|
|
position: number;
|
|
points: number;
|
|
racesCompleted: number;
|
|
}>,
|
|
penalties: Map<string, { baseDelta: number; bonusDelta: number }>,
|
|
driverResults: Map<string, Array<{ position: number }>>,
|
|
driverRatings: Map<string, { rating: number | null; ratingChange: number | null }>
|
|
): LeagueDriverSeasonStatsViewModel;
|
|
getViewModel(): LeagueDriverSeasonStatsViewModel;
|
|
} |