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
44 lines
908 B
TypeScript
44 lines
908 B
TypeScript
import { ViewData } from "../contracts/view-data/ViewData";
|
|
|
|
export interface LeagueViewData extends ViewData {
|
|
id: string;
|
|
name: string;
|
|
game: string;
|
|
tier: 'premium' | 'standard' | 'starter';
|
|
season: string;
|
|
description: string;
|
|
drivers: number;
|
|
races: number;
|
|
completedRaces: number;
|
|
totalImpressions: number;
|
|
avgViewsPerRace: number;
|
|
engagement: number;
|
|
rating: number;
|
|
seasonStatus: 'active' | 'upcoming' | 'completed';
|
|
seasonDates: {
|
|
start: string;
|
|
end: string;
|
|
};
|
|
nextRace?: {
|
|
name: string;
|
|
date: string;
|
|
track: string;
|
|
};
|
|
sponsorSlots: {
|
|
main: {
|
|
price: number;
|
|
status: 'available' | 'occupied';
|
|
};
|
|
secondary: {
|
|
price: number;
|
|
total: number;
|
|
occupied: number;
|
|
};
|
|
};
|
|
// API DTO fields for RSC/Layout compatibility
|
|
ownerId: string;
|
|
createdAt: string;
|
|
settings: any;
|
|
usedSlots: number;
|
|
}
|