18 lines
535 B
PHP
18 lines
535 B
PHP
<?php
|
|
|
|
namespace App\Services\Settlement\Contracts;
|
|
|
|
use App\Models\TicketCombination;
|
|
use App\Models\TicketItem;
|
|
use App\Services\Settlement\PublishedDrawResultBoard;
|
|
use Illuminate\Support\Collection;
|
|
|
|
interface SettlementPlayMatcher
|
|
{
|
|
/**
|
|
* @param Collection<int, TicketCombination> $combinations
|
|
* @return array{win_amount: int, matched_prize_tier: ?string, match_detail: array<string, mixed>}
|
|
*/
|
|
public function match(TicketItem $item, PublishedDrawResultBoard $board, Collection $combinations): array;
|
|
}
|