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

from abc import (
    ABCMeta,
    abstractmethod,
)
from chalk._gen.chalk.server.v1.datasets_pb2 import (
    GetDatasetRequest,
    GetDatasetResponse,
    GetDatasetRevisionRequest,
    GetDatasetRevisionResponse,
    ListDatasetRevisionsRequest,
    ListDatasetRevisionsResponse,
    ListDatasetsRequest,
    ListDatasetsResponse,
)
from grpc import (
    Channel,
    Server,
    ServicerContext,
    UnaryUnaryMultiCallable,
)

class DatasetMetadataServiceStub:
    def __init__(self, channel: Channel) -> None: ...
    ListDatasets: UnaryUnaryMultiCallable[
        ListDatasetsRequest,
        ListDatasetsResponse,
    ]
    GetDataset: UnaryUnaryMultiCallable[
        GetDatasetRequest,
        GetDatasetResponse,
    ]
    ListDatasetRevisions: UnaryUnaryMultiCallable[
        ListDatasetRevisionsRequest,
        ListDatasetRevisionsResponse,
    ]
    GetDatasetRevision: UnaryUnaryMultiCallable[
        GetDatasetRevisionRequest,
        GetDatasetRevisionResponse,
    ]

class DatasetMetadataServiceServicer(metaclass=ABCMeta):
    @abstractmethod
    def ListDatasets(
        self,
        request: ListDatasetsRequest,
        context: ServicerContext,
    ) -> ListDatasetsResponse: ...
    @abstractmethod
    def GetDataset(
        self,
        request: GetDatasetRequest,
        context: ServicerContext,
    ) -> GetDatasetResponse: ...
    @abstractmethod
    def ListDatasetRevisions(
        self,
        request: ListDatasetRevisionsRequest,
        context: ServicerContext,
    ) -> ListDatasetRevisionsResponse: ...
    @abstractmethod
    def GetDatasetRevision(
        self,
        request: GetDatasetRevisionRequest,
        context: ServicerContext,
    ) -> GetDatasetRevisionResponse: ...

def add_DatasetMetadataServiceServicer_to_server(servicer: DatasetMetadataServiceServicer, server: Server) -> None: ...
