// THIS FILE IS GENERATED AUTOMATICALLY. DO NOT MODIFY. import { StdFee } from "@cosmjs/launchpad"; import { SigningStargateClient } from "@cosmjs/stargate"; import { Registry, OfflineSigner, EncodeObject, DirectSecp256k1HdWallet, GeneratedType } from "@cosmjs/proto-signing"; import { Api } from "./rest"; import { MsgMarketOrder } from "./types/crescent/liquidity/v1beta1/tx"; import { MsgCreatePool } from "./types/crescent/liquidity/v1beta1/tx"; import { MsgLimitOrder } from "./types/crescent/liquidity/v1beta1/tx"; import { MsgCreatePair } from "./types/crescent/liquidity/v1beta1/tx"; import { MsgDeposit } from "./types/crescent/liquidity/v1beta1/tx"; import { MsgCancelAllOrders } from "./types/crescent/liquidity/v1beta1/tx"; import { MsgWithdraw } from "./types/crescent/liquidity/v1beta1/tx"; import { MsgCancelOrder } from "./types/crescent/liquidity/v1beta1/tx"; export const MsgTypes:Array<[string, GeneratedType]> = [ ["/crescent.liquidity.v1beta1.MsgMarketOrder", MsgMarketOrder], ["/crescent.liquidity.v1beta1.MsgCreatePool", MsgCreatePool], ["/crescent.liquidity.v1beta1.MsgLimitOrder", MsgLimitOrder], ["/crescent.liquidity.v1beta1.MsgCreatePair", MsgCreatePair], ["/crescent.liquidity.v1beta1.MsgDeposit", MsgDeposit], ["/crescent.liquidity.v1beta1.MsgCancelAllOrders", MsgCancelAllOrders], ["/crescent.liquidity.v1beta1.MsgWithdraw", MsgWithdraw], ["/crescent.liquidity.v1beta1.MsgCancelOrder", MsgCancelOrder], ]; export const MissingWalletError = new Error("wallet is required"); export const registry = new Registry(MsgTypes); const defaultFee = { amount: [], gas: "200000", }; interface TxClientOptions { addr: string } interface SignAndBroadcastOptions { fee: StdFee, memo?: string } const txClient = async (wallet: OfflineSigner, { addr: addr }: TxClientOptions = { addr: "http://localhost:26657" }) => { if (!wallet) throw MissingWalletError; let client; if (addr) { client = await SigningStargateClient.connectWithSigner(addr, wallet, { registry }); }else{ client = await SigningStargateClient.offline( wallet, { registry }); } const { address } = (await wallet.getAccounts())[0]; return { signAndBroadcast: (msgs: EncodeObject[], { fee, memo }: SignAndBroadcastOptions = {fee: defaultFee, memo: ""}) => client.signAndBroadcast(address, msgs, fee,memo), msgMarketOrder: (data: MsgMarketOrder): EncodeObject => ({ typeUrl: "/crescent.liquidity.v1beta1.MsgMarketOrder", value: MsgMarketOrder.fromPartial( data ) }), msgCreatePool: (data: MsgCreatePool): EncodeObject => ({ typeUrl: "/crescent.liquidity.v1beta1.MsgCreatePool", value: MsgCreatePool.fromPartial( data ) }), msgLimitOrder: (data: MsgLimitOrder): EncodeObject => ({ typeUrl: "/crescent.liquidity.v1beta1.MsgLimitOrder", value: MsgLimitOrder.fromPartial( data ) }), msgCreatePair: (data: MsgCreatePair): EncodeObject => ({ typeUrl: "/crescent.liquidity.v1beta1.MsgCreatePair", value: MsgCreatePair.fromPartial( data ) }), msgDeposit: (data: MsgDeposit): EncodeObject => ({ typeUrl: "/crescent.liquidity.v1beta1.MsgDeposit", value: MsgDeposit.fromPartial( data ) }), msgCancelAllOrders: (data: MsgCancelAllOrders): EncodeObject => ({ typeUrl: "/crescent.liquidity.v1beta1.MsgCancelAllOrders", value: MsgCancelAllOrders.fromPartial( data ) }), msgWithdraw: (data: MsgWithdraw): EncodeObject => ({ typeUrl: "/crescent.liquidity.v1beta1.MsgWithdraw", value: MsgWithdraw.fromPartial( data ) }), msgCancelOrder: (data: MsgCancelOrder): EncodeObject => ({ typeUrl: "/crescent.liquidity.v1beta1.MsgCancelOrder", value: MsgCancelOrder.fromPartial( data ) }), }; }; interface QueryClientOptions { addr: string } const queryClient = async ({ addr: addr }: QueryClientOptions = { addr: "http://localhost:1317" }) => { return new Api({ baseUrl: addr }); }; export { txClient, queryClient, };