"""
@generated by mypy-protobuf.  Do not edit manually!
isort:skip_file
"""
import builtins
import google.protobuf.descriptor
import google.protobuf.message
import tendermint.types.evidence_pb2
import tendermint.types.types_pb2
import typing
import typing_extensions

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

class Block(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor = ...
    HEADER_FIELD_NUMBER: builtins.int
    DATA_FIELD_NUMBER: builtins.int
    EVIDENCE_FIELD_NUMBER: builtins.int
    LAST_COMMIT_FIELD_NUMBER: builtins.int

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

    @property
    def data(self) -> tendermint.types.types_pb2.Data: ...

    @property
    def evidence(self) -> tendermint.types.evidence_pb2.EvidenceList: ...

    @property
    def last_commit(self) -> tendermint.types.types_pb2.Commit: ...

    def __init__(self,
        *,
        header : typing.Optional[tendermint.types.types_pb2.Header] = ...,
        data : typing.Optional[tendermint.types.types_pb2.Data] = ...,
        evidence : typing.Optional[tendermint.types.evidence_pb2.EvidenceList] = ...,
        last_commit : typing.Optional[tendermint.types.types_pb2.Commit] = ...,
        ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal[u"data",b"data",u"evidence",b"evidence",u"header",b"header",u"last_commit",b"last_commit"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal[u"data",b"data",u"evidence",b"evidence",u"header",b"header",u"last_commit",b"last_commit"]) -> None: ...
global___Block = Block
