import { IQueriesStore } from "@keplr-wallet/stores"; import { RatePretty } from "@keplr-wallet/unit"; import { AccountStore, CosmosAccount, CosmwasmAccount, OsmosisAccount } from "../account"; import { DerivedDataStore } from "../derived-data"; import { IPriceStore } from "../price"; import { OsmosisQueries } from "../queries"; /** Upgrades for migrating from CFMM to CL pools. */ export declare type UserCfmmToClUpgrade = { cfmmPoolId: string; clPoolId: string; cfmmApr: RatePretty; clApr: RatePretty; sendUpgradeMsg: () => Promise; }; export declare type SuccessfulUserCfmmToClUpgrade = Omit; /** Aggregates various upgrades users can take in their account. */ export declare class UserUpgradesConfig { protected readonly osmosisChainId: string; protected readonly queriesStore: IQueriesStore; protected readonly accountStore: AccountStore<[ OsmosisAccount, CosmosAccount, CosmwasmAccount ]>; protected readonly derivedDataStore: DerivedDataStore; protected readonly priceStore: IPriceStore; protected _successfullCfmmToClUpgrades: SuccessfulUserCfmmToClUpgrade[]; /** Available upgrades from CFMM pool to CL pool full range position. */ get availableCfmmToClUpgrades(): UserCfmmToClUpgrade[]; /** Successful upgrades from cfmm to CL. */ get successfullCfmmToClUpgrades(): SuccessfulUserCfmmToClUpgrade[]; /** Zips user's available CFMM to CL migrations, with past successful migrations in single list. * Sorts by CFMM pool ID string to maintain order. */ get cfmmToClUpgrades(): (UserCfmmToClUpgrade | SuccessfulUserCfmmToClUpgrade)[]; get hasUpgradeAvailable(): boolean; protected get osmosisQueries(): import("../queries").OsmosisQueriesImpl; protected get osmosisAccount(): import("../account").OsmosisAccountImpl | undefined; protected get accountAddress(): string; constructor(osmosisChainId: string, queriesStore: IQueriesStore, accountStore: AccountStore<[ OsmosisAccount, CosmosAccount, CosmwasmAccount ]>, derivedDataStore: DerivedDataStore, priceStore: IPriceStore); }