"""
@generated by mypy-protobuf.  Do not edit manually!
isort:skip_file
"""
import builtins
import cosmos.base.query.v1beta1.pagination_pb2
import google.protobuf.any_pb2
import google.protobuf.descriptor
import google.protobuf.internal.containers
import google.protobuf.message
import ibc.core.client.v1.client_pb2
import typing
import typing_extensions

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

# QueryClientStateRequest is the request type for the Query/ClientState RPC
# method
class QueryClientStateRequest(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor = ...
    CLIENT_ID_FIELD_NUMBER: builtins.int
    # client state unique identifier
    client_id: typing.Text = ...
    def __init__(self,
        *,
        client_id : typing.Text = ...,
        ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal[u"client_id",b"client_id"]) -> None: ...
global___QueryClientStateRequest = QueryClientStateRequest

# QueryClientStateResponse is the response type for the Query/ClientState RPC
# method. Besides the client state, it includes a proof and the height from
# which the proof was retrieved.
class QueryClientStateResponse(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor = ...
    CLIENT_STATE_FIELD_NUMBER: builtins.int
    PROOF_FIELD_NUMBER: builtins.int
    PROOF_HEIGHT_FIELD_NUMBER: builtins.int
    # client state associated with the request identifier
    @property
    def client_state(self) -> google.protobuf.any_pb2.Any: ...
    # merkle proof of existence
    proof: builtins.bytes = ...
    # height at which the proof was retrieved
    @property
    def proof_height(self) -> ibc.core.client.v1.client_pb2.Height: ...
    def __init__(self,
        *,
        client_state : typing.Optional[google.protobuf.any_pb2.Any] = ...,
        proof : builtins.bytes = ...,
        proof_height : typing.Optional[ibc.core.client.v1.client_pb2.Height] = ...,
        ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal[u"client_state",b"client_state",u"proof_height",b"proof_height"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal[u"client_state",b"client_state",u"proof",b"proof",u"proof_height",b"proof_height"]) -> None: ...
global___QueryClientStateResponse = QueryClientStateResponse

# QueryClientStatesRequest is the request type for the Query/ClientStates RPC
# method
class QueryClientStatesRequest(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor = ...
    PAGINATION_FIELD_NUMBER: builtins.int
    # pagination request
    @property
    def pagination(self) -> cosmos.base.query.v1beta1.pagination_pb2.PageRequest: ...
    def __init__(self,
        *,
        pagination : typing.Optional[cosmos.base.query.v1beta1.pagination_pb2.PageRequest] = ...,
        ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal[u"pagination",b"pagination"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal[u"pagination",b"pagination"]) -> None: ...
global___QueryClientStatesRequest = QueryClientStatesRequest

# QueryClientStatesResponse is the response type for the Query/ClientStates RPC
# method.
class QueryClientStatesResponse(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor = ...
    CLIENT_STATES_FIELD_NUMBER: builtins.int
    PAGINATION_FIELD_NUMBER: builtins.int
    # list of stored ClientStates of the chain.
    @property
    def client_states(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[ibc.core.client.v1.client_pb2.IdentifiedClientState]: ...
    # pagination response
    @property
    def pagination(self) -> cosmos.base.query.v1beta1.pagination_pb2.PageResponse: ...
    def __init__(self,
        *,
        client_states : typing.Optional[typing.Iterable[ibc.core.client.v1.client_pb2.IdentifiedClientState]] = ...,
        pagination : typing.Optional[cosmos.base.query.v1beta1.pagination_pb2.PageResponse] = ...,
        ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal[u"pagination",b"pagination"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal[u"client_states",b"client_states",u"pagination",b"pagination"]) -> None: ...
global___QueryClientStatesResponse = QueryClientStatesResponse

# QueryConsensusStateRequest is the request type for the Query/ConsensusState
# RPC method. Besides the consensus state, it includes a proof and the height
# from which the proof was retrieved.
class QueryConsensusStateRequest(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor = ...
    CLIENT_ID_FIELD_NUMBER: builtins.int
    REVISION_NUMBER_FIELD_NUMBER: builtins.int
    REVISION_HEIGHT_FIELD_NUMBER: builtins.int
    LATEST_HEIGHT_FIELD_NUMBER: builtins.int
    # client identifier
    client_id: typing.Text = ...
    # consensus state revision number
    revision_number: builtins.int = ...
    # consensus state revision height
    revision_height: builtins.int = ...
    # latest_height overrrides the height field and queries the latest stored
    # ConsensusState
    latest_height: builtins.bool = ...
    def __init__(self,
        *,
        client_id : typing.Text = ...,
        revision_number : builtins.int = ...,
        revision_height : builtins.int = ...,
        latest_height : builtins.bool = ...,
        ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal[u"client_id",b"client_id",u"latest_height",b"latest_height",u"revision_height",b"revision_height",u"revision_number",b"revision_number"]) -> None: ...
global___QueryConsensusStateRequest = QueryConsensusStateRequest

# QueryConsensusStateResponse is the response type for the Query/ConsensusState
# RPC method
class QueryConsensusStateResponse(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor = ...
    CONSENSUS_STATE_FIELD_NUMBER: builtins.int
    PROOF_FIELD_NUMBER: builtins.int
    PROOF_HEIGHT_FIELD_NUMBER: builtins.int
    # consensus state associated with the client identifier at the given height
    @property
    def consensus_state(self) -> google.protobuf.any_pb2.Any: ...
    # merkle proof of existence
    proof: builtins.bytes = ...
    # height at which the proof was retrieved
    @property
    def proof_height(self) -> ibc.core.client.v1.client_pb2.Height: ...
    def __init__(self,
        *,
        consensus_state : typing.Optional[google.protobuf.any_pb2.Any] = ...,
        proof : builtins.bytes = ...,
        proof_height : typing.Optional[ibc.core.client.v1.client_pb2.Height] = ...,
        ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal[u"consensus_state",b"consensus_state",u"proof_height",b"proof_height"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal[u"consensus_state",b"consensus_state",u"proof",b"proof",u"proof_height",b"proof_height"]) -> None: ...
global___QueryConsensusStateResponse = QueryConsensusStateResponse

# QueryConsensusStatesRequest is the request type for the Query/ConsensusStates
# RPC method.
class QueryConsensusStatesRequest(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor = ...
    CLIENT_ID_FIELD_NUMBER: builtins.int
    PAGINATION_FIELD_NUMBER: builtins.int
    # client identifier
    client_id: typing.Text = ...
    # pagination request
    @property
    def pagination(self) -> cosmos.base.query.v1beta1.pagination_pb2.PageRequest: ...
    def __init__(self,
        *,
        client_id : typing.Text = ...,
        pagination : typing.Optional[cosmos.base.query.v1beta1.pagination_pb2.PageRequest] = ...,
        ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal[u"pagination",b"pagination"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal[u"client_id",b"client_id",u"pagination",b"pagination"]) -> None: ...
global___QueryConsensusStatesRequest = QueryConsensusStatesRequest

# QueryConsensusStatesResponse is the response type for the
# Query/ConsensusStates RPC method
class QueryConsensusStatesResponse(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor = ...
    CONSENSUS_STATES_FIELD_NUMBER: builtins.int
    PAGINATION_FIELD_NUMBER: builtins.int
    # consensus states associated with the identifier
    @property
    def consensus_states(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[ibc.core.client.v1.client_pb2.ConsensusStateWithHeight]: ...
    # pagination response
    @property
    def pagination(self) -> cosmos.base.query.v1beta1.pagination_pb2.PageResponse: ...
    def __init__(self,
        *,
        consensus_states : typing.Optional[typing.Iterable[ibc.core.client.v1.client_pb2.ConsensusStateWithHeight]] = ...,
        pagination : typing.Optional[cosmos.base.query.v1beta1.pagination_pb2.PageResponse] = ...,
        ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal[u"pagination",b"pagination"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal[u"consensus_states",b"consensus_states",u"pagination",b"pagination"]) -> None: ...
global___QueryConsensusStatesResponse = QueryConsensusStatesResponse

# QueryClientStatusRequest is the request type for the Query/ClientStatus RPC
# method
class QueryClientStatusRequest(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor = ...
    CLIENT_ID_FIELD_NUMBER: builtins.int
    # client unique identifier
    client_id: typing.Text = ...
    def __init__(self,
        *,
        client_id : typing.Text = ...,
        ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal[u"client_id",b"client_id"]) -> None: ...
global___QueryClientStatusRequest = QueryClientStatusRequest

# QueryClientStatusResponse is the response type for the Query/ClientStatus RPC
# method. It returns the current status of the IBC client.
class QueryClientStatusResponse(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor = ...
    STATUS_FIELD_NUMBER: builtins.int
    status: typing.Text = ...
    def __init__(self,
        *,
        status : typing.Text = ...,
        ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal[u"status",b"status"]) -> None: ...
global___QueryClientStatusResponse = QueryClientStatusResponse

# QueryClientParamsRequest is the request type for the Query/ClientParams RPC
# method.
class QueryClientParamsRequest(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor = ...
    def __init__(self,
        ) -> None: ...
global___QueryClientParamsRequest = QueryClientParamsRequest

# QueryClientParamsResponse is the response type for the Query/ClientParams RPC
# method.
class QueryClientParamsResponse(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor = ...
    PARAMS_FIELD_NUMBER: builtins.int
    # params defines the parameters of the module.
    @property
    def params(self) -> ibc.core.client.v1.client_pb2.Params: ...
    def __init__(self,
        *,
        params : typing.Optional[ibc.core.client.v1.client_pb2.Params] = ...,
        ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal[u"params",b"params"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal[u"params",b"params"]) -> None: ...
global___QueryClientParamsResponse = QueryClientParamsResponse

# QueryUpgradedClientStateRequest is the request type for the
# Query/UpgradedClientState RPC method
class QueryUpgradedClientStateRequest(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor = ...
    def __init__(self,
        ) -> None: ...
global___QueryUpgradedClientStateRequest = QueryUpgradedClientStateRequest

# QueryUpgradedClientStateResponse is the response type for the
# Query/UpgradedClientState RPC method.
class QueryUpgradedClientStateResponse(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor = ...
    UPGRADED_CLIENT_STATE_FIELD_NUMBER: builtins.int
    # client state associated with the request identifier
    @property
    def upgraded_client_state(self) -> google.protobuf.any_pb2.Any: ...
    def __init__(self,
        *,
        upgraded_client_state : typing.Optional[google.protobuf.any_pb2.Any] = ...,
        ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal[u"upgraded_client_state",b"upgraded_client_state"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal[u"upgraded_client_state",b"upgraded_client_state"]) -> None: ...
global___QueryUpgradedClientStateResponse = QueryUpgradedClientStateResponse

# QueryUpgradedConsensusStateRequest is the request type for the
# Query/UpgradedConsensusState RPC method
class QueryUpgradedConsensusStateRequest(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor = ...
    def __init__(self,
        ) -> None: ...
global___QueryUpgradedConsensusStateRequest = QueryUpgradedConsensusStateRequest

# QueryUpgradedConsensusStateResponse is the response type for the
# Query/UpgradedConsensusState RPC method.
class QueryUpgradedConsensusStateResponse(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor = ...
    UPGRADED_CONSENSUS_STATE_FIELD_NUMBER: builtins.int
    # Consensus state associated with the request identifier
    @property
    def upgraded_consensus_state(self) -> google.protobuf.any_pb2.Any: ...
    def __init__(self,
        *,
        upgraded_consensus_state : typing.Optional[google.protobuf.any_pb2.Any] = ...,
        ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal[u"upgraded_consensus_state",b"upgraded_consensus_state"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal[u"upgraded_consensus_state",b"upgraded_consensus_state"]) -> None: ...
global___QueryUpgradedConsensusStateResponse = QueryUpgradedConsensusStateResponse
