"""
@generated by mypy-protobuf.  Do not edit manually!
isort:skip_file
"""
import abc
import cosmos.bank.v1beta1.tx_pb2
import grpc

class MsgStub:
    """Msg defines the bank Msg service."""

    def __init__(self, channel: grpc.Channel) -> None: ...
    Send: grpc.UnaryUnaryMultiCallable[
        cosmos.bank.v1beta1.tx_pb2.MsgSend,
        cosmos.bank.v1beta1.tx_pb2.MsgSendResponse,
    ]
    """Send defines a method for sending coins from one account to another
    account.
    """
    MultiSend: grpc.UnaryUnaryMultiCallable[
        cosmos.bank.v1beta1.tx_pb2.MsgMultiSend,
        cosmos.bank.v1beta1.tx_pb2.MsgMultiSendResponse,
    ]
    """MultiSend defines a method for sending coins from a single account to
    multiple accounts. It can be seen as a single message representation of
    multiple individual MsgSend messages.
    """

class MsgServicer(metaclass=abc.ABCMeta):
    """Msg defines the bank Msg service."""

    @abc.abstractmethod
    def Send(
        self,
        request: cosmos.bank.v1beta1.tx_pb2.MsgSend,
        context: grpc.ServicerContext,
    ) -> cosmos.bank.v1beta1.tx_pb2.MsgSendResponse:
        """Send defines a method for sending coins from one account to another
        account.
        """
    @abc.abstractmethod
    def MultiSend(
        self,
        request: cosmos.bank.v1beta1.tx_pb2.MsgMultiSend,
        context: grpc.ServicerContext,
    ) -> cosmos.bank.v1beta1.tx_pb2.MsgMultiSendResponse:
        """MultiSend defines a method for sending coins from a single account to
        multiple accounts. It can be seen as a single message representation of
        multiple individual MsgSend messages.
        """

def add_MsgServicer_to_server(servicer: MsgServicer, server: grpc.Server) -> None: ...
