Files
gridpilot.gg/core/leagues/application/ports/LeagueCreateCommand.ts
Marc Mintel afef777961
Some checks failed
CI / lint-typecheck (pull_request) Failing after 12s
CI / tests (pull_request) Has been skipped
CI / contract-tests (pull_request) Has been skipped
CI / e2e-tests (pull_request) Has been skipped
CI / comment-pr (pull_request) Has been skipped
CI / commit-types (pull_request) Has been skipped
code quality
2026-01-26 02:27:37 +01:00

49 lines
1.0 KiB
TypeScript

export interface ScoringSystem {
// Define scoring system properties based on your domain
// This is a placeholder - adjust based on actual scoring system structure
pointsPerPosition?: Record<number, number>;
bonusPoints?: {
polePosition?: number;
fastestLap?: number;
cleanRace?: number;
};
penalties?: {
timePenalty?: number;
pointsDeduction?: number;
};
}
export interface LeagueCreateCommand {
name: string;
description?: string;
visibility: 'public' | 'private';
ownerId: string;
// Structure
maxDrivers?: number;
approvalRequired: boolean;
lateJoinAllowed: boolean;
// Schedule
raceFrequency?: string;
raceDay?: string;
raceTime?: string;
tracks?: string[];
// Scoring
scoringSystem?: ScoringSystem;
bonusPointsEnabled: boolean;
penaltiesEnabled: boolean;
// Stewarding
protestsEnabled: boolean;
appealsEnabled: boolean;
stewardTeam?: string[];
// Tags
gameType?: string;
skillLevel?: string;
category?: string;
tags?: string[];
}