export interface ScoringSystem { // Define scoring system properties based on your domain // This is a placeholder - adjust based on actual scoring system structure pointsPerPosition?: Record; 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[]; }