<?php

namespace App\Contracts;

use Illuminate\Support\Collection;

interface AsyncCompetitorAdProvider
{
    public function beginKeywordSearch(string $query, ?string $country = null, ?string $mediaType = null): string;

    /**
     * @return Collection<int, \App\DTOs\CompetitorAd>|null  null while the search is still running
     */
    public function collectRun(string $runId): ?Collection;
}
