"""
@generated by mypy-protobuf.  Do not edit manually!
isort:skip_file
"""
import builtins
import google.protobuf.descriptor
import google.protobuf.internal.containers
import google.protobuf.internal.enum_type_wrapper
import google.protobuf.message
import google.protobuf.timestamp_pb2
import tendermint.crypto.keys_pb2
import tendermint.crypto.proof_pb2
import tendermint.types.params_pb2
import tendermint.types.types_pb2
import typing
import typing_extensions

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

class CheckTxType(metaclass=_CheckTxType):
    V = typing.NewType('V', builtins.int)

global___CheckTxType = CheckTxType

NEW = CheckTxType.V(0)
RECHECK = CheckTxType.V(1)

class _CheckTxType(google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[CheckTxType.V], builtins.type):  # type: ignore
    DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor = ...
    NEW = CheckTxType.V(0)
    RECHECK = CheckTxType.V(1)

class EvidenceType(metaclass=_EvidenceType):
    V = typing.NewType('V', builtins.int)

global___EvidenceType = EvidenceType

UNKNOWN = EvidenceType.V(0)
DUPLICATE_VOTE = EvidenceType.V(1)
LIGHT_CLIENT_ATTACK = EvidenceType.V(2)

class _EvidenceType(google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[EvidenceType.V], builtins.type):  # type: ignore
    DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor = ...
    UNKNOWN = EvidenceType.V(0)
    DUPLICATE_VOTE = EvidenceType.V(1)
    LIGHT_CLIENT_ATTACK = EvidenceType.V(2)

class Request(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor = ...
    ECHO_FIELD_NUMBER: builtins.int
    FLUSH_FIELD_NUMBER: builtins.int
    INFO_FIELD_NUMBER: builtins.int
    SET_OPTION_FIELD_NUMBER: builtins.int
    INIT_CHAIN_FIELD_NUMBER: builtins.int
    QUERY_FIELD_NUMBER: builtins.int
    BEGIN_BLOCK_FIELD_NUMBER: builtins.int
    CHECK_TX_FIELD_NUMBER: builtins.int
    DELIVER_TX_FIELD_NUMBER: builtins.int
    END_BLOCK_FIELD_NUMBER: builtins.int
    COMMIT_FIELD_NUMBER: builtins.int
    LIST_SNAPSHOTS_FIELD_NUMBER: builtins.int
    OFFER_SNAPSHOT_FIELD_NUMBER: builtins.int
    LOAD_SNAPSHOT_CHUNK_FIELD_NUMBER: builtins.int
    APPLY_SNAPSHOT_CHUNK_FIELD_NUMBER: builtins.int

    @property
    def echo(self) -> global___RequestEcho: ...

    @property
    def flush(self) -> global___RequestFlush: ...

    @property
    def info(self) -> global___RequestInfo: ...

    @property
    def set_option(self) -> global___RequestSetOption: ...

    @property
    def init_chain(self) -> global___RequestInitChain: ...

    @property
    def query(self) -> global___RequestQuery: ...

    @property
    def begin_block(self) -> global___RequestBeginBlock: ...

    @property
    def check_tx(self) -> global___RequestCheckTx: ...

    @property
    def deliver_tx(self) -> global___RequestDeliverTx: ...

    @property
    def end_block(self) -> global___RequestEndBlock: ...

    @property
    def commit(self) -> global___RequestCommit: ...

    @property
    def list_snapshots(self) -> global___RequestListSnapshots: ...

    @property
    def offer_snapshot(self) -> global___RequestOfferSnapshot: ...

    @property
    def load_snapshot_chunk(self) -> global___RequestLoadSnapshotChunk: ...

    @property
    def apply_snapshot_chunk(self) -> global___RequestApplySnapshotChunk: ...

    def __init__(self,
        *,
        echo : typing.Optional[global___RequestEcho] = ...,
        flush : typing.Optional[global___RequestFlush] = ...,
        info : typing.Optional[global___RequestInfo] = ...,
        set_option : typing.Optional[global___RequestSetOption] = ...,
        init_chain : typing.Optional[global___RequestInitChain] = ...,
        query : typing.Optional[global___RequestQuery] = ...,
        begin_block : typing.Optional[global___RequestBeginBlock] = ...,
        check_tx : typing.Optional[global___RequestCheckTx] = ...,
        deliver_tx : typing.Optional[global___RequestDeliverTx] = ...,
        end_block : typing.Optional[global___RequestEndBlock] = ...,
        commit : typing.Optional[global___RequestCommit] = ...,
        list_snapshots : typing.Optional[global___RequestListSnapshots] = ...,
        offer_snapshot : typing.Optional[global___RequestOfferSnapshot] = ...,
        load_snapshot_chunk : typing.Optional[global___RequestLoadSnapshotChunk] = ...,
        apply_snapshot_chunk : typing.Optional[global___RequestApplySnapshotChunk] = ...,
        ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal[u"apply_snapshot_chunk",b"apply_snapshot_chunk",u"begin_block",b"begin_block",u"check_tx",b"check_tx",u"commit",b"commit",u"deliver_tx",b"deliver_tx",u"echo",b"echo",u"end_block",b"end_block",u"flush",b"flush",u"info",b"info",u"init_chain",b"init_chain",u"list_snapshots",b"list_snapshots",u"load_snapshot_chunk",b"load_snapshot_chunk",u"offer_snapshot",b"offer_snapshot",u"query",b"query",u"set_option",b"set_option",u"value",b"value"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal[u"apply_snapshot_chunk",b"apply_snapshot_chunk",u"begin_block",b"begin_block",u"check_tx",b"check_tx",u"commit",b"commit",u"deliver_tx",b"deliver_tx",u"echo",b"echo",u"end_block",b"end_block",u"flush",b"flush",u"info",b"info",u"init_chain",b"init_chain",u"list_snapshots",b"list_snapshots",u"load_snapshot_chunk",b"load_snapshot_chunk",u"offer_snapshot",b"offer_snapshot",u"query",b"query",u"set_option",b"set_option",u"value",b"value"]) -> None: ...
    def WhichOneof(self, oneof_group: typing_extensions.Literal[u"value",b"value"]) -> typing.Optional[typing_extensions.Literal["echo","flush","info","set_option","init_chain","query","begin_block","check_tx","deliver_tx","end_block","commit","list_snapshots","offer_snapshot","load_snapshot_chunk","apply_snapshot_chunk"]]: ...
global___Request = Request

class RequestEcho(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor = ...
    MESSAGE_FIELD_NUMBER: builtins.int
    message: typing.Text = ...

    def __init__(self,
        *,
        message : typing.Text = ...,
        ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal[u"message",b"message"]) -> None: ...
global___RequestEcho = RequestEcho

class RequestFlush(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor = ...

    def __init__(self,
        ) -> None: ...
global___RequestFlush = RequestFlush

class RequestInfo(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor = ...
    VERSION_FIELD_NUMBER: builtins.int
    BLOCK_VERSION_FIELD_NUMBER: builtins.int
    P2P_VERSION_FIELD_NUMBER: builtins.int
    version: typing.Text = ...
    block_version: builtins.int = ...
    p2p_version: builtins.int = ...

    def __init__(self,
        *,
        version : typing.Text = ...,
        block_version : builtins.int = ...,
        p2p_version : builtins.int = ...,
        ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal[u"block_version",b"block_version",u"p2p_version",b"p2p_version",u"version",b"version"]) -> None: ...
global___RequestInfo = RequestInfo

class RequestSetOption(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor = ...
    KEY_FIELD_NUMBER: builtins.int
    VALUE_FIELD_NUMBER: builtins.int
    key: typing.Text = ...
    value: typing.Text = ...

    def __init__(self,
        *,
        key : typing.Text = ...,
        value : typing.Text = ...,
        ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal[u"key",b"key",u"value",b"value"]) -> None: ...
global___RequestSetOption = RequestSetOption

class RequestInitChain(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor = ...
    TIME_FIELD_NUMBER: builtins.int
    CHAIN_ID_FIELD_NUMBER: builtins.int
    CONSENSUS_PARAMS_FIELD_NUMBER: builtins.int
    VALIDATORS_FIELD_NUMBER: builtins.int
    APP_STATE_BYTES_FIELD_NUMBER: builtins.int
    INITIAL_HEIGHT_FIELD_NUMBER: builtins.int
    chain_id: typing.Text = ...
    app_state_bytes: builtins.bytes = ...
    initial_height: builtins.int = ...

    @property
    def time(self) -> google.protobuf.timestamp_pb2.Timestamp: ...

    @property
    def consensus_params(self) -> global___ConsensusParams: ...

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

    def __init__(self,
        *,
        time : typing.Optional[google.protobuf.timestamp_pb2.Timestamp] = ...,
        chain_id : typing.Text = ...,
        consensus_params : typing.Optional[global___ConsensusParams] = ...,
        validators : typing.Optional[typing.Iterable[global___ValidatorUpdate]] = ...,
        app_state_bytes : builtins.bytes = ...,
        initial_height : builtins.int = ...,
        ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal[u"consensus_params",b"consensus_params",u"time",b"time"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal[u"app_state_bytes",b"app_state_bytes",u"chain_id",b"chain_id",u"consensus_params",b"consensus_params",u"initial_height",b"initial_height",u"time",b"time",u"validators",b"validators"]) -> None: ...
global___RequestInitChain = RequestInitChain

class RequestQuery(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor = ...
    DATA_FIELD_NUMBER: builtins.int
    PATH_FIELD_NUMBER: builtins.int
    HEIGHT_FIELD_NUMBER: builtins.int
    PROVE_FIELD_NUMBER: builtins.int
    data: builtins.bytes = ...
    path: typing.Text = ...
    height: builtins.int = ...
    prove: builtins.bool = ...

    def __init__(self,
        *,
        data : builtins.bytes = ...,
        path : typing.Text = ...,
        height : builtins.int = ...,
        prove : builtins.bool = ...,
        ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal[u"data",b"data",u"height",b"height",u"path",b"path",u"prove",b"prove"]) -> None: ...
global___RequestQuery = RequestQuery

class RequestBeginBlock(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor = ...
    HASH_FIELD_NUMBER: builtins.int
    HEADER_FIELD_NUMBER: builtins.int
    LAST_COMMIT_INFO_FIELD_NUMBER: builtins.int
    BYZANTINE_VALIDATORS_FIELD_NUMBER: builtins.int
    hash: builtins.bytes = ...

    @property
    def header(self) -> tendermint.types.types_pb2.Header: ...

    @property
    def last_commit_info(self) -> global___LastCommitInfo: ...

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

    def __init__(self,
        *,
        hash : builtins.bytes = ...,
        header : typing.Optional[tendermint.types.types_pb2.Header] = ...,
        last_commit_info : typing.Optional[global___LastCommitInfo] = ...,
        byzantine_validators : typing.Optional[typing.Iterable[global___Evidence]] = ...,
        ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal[u"header",b"header",u"last_commit_info",b"last_commit_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal[u"byzantine_validators",b"byzantine_validators",u"hash",b"hash",u"header",b"header",u"last_commit_info",b"last_commit_info"]) -> None: ...
global___RequestBeginBlock = RequestBeginBlock

class RequestCheckTx(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor = ...
    TX_FIELD_NUMBER: builtins.int
    TYPE_FIELD_NUMBER: builtins.int
    tx: builtins.bytes = ...
    type: global___CheckTxType.V = ...

    def __init__(self,
        *,
        tx : builtins.bytes = ...,
        type : global___CheckTxType.V = ...,
        ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal[u"tx",b"tx",u"type",b"type"]) -> None: ...
global___RequestCheckTx = RequestCheckTx

class RequestDeliverTx(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor = ...
    TX_FIELD_NUMBER: builtins.int
    tx: builtins.bytes = ...

    def __init__(self,
        *,
        tx : builtins.bytes = ...,
        ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal[u"tx",b"tx"]) -> None: ...
global___RequestDeliverTx = RequestDeliverTx

class RequestEndBlock(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor = ...
    HEIGHT_FIELD_NUMBER: builtins.int
    height: builtins.int = ...

    def __init__(self,
        *,
        height : builtins.int = ...,
        ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal[u"height",b"height"]) -> None: ...
global___RequestEndBlock = RequestEndBlock

class RequestCommit(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor = ...

    def __init__(self,
        ) -> None: ...
global___RequestCommit = RequestCommit

class RequestListSnapshots(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor = ...

    def __init__(self,
        ) -> None: ...
global___RequestListSnapshots = RequestListSnapshots

class RequestOfferSnapshot(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor = ...
    SNAPSHOT_FIELD_NUMBER: builtins.int
    APP_HASH_FIELD_NUMBER: builtins.int
    app_hash: builtins.bytes = ...

    @property
    def snapshot(self) -> global___Snapshot: ...

    def __init__(self,
        *,
        snapshot : typing.Optional[global___Snapshot] = ...,
        app_hash : builtins.bytes = ...,
        ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal[u"snapshot",b"snapshot"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal[u"app_hash",b"app_hash",u"snapshot",b"snapshot"]) -> None: ...
global___RequestOfferSnapshot = RequestOfferSnapshot

class RequestLoadSnapshotChunk(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor = ...
    HEIGHT_FIELD_NUMBER: builtins.int
    FORMAT_FIELD_NUMBER: builtins.int
    CHUNK_FIELD_NUMBER: builtins.int
    height: builtins.int = ...
    format: builtins.int = ...
    chunk: builtins.int = ...

    def __init__(self,
        *,
        height : builtins.int = ...,
        format : builtins.int = ...,
        chunk : builtins.int = ...,
        ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal[u"chunk",b"chunk",u"format",b"format",u"height",b"height"]) -> None: ...
global___RequestLoadSnapshotChunk = RequestLoadSnapshotChunk

class RequestApplySnapshotChunk(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor = ...
    INDEX_FIELD_NUMBER: builtins.int
    CHUNK_FIELD_NUMBER: builtins.int
    SENDER_FIELD_NUMBER: builtins.int
    index: builtins.int = ...
    chunk: builtins.bytes = ...
    sender: typing.Text = ...

    def __init__(self,
        *,
        index : builtins.int = ...,
        chunk : builtins.bytes = ...,
        sender : typing.Text = ...,
        ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal[u"chunk",b"chunk",u"index",b"index",u"sender",b"sender"]) -> None: ...
global___RequestApplySnapshotChunk = RequestApplySnapshotChunk

class Response(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor = ...
    EXCEPTION_FIELD_NUMBER: builtins.int
    ECHO_FIELD_NUMBER: builtins.int
    FLUSH_FIELD_NUMBER: builtins.int
    INFO_FIELD_NUMBER: builtins.int
    SET_OPTION_FIELD_NUMBER: builtins.int
    INIT_CHAIN_FIELD_NUMBER: builtins.int
    QUERY_FIELD_NUMBER: builtins.int
    BEGIN_BLOCK_FIELD_NUMBER: builtins.int
    CHECK_TX_FIELD_NUMBER: builtins.int
    DELIVER_TX_FIELD_NUMBER: builtins.int
    END_BLOCK_FIELD_NUMBER: builtins.int
    COMMIT_FIELD_NUMBER: builtins.int
    LIST_SNAPSHOTS_FIELD_NUMBER: builtins.int
    OFFER_SNAPSHOT_FIELD_NUMBER: builtins.int
    LOAD_SNAPSHOT_CHUNK_FIELD_NUMBER: builtins.int
    APPLY_SNAPSHOT_CHUNK_FIELD_NUMBER: builtins.int

    @property
    def exception(self) -> global___ResponseException: ...

    @property
    def echo(self) -> global___ResponseEcho: ...

    @property
    def flush(self) -> global___ResponseFlush: ...

    @property
    def info(self) -> global___ResponseInfo: ...

    @property
    def set_option(self) -> global___ResponseSetOption: ...

    @property
    def init_chain(self) -> global___ResponseInitChain: ...

    @property
    def query(self) -> global___ResponseQuery: ...

    @property
    def begin_block(self) -> global___ResponseBeginBlock: ...

    @property
    def check_tx(self) -> global___ResponseCheckTx: ...

    @property
    def deliver_tx(self) -> global___ResponseDeliverTx: ...

    @property
    def end_block(self) -> global___ResponseEndBlock: ...

    @property
    def commit(self) -> global___ResponseCommit: ...

    @property
    def list_snapshots(self) -> global___ResponseListSnapshots: ...

    @property
    def offer_snapshot(self) -> global___ResponseOfferSnapshot: ...

    @property
    def load_snapshot_chunk(self) -> global___ResponseLoadSnapshotChunk: ...

    @property
    def apply_snapshot_chunk(self) -> global___ResponseApplySnapshotChunk: ...

    def __init__(self,
        *,
        exception : typing.Optional[global___ResponseException] = ...,
        echo : typing.Optional[global___ResponseEcho] = ...,
        flush : typing.Optional[global___ResponseFlush] = ...,
        info : typing.Optional[global___ResponseInfo] = ...,
        set_option : typing.Optional[global___ResponseSetOption] = ...,
        init_chain : typing.Optional[global___ResponseInitChain] = ...,
        query : typing.Optional[global___ResponseQuery] = ...,
        begin_block : typing.Optional[global___ResponseBeginBlock] = ...,
        check_tx : typing.Optional[global___ResponseCheckTx] = ...,
        deliver_tx : typing.Optional[global___ResponseDeliverTx] = ...,
        end_block : typing.Optional[global___ResponseEndBlock] = ...,
        commit : typing.Optional[global___ResponseCommit] = ...,
        list_snapshots : typing.Optional[global___ResponseListSnapshots] = ...,
        offer_snapshot : typing.Optional[global___ResponseOfferSnapshot] = ...,
        load_snapshot_chunk : typing.Optional[global___ResponseLoadSnapshotChunk] = ...,
        apply_snapshot_chunk : typing.Optional[global___ResponseApplySnapshotChunk] = ...,
        ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal[u"apply_snapshot_chunk",b"apply_snapshot_chunk",u"begin_block",b"begin_block",u"check_tx",b"check_tx",u"commit",b"commit",u"deliver_tx",b"deliver_tx",u"echo",b"echo",u"end_block",b"end_block",u"exception",b"exception",u"flush",b"flush",u"info",b"info",u"init_chain",b"init_chain",u"list_snapshots",b"list_snapshots",u"load_snapshot_chunk",b"load_snapshot_chunk",u"offer_snapshot",b"offer_snapshot",u"query",b"query",u"set_option",b"set_option",u"value",b"value"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal[u"apply_snapshot_chunk",b"apply_snapshot_chunk",u"begin_block",b"begin_block",u"check_tx",b"check_tx",u"commit",b"commit",u"deliver_tx",b"deliver_tx",u"echo",b"echo",u"end_block",b"end_block",u"exception",b"exception",u"flush",b"flush",u"info",b"info",u"init_chain",b"init_chain",u"list_snapshots",b"list_snapshots",u"load_snapshot_chunk",b"load_snapshot_chunk",u"offer_snapshot",b"offer_snapshot",u"query",b"query",u"set_option",b"set_option",u"value",b"value"]) -> None: ...
    def WhichOneof(self, oneof_group: typing_extensions.Literal[u"value",b"value"]) -> typing.Optional[typing_extensions.Literal["exception","echo","flush","info","set_option","init_chain","query","begin_block","check_tx","deliver_tx","end_block","commit","list_snapshots","offer_snapshot","load_snapshot_chunk","apply_snapshot_chunk"]]: ...
global___Response = Response

class ResponseException(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor = ...
    ERROR_FIELD_NUMBER: builtins.int
    error: typing.Text = ...

    def __init__(self,
        *,
        error : typing.Text = ...,
        ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal[u"error",b"error"]) -> None: ...
global___ResponseException = ResponseException

class ResponseEcho(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor = ...
    MESSAGE_FIELD_NUMBER: builtins.int
    message: typing.Text = ...

    def __init__(self,
        *,
        message : typing.Text = ...,
        ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal[u"message",b"message"]) -> None: ...
global___ResponseEcho = ResponseEcho

class ResponseFlush(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor = ...

    def __init__(self,
        ) -> None: ...
global___ResponseFlush = ResponseFlush

class ResponseInfo(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor = ...
    DATA_FIELD_NUMBER: builtins.int
    VERSION_FIELD_NUMBER: builtins.int
    APP_VERSION_FIELD_NUMBER: builtins.int
    LAST_BLOCK_HEIGHT_FIELD_NUMBER: builtins.int
    LAST_BLOCK_APP_HASH_FIELD_NUMBER: builtins.int
    data: typing.Text = ...
    version: typing.Text = ...
    app_version: builtins.int = ...
    last_block_height: builtins.int = ...
    last_block_app_hash: builtins.bytes = ...

    def __init__(self,
        *,
        data : typing.Text = ...,
        version : typing.Text = ...,
        app_version : builtins.int = ...,
        last_block_height : builtins.int = ...,
        last_block_app_hash : builtins.bytes = ...,
        ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal[u"app_version",b"app_version",u"data",b"data",u"last_block_app_hash",b"last_block_app_hash",u"last_block_height",b"last_block_height",u"version",b"version"]) -> None: ...
global___ResponseInfo = ResponseInfo

class ResponseSetOption(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor = ...
    CODE_FIELD_NUMBER: builtins.int
    LOG_FIELD_NUMBER: builtins.int
    INFO_FIELD_NUMBER: builtins.int
    code: builtins.int = ...
    log: typing.Text = ...
    info: typing.Text = ...

    def __init__(self,
        *,
        code : builtins.int = ...,
        log : typing.Text = ...,
        info : typing.Text = ...,
        ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal[u"code",b"code",u"info",b"info",u"log",b"log"]) -> None: ...
global___ResponseSetOption = ResponseSetOption

class ResponseInitChain(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor = ...
    CONSENSUS_PARAMS_FIELD_NUMBER: builtins.int
    VALIDATORS_FIELD_NUMBER: builtins.int
    APP_HASH_FIELD_NUMBER: builtins.int
    app_hash: builtins.bytes = ...

    @property
    def consensus_params(self) -> global___ConsensusParams: ...

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

    def __init__(self,
        *,
        consensus_params : typing.Optional[global___ConsensusParams] = ...,
        validators : typing.Optional[typing.Iterable[global___ValidatorUpdate]] = ...,
        app_hash : builtins.bytes = ...,
        ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal[u"consensus_params",b"consensus_params"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal[u"app_hash",b"app_hash",u"consensus_params",b"consensus_params",u"validators",b"validators"]) -> None: ...
global___ResponseInitChain = ResponseInitChain

class ResponseQuery(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor = ...
    CODE_FIELD_NUMBER: builtins.int
    LOG_FIELD_NUMBER: builtins.int
    INFO_FIELD_NUMBER: builtins.int
    INDEX_FIELD_NUMBER: builtins.int
    KEY_FIELD_NUMBER: builtins.int
    VALUE_FIELD_NUMBER: builtins.int
    PROOF_OPS_FIELD_NUMBER: builtins.int
    HEIGHT_FIELD_NUMBER: builtins.int
    CODESPACE_FIELD_NUMBER: builtins.int
    code: builtins.int = ...
    log: typing.Text = ...
    info: typing.Text = ...
    index: builtins.int = ...
    key: builtins.bytes = ...
    value: builtins.bytes = ...
    height: builtins.int = ...
    codespace: typing.Text = ...

    @property
    def proof_ops(self) -> tendermint.crypto.proof_pb2.ProofOps: ...

    def __init__(self,
        *,
        code : builtins.int = ...,
        log : typing.Text = ...,
        info : typing.Text = ...,
        index : builtins.int = ...,
        key : builtins.bytes = ...,
        value : builtins.bytes = ...,
        proof_ops : typing.Optional[tendermint.crypto.proof_pb2.ProofOps] = ...,
        height : builtins.int = ...,
        codespace : typing.Text = ...,
        ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal[u"proof_ops",b"proof_ops"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal[u"code",b"code",u"codespace",b"codespace",u"height",b"height",u"index",b"index",u"info",b"info",u"key",b"key",u"log",b"log",u"proof_ops",b"proof_ops",u"value",b"value"]) -> None: ...
global___ResponseQuery = ResponseQuery

class ResponseBeginBlock(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor = ...
    EVENTS_FIELD_NUMBER: builtins.int

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

    def __init__(self,
        *,
        events : typing.Optional[typing.Iterable[global___Event]] = ...,
        ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal[u"events",b"events"]) -> None: ...
global___ResponseBeginBlock = ResponseBeginBlock

class ResponseCheckTx(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor = ...
    CODE_FIELD_NUMBER: builtins.int
    DATA_FIELD_NUMBER: builtins.int
    LOG_FIELD_NUMBER: builtins.int
    INFO_FIELD_NUMBER: builtins.int
    GAS_WANTED_FIELD_NUMBER: builtins.int
    GAS_USED_FIELD_NUMBER: builtins.int
    EVENTS_FIELD_NUMBER: builtins.int
    CODESPACE_FIELD_NUMBER: builtins.int
    code: builtins.int = ...
    data: builtins.bytes = ...
    log: typing.Text = ...
    info: typing.Text = ...
    gas_wanted: builtins.int = ...
    gas_used: builtins.int = ...
    codespace: typing.Text = ...

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

    def __init__(self,
        *,
        code : builtins.int = ...,
        data : builtins.bytes = ...,
        log : typing.Text = ...,
        info : typing.Text = ...,
        gas_wanted : builtins.int = ...,
        gas_used : builtins.int = ...,
        events : typing.Optional[typing.Iterable[global___Event]] = ...,
        codespace : typing.Text = ...,
        ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal[u"code",b"code",u"codespace",b"codespace",u"data",b"data",u"events",b"events",u"gas_used",b"gas_used",u"gas_wanted",b"gas_wanted",u"info",b"info",u"log",b"log"]) -> None: ...
global___ResponseCheckTx = ResponseCheckTx

class ResponseDeliverTx(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor = ...
    CODE_FIELD_NUMBER: builtins.int
    DATA_FIELD_NUMBER: builtins.int
    LOG_FIELD_NUMBER: builtins.int
    INFO_FIELD_NUMBER: builtins.int
    GAS_WANTED_FIELD_NUMBER: builtins.int
    GAS_USED_FIELD_NUMBER: builtins.int
    EVENTS_FIELD_NUMBER: builtins.int
    CODESPACE_FIELD_NUMBER: builtins.int
    code: builtins.int = ...
    data: builtins.bytes = ...
    log: typing.Text = ...
    info: typing.Text = ...
    gas_wanted: builtins.int = ...
    gas_used: builtins.int = ...
    codespace: typing.Text = ...

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

    def __init__(self,
        *,
        code : builtins.int = ...,
        data : builtins.bytes = ...,
        log : typing.Text = ...,
        info : typing.Text = ...,
        gas_wanted : builtins.int = ...,
        gas_used : builtins.int = ...,
        events : typing.Optional[typing.Iterable[global___Event]] = ...,
        codespace : typing.Text = ...,
        ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal[u"code",b"code",u"codespace",b"codespace",u"data",b"data",u"events",b"events",u"gas_used",b"gas_used",u"gas_wanted",b"gas_wanted",u"info",b"info",u"log",b"log"]) -> None: ...
global___ResponseDeliverTx = ResponseDeliverTx

class ResponseEndBlock(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor = ...
    VALIDATOR_UPDATES_FIELD_NUMBER: builtins.int
    CONSENSUS_PARAM_UPDATES_FIELD_NUMBER: builtins.int
    EVENTS_FIELD_NUMBER: builtins.int

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

    @property
    def consensus_param_updates(self) -> global___ConsensusParams: ...

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

    def __init__(self,
        *,
        validator_updates : typing.Optional[typing.Iterable[global___ValidatorUpdate]] = ...,
        consensus_param_updates : typing.Optional[global___ConsensusParams] = ...,
        events : typing.Optional[typing.Iterable[global___Event]] = ...,
        ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal[u"consensus_param_updates",b"consensus_param_updates"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal[u"consensus_param_updates",b"consensus_param_updates",u"events",b"events",u"validator_updates",b"validator_updates"]) -> None: ...
global___ResponseEndBlock = ResponseEndBlock

class ResponseCommit(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor = ...
    DATA_FIELD_NUMBER: builtins.int
    RETAIN_HEIGHT_FIELD_NUMBER: builtins.int
    data: builtins.bytes = ...
    retain_height: builtins.int = ...

    def __init__(self,
        *,
        data : builtins.bytes = ...,
        retain_height : builtins.int = ...,
        ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal[u"data",b"data",u"retain_height",b"retain_height"]) -> None: ...
global___ResponseCommit = ResponseCommit

class ResponseListSnapshots(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor = ...
    SNAPSHOTS_FIELD_NUMBER: builtins.int

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

    def __init__(self,
        *,
        snapshots : typing.Optional[typing.Iterable[global___Snapshot]] = ...,
        ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal[u"snapshots",b"snapshots"]) -> None: ...
global___ResponseListSnapshots = ResponseListSnapshots

class ResponseOfferSnapshot(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor = ...
    class Result(metaclass=_Result):
        V = typing.NewType('V', builtins.int)

    UNKNOWN = ResponseOfferSnapshot.Result.V(0)
    ACCEPT = ResponseOfferSnapshot.Result.V(1)
    ABORT = ResponseOfferSnapshot.Result.V(2)
    REJECT = ResponseOfferSnapshot.Result.V(3)
    REJECT_FORMAT = ResponseOfferSnapshot.Result.V(4)
    REJECT_SENDER = ResponseOfferSnapshot.Result.V(5)

    class _Result(google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[Result.V], builtins.type):  # type: ignore
        DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor = ...
        UNKNOWN = ResponseOfferSnapshot.Result.V(0)
        ACCEPT = ResponseOfferSnapshot.Result.V(1)
        ABORT = ResponseOfferSnapshot.Result.V(2)
        REJECT = ResponseOfferSnapshot.Result.V(3)
        REJECT_FORMAT = ResponseOfferSnapshot.Result.V(4)
        REJECT_SENDER = ResponseOfferSnapshot.Result.V(5)

    RESULT_FIELD_NUMBER: builtins.int
    result: global___ResponseOfferSnapshot.Result.V = ...

    def __init__(self,
        *,
        result : global___ResponseOfferSnapshot.Result.V = ...,
        ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal[u"result",b"result"]) -> None: ...
global___ResponseOfferSnapshot = ResponseOfferSnapshot

class ResponseLoadSnapshotChunk(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor = ...
    CHUNK_FIELD_NUMBER: builtins.int
    chunk: builtins.bytes = ...

    def __init__(self,
        *,
        chunk : builtins.bytes = ...,
        ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal[u"chunk",b"chunk"]) -> None: ...
global___ResponseLoadSnapshotChunk = ResponseLoadSnapshotChunk

class ResponseApplySnapshotChunk(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor = ...
    class Result(metaclass=_Result):
        V = typing.NewType('V', builtins.int)

    UNKNOWN = ResponseApplySnapshotChunk.Result.V(0)
    ACCEPT = ResponseApplySnapshotChunk.Result.V(1)
    ABORT = ResponseApplySnapshotChunk.Result.V(2)
    RETRY = ResponseApplySnapshotChunk.Result.V(3)
    RETRY_SNAPSHOT = ResponseApplySnapshotChunk.Result.V(4)
    REJECT_SNAPSHOT = ResponseApplySnapshotChunk.Result.V(5)

    class _Result(google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[Result.V], builtins.type):  # type: ignore
        DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor = ...
        UNKNOWN = ResponseApplySnapshotChunk.Result.V(0)
        ACCEPT = ResponseApplySnapshotChunk.Result.V(1)
        ABORT = ResponseApplySnapshotChunk.Result.V(2)
        RETRY = ResponseApplySnapshotChunk.Result.V(3)
        RETRY_SNAPSHOT = ResponseApplySnapshotChunk.Result.V(4)
        REJECT_SNAPSHOT = ResponseApplySnapshotChunk.Result.V(5)

    RESULT_FIELD_NUMBER: builtins.int
    REFETCH_CHUNKS_FIELD_NUMBER: builtins.int
    REJECT_SENDERS_FIELD_NUMBER: builtins.int
    result: global___ResponseApplySnapshotChunk.Result.V = ...

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

    @property
    def reject_senders(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[typing.Text]: ...

    def __init__(self,
        *,
        result : global___ResponseApplySnapshotChunk.Result.V = ...,
        refetch_chunks : typing.Optional[typing.Iterable[builtins.int]] = ...,
        reject_senders : typing.Optional[typing.Iterable[typing.Text]] = ...,
        ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal[u"refetch_chunks",b"refetch_chunks",u"reject_senders",b"reject_senders",u"result",b"result"]) -> None: ...
global___ResponseApplySnapshotChunk = ResponseApplySnapshotChunk

class ConsensusParams(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor = ...
    BLOCK_FIELD_NUMBER: builtins.int
    EVIDENCE_FIELD_NUMBER: builtins.int
    VALIDATOR_FIELD_NUMBER: builtins.int
    VERSION_FIELD_NUMBER: builtins.int

    @property
    def block(self) -> global___BlockParams: ...

    @property
    def evidence(self) -> tendermint.types.params_pb2.EvidenceParams: ...

    @property
    def validator(self) -> tendermint.types.params_pb2.ValidatorParams: ...

    @property
    def version(self) -> tendermint.types.params_pb2.VersionParams: ...

    def __init__(self,
        *,
        block : typing.Optional[global___BlockParams] = ...,
        evidence : typing.Optional[tendermint.types.params_pb2.EvidenceParams] = ...,
        validator : typing.Optional[tendermint.types.params_pb2.ValidatorParams] = ...,
        version : typing.Optional[tendermint.types.params_pb2.VersionParams] = ...,
        ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal[u"block",b"block",u"evidence",b"evidence",u"validator",b"validator",u"version",b"version"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal[u"block",b"block",u"evidence",b"evidence",u"validator",b"validator",u"version",b"version"]) -> None: ...
global___ConsensusParams = ConsensusParams

class BlockParams(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor = ...
    MAX_BYTES_FIELD_NUMBER: builtins.int
    MAX_GAS_FIELD_NUMBER: builtins.int
    max_bytes: builtins.int = ...
    max_gas: builtins.int = ...

    def __init__(self,
        *,
        max_bytes : builtins.int = ...,
        max_gas : builtins.int = ...,
        ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal[u"max_bytes",b"max_bytes",u"max_gas",b"max_gas"]) -> None: ...
global___BlockParams = BlockParams

class LastCommitInfo(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor = ...
    ROUND_FIELD_NUMBER: builtins.int
    VOTES_FIELD_NUMBER: builtins.int
    round: builtins.int = ...

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

    def __init__(self,
        *,
        round : builtins.int = ...,
        votes : typing.Optional[typing.Iterable[global___VoteInfo]] = ...,
        ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal[u"round",b"round",u"votes",b"votes"]) -> None: ...
global___LastCommitInfo = LastCommitInfo

class Event(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor = ...
    TYPE_FIELD_NUMBER: builtins.int
    ATTRIBUTES_FIELD_NUMBER: builtins.int
    type: typing.Text = ...

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

    def __init__(self,
        *,
        type : typing.Text = ...,
        attributes : typing.Optional[typing.Iterable[global___EventAttribute]] = ...,
        ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal[u"attributes",b"attributes",u"type",b"type"]) -> None: ...
global___Event = Event

class EventAttribute(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor = ...
    KEY_FIELD_NUMBER: builtins.int
    VALUE_FIELD_NUMBER: builtins.int
    INDEX_FIELD_NUMBER: builtins.int
    key: builtins.bytes = ...
    value: builtins.bytes = ...
    index: builtins.bool = ...

    def __init__(self,
        *,
        key : builtins.bytes = ...,
        value : builtins.bytes = ...,
        index : builtins.bool = ...,
        ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal[u"index",b"index",u"key",b"key",u"value",b"value"]) -> None: ...
global___EventAttribute = EventAttribute

class TxResult(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor = ...
    HEIGHT_FIELD_NUMBER: builtins.int
    INDEX_FIELD_NUMBER: builtins.int
    TX_FIELD_NUMBER: builtins.int
    RESULT_FIELD_NUMBER: builtins.int
    height: builtins.int = ...
    index: builtins.int = ...
    tx: builtins.bytes = ...

    @property
    def result(self) -> global___ResponseDeliverTx: ...

    def __init__(self,
        *,
        height : builtins.int = ...,
        index : builtins.int = ...,
        tx : builtins.bytes = ...,
        result : typing.Optional[global___ResponseDeliverTx] = ...,
        ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal[u"result",b"result"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal[u"height",b"height",u"index",b"index",u"result",b"result",u"tx",b"tx"]) -> None: ...
global___TxResult = TxResult

class Validator(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor = ...
    ADDRESS_FIELD_NUMBER: builtins.int
    POWER_FIELD_NUMBER: builtins.int
    address: builtins.bytes = ...
    power: builtins.int = ...

    def __init__(self,
        *,
        address : builtins.bytes = ...,
        power : builtins.int = ...,
        ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal[u"address",b"address",u"power",b"power"]) -> None: ...
global___Validator = Validator

class ValidatorUpdate(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor = ...
    PUB_KEY_FIELD_NUMBER: builtins.int
    POWER_FIELD_NUMBER: builtins.int
    power: builtins.int = ...

    @property
    def pub_key(self) -> tendermint.crypto.keys_pb2.PublicKey: ...

    def __init__(self,
        *,
        pub_key : typing.Optional[tendermint.crypto.keys_pb2.PublicKey] = ...,
        power : builtins.int = ...,
        ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal[u"pub_key",b"pub_key"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal[u"power",b"power",u"pub_key",b"pub_key"]) -> None: ...
global___ValidatorUpdate = ValidatorUpdate

class VoteInfo(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor = ...
    VALIDATOR_FIELD_NUMBER: builtins.int
    SIGNED_LAST_BLOCK_FIELD_NUMBER: builtins.int
    signed_last_block: builtins.bool = ...

    @property
    def validator(self) -> global___Validator: ...

    def __init__(self,
        *,
        validator : typing.Optional[global___Validator] = ...,
        signed_last_block : builtins.bool = ...,
        ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal[u"validator",b"validator"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal[u"signed_last_block",b"signed_last_block",u"validator",b"validator"]) -> None: ...
global___VoteInfo = VoteInfo

class Evidence(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor = ...
    TYPE_FIELD_NUMBER: builtins.int
    VALIDATOR_FIELD_NUMBER: builtins.int
    HEIGHT_FIELD_NUMBER: builtins.int
    TIME_FIELD_NUMBER: builtins.int
    TOTAL_VOTING_POWER_FIELD_NUMBER: builtins.int
    type: global___EvidenceType.V = ...
    height: builtins.int = ...
    total_voting_power: builtins.int = ...

    @property
    def validator(self) -> global___Validator: ...

    @property
    def time(self) -> google.protobuf.timestamp_pb2.Timestamp: ...

    def __init__(self,
        *,
        type : global___EvidenceType.V = ...,
        validator : typing.Optional[global___Validator] = ...,
        height : builtins.int = ...,
        time : typing.Optional[google.protobuf.timestamp_pb2.Timestamp] = ...,
        total_voting_power : builtins.int = ...,
        ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal[u"time",b"time",u"validator",b"validator"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal[u"height",b"height",u"time",b"time",u"total_voting_power",b"total_voting_power",u"type",b"type",u"validator",b"validator"]) -> None: ...
global___Evidence = Evidence

class Snapshot(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor = ...
    HEIGHT_FIELD_NUMBER: builtins.int
    FORMAT_FIELD_NUMBER: builtins.int
    CHUNKS_FIELD_NUMBER: builtins.int
    HASH_FIELD_NUMBER: builtins.int
    METADATA_FIELD_NUMBER: builtins.int
    height: builtins.int = ...
    format: builtins.int = ...
    chunks: builtins.int = ...
    hash: builtins.bytes = ...
    metadata: builtins.bytes = ...

    def __init__(self,
        *,
        height : builtins.int = ...,
        format : builtins.int = ...,
        chunks : builtins.int = ...,
        hash : builtins.bytes = ...,
        metadata : builtins.bytes = ...,
        ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal[u"chunks",b"chunks",u"format",b"format",u"hash",b"hash",u"height",b"height",u"metadata",b"metadata"]) -> None: ...
global___Snapshot = Snapshot
