Files
gridpilot.gg/packages/racing/domain/repositories/IRaceEventRepository.ts
2025-12-13 11:43:09 +01:00

14 lines
590 B
TypeScript

import type { RaceEvent } from '../entities/RaceEvent';
export interface IRaceEventRepository {
findById(id: string): Promise<RaceEvent | null>;
findAll(): Promise<RaceEvent[]>;
findBySeasonId(seasonId: string): Promise<RaceEvent[]>;
findByLeagueId(leagueId: string): Promise<RaceEvent[]>;
findByStatus(status: string): Promise<RaceEvent[]>;
findAwaitingStewardingClose(): Promise<RaceEvent[]>;
create(raceEvent: RaceEvent): Promise<RaceEvent>;
update(raceEvent: RaceEvent): Promise<RaceEvent>;
delete(id: string): Promise<void>;
exists(id: string): Promise<boolean>;
}