"""
@generated by mypy-protobuf.  Do not edit manually!
isort:skip_file
"""
import builtins
import cosmos.base.v1beta1.coin_pb2
import cosmos.crypto.multisig.v1beta1.multisig_pb2
import cosmos.tx.signing.v1beta1.signing_pb2
import google.protobuf.any_pb2
import google.protobuf.descriptor
import google.protobuf.internal.containers
import google.protobuf.message
import typing
import typing_extensions

DESCRIPTOR: google.protobuf.descriptor.FileDescriptor = ...

class Tx(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor = ...
    BODY_FIELD_NUMBER: builtins.int
    AUTH_INFO_FIELD_NUMBER: builtins.int
    SIGNATURES_FIELD_NUMBER: builtins.int

    @property
    def signatures(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.bytes]: ...

    @property
    def body(self) -> global___TxBody: ...

    @property
    def auth_info(self) -> global___AuthInfo: ...

    def __init__(self,
        *,
        body : typing.Optional[global___TxBody] = ...,
        auth_info : typing.Optional[global___AuthInfo] = ...,
        signatures : typing.Optional[typing.Iterable[builtins.bytes]] = ...,
        ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal[u"auth_info",b"auth_info",u"body",b"body"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal[u"auth_info",b"auth_info",u"body",b"body",u"signatures",b"signatures"]) -> None: ...
global___Tx = Tx

class TxRaw(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor = ...
    BODY_BYTES_FIELD_NUMBER: builtins.int
    AUTH_INFO_BYTES_FIELD_NUMBER: builtins.int
    SIGNATURES_FIELD_NUMBER: builtins.int
    body_bytes: builtins.bytes = ...
    auth_info_bytes: builtins.bytes = ...

    @property
    def signatures(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.bytes]: ...

    def __init__(self,
        *,
        body_bytes : builtins.bytes = ...,
        auth_info_bytes : builtins.bytes = ...,
        signatures : typing.Optional[typing.Iterable[builtins.bytes]] = ...,
        ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal[u"auth_info_bytes",b"auth_info_bytes",u"body_bytes",b"body_bytes",u"signatures",b"signatures"]) -> None: ...
global___TxRaw = TxRaw

class SignDoc(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor = ...
    BODY_BYTES_FIELD_NUMBER: builtins.int
    AUTH_INFO_BYTES_FIELD_NUMBER: builtins.int
    CHAIN_ID_FIELD_NUMBER: builtins.int
    ACCOUNT_NUMBER_FIELD_NUMBER: builtins.int
    body_bytes: builtins.bytes = ...
    auth_info_bytes: builtins.bytes = ...
    chain_id: typing.Text = ...
    account_number: builtins.int = ...

    def __init__(self,
        *,
        body_bytes : builtins.bytes = ...,
        auth_info_bytes : builtins.bytes = ...,
        chain_id : typing.Text = ...,
        account_number : builtins.int = ...,
        ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal[u"account_number",b"account_number",u"auth_info_bytes",b"auth_info_bytes",u"body_bytes",b"body_bytes",u"chain_id",b"chain_id"]) -> None: ...
global___SignDoc = SignDoc

class TxBody(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor = ...
    MESSAGES_FIELD_NUMBER: builtins.int
    MEMO_FIELD_NUMBER: builtins.int
    TIMEOUT_HEIGHT_FIELD_NUMBER: builtins.int
    EXTENSION_OPTIONS_FIELD_NUMBER: builtins.int
    NON_CRITICAL_EXTENSION_OPTIONS_FIELD_NUMBER: builtins.int
    memo: typing.Text = ...
    timeout_height: builtins.int = ...

    @property
    def messages(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[google.protobuf.any_pb2.Any]: ...

    @property
    def extension_options(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[google.protobuf.any_pb2.Any]: ...

    @property
    def non_critical_extension_options(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[google.protobuf.any_pb2.Any]: ...

    def __init__(self,
        *,
        messages : typing.Optional[typing.Iterable[google.protobuf.any_pb2.Any]] = ...,
        memo : typing.Text = ...,
        timeout_height : builtins.int = ...,
        extension_options : typing.Optional[typing.Iterable[google.protobuf.any_pb2.Any]] = ...,
        non_critical_extension_options : typing.Optional[typing.Iterable[google.protobuf.any_pb2.Any]] = ...,
        ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal[u"extension_options",b"extension_options",u"memo",b"memo",u"messages",b"messages",u"non_critical_extension_options",b"non_critical_extension_options",u"timeout_height",b"timeout_height"]) -> None: ...
global___TxBody = TxBody

class AuthInfo(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor = ...
    SIGNER_INFOS_FIELD_NUMBER: builtins.int
    FEE_FIELD_NUMBER: builtins.int

    @property
    def signer_infos(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___SignerInfo]: ...

    @property
    def fee(self) -> global___Fee: ...

    def __init__(self,
        *,
        signer_infos : typing.Optional[typing.Iterable[global___SignerInfo]] = ...,
        fee : typing.Optional[global___Fee] = ...,
        ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal[u"fee",b"fee"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal[u"fee",b"fee",u"signer_infos",b"signer_infos"]) -> None: ...
global___AuthInfo = AuthInfo

class SignerInfo(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor = ...
    PUBLIC_KEY_FIELD_NUMBER: builtins.int
    MODE_INFO_FIELD_NUMBER: builtins.int
    SEQUENCE_FIELD_NUMBER: builtins.int
    sequence: builtins.int = ...

    @property
    def public_key(self) -> google.protobuf.any_pb2.Any: ...

    @property
    def mode_info(self) -> global___ModeInfo: ...

    def __init__(self,
        *,
        public_key : typing.Optional[google.protobuf.any_pb2.Any] = ...,
        mode_info : typing.Optional[global___ModeInfo] = ...,
        sequence : builtins.int = ...,
        ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal[u"mode_info",b"mode_info",u"public_key",b"public_key"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal[u"mode_info",b"mode_info",u"public_key",b"public_key",u"sequence",b"sequence"]) -> None: ...
global___SignerInfo = SignerInfo

class ModeInfo(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor = ...
    class Single(google.protobuf.message.Message):
        DESCRIPTOR: google.protobuf.descriptor.Descriptor = ...
        MODE_FIELD_NUMBER: builtins.int
        mode: cosmos.tx.signing.v1beta1.signing_pb2.SignMode.V = ...

        def __init__(self,
            *,
            mode : cosmos.tx.signing.v1beta1.signing_pb2.SignMode.V = ...,
            ) -> None: ...
        def ClearField(self, field_name: typing_extensions.Literal[u"mode",b"mode"]) -> None: ...

    class Multi(google.protobuf.message.Message):
        DESCRIPTOR: google.protobuf.descriptor.Descriptor = ...
        BITARRAY_FIELD_NUMBER: builtins.int
        MODE_INFOS_FIELD_NUMBER: builtins.int

        @property
        def bitarray(self) -> cosmos.crypto.multisig.v1beta1.multisig_pb2.CompactBitArray: ...

        @property
        def mode_infos(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___ModeInfo]: ...

        def __init__(self,
            *,
            bitarray : typing.Optional[cosmos.crypto.multisig.v1beta1.multisig_pb2.CompactBitArray] = ...,
            mode_infos : typing.Optional[typing.Iterable[global___ModeInfo]] = ...,
            ) -> None: ...
        def HasField(self, field_name: typing_extensions.Literal[u"bitarray",b"bitarray"]) -> builtins.bool: ...
        def ClearField(self, field_name: typing_extensions.Literal[u"bitarray",b"bitarray",u"mode_infos",b"mode_infos"]) -> None: ...

    SINGLE_FIELD_NUMBER: builtins.int
    MULTI_FIELD_NUMBER: builtins.int

    @property
    def single(self) -> global___ModeInfo.Single: ...

    @property
    def multi(self) -> global___ModeInfo.Multi: ...

    def __init__(self,
        *,
        single : typing.Optional[global___ModeInfo.Single] = ...,
        multi : typing.Optional[global___ModeInfo.Multi] = ...,
        ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal[u"multi",b"multi",u"single",b"single",u"sum",b"sum"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal[u"multi",b"multi",u"single",b"single",u"sum",b"sum"]) -> None: ...
    def WhichOneof(self, oneof_group: typing_extensions.Literal[u"sum",b"sum"]) -> typing.Optional[typing_extensions.Literal["single","multi"]]: ...
global___ModeInfo = ModeInfo

class Fee(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor = ...
    AMOUNT_FIELD_NUMBER: builtins.int
    GAS_LIMIT_FIELD_NUMBER: builtins.int
    PAYER_FIELD_NUMBER: builtins.int
    GRANTER_FIELD_NUMBER: builtins.int
    gas_limit: builtins.int = ...
    payer: typing.Text = ...
    granter: typing.Text = ...

    @property
    def amount(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[cosmos.base.v1beta1.coin_pb2.Coin]: ...

    def __init__(self,
        *,
        amount : typing.Optional[typing.Iterable[cosmos.base.v1beta1.coin_pb2.Coin]] = ...,
        gas_limit : builtins.int = ...,
        payer : typing.Text = ...,
        granter : typing.Text = ...,
        ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal[u"amount",b"amount",u"gas_limit",b"gas_limit",u"granter",b"granter",u"payer",b"payer"]) -> None: ...
global___Fee = Fee
