import { KVStore } from "@keplr-wallet/common"; import { ChainGetter, ObservableChainQuery, ObservableQueryBalances, QueryResponse } from "@keplr-wallet/stores"; import { ObservableQueryLiquiditiesNetInDirection } from "../concentrated-liquidity"; import { ObservableQueryNodeInfo } from "../tendermint/node-info"; import { ObservableQueryNumPools } from "./num-pools"; import { ObservableQueryPool } from "./pool"; import { ObservableQueryPoolGetter, Pools } from "./types"; /** Fetches all pools directly from node in order of pool creation. */ export declare class ObservableQueryPools extends ObservableChainQuery implements ObservableQueryPoolGetter { readonly queryLiquiditiesInNetDirection: ObservableQueryLiquiditiesNetInDirection; readonly queryBalances: ObservableQueryBalances; readonly queryNodeInfo: ObservableQueryNodeInfo; readonly queryNumPools: ObservableQueryNumPools; protected readonly poolIdBlacklist: string[]; /** Maintain references of ObservableQueryPool objects to prevent breaking observers. */ protected _pools: Map; constructor(kvStore: KVStore, chainId: string, chainGetter: ChainGetter, queryLiquiditiesInNetDirection: ObservableQueryLiquiditiesNetInDirection, queryBalances: ObservableQueryBalances, queryNodeInfo: ObservableQueryNodeInfo, queryNumPools: ObservableQueryNumPools, poolIdBlacklist?: string[]); protected setResponse(response: Readonly>): void; /** Returns `undefined` if the pool does not exist or the data has not loaded. */ getPool(id: string): ObservableQueryPool | undefined; /** Returns `undefined` if pool data has not loaded, and `true`/`false` for if the pool exists. */ readonly poolExists: (id: string) => boolean | undefined; readonly getAllPools: () => ObservableQueryPool[]; /** TODO: implement pagination when we hit the limit of pools, for now, the url will be set to the max number of pools in the autorun above */ paginate(): Promise; fetchRemainingPools(): Promise; }