import { TxRpc } from "../../../types"; import { MsgStoreCode, MsgStoreCodeResponse, MsgInstantiateContract, MsgInstantiateContractResponse, MsgInstantiateContract2, MsgInstantiateContract2Response, MsgExecuteContract, MsgExecuteContractResponse, MsgMigrateContract, MsgMigrateContractResponse, MsgUpdateAdmin, MsgUpdateAdminResponse, MsgClearAdmin, MsgClearAdminResponse } from "./tx"; /** Msg defines the wasm Msg service. */ export interface Msg { /** StoreCode to submit Wasm code to the system */ storeCode(request: MsgStoreCode): Promise; /** * InstantiateContract creates a new smart contract instance for the given * code id. */ instantiateContract(request: MsgInstantiateContract): Promise; /** * InstantiateContract2 creates a new smart contract instance for the given * code id with a predictable address */ instantiateContract2(request: MsgInstantiateContract2): Promise; /** Execute submits the given message data to a smart contract */ executeContract(request: MsgExecuteContract): Promise; /** Migrate runs a code upgrade/ downgrade for a smart contract */ migrateContract(request: MsgMigrateContract): Promise; /** UpdateAdmin sets a new admin for a smart contract */ updateAdmin(request: MsgUpdateAdmin): Promise; /** ClearAdmin removes any admin stored for a smart contract */ clearAdmin(request: MsgClearAdmin): Promise; } export declare class MsgClientImpl implements Msg { private readonly rpc; constructor(rpc: TxRpc); storeCode: (request: MsgStoreCode) => Promise; instantiateContract: (request: MsgInstantiateContract) => Promise; instantiateContract2: (request: MsgInstantiateContract2) => Promise; executeContract: (request: MsgExecuteContract) => Promise; migrateContract: (request: MsgMigrateContract) => Promise; updateAdmin: (request: MsgUpdateAdmin) => Promise; clearAdmin: (request: MsgClearAdmin) => Promise; } export declare const createClientImpl: (rpc: TxRpc) => MsgClientImpl;