<?php declare(strict_types=1); namespace api\components\OAuth2\Repositories; use League\OAuth2\Server\Entities\ClientEntityInterface; use League\OAuth2\Server\Entities\ScopeEntityInterface; use League\OAuth2\Server\Repositories\ScopeRepositoryInterface; /** * In our application we use separate scopes repositories for different grants. * To create an instance of the authorization server, you need to pass the scopes * repository. This class acts as a dummy to meet this requirement. */ class EmptyScopeRepository implements ScopeRepositoryInterface { public function getScopeEntityByIdentifier($identifier): ?ScopeEntityInterface { return null; } public function finalizeScopes( array $scopes, $grantType, ClientEntityInterface $client, $userIdentifier = null ): array { return $scopes; } }