/** * Repository Interface: IPrizeRepository * * Defines operations for Prize entity persistence */ import type { Prize, PrizeStatus } from '../entities/Prize'; export interface IPrizeRepository { findById(id: string): Promise; findBySeasonId(seasonId: string): Promise; findByDriverId(driverId: string): Promise; findByStatus(status: PrizeStatus): Promise; findBySeasonAndPosition(seasonId: string, position: number): Promise; create(prize: Prize): Promise; update(prize: Prize): Promise; delete(id: string): Promise; exists(id: string): Promise; }