import { PenaltiesApiClient } from '../../api/penalties/PenaltiesApiClient'; /** * Penalty Service * * Orchestrates penalty operations by coordinating API calls and view model creation. * All dependencies are injected via constructor. */ export class PenaltyService { constructor( private readonly apiClient: PenaltiesApiClient ) {} /** * Find penalties by race ID */ async findByRaceId(raceId: string): Promise { const dto = await this.apiClient.getRacePenalties(raceId); return dto.penalties; } /** * Apply a penalty */ async applyPenalty(input: any): Promise { await this.apiClient.applyPenalty(input); } }