<?php

namespace App\Domain\Manga\Domain\Contract\Provider;

use App\Domain\Manga\Domain\Model\Manga;
use App\Domain\Manga\Domain\Model\MangaCollection;
use App\Domain\Manga\Domain\Model\ValueObject\ExternalId;

interface MangaProviderInterface
{
    public function search(string $title): MangaCollection;

    public function findByExternalId(ExternalId $externalId): ?Manga;

    /**
     * @param string[] $sourceExternalIds IDs MangaDex des manga sources
     */
    public function discover(array $sourceExternalIds): MangaCollection;
}
