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

from abc import (
    ABCMeta,
    abstractmethod,
)
from chalk._gen.chalk.server.v1.kube_pb2 import (
    GetKubernetesEventsRequest,
    GetKubernetesEventsResponse,
    GetKubernetesPersistentVolumesRequest,
    GetKubernetesPersistentVolumesResponse,
    GetPodStackTraceDumpRequest,
    GetPodStackTraceDumpResponse,
)
from grpc import (
    Channel,
    Server,
    ServicerContext,
    UnaryUnaryMultiCallable,
)

class KubeServiceStub:
    def __init__(self, channel: Channel) -> None: ...
    GetPodStackTraceDump: UnaryUnaryMultiCallable[
        GetPodStackTraceDumpRequest,
        GetPodStackTraceDumpResponse,
    ]
    """GetPodStackTraceDump gets the stack trace dump from a single process running in a pod
    The process can be specified either by name or process ID
    """
    GetKubernetesEvents: UnaryUnaryMultiCallable[
        GetKubernetesEventsRequest,
        GetKubernetesEventsResponse,
    ]
    GetKubernetesPersistentVolumes: UnaryUnaryMultiCallable[
        GetKubernetesPersistentVolumesRequest,
        GetKubernetesPersistentVolumesResponse,
    ]

class KubeServiceServicer(metaclass=ABCMeta):
    @abstractmethod
    def GetPodStackTraceDump(
        self,
        request: GetPodStackTraceDumpRequest,
        context: ServicerContext,
    ) -> GetPodStackTraceDumpResponse:
        """GetPodStackTraceDump gets the stack trace dump from a single process running in a pod
        The process can be specified either by name or process ID
        """
    @abstractmethod
    def GetKubernetesEvents(
        self,
        request: GetKubernetesEventsRequest,
        context: ServicerContext,
    ) -> GetKubernetesEventsResponse: ...
    @abstractmethod
    def GetKubernetesPersistentVolumes(
        self,
        request: GetKubernetesPersistentVolumesRequest,
        context: ServicerContext,
    ) -> GetKubernetesPersistentVolumesResponse: ...

def add_KubeServiceServicer_to_server(servicer: KubeServiceServicer, server: Server) -> None: ...
