37 lines
1.1 KiB
TypeScript
37 lines
1.1 KiB
TypeScript
import type { ChampionshipConfig } from '../../domain/types/ChampionshipConfig';
|
|
import type { LeagueScoringPresetDTO } from '../ports/LeagueScoringPresetProvider';
|
|
import type { Presenter } from '@core/shared/presentation';
|
|
|
|
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
|
|
extends Presenter<LeagueScoringConfigData, LeagueScoringConfigViewModel> {} |