from gogoproto import gogo_pb2 as _gogo_pb2
from google.protobuf import any_pb2 as _any_pb2
from google.protobuf import descriptor as _descriptor
from google.protobuf import message as _message
from typing import ClassVar as _ClassVar, Mapping as _Mapping, Optional as _Optional, Union as _Union

DESCRIPTOR: _descriptor.FileDescriptor

class MsgCreateClient(_message.Message):
    __slots__ = ("client_state", "consensus_state", "signer")
    CLIENT_STATE_FIELD_NUMBER: _ClassVar[int]
    CONSENSUS_STATE_FIELD_NUMBER: _ClassVar[int]
    SIGNER_FIELD_NUMBER: _ClassVar[int]
    client_state: _any_pb2.Any
    consensus_state: _any_pb2.Any
    signer: str
    def __init__(self, client_state: _Optional[_Union[_any_pb2.Any, _Mapping]] = ..., consensus_state: _Optional[_Union[_any_pb2.Any, _Mapping]] = ..., signer: _Optional[str] = ...) -> None: ...

class MsgCreateClientResponse(_message.Message):
    __slots__ = ()
    def __init__(self) -> None: ...

class MsgUpdateClient(_message.Message):
    __slots__ = ("client_id", "header", "signer")
    CLIENT_ID_FIELD_NUMBER: _ClassVar[int]
    HEADER_FIELD_NUMBER: _ClassVar[int]
    SIGNER_FIELD_NUMBER: _ClassVar[int]
    client_id: str
    header: _any_pb2.Any
    signer: str
    def __init__(self, client_id: _Optional[str] = ..., header: _Optional[_Union[_any_pb2.Any, _Mapping]] = ..., signer: _Optional[str] = ...) -> None: ...

class MsgUpdateClientResponse(_message.Message):
    __slots__ = ()
    def __init__(self) -> None: ...

class MsgUpgradeClient(_message.Message):
    __slots__ = ("client_id", "client_state", "consensus_state", "proof_upgrade_client", "proof_upgrade_consensus_state", "signer")
    CLIENT_ID_FIELD_NUMBER: _ClassVar[int]
    CLIENT_STATE_FIELD_NUMBER: _ClassVar[int]
    CONSENSUS_STATE_FIELD_NUMBER: _ClassVar[int]
    PROOF_UPGRADE_CLIENT_FIELD_NUMBER: _ClassVar[int]
    PROOF_UPGRADE_CONSENSUS_STATE_FIELD_NUMBER: _ClassVar[int]
    SIGNER_FIELD_NUMBER: _ClassVar[int]
    client_id: str
    client_state: _any_pb2.Any
    consensus_state: _any_pb2.Any
    proof_upgrade_client: bytes
    proof_upgrade_consensus_state: bytes
    signer: str
    def __init__(self, client_id: _Optional[str] = ..., client_state: _Optional[_Union[_any_pb2.Any, _Mapping]] = ..., consensus_state: _Optional[_Union[_any_pb2.Any, _Mapping]] = ..., proof_upgrade_client: _Optional[bytes] = ..., proof_upgrade_consensus_state: _Optional[bytes] = ..., signer: _Optional[str] = ...) -> None: ...

class MsgUpgradeClientResponse(_message.Message):
    __slots__ = ()
    def __init__(self) -> None: ...

class MsgSubmitMisbehaviour(_message.Message):
    __slots__ = ("client_id", "misbehaviour", "signer")
    CLIENT_ID_FIELD_NUMBER: _ClassVar[int]
    MISBEHAVIOUR_FIELD_NUMBER: _ClassVar[int]
    SIGNER_FIELD_NUMBER: _ClassVar[int]
    client_id: str
    misbehaviour: _any_pb2.Any
    signer: str
    def __init__(self, client_id: _Optional[str] = ..., misbehaviour: _Optional[_Union[_any_pb2.Any, _Mapping]] = ..., signer: _Optional[str] = ...) -> None: ...

class MsgSubmitMisbehaviourResponse(_message.Message):
    __slots__ = ()
    def __init__(self) -> None: ...
