<?php

namespace NoahVet\Reef\Application\Security\Service;

interface ResourceFinderServiceInterface
{
    /**
     * Yields all resources from all registered enumerators, sequentially.
     *
     * @return \Generator<mixed>
     */
    public function iterate(): \Generator;

    /**
     * Returns the first entity matching the given IAM slug across all registered locators.
     */
    public function findBySlug(string $slug): mixed;
}
