diff --git a/packages/stargate/package.json b/packages/stargate/package.json index 647c715b..0617276f 100644 --- a/packages/stargate/package.json +++ b/packages/stargate/package.json @@ -39,6 +39,7 @@ }, "dependencies": { "@cosmjs/encoding": "^0.22.0", + "@cosmjs/launchpad": "^0.22.0", "@cosmjs/math": "^0.22.0", "@cosmjs/proto-signing": "^0.22.0", "@cosmjs/tendermint-rpc": "^0.22.0", diff --git a/packages/stargate/src/stargateclient.ts b/packages/stargate/src/stargateclient.ts index ec23473c..9b582ca3 100644 --- a/packages/stargate/src/stargateclient.ts +++ b/packages/stargate/src/stargateclient.ts @@ -1,7 +1,8 @@ /* eslint-disable @typescript-eslint/naming-convention */ import { Bech32, toAscii, toHex } from "@cosmjs/encoding"; +import { Coin } from "@cosmjs/launchpad"; import { Uint64 } from "@cosmjs/math"; -import { BaseAccount, Coin, decodeAny } from "@cosmjs/proto-signing"; +import * as proto from "@cosmjs/proto-signing"; import { Client as TendermintClient } from "@cosmjs/tendermint-rpc"; import { assertDefined } from "@cosmjs/utils"; import Long from "long"; @@ -33,10 +34,10 @@ export class StargateClient { const accountKey = Uint8Array.from([0x01, ...binAddress]); const responseData = await this.queryVerified("acc", accountKey); - const { typeUrl, value } = decodeAny(responseData); + const { typeUrl, value } = proto.decodeAny(responseData); switch (typeUrl) { case "/cosmos.auth.BaseAccount": { - const { account_number, sequence } = BaseAccount.decode(value); + const { account_number, sequence } = proto.BaseAccount.decode(value); assertDefined(account_number); assertDefined(sequence); return { @@ -49,13 +50,7 @@ export class StargateClient { } } - public async getBalance( - address: string, - searchDenom: string, - ): Promise<{ - readonly denom: string; - readonly amount: string; - } | null> { + public async getBalance(address: string, searchDenom: string): Promise { // balance key is a bit tricker, using some prefix stores // https://github.com/cosmwasm/cosmos-sdk/blob/80f7ff62f79777a487d0c7a53c64b0f7e43c47b9/x/bank/keeper/view.go#L74-L77 // ("balances", binAddress, denom) @@ -66,7 +61,7 @@ export class StargateClient { const bankKey = Uint8Array.from([...toAscii("balances"), ...binAddress, ...toAscii(searchDenom)]); const responseData = await this.queryVerified("bank", bankKey); - const { amount, denom } = Coin.decode(responseData); + const { amount, denom } = proto.Coin.decode(responseData); assertDefined(amount); assertDefined(denom); diff --git a/packages/stargate/types/stargateclient.d.ts b/packages/stargate/types/stargateclient.d.ts index 85cafca9..05a3a318 100644 --- a/packages/stargate/types/stargateclient.d.ts +++ b/packages/stargate/types/stargateclient.d.ts @@ -1,3 +1,4 @@ +import { Coin } from "@cosmjs/launchpad"; export interface GetSequenceResult { readonly accountNumber: number; readonly sequence: number; @@ -7,13 +8,7 @@ export declare class StargateClient { static connect(endpoint: string): Promise; private constructor(); getSequence(address: string): Promise; - getBalance( - address: string, - searchDenom: string, - ): Promise<{ - readonly denom: string; - readonly amount: string; - } | null>; + getBalance(address: string, searchDenom: string): Promise; disconnect(): void; private queryVerified; }