//@ts-nocheck
import { Rpc } from "../../../helpers";
import { BinaryReader } from "../../../binary";
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<MsgStoreCodeResponse>;
/**
* InstantiateContract creates a new smart contract instance for the given
* code id.
*/
instantiateContract(request: MsgInstantiateContract): Promise<MsgInstantiateContractResponse>;
/**
* InstantiateContract2 creates a new smart contract instance for the given
* code id with a predictable address
*/
instantiateContract2(request: MsgInstantiateContract2): Promise<MsgInstantiateContract2Response>;
/** Execute submits the given message data to a smart contract */
executeContract(request: MsgExecuteContract): Promise<MsgExecuteContractResponse>;
/** Migrate runs a code upgrade/ downgrade for a smart contract */
migrateContract(request: MsgMigrateContract): Promise<MsgMigrateContractResponse>;
/** UpdateAdmin sets a new admin for a smart contract */
updateAdmin(request: MsgUpdateAdmin): Promise<MsgUpdateAdminResponse>;
/** ClearAdmin removes any admin stored for a smart contract */
clearAdmin(request: MsgClearAdmin): Promise<MsgClearAdminResponse>;
}
export class MsgClientImpl implements Msg {
private readonly rpc: Rpc;
constructor(rpc: Rpc) {
this.rpc = rpc;
this.storeCode = this.storeCode.bind(this);
this.instantiateContract = this.instantiateContract.bind(this);
this.instantiateContract2 = this.instantiateContract2.bind(this);
this.executeContract = this.executeContract.bind(this);
this.migrateContract = this.migrateContract.bind(this);
this.updateAdmin = this.updateAdmin.bind(this);
this.clearAdmin = this.clearAdmin.bind(this);
}
storeCode(request: MsgStoreCode): Promise<MsgStoreCodeResponse> {
const data = MsgStoreCode.encode(request).finish();
const promise = this.rpc.request("cosmwasm.wasm.v1.Msg", "StoreCode", data);
return promise.then(data => MsgStoreCodeResponse.decode(new BinaryReader(data)));
}
instantiateContract(request: MsgInstantiateContract): Promise<MsgInstantiateContractResponse> {
const data = MsgInstantiateContract.encode(request).finish();
const promise = this.rpc.request("cosmwasm.wasm.v1.Msg", "InstantiateContract", data);
return promise.then(data => MsgInstantiateContractResponse.decode(new BinaryReader(data)));
}
instantiateContract2(request: MsgInstantiateContract2): Promise<MsgInstantiateContract2Response> {
const data = MsgInstantiateContract2.encode(request).finish();
const promise = this.rpc.request("cosmwasm.wasm.v1.Msg", "InstantiateContract2", data);
return promise.then(data => MsgInstantiateContract2Response.decode(new BinaryReader(data)));
}
executeContract(request: MsgExecuteContract): Promise<MsgExecuteContractResponse> {
const data = MsgExecuteContract.encode(request).finish();
const promise = this.rpc.request("cosmwasm.wasm.v1.Msg", "ExecuteContract", data);
return promise.then(data => MsgExecuteContractResponse.decode(new BinaryReader(data)));
}
migrateContract(request: MsgMigrateContract): Promise<MsgMigrateContractResponse> {
const data = MsgMigrateContract.encode(request).finish();
const promise = this.rpc.request("cosmwasm.wasm.v1.Msg", "MigrateContract", data);
return promise.then(data => MsgMigrateContractResponse.decode(new BinaryReader(data)));
}
updateAdmin(request: MsgUpdateAdmin): Promise<MsgUpdateAdminResponse> {
const data = MsgUpdateAdmin.encode(request).finish();
const promise = this.rpc.request("cosmwasm.wasm.v1.Msg", "UpdateAdmin", data);
return promise.then(data => MsgUpdateAdminResponse.decode(new BinaryReader(data)));
}
clearAdmin(request: MsgClearAdmin): Promise<MsgClearAdminResponse> {
const data = MsgClearAdmin.encode(request).finish();
const promise = this.rpc.request("cosmwasm.wasm.v1.Msg", "ClearAdmin", data);
return promise.then(data => MsgClearAdminResponse.decode(new BinaryReader(data)));
}
}