# Generated by the protocol buffer compiler. DO NOT EDIT!
# sources: ibc/lightclients/wasm/v1/genesis.proto, ibc/lightclients/wasm/v1/query.proto, ibc/lightclients/wasm/v1/tx.proto, ibc/lightclients/wasm/v1/wasm.proto
# plugin: python-betterproto
# This file has been @generated
from dataclasses import dataclass
from typing import (
TYPE_CHECKING,
Dict,
List,
Optional,
)
import betterproto
import grpclib
from betterproto.grpc.grpclib_server import ServiceBase
from .....cosmos.base.query import v1beta1 as ____cosmos_base_query_v1_beta1__
from ....core.client import v1 as ___core_client_v1__
if TYPE_CHECKING:
import grpclib.server
from betterproto.grpc.grpclib_client import MetadataLike
from grpclib.metadata import Deadline
[docs]
@dataclass(eq=False, repr=False)
class GenesisState(betterproto.Message):
"""GenesisState defines 08-wasm's keeper genesis state"""
contracts: List["Contract"] = betterproto.message_field(1)
"""uploaded light client wasm contracts"""
[docs]
@dataclass(eq=False, repr=False)
class Contract(betterproto.Message):
"""Contract stores contract code"""
code_bytes: bytes = betterproto.bytes_field(1)
"""contract byte code"""
[docs]
@dataclass(eq=False, repr=False)
class QueryChecksumsRequest(betterproto.Message):
"""QueryChecksumsRequest is the request type for the Query/Checksums RPC method."""
pagination: "____cosmos_base_query_v1_beta1__.PageRequest" = (
betterproto.message_field(1)
)
"""pagination defines an optional pagination for the request."""
[docs]
@dataclass(eq=False, repr=False)
class QueryChecksumsResponse(betterproto.Message):
"""
QueryChecksumsResponse is the response type for the Query/Checksums RPC method.
"""
checksums: List[str] = betterproto.string_field(1)
"""checksums is a list of the hex encoded checksums of all wasm codes stored."""
pagination: "____cosmos_base_query_v1_beta1__.PageResponse" = (
betterproto.message_field(2)
)
"""pagination defines the pagination in the response."""
[docs]
@dataclass(eq=False, repr=False)
class QueryCodeRequest(betterproto.Message):
"""QueryCodeRequest is the request type for the Query/Code RPC method."""
checksum: str = betterproto.string_field(1)
"""checksum is a hex encoded string of the code stored."""
[docs]
@dataclass(eq=False, repr=False)
class QueryCodeResponse(betterproto.Message):
"""QueryCodeResponse is the response type for the Query/Code RPC method."""
data: bytes = betterproto.bytes_field(1)
[docs]
@dataclass(eq=False, repr=False)
class MsgStoreCode(betterproto.Message):
"""MsgStoreCode defines the request type for the StoreCode rpc."""
signer: str = betterproto.string_field(1)
"""signer address"""
wasm_byte_code: bytes = betterproto.bytes_field(2)
"""wasm byte code of light client contract. It can be raw or gzip compressed"""
[docs]
@dataclass(eq=False, repr=False)
class MsgStoreCodeResponse(betterproto.Message):
"""MsgStoreCodeResponse defines the response type for the StoreCode rpc"""
checksum: bytes = betterproto.bytes_field(1)
"""checksum is the sha256 hash of the stored code"""
[docs]
@dataclass(eq=False, repr=False)
class MsgRemoveChecksum(betterproto.Message):
"""MsgRemoveChecksum defines the request type for the MsgRemoveChecksum rpc."""
signer: str = betterproto.string_field(1)
"""signer address"""
checksum: bytes = betterproto.bytes_field(2)
"""checksum is the sha256 hash to be removed from the store"""
[docs]
@dataclass(eq=False, repr=False)
class MsgRemoveChecksumResponse(betterproto.Message):
"""MsgStoreChecksumResponse defines the response type for the StoreCode rpc"""
pass
[docs]
@dataclass(eq=False, repr=False)
class MsgMigrateContract(betterproto.Message):
"""MsgMigrateContract defines the request type for the MigrateContract rpc."""
signer: str = betterproto.string_field(1)
"""signer address"""
client_id: str = betterproto.string_field(2)
"""the client id of the contract"""
checksum: bytes = betterproto.bytes_field(3)
"""checksum is the sha256 hash of the new wasm byte code for the contract"""
msg: bytes = betterproto.bytes_field(4)
"""the json encoded message to be passed to the contract on migration"""
[docs]
@dataclass(eq=False, repr=False)
class MsgMigrateContractResponse(betterproto.Message):
"""
MsgMigrateContractResponse defines the response type for the MigrateContract rpc
"""
pass
[docs]
@dataclass(eq=False, repr=False)
class ClientState(betterproto.Message):
"""Wasm light client's Client state"""
data: bytes = betterproto.bytes_field(1)
"""
bytes encoding the client state of the underlying light client
implemented as a Wasm contract.
"""
checksum: bytes = betterproto.bytes_field(2)
latest_height: "___core_client_v1__.Height" = betterproto.message_field(3)
[docs]
@dataclass(eq=False, repr=False)
class ConsensusState(betterproto.Message):
"""Wasm light client's ConsensusState"""
data: bytes = betterproto.bytes_field(1)
"""
bytes encoding the consensus state of the underlying light client
implemented as a Wasm contract.
"""
[docs]
@dataclass(eq=False, repr=False)
class ClientMessage(betterproto.Message):
"""Wasm light client message (either header(s) or misbehaviour)"""
data: bytes = betterproto.bytes_field(1)
[docs]
@dataclass(eq=False, repr=False)
class Checksums(betterproto.Message):
"""
Checksums defines a list of all checksums that are stored
Deprecated: This message is deprecated in favor of storing the checksums
using a Collections.KeySet.
"""
checksums: List[bytes] = betterproto.bytes_field(1)
def __post_init__(self) -> None:
warnings.warn("Checksums is deprecated", DeprecationWarning)
super().__post_init__()
[docs]
class QueryStub(betterproto.ServiceStub):
[docs]
async def checksums(
self,
query_checksums_request: "QueryChecksumsRequest",
*,
timeout: Optional[float] = None,
deadline: Optional["Deadline"] = None,
metadata: Optional["MetadataLike"] = None,
) -> "QueryChecksumsResponse":
return await self._unary_unary(
"/ibc.lightclients.wasm.v1.Query/Checksums",
query_checksums_request,
QueryChecksumsResponse,
timeout=timeout,
deadline=deadline,
metadata=metadata,
)
[docs]
async def code(
self,
query_code_request: "QueryCodeRequest",
*,
timeout: Optional[float] = None,
deadline: Optional["Deadline"] = None,
metadata: Optional["MetadataLike"] = None,
) -> "QueryCodeResponse":
return await self._unary_unary(
"/ibc.lightclients.wasm.v1.Query/Code",
query_code_request,
QueryCodeResponse,
timeout=timeout,
deadline=deadline,
metadata=metadata,
)
[docs]
class MsgStub(betterproto.ServiceStub):
[docs]
async def store_code(
self,
msg_store_code: "MsgStoreCode",
*,
timeout: Optional[float] = None,
deadline: Optional["Deadline"] = None,
metadata: Optional["MetadataLike"] = None,
) -> "MsgStoreCodeResponse":
return await self._unary_unary(
"/ibc.lightclients.wasm.v1.Msg/StoreCode",
msg_store_code,
MsgStoreCodeResponse,
timeout=timeout,
deadline=deadline,
metadata=metadata,
)
[docs]
async def remove_checksum(
self,
msg_remove_checksum: "MsgRemoveChecksum",
*,
timeout: Optional[float] = None,
deadline: Optional["Deadline"] = None,
metadata: Optional["MetadataLike"] = None,
) -> "MsgRemoveChecksumResponse":
return await self._unary_unary(
"/ibc.lightclients.wasm.v1.Msg/RemoveChecksum",
msg_remove_checksum,
MsgRemoveChecksumResponse,
timeout=timeout,
deadline=deadline,
metadata=metadata,
)
[docs]
async def migrate_contract(
self,
msg_migrate_contract: "MsgMigrateContract",
*,
timeout: Optional[float] = None,
deadline: Optional["Deadline"] = None,
metadata: Optional["MetadataLike"] = None,
) -> "MsgMigrateContractResponse":
return await self._unary_unary(
"/ibc.lightclients.wasm.v1.Msg/MigrateContract",
msg_migrate_contract,
MsgMigrateContractResponse,
timeout=timeout,
deadline=deadline,
metadata=metadata,
)
[docs]
class QueryBase(ServiceBase):
[docs]
async def checksums(
self, query_checksums_request: "QueryChecksumsRequest"
) -> "QueryChecksumsResponse":
raise grpclib.GRPCError(grpclib.const.Status.UNIMPLEMENTED)
[docs]
async def code(self, query_code_request: "QueryCodeRequest") -> "QueryCodeResponse":
raise grpclib.GRPCError(grpclib.const.Status.UNIMPLEMENTED)
async def __rpc_checksums(
self,
stream: "grpclib.server.Stream[QueryChecksumsRequest, QueryChecksumsResponse]",
) -> None:
request = await stream.recv_message()
response = await self.checksums(request)
await stream.send_message(response)
async def __rpc_code(
self, stream: "grpclib.server.Stream[QueryCodeRequest, QueryCodeResponse]"
) -> None:
request = await stream.recv_message()
response = await self.code(request)
await stream.send_message(response)
def __mapping__(self) -> Dict[str, grpclib.const.Handler]:
return {
"/ibc.lightclients.wasm.v1.Query/Checksums": grpclib.const.Handler(
self.__rpc_checksums,
grpclib.const.Cardinality.UNARY_UNARY,
QueryChecksumsRequest,
QueryChecksumsResponse,
),
"/ibc.lightclients.wasm.v1.Query/Code": grpclib.const.Handler(
self.__rpc_code,
grpclib.const.Cardinality.UNARY_UNARY,
QueryCodeRequest,
QueryCodeResponse,
),
}
[docs]
class MsgBase(ServiceBase):
[docs]
async def store_code(
self, msg_store_code: "MsgStoreCode"
) -> "MsgStoreCodeResponse":
raise grpclib.GRPCError(grpclib.const.Status.UNIMPLEMENTED)
[docs]
async def remove_checksum(
self, msg_remove_checksum: "MsgRemoveChecksum"
) -> "MsgRemoveChecksumResponse":
raise grpclib.GRPCError(grpclib.const.Status.UNIMPLEMENTED)
[docs]
async def migrate_contract(
self, msg_migrate_contract: "MsgMigrateContract"
) -> "MsgMigrateContractResponse":
raise grpclib.GRPCError(grpclib.const.Status.UNIMPLEMENTED)
async def __rpc_store_code(
self, stream: "grpclib.server.Stream[MsgStoreCode, MsgStoreCodeResponse]"
) -> None:
request = await stream.recv_message()
response = await self.store_code(request)
await stream.send_message(response)
async def __rpc_remove_checksum(
self,
stream: "grpclib.server.Stream[MsgRemoveChecksum, MsgRemoveChecksumResponse]",
) -> None:
request = await stream.recv_message()
response = await self.remove_checksum(request)
await stream.send_message(response)
async def __rpc_migrate_contract(
self,
stream: "grpclib.server.Stream[MsgMigrateContract, MsgMigrateContractResponse]",
) -> None:
request = await stream.recv_message()
response = await self.migrate_contract(request)
await stream.send_message(response)
def __mapping__(self) -> Dict[str, grpclib.const.Handler]:
return {
"/ibc.lightclients.wasm.v1.Msg/StoreCode": grpclib.const.Handler(
self.__rpc_store_code,
grpclib.const.Cardinality.UNARY_UNARY,
MsgStoreCode,
MsgStoreCodeResponse,
),
"/ibc.lightclients.wasm.v1.Msg/RemoveChecksum": grpclib.const.Handler(
self.__rpc_remove_checksum,
grpclib.const.Cardinality.UNARY_UNARY,
MsgRemoveChecksum,
MsgRemoveChecksumResponse,
),
"/ibc.lightclients.wasm.v1.Msg/MigrateContract": grpclib.const.Handler(
self.__rpc_migrate_contract,
grpclib.const.Cardinality.UNARY_UNARY,
MsgMigrateContract,
MsgMigrateContractResponse,
),
}