38 lines
1.1 KiB
TypeScript
38 lines
1.1 KiB
TypeScript
import type { ChampionshipConfig } from '../../domain/value-objects/ChampionshipConfig';
|
|
import type { LeagueScoringPresetDTO } from '../ports/LeagueScoringPresetProvider';
|
|
|
|
export interface LeagueScoringChampionshipViewModel {
|
|
id: string;
|
|
name: string;
|
|
type: string;
|
|
sessionTypes: string[];
|
|
pointsPreview: Array<{ sessionType: string; position: number; points: number }>;
|
|
bonusSummary: string[];
|
|
dropPolicyDescription: string;
|
|
}
|
|
|
|
export interface LeagueScoringConfigViewModel {
|
|
leagueId: string;
|
|
seasonId: string;
|
|
gameId: string;
|
|
gameName: string;
|
|
scoringPresetId?: string;
|
|
scoringPresetName?: string;
|
|
dropPolicySummary: string;
|
|
championships: LeagueScoringChampionshipViewModel[];
|
|
}
|
|
|
|
export interface LeagueScoringConfigData {
|
|
leagueId: string;
|
|
seasonId: string;
|
|
gameId: string;
|
|
gameName: string;
|
|
scoringPresetId?: string;
|
|
preset?: LeagueScoringPresetDTO;
|
|
championships: ChampionshipConfig[];
|
|
}
|
|
|
|
export interface ILeagueScoringConfigPresenter {
|
|
present(data: LeagueScoringConfigData): LeagueScoringConfigViewModel;
|
|
getViewModel(): LeagueScoringConfigViewModel;
|
|
} |