<?php

declare(strict_types=1);

namespace Tournament\Scoring;

interface TieBreaker
{
    /**
     * Resolve a tie between participants.
     *
     * @param array<int, array{
     *     participant_id: int,
     *     score: float,
     *     placement?: int|null,
     *     kills?: int|null
     * }> $results
     *
     * @return int|null
     *
     * Returns the winning participant ID.
     * Returns null if the tie cannot be resolved.
     */
    public function resolve(
        array $results
    ): ?int;
}