import type { IDriverStatsService, DriverStats } from '@core/racing/domain/services/IDriverStatsService';
import type { Logger } from '@core/shared/application';

export class InMemoryDriverStatsService implements IDriverStatsService {
  constructor(private readonly logger: Logger) {
    this.logger.info('InMemoryDriverStatsService initialized.');
  }

  getDriverStats(driverId: string): DriverStats | null {
    this.logger.debug(`[InMemoryDriverStatsService] Getting stats for driver: ${driverId}`);

    // Mock data for demonstration purposes
    if (driverId === 'driver-1') {
      return {
        rating: 2500,
        wins: 10,
        podiums: 15,
        totalRaces: 50,
        overallRank: 1,
      };
    }
    if (driverId === 'driver-2') {
      return {
        rating: 2400,
        wins: 8,
        podiums: 12,
        totalRaces: 45,
        overallRank: 2,
      };
    }
    return null;
  }
}
