stargate: Add IBC and staking extensions to default Stargate client

This commit is contained in:
willclarktech 2021-01-26 12:09:55 +00:00
parent 20b9b2d00e
commit 4aa248ec63
No known key found for this signature in database
GPG Key ID: 551A86E2E398ADF7

View File

@ -22,7 +22,17 @@ import { assert, assertDefinedAndNotNull } from "@cosmjs/utils";
import Long from "long";
import { cosmos } from "./codec";
import { AuthExtension, BankExtension, QueryClient, setupAuthExtension, setupBankExtension } from "./queries";
import {
AuthExtension,
BankExtension,
IbcExtension,
QueryClient,
setupAuthExtension,
setupBankExtension,
setupIbcExtension,
setupStakingExtension,
StakingExtension,
} from "./queries";
type IBaseAccount = cosmos.auth.v1beta1.IBaseAccount;
type IMsgData = cosmos.base.abci.v1beta1.IMsgData;
@ -125,7 +135,7 @@ export interface PrivateStargateClient {
export class StargateClient {
private readonly tmClient: TendermintClient;
private readonly queryClient: QueryClient & AuthExtension & BankExtension;
private readonly queryClient: QueryClient & AuthExtension & BankExtension & IbcExtension & StakingExtension;
private chainId: string | undefined;
public static async connect(endpoint: string): Promise<StargateClient> {
@ -135,7 +145,13 @@ export class StargateClient {
protected constructor(tmClient: TendermintClient) {
this.tmClient = tmClient;
this.queryClient = QueryClient.withExtensions(tmClient, setupAuthExtension, setupBankExtension);
this.queryClient = QueryClient.withExtensions(
tmClient,
setupAuthExtension,
setupBankExtension,
setupIbcExtension,
setupStakingExtension,
);
}
public async getChainId(): Promise<string> {