import abc from fastapi import Request, Response class BaseAuthPlugin(abc.ABC): @abc.abstractmethod def build_authorize_url(self, request: Request) -> str: ... @abc.abstractmethod def login(self, request: Request) -> Response: ... @abc.abstractmethod def get_user_identity(self, request: Request) -> str: ...