"""
This class does not do anything useful at runtime. Its only purpose is to provide type annotations.
Since sphinx does not support .pyi files (yet?), this is a .py file.
"""

from __future__ import annotations

from typing import TYPE_CHECKING

if TYPE_CHECKING:

    from typing import Iterable, Optional

    from authorizationproviderservice_types import Verify_Responses

    from sila2.client import ClientMetadataInstance


class AuthorizationProviderServiceClient:
    """
    This Feature provides SiLA Servers with the ability to check a given access token.
    """

    def Verify(
        self,
        AccessToken: str,
        RequestedServer: str,
        RequestedFeature: str,
        *,
        metadata: Optional[Iterable[ClientMetadataInstance]] = None,
    ) -> Verify_Responses:
        """
        Verifies that a given token is valid for the requested server.
        """
        ...
