"""
@generated by mypy-protobuf.  Do not edit manually!
isort:skip_file
"""

from abc import (
    ABCMeta,
    abstractmethod,
)
from chalk._gen.chalk.server.v1.auth_pb2 import (
    GetTokenRequest,
    GetTokenResponse,
    UpdateLinkSessionRequest,
    UpdateLinkSessionResponse,
)
from chalk._gen.chalk.server.v1.link_pb2 import (
    CreateLinkSessionRequest,
    CreateLinkSessionResponse,
    GetLinkSessionRequest,
    GetLinkSessionResponse,
)
from grpc import (
    Channel,
    Server,
    ServicerContext,
    UnaryUnaryMultiCallable,
)

class AuthServiceStub:
    def __init__(self, channel: Channel) -> None: ...
    GetToken: UnaryUnaryMultiCallable[
        GetTokenRequest,
        GetTokenResponse,
    ]
    CreateLinkSession: UnaryUnaryMultiCallable[
        CreateLinkSessionRequest,
        CreateLinkSessionResponse,
    ]
    GetLinkSession: UnaryUnaryMultiCallable[
        GetLinkSessionRequest,
        GetLinkSessionResponse,
    ]
    UpdateLinkSession: UnaryUnaryMultiCallable[
        UpdateLinkSessionRequest,
        UpdateLinkSessionResponse,
    ]

class AuthServiceServicer(metaclass=ABCMeta):
    @abstractmethod
    def GetToken(
        self,
        request: GetTokenRequest,
        context: ServicerContext,
    ) -> GetTokenResponse: ...
    @abstractmethod
    def CreateLinkSession(
        self,
        request: CreateLinkSessionRequest,
        context: ServicerContext,
    ) -> CreateLinkSessionResponse: ...
    @abstractmethod
    def GetLinkSession(
        self,
        request: GetLinkSessionRequest,
        context: ServicerContext,
    ) -> GetLinkSessionResponse: ...
    @abstractmethod
    def UpdateLinkSession(
        self,
        request: UpdateLinkSessionRequest,
        context: ServicerContext,
    ) -> UpdateLinkSessionResponse: ...

def add_AuthServiceServicer_to_server(servicer: AuthServiceServicer, server: Server) -> None: ...
