import { RacingDomainValidationError } from '../../errors/RacingDomainError'; export class PenaltyValue { private constructor(private readonly value: number) {} static create(value: number): PenaltyValue { if (value <= 0 || !Number.isInteger(value)) { throw new RacingDomainValidationError('Penalty value must be a positive integer'); } return new PenaltyValue(value); } toNumber(): number { return this.value; } equals(other: PenaltyValue): boolean { return this.value === other.value; } }