# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT!
"""Client and server classes corresponding to protobuf-defined services."""
import grpc

from hyperlane.core.post_dispatch.v1 import tx_pb2 as hyperlane_dot_core_dot_post__dispatch_dot_v1_dot_tx__pb2


class MsgStub(object):
    """Msg defines the module Msg service.
    """

    def __init__(self, channel):
        """Constructor.

        Args:
            channel: A grpc.Channel.
        """
        self.CreateIgp = channel.unary_unary(
                '/hyperlane.core.post_dispatch.v1.Msg/CreateIgp',
                request_serializer=hyperlane_dot_core_dot_post__dispatch_dot_v1_dot_tx__pb2.MsgCreateIgp.SerializeToString,
                response_deserializer=hyperlane_dot_core_dot_post__dispatch_dot_v1_dot_tx__pb2.MsgCreateIgpResponse.FromString,
                _registered_method=True)
        self.SetIgpOwner = channel.unary_unary(
                '/hyperlane.core.post_dispatch.v1.Msg/SetIgpOwner',
                request_serializer=hyperlane_dot_core_dot_post__dispatch_dot_v1_dot_tx__pb2.MsgSetIgpOwner.SerializeToString,
                response_deserializer=hyperlane_dot_core_dot_post__dispatch_dot_v1_dot_tx__pb2.MsgSetIgpOwnerResponse.FromString,
                _registered_method=True)
        self.SetDestinationGasConfig = channel.unary_unary(
                '/hyperlane.core.post_dispatch.v1.Msg/SetDestinationGasConfig',
                request_serializer=hyperlane_dot_core_dot_post__dispatch_dot_v1_dot_tx__pb2.MsgSetDestinationGasConfig.SerializeToString,
                response_deserializer=hyperlane_dot_core_dot_post__dispatch_dot_v1_dot_tx__pb2.MsgSetDestinationGasConfigResponse.FromString,
                _registered_method=True)
        self.PayForGas = channel.unary_unary(
                '/hyperlane.core.post_dispatch.v1.Msg/PayForGas',
                request_serializer=hyperlane_dot_core_dot_post__dispatch_dot_v1_dot_tx__pb2.MsgPayForGas.SerializeToString,
                response_deserializer=hyperlane_dot_core_dot_post__dispatch_dot_v1_dot_tx__pb2.MsgPayForGasResponse.FromString,
                _registered_method=True)
        self.Claim = channel.unary_unary(
                '/hyperlane.core.post_dispatch.v1.Msg/Claim',
                request_serializer=hyperlane_dot_core_dot_post__dispatch_dot_v1_dot_tx__pb2.MsgClaim.SerializeToString,
                response_deserializer=hyperlane_dot_core_dot_post__dispatch_dot_v1_dot_tx__pb2.MsgClaimResponse.FromString,
                _registered_method=True)
        self.CreateMerkleTreeHook = channel.unary_unary(
                '/hyperlane.core.post_dispatch.v1.Msg/CreateMerkleTreeHook',
                request_serializer=hyperlane_dot_core_dot_post__dispatch_dot_v1_dot_tx__pb2.MsgCreateMerkleTreeHook.SerializeToString,
                response_deserializer=hyperlane_dot_core_dot_post__dispatch_dot_v1_dot_tx__pb2.MsgCreateMerkleTreeHookResponse.FromString,
                _registered_method=True)
        self.CreateNoopHook = channel.unary_unary(
                '/hyperlane.core.post_dispatch.v1.Msg/CreateNoopHook',
                request_serializer=hyperlane_dot_core_dot_post__dispatch_dot_v1_dot_tx__pb2.MsgCreateNoopHook.SerializeToString,
                response_deserializer=hyperlane_dot_core_dot_post__dispatch_dot_v1_dot_tx__pb2.MsgCreateNoopHookResponse.FromString,
                _registered_method=True)


class MsgServicer(object):
    """Msg defines the module Msg service.
    """

    def CreateIgp(self, request, context):
        """CreateIgp ...
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def SetIgpOwner(self, request, context):
        """SetIgpOwner ...
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def SetDestinationGasConfig(self, request, context):
        """SetDestinationGasConfig ...
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def PayForGas(self, request, context):
        """PayForGas ...
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def Claim(self, request, context):
        """Claim ...
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def CreateMerkleTreeHook(self, request, context):
        """CreateMerkleTreeHook ...
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def CreateNoopHook(self, request, context):
        """CreateNoopHook ...
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')


def add_MsgServicer_to_server(servicer, server):
    rpc_method_handlers = {
            'CreateIgp': grpc.unary_unary_rpc_method_handler(
                    servicer.CreateIgp,
                    request_deserializer=hyperlane_dot_core_dot_post__dispatch_dot_v1_dot_tx__pb2.MsgCreateIgp.FromString,
                    response_serializer=hyperlane_dot_core_dot_post__dispatch_dot_v1_dot_tx__pb2.MsgCreateIgpResponse.SerializeToString,
            ),
            'SetIgpOwner': grpc.unary_unary_rpc_method_handler(
                    servicer.SetIgpOwner,
                    request_deserializer=hyperlane_dot_core_dot_post__dispatch_dot_v1_dot_tx__pb2.MsgSetIgpOwner.FromString,
                    response_serializer=hyperlane_dot_core_dot_post__dispatch_dot_v1_dot_tx__pb2.MsgSetIgpOwnerResponse.SerializeToString,
            ),
            'SetDestinationGasConfig': grpc.unary_unary_rpc_method_handler(
                    servicer.SetDestinationGasConfig,
                    request_deserializer=hyperlane_dot_core_dot_post__dispatch_dot_v1_dot_tx__pb2.MsgSetDestinationGasConfig.FromString,
                    response_serializer=hyperlane_dot_core_dot_post__dispatch_dot_v1_dot_tx__pb2.MsgSetDestinationGasConfigResponse.SerializeToString,
            ),
            'PayForGas': grpc.unary_unary_rpc_method_handler(
                    servicer.PayForGas,
                    request_deserializer=hyperlane_dot_core_dot_post__dispatch_dot_v1_dot_tx__pb2.MsgPayForGas.FromString,
                    response_serializer=hyperlane_dot_core_dot_post__dispatch_dot_v1_dot_tx__pb2.MsgPayForGasResponse.SerializeToString,
            ),
            'Claim': grpc.unary_unary_rpc_method_handler(
                    servicer.Claim,
                    request_deserializer=hyperlane_dot_core_dot_post__dispatch_dot_v1_dot_tx__pb2.MsgClaim.FromString,
                    response_serializer=hyperlane_dot_core_dot_post__dispatch_dot_v1_dot_tx__pb2.MsgClaimResponse.SerializeToString,
            ),
            'CreateMerkleTreeHook': grpc.unary_unary_rpc_method_handler(
                    servicer.CreateMerkleTreeHook,
                    request_deserializer=hyperlane_dot_core_dot_post__dispatch_dot_v1_dot_tx__pb2.MsgCreateMerkleTreeHook.FromString,
                    response_serializer=hyperlane_dot_core_dot_post__dispatch_dot_v1_dot_tx__pb2.MsgCreateMerkleTreeHookResponse.SerializeToString,
            ),
            'CreateNoopHook': grpc.unary_unary_rpc_method_handler(
                    servicer.CreateNoopHook,
                    request_deserializer=hyperlane_dot_core_dot_post__dispatch_dot_v1_dot_tx__pb2.MsgCreateNoopHook.FromString,
                    response_serializer=hyperlane_dot_core_dot_post__dispatch_dot_v1_dot_tx__pb2.MsgCreateNoopHookResponse.SerializeToString,
            ),
    }
    generic_handler = grpc.method_handlers_generic_handler(
            'hyperlane.core.post_dispatch.v1.Msg', rpc_method_handlers)
    server.add_generic_rpc_handlers((generic_handler,))
    server.add_registered_method_handlers('hyperlane.core.post_dispatch.v1.Msg', rpc_method_handlers)


 # This class is part of an EXPERIMENTAL API.
class Msg(object):
    """Msg defines the module Msg service.
    """

    @staticmethod
    def CreateIgp(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(
            request,
            target,
            '/hyperlane.core.post_dispatch.v1.Msg/CreateIgp',
            hyperlane_dot_core_dot_post__dispatch_dot_v1_dot_tx__pb2.MsgCreateIgp.SerializeToString,
            hyperlane_dot_core_dot_post__dispatch_dot_v1_dot_tx__pb2.MsgCreateIgpResponse.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def SetIgpOwner(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(
            request,
            target,
            '/hyperlane.core.post_dispatch.v1.Msg/SetIgpOwner',
            hyperlane_dot_core_dot_post__dispatch_dot_v1_dot_tx__pb2.MsgSetIgpOwner.SerializeToString,
            hyperlane_dot_core_dot_post__dispatch_dot_v1_dot_tx__pb2.MsgSetIgpOwnerResponse.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def SetDestinationGasConfig(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(
            request,
            target,
            '/hyperlane.core.post_dispatch.v1.Msg/SetDestinationGasConfig',
            hyperlane_dot_core_dot_post__dispatch_dot_v1_dot_tx__pb2.MsgSetDestinationGasConfig.SerializeToString,
            hyperlane_dot_core_dot_post__dispatch_dot_v1_dot_tx__pb2.MsgSetDestinationGasConfigResponse.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def PayForGas(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(
            request,
            target,
            '/hyperlane.core.post_dispatch.v1.Msg/PayForGas',
            hyperlane_dot_core_dot_post__dispatch_dot_v1_dot_tx__pb2.MsgPayForGas.SerializeToString,
            hyperlane_dot_core_dot_post__dispatch_dot_v1_dot_tx__pb2.MsgPayForGasResponse.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def Claim(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(
            request,
            target,
            '/hyperlane.core.post_dispatch.v1.Msg/Claim',
            hyperlane_dot_core_dot_post__dispatch_dot_v1_dot_tx__pb2.MsgClaim.SerializeToString,
            hyperlane_dot_core_dot_post__dispatch_dot_v1_dot_tx__pb2.MsgClaimResponse.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def CreateMerkleTreeHook(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(
            request,
            target,
            '/hyperlane.core.post_dispatch.v1.Msg/CreateMerkleTreeHook',
            hyperlane_dot_core_dot_post__dispatch_dot_v1_dot_tx__pb2.MsgCreateMerkleTreeHook.SerializeToString,
            hyperlane_dot_core_dot_post__dispatch_dot_v1_dot_tx__pb2.MsgCreateMerkleTreeHookResponse.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def CreateNoopHook(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(
            request,
            target,
            '/hyperlane.core.post_dispatch.v1.Msg/CreateNoopHook',
            hyperlane_dot_core_dot_post__dispatch_dot_v1_dot_tx__pb2.MsgCreateNoopHook.SerializeToString,
            hyperlane_dot_core_dot_post__dispatch_dot_v1_dot_tx__pb2.MsgCreateNoopHookResponse.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)
