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

from abc import (
    ABCMeta,
    abstractmethod,
)
from chalk._gen.chalk.server.v1.status_pb2 import (
    CheckHealthRequest,
    CheckHealthResponse,
    GetClusterMetricsRequest,
    GetClusterMetricsResponse,
    GetHealthRequest,
    GetHealthResponse,
)
from grpc import (
    Channel,
    Server,
    ServicerContext,
    UnaryUnaryMultiCallable,
)

class HealthServiceStub:
    def __init__(self, channel: Channel) -> None: ...
    CheckHealth: UnaryUnaryMultiCallable[
        CheckHealthRequest,
        CheckHealthResponse,
    ]
    """If any checks fail, this request fails."""
    GetHealth: UnaryUnaryMultiCallable[
        GetHealthRequest,
        GetHealthResponse,
    ]
    """Return the actual health check values."""
    GetClusterMetrics: UnaryUnaryMultiCallable[
        GetClusterMetricsRequest,
        GetClusterMetricsResponse,
    ]
    """Return collected cluster prometheus metrics"""

class HealthServiceServicer(metaclass=ABCMeta):
    @abstractmethod
    def CheckHealth(
        self,
        request: CheckHealthRequest,
        context: ServicerContext,
    ) -> CheckHealthResponse:
        """If any checks fail, this request fails."""
    @abstractmethod
    def GetHealth(
        self,
        request: GetHealthRequest,
        context: ServicerContext,
    ) -> GetHealthResponse:
        """Return the actual health check values."""
    @abstractmethod
    def GetClusterMetrics(
        self,
        request: GetClusterMetricsRequest,
        context: ServicerContext,
    ) -> GetClusterMetricsResponse:
        """Return collected cluster prometheus metrics"""

def add_HealthServiceServicer_to_server(servicer: HealthServiceServicer, server: Server) -> None: ...
