export interface DriverRatingChange {
  driverId: string;
  oldRating: number;
  newRating: number;
  change: number;
}

export interface RatingChange {
  driverId: string;
  oldRating: number;
  newRating: number;
  change: number;
}

export interface DriverRatingPort {
  calculateRatingChange(
    driverId: string,
    raceId: string,
    finalPosition: number,
    incidents: number,
    baseRating: number,
  ): Promise<RatingChange>;
  
  getDriverRating(driverId: string): Promise<number>;
  
  updateDriverRating(driverId: string, newRating: number): Promise<void>;
}