/** * RatingRepository Port * * Defines the interface for rating persistence operations. */ import { Rating } from '../domain/Rating'; export interface RatingRepository { /** * Save a rating */ save(rating: Rating): Promise; /** * Find rating by driver and race */ findByDriverAndRace(driverId: string, raceId: string): Promise; /** * Find all ratings for a driver */ findByDriver(driverId: string): Promise; /** * Find all ratings for a race */ findByRace(raceId: string): Promise; /** * Clear all ratings */ clear(): Promise; }