@gearbox-protocol/sdk 14.6.0-next.4 → 14.6.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/abi/compressors/subcompressors/withdrawal/infinifiWithdrawalSubcompressor.js +2 -1
- package/dist/cjs/abi/compressors/subcompressors/withdrawal/kelpLRTWithdrawalSubcompressor.js +2 -1
- package/dist/cjs/abi/compressors/subcompressors/withdrawal/mellowWithdrawalSubcompressor.js +2 -1
- package/dist/cjs/abi/compressors/subcompressors/withdrawal/midasWithdrawalSubcompressor.js +2 -1
- package/dist/cjs/abi/compressors/subcompressors/withdrawal/securitizeRedemptionSubcompressor.js +2 -1
- package/dist/cjs/abi/compressors/subcompressors/withdrawal/upshiftWithdrawalSubcompressor.js +2 -1
- package/dist/cjs/abi/compressors/withdrawalCompressor.js +2 -1
- package/dist/cjs/common-utils/utils/strategies/credit-managers/get-strategy-credit-managers-list-core.js +66 -0
- package/dist/cjs/common-utils/utils/strategies/credit-managers/get-strategy-credit-managers-list.js +7 -18
- package/dist/cjs/common-utils/utils/strategies/credit-managers/get-strategy-credit-managers.js +4 -6
- package/dist/cjs/common-utils/utils/strategies/credit-managers/index.js +2 -0
- package/dist/cjs/common-utils/utils/strategies/lists/get-released-strategies-list-core.js +61 -0
- package/dist/cjs/common-utils/utils/strategies/lists/get-released-strategies-list.js +9 -31
- package/dist/cjs/common-utils/utils/strategies/lists/index.js +3 -1
- package/dist/cjs/common-utils/utils/strategies/strategy-info/get-strategy-info-core.js +104 -0
- package/dist/cjs/common-utils/utils/strategies/strategy-info/get-strategy-info.js +35 -59
- package/dist/cjs/common-utils/utils/strategies/strategy-info/index.js +2 -0
- package/dist/cjs/common-utils/utils/strategies/strategy-state/is-strategy-disabled.js +3 -1
- package/dist/cjs/common-utils/utils/strategies/types/index.js +4 -0
- package/dist/cjs/common-utils/utils/strategies/types/legacy-strategy-data-source.js +62 -0
- package/dist/cjs/common-utils/utils/strategies/types/strategy-data-source.js +16 -0
- package/dist/cjs/plugins/apy/ApyPlugin.js +65 -0
- package/dist/cjs/plugins/apy/strategy-data-source.js +176 -0
- package/dist/esm/abi/compressors/subcompressors/withdrawal/infinifiWithdrawalSubcompressor.js +2 -1
- package/dist/esm/abi/compressors/subcompressors/withdrawal/kelpLRTWithdrawalSubcompressor.js +2 -1
- package/dist/esm/abi/compressors/subcompressors/withdrawal/mellowWithdrawalSubcompressor.js +2 -1
- package/dist/esm/abi/compressors/subcompressors/withdrawal/midasWithdrawalSubcompressor.js +2 -1
- package/dist/esm/abi/compressors/subcompressors/withdrawal/securitizeRedemptionSubcompressor.js +2 -1
- package/dist/esm/abi/compressors/subcompressors/withdrawal/upshiftWithdrawalSubcompressor.js +2 -1
- package/dist/esm/abi/compressors/withdrawalCompressor.js +2 -1
- package/dist/esm/common-utils/utils/strategies/credit-managers/get-strategy-credit-managers-list-core.js +42 -0
- package/dist/esm/common-utils/utils/strategies/credit-managers/get-strategy-credit-managers-list.js +7 -18
- package/dist/esm/common-utils/utils/strategies/credit-managers/get-strategy-credit-managers.js +4 -6
- package/dist/esm/common-utils/utils/strategies/credit-managers/index.js +1 -0
- package/dist/esm/common-utils/utils/strategies/lists/get-released-strategies-list-core.js +37 -0
- package/dist/esm/common-utils/utils/strategies/lists/get-released-strategies-list.js +9 -31
- package/dist/esm/common-utils/utils/strategies/lists/index.js +1 -0
- package/dist/esm/common-utils/utils/strategies/strategy-info/get-strategy-info-core.js +80 -0
- package/dist/esm/common-utils/utils/strategies/strategy-info/get-strategy-info.js +35 -59
- package/dist/esm/common-utils/utils/strategies/strategy-info/index.js +1 -0
- package/dist/esm/common-utils/utils/strategies/strategy-state/is-strategy-disabled.js +3 -1
- package/dist/esm/common-utils/utils/strategies/types/index.js +2 -0
- package/dist/esm/common-utils/utils/strategies/types/legacy-strategy-data-source.js +38 -0
- package/dist/esm/common-utils/utils/strategies/types/strategy-data-source.js +0 -0
- package/dist/esm/plugins/apy/ApyPlugin.js +70 -0
- package/dist/esm/plugins/apy/strategy-data-source.js +159 -0
- package/dist/types/abi/compressors/subcompressors/withdrawal/infinifiWithdrawalSubcompressor.d.ts +4 -0
- package/dist/types/abi/compressors/subcompressors/withdrawal/kelpLRTWithdrawalSubcompressor.d.ts +4 -0
- package/dist/types/abi/compressors/subcompressors/withdrawal/mellowWithdrawalSubcompressor.d.ts +4 -0
- package/dist/types/abi/compressors/subcompressors/withdrawal/midasWithdrawalSubcompressor.d.ts +4 -0
- package/dist/types/abi/compressors/subcompressors/withdrawal/securitizeRedemptionSubcompressor.d.ts +4 -0
- package/dist/types/abi/compressors/subcompressors/withdrawal/upshiftWithdrawalSubcompressor.d.ts +4 -0
- package/dist/types/abi/compressors/withdrawalCompressor.d.ts +4 -0
- package/dist/types/common-utils/utils/strategies/credit-managers/get-strategy-credit-managers-list-core.d.ts +7 -0
- package/dist/types/common-utils/utils/strategies/credit-managers/get-strategy-credit-managers-list.d.ts +2 -2
- package/dist/types/common-utils/utils/strategies/credit-managers/get-strategy-credit-managers.d.ts +3 -3
- package/dist/types/common-utils/utils/strategies/credit-managers/index.d.ts +1 -0
- package/dist/types/common-utils/utils/strategies/credit-managers/is-credit-manager-usable.d.ts +2 -2
- package/dist/types/common-utils/utils/strategies/eligibility/is-strategy-eligible.d.ts +2 -2
- package/dist/types/common-utils/utils/strategies/lists/get-available-and-disabled-strategies.d.ts +2 -2
- package/dist/types/common-utils/utils/strategies/lists/get-available-strategies.d.ts +2 -2
- package/dist/types/common-utils/utils/strategies/lists/get-disabled-strategies.d.ts +2 -2
- package/dist/types/common-utils/utils/strategies/lists/get-released-strategies-list-core.d.ts +9 -0
- package/dist/types/common-utils/utils/strategies/lists/get-released-strategies-list.d.ts +2 -2
- package/dist/types/common-utils/utils/strategies/lists/index.d.ts +1 -0
- package/dist/types/common-utils/utils/strategies/strategy-info/get-strategy-info-core.d.ts +12 -0
- package/dist/types/common-utils/utils/strategies/strategy-info/index.d.ts +1 -0
- package/dist/types/common-utils/utils/strategies/strategy-state/is-strategy-disabled.d.ts +2 -2
- package/dist/types/common-utils/utils/strategies/tokens/is-activated-token.d.ts +2 -2
- package/dist/types/common-utils/utils/strategies/tokens/is-forbidden-token.d.ts +2 -2
- package/dist/types/common-utils/utils/strategies/types/credit-manager-data-legacy.d.ts +3 -7
- package/dist/types/common-utils/utils/strategies/types/index.d.ts +2 -0
- package/dist/types/common-utils/utils/strategies/types/legacy-strategy-data-source.d.ts +4 -0
- package/dist/types/common-utils/utils/strategies/types/sdk-state.d.ts +5 -4
- package/dist/types/common-utils/utils/strategies/types/strategies-cm-list.d.ts +2 -2
- package/dist/types/common-utils/utils/strategies/types/strategy-data-source.d.ts +19 -0
- package/dist/types/common-utils/utils/strategies/types/targetable.d.ts +2 -2
- package/dist/types/permissionless/bindings/compressors/withdrawal-compressor.d.ts +4 -0
- package/dist/types/plugins/apy/ApyPlugin.d.ts +8 -1
- package/dist/types/plugins/apy/strategy-data-source.d.ts +16 -0
- package/dist/types/plugins/apy/types.d.ts +18 -1
- package/package.json +1 -1
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import type {
|
|
2
|
-
export declare function getDisabledStrategies<CM extends
|
|
1
|
+
import type { CuratorFilter, StrategiesCMListByChain, Strategy, StrategyCreditManagerView, StrategyRecord } from "../types.js";
|
|
2
|
+
export declare function getDisabledStrategies<CM extends StrategyCreditManagerView>(list: Strategy[] | undefined | undefined, listCMs: StrategiesCMListByChain<CM> | undefined, curatorFilter: CuratorFilter | undefined): {
|
|
3
3
|
record: StrategyRecord;
|
|
4
4
|
list: Array<Strategy>;
|
|
5
5
|
};
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { AppChains, CuratorFilter, NotValidatedStrategy, Strategy, StrategyDataSource } from "../types.js";
|
|
2
|
+
export interface GetReleasedStrategiesListCoreArgs {
|
|
3
|
+
strategyPayloadsList: NotValidatedStrategy[] | undefined;
|
|
4
|
+
allowedChains: AppChains | undefined;
|
|
5
|
+
source: StrategyDataSource;
|
|
6
|
+
curatorFilter: CuratorFilter;
|
|
7
|
+
showHiddenStrategies: boolean;
|
|
8
|
+
}
|
|
9
|
+
export declare function getReleasedStrategiesListCore({ strategyPayloadsList, allowedChains, source, curatorFilter, showHiddenStrategies, }: GetReleasedStrategiesListCoreArgs): Strategy[] | undefined;
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import type { AppChains,
|
|
2
|
-
export declare function getReleasedStrategiesList<CM extends
|
|
1
|
+
import type { AppChains, CuratorFilter, GearboxSDKFullStateByChain, NotValidatedStrategy, StrategyCreditManagerView } from "../types.js";
|
|
2
|
+
export declare function getReleasedStrategiesList<CM extends StrategyCreditManagerView>(strategyPayloadsList: NotValidatedStrategy[] | undefined, allowedChains: AppChains | undefined, sdkStateByChain: GearboxSDKFullStateByChain<CM> | undefined, curatorFilter: CuratorFilter, showHiddenStrategies: boolean): import("../types.js").Strategy[] | undefined;
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import type { Address } from "viem";
|
|
2
|
+
import type { StrategyDataSource } from "../types/index.js";
|
|
3
|
+
import type { APYListSlice, CreditManagerSlice, StrategyInfoResult, StrategySlice } from "./types.js";
|
|
4
|
+
export interface GetStrategyInfoCoreArgs<ID extends string | number, CM extends CreditManagerSlice> {
|
|
5
|
+
strategy: StrategySlice<ID>;
|
|
6
|
+
creditManagers: Record<Address, CM> | undefined;
|
|
7
|
+
source: StrategyDataSource;
|
|
8
|
+
apyListByNetwork: Record<number, APYListSlice | undefined> | undefined;
|
|
9
|
+
quotaReserve: number;
|
|
10
|
+
slippage: number;
|
|
11
|
+
}
|
|
12
|
+
export declare function getStrategyInfoCore<ID extends string | number, CM extends CreditManagerSlice>({ strategy, creditManagers, source, apyListByNetwork, quotaReserve, slippage, }: GetStrategyInfoCoreArgs<ID, CM>): StrategyInfoResult<CM> | undefined;
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
import type { Address } from "viem";
|
|
2
|
-
import type {
|
|
3
|
-
export declare function isStrategyDisabled(tokenOutAddress: Address, cms: Array<Pick<
|
|
2
|
+
import type { StrategyCreditManagerView } from "../types.js";
|
|
3
|
+
export declare function isStrategyDisabled(tokenOutAddress: Address, cms: Array<Pick<StrategyCreditManagerView, "quotas" | "availableToBorrow" | "minDebt">>): boolean;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { Address } from "viem";
|
|
2
|
-
import type {
|
|
2
|
+
import type { StrategyCreditManagerView } from "../types.js";
|
|
3
3
|
export declare function isActivatedToken({ address, creditManager, }: {
|
|
4
4
|
address: Address;
|
|
5
|
-
creditManager: Pick<
|
|
5
|
+
creditManager: Pick<StrategyCreditManagerView, "liquidationThresholds" | "quotas" | "supportedTokens">;
|
|
6
6
|
}): boolean;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { Address } from "viem";
|
|
2
|
-
import type {
|
|
2
|
+
import type { StrategyCreditManagerView } from "../types.js";
|
|
3
3
|
export declare function isForbiddenToken({ address, creditManager, }: {
|
|
4
4
|
address: Address;
|
|
5
|
-
creditManager: Pick<
|
|
5
|
+
creditManager: Pick<StrategyCreditManagerView, "forbiddenTokens">;
|
|
6
6
|
}): boolean;
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import type { Address } from "viem";
|
|
2
2
|
import type { NetworkType } from "../../../../sdk/index.js";
|
|
3
|
-
import type {
|
|
3
|
+
import type { QuotaSlice } from "../strategy-info/types.js";
|
|
4
|
+
import type { StrategyCreditManagerView } from "./strategy-data-source.js";
|
|
4
5
|
interface AdapterContract {
|
|
5
6
|
address: Address;
|
|
6
7
|
contractType: string;
|
|
@@ -8,24 +9,19 @@ interface AdapterContract {
|
|
|
8
9
|
name: string;
|
|
9
10
|
targetContract: Address;
|
|
10
11
|
}
|
|
11
|
-
export type CreditManagerDataSlice =
|
|
12
|
+
export type CreditManagerDataSlice = StrategyCreditManagerView & {
|
|
12
13
|
readonly network: NetworkType;
|
|
13
14
|
readonly creditFacade: Address;
|
|
14
15
|
readonly creditConfigurator: Address;
|
|
15
|
-
readonly version: number;
|
|
16
16
|
readonly isPaused: boolean;
|
|
17
17
|
readonly forbiddenTokenMask: bigint;
|
|
18
|
-
readonly isBorrowingForbidden: boolean;
|
|
19
18
|
readonly maxEnabledTokensLength: number;
|
|
20
19
|
readonly name: string;
|
|
21
|
-
readonly marketConfigurator: Address;
|
|
22
20
|
readonly feeLiquidation: number;
|
|
23
21
|
readonly liquidationDiscount: number;
|
|
24
22
|
readonly feeLiquidationExpired: number;
|
|
25
23
|
readonly liquidationDiscountExpired: number;
|
|
26
|
-
readonly supportedTokens: Record<Address, true>;
|
|
27
24
|
readonly usableTokens: Record<Address, true>;
|
|
28
|
-
readonly forbiddenTokens: Record<Address, true>;
|
|
29
25
|
readonly adapters: Record<Address, AdapterContract>;
|
|
30
26
|
readonly contractsByAdapter: Record<Address, Address>;
|
|
31
27
|
readonly quotas: Record<Address, QuotaSlice>;
|
|
@@ -3,7 +3,9 @@ export * from "./chains.js";
|
|
|
3
3
|
export * from "./constants.js";
|
|
4
4
|
export * from "./credit-manager-data-legacy.js";
|
|
5
5
|
export * from "./curator-filter.js";
|
|
6
|
+
export * from "./legacy-strategy-data-source.js";
|
|
6
7
|
export * from "./sdk-state.js";
|
|
7
8
|
export * from "./strategies-cm-list.js";
|
|
8
9
|
export * from "./strategy.js";
|
|
10
|
+
export * from "./strategy-data-source.js";
|
|
9
11
|
export * from "./targetable.js";
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import type { PricesByChainSlice } from "../strategy-info/types.js";
|
|
2
|
+
import type { GearboxSDKFullStateByChain } from "./sdk-state.js";
|
|
3
|
+
import type { StrategyCreditManagerView, StrategyDataSource } from "./strategy-data-source.js";
|
|
4
|
+
export declare function createLegacyStrategyDataSource<CM extends StrategyCreditManagerView>(sdkStateByChain: GearboxSDKFullStateByChain<CM> | undefined, pricesByChain?: PricesByChainSlice): StrategyDataSource<CM>;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import type { Address } from "viem";
|
|
2
|
-
import type { TokenSlice } from "../strategy-info/types.js";
|
|
3
|
-
import type {
|
|
4
|
-
export interface GearboxSDKFullState<CM extends
|
|
2
|
+
import type { PoolSlice, TokenSlice } from "../strategy-info/types.js";
|
|
3
|
+
import type { StrategyCreditManagerView } from "./strategy-data-source.js";
|
|
4
|
+
export interface GearboxSDKFullState<CM extends StrategyCreditManagerView> {
|
|
5
5
|
lastSyncBlock?: {
|
|
6
6
|
blockTimestamp_js: number;
|
|
7
7
|
};
|
|
@@ -9,5 +9,6 @@ export interface GearboxSDKFullState<CM extends CreditManagerDataSlice> {
|
|
|
9
9
|
tokenDataList?: Record<Address, TokenSlice>;
|
|
10
10
|
};
|
|
11
11
|
creditManagers?: Record<Address, CM>;
|
|
12
|
+
pools?: Record<Address, PoolSlice>;
|
|
12
13
|
}
|
|
13
|
-
export type GearboxSDKFullStateByChain<CM extends
|
|
14
|
+
export type GearboxSDKFullStateByChain<CM extends StrategyCreditManagerView> = Record<number, GearboxSDKFullState<CM> | undefined>;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { Address } from "viem";
|
|
2
2
|
import type { PartialRecord } from "../../../../sdk/index.js";
|
|
3
|
-
import type { CreditManagerDataSlice } from "./credit-manager-data-legacy.js";
|
|
4
3
|
import type { Strategy } from "./strategy.js";
|
|
5
|
-
|
|
4
|
+
import type { StrategyCreditManagerView } from "./strategy-data-source.js";
|
|
5
|
+
export type StrategiesCMListByChain<CM extends StrategyCreditManagerView> = Record<number, PartialRecord<Strategy["id"], Record<Address, CM>>>;
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import type { Address } from "viem";
|
|
2
|
+
import type { CreditManagerSlice, PoolSlice, TokenSlice } from "../strategy-info/types.js";
|
|
3
|
+
export interface StrategyCreditManagerView extends CreditManagerSlice {
|
|
4
|
+
readonly version: number;
|
|
5
|
+
readonly isBorrowingForbidden: boolean;
|
|
6
|
+
readonly marketConfigurator: Address;
|
|
7
|
+
readonly supportedTokens: Record<Address, true>;
|
|
8
|
+
readonly forbiddenTokens: Record<Address, true>;
|
|
9
|
+
}
|
|
10
|
+
export type StrategyPoolView = PoolSlice;
|
|
11
|
+
export type StrategyTokenView = TokenSlice;
|
|
12
|
+
export interface StrategyDataSource<CM extends StrategyCreditManagerView = StrategyCreditManagerView> {
|
|
13
|
+
hasToken(chainId: number, token: Address): boolean;
|
|
14
|
+
getToken(chainId: number, token: Address): StrategyTokenView | undefined;
|
|
15
|
+
getPool(chainId: number, pool: Address): StrategyPoolView | undefined;
|
|
16
|
+
getCreditManager(chainId: number, creditManager: Address): CM | undefined;
|
|
17
|
+
getMarketPrices(chainId: number, pool: Address): Record<Address, bigint>;
|
|
18
|
+
getLastSyncTimestamp(chainId: number): number | undefined;
|
|
19
|
+
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { Address } from "viem";
|
|
2
|
-
import type {
|
|
2
|
+
import type { StrategyCreditManagerView } from "./strategy-data-source.js";
|
|
3
3
|
export type IsTargetableProps = {
|
|
4
4
|
address: Address;
|
|
5
|
-
creditManager: Pick<
|
|
5
|
+
creditManager: Pick<StrategyCreditManagerView, "forbiddenTokens" | "liquidationThresholds" | "quotas" | "supportedTokens">;
|
|
6
6
|
};
|
|
@@ -165,6 +165,10 @@ declare const abi: readonly [{
|
|
|
165
165
|
readonly name: "withdrawalLength";
|
|
166
166
|
readonly type: "uint256";
|
|
167
167
|
readonly internalType: "uint256";
|
|
168
|
+
}, {
|
|
169
|
+
readonly name: "maxWithdrawals";
|
|
170
|
+
readonly type: "uint256";
|
|
171
|
+
readonly internalType: "uint256";
|
|
168
172
|
}];
|
|
169
173
|
}];
|
|
170
174
|
readonly stateMutability: "view";
|
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
import type { Address } from "viem";
|
|
2
|
+
import type { StrategyCreditManagerView } from "../../common-utils/utils/strategies/types.js";
|
|
2
3
|
import type { IOnchainSDKPlugin } from "../../sdk/index.js";
|
|
3
4
|
import { AddressMap, BasePlugin } from "../../sdk/index.js";
|
|
4
5
|
import type { GetPoolsAPYResult } from "./pool-apy-types.js";
|
|
5
|
-
import type { ApySnapshotState, Pool7DAgoState, Pools7DAgoStateHuman } from "./types.js";
|
|
6
|
+
import type { ApySnapshotState, GetStrategyInfoSnapshotArgs, Pool7DAgoState, Pools7DAgoStateHuman, StrategyInfoSnapshot } from "./types.js";
|
|
6
7
|
export interface ApyPluginState {
|
|
7
8
|
pools7DAgo: Record<Address, Pool7DAgoState>;
|
|
8
9
|
apySnapshot: ApySnapshotState;
|
|
@@ -39,6 +40,12 @@ export declare class ApyPlugin extends BasePlugin<ApyPluginState> implements IOn
|
|
|
39
40
|
* @throws if plugin is not loaded
|
|
40
41
|
*/
|
|
41
42
|
getPoolsAPY(): GetPoolsAPYResult;
|
|
43
|
+
/**
|
|
44
|
+
* Computes a strategy-info snapshot from the current SDK and APY state.
|
|
45
|
+
*
|
|
46
|
+
* @throws if plugin is not loaded
|
|
47
|
+
*/
|
|
48
|
+
getStrategyInfoSnapshot({ slippage, quotaReserve, curatorFilter, strategyPayloadsList, showHiddenStrategies, }: GetStrategyInfoSnapshotArgs): StrategyInfoSnapshot<StrategyCreditManagerView>;
|
|
42
49
|
syncState(): Promise<void>;
|
|
43
50
|
stateHuman(_?: boolean): Pools7DAgoStateHuman[];
|
|
44
51
|
get state(): ApyPluginState;
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import type { Address } from "viem";
|
|
2
|
+
import type { StrategyCreditManagerView, StrategyDataSource, StrategyPoolView, StrategyTokenView } from "../../common-utils/utils/strategies/types.js";
|
|
3
|
+
import { type OnchainSDK } from "../../sdk/index.js";
|
|
4
|
+
export declare class OnchainSdkStrategyDataSource implements StrategyDataSource<StrategyCreditManagerView> {
|
|
5
|
+
private readonly sdk;
|
|
6
|
+
constructor(sdk: OnchainSDK);
|
|
7
|
+
hasToken(chainId: number, token: Address): boolean;
|
|
8
|
+
getToken(chainId: number, token: Address): StrategyTokenView | undefined;
|
|
9
|
+
getPool(chainId: number, pool: Address): StrategyPoolView | undefined;
|
|
10
|
+
getCreditManager(chainId: number, creditManager: Address): StrategyCreditManagerView | undefined;
|
|
11
|
+
getMarketPrices(chainId: number, pool: Address): Record<Address, bigint>;
|
|
12
|
+
getLastSyncTimestamp(chainId: number): number | undefined;
|
|
13
|
+
private toCreditManagerView;
|
|
14
|
+
private findCreditManager;
|
|
15
|
+
private getWrappedNativeToken;
|
|
16
|
+
}
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
import type { Address } from "viem";
|
|
2
|
+
import type { StrategyInfoResult } from "../../common-utils/utils/strategies/strategy-info/types.js";
|
|
3
|
+
import type { CuratorFilter, NotValidatedStrategy, StrategiesCMListByChain, Strategy, StrategyCreditManagerView, StrategyRecord } from "../../common-utils/utils/strategies/types.js";
|
|
2
4
|
import type { ExternalApy, ExtraCollateralAPY, GearAPYDetails, PointsInfo, PoolExtraApy, PoolPointsInfo } from "../../rewards/apy/index.js";
|
|
3
|
-
import type { BaseContractStateHuman } from "../../sdk/index.js";
|
|
5
|
+
import type { BaseContractStateHuman, PartialRecord } from "../../sdk/index.js";
|
|
4
6
|
export interface Pool7DAgoState {
|
|
5
7
|
pool: Address;
|
|
6
8
|
dieselRate: bigint;
|
|
@@ -35,3 +37,18 @@ export interface ApySnapshotState {
|
|
|
35
37
|
gearStats: GearStats | null;
|
|
36
38
|
timestamp: string;
|
|
37
39
|
}
|
|
40
|
+
export interface GetStrategyInfoSnapshotArgs {
|
|
41
|
+
slippage: number;
|
|
42
|
+
quotaReserve: number;
|
|
43
|
+
curatorFilter: CuratorFilter;
|
|
44
|
+
strategyPayloadsList: NotValidatedStrategy[] | undefined;
|
|
45
|
+
showHiddenStrategies: boolean;
|
|
46
|
+
}
|
|
47
|
+
export interface StrategyInfoSnapshot<CM extends StrategyCreditManagerView = StrategyCreditManagerView> {
|
|
48
|
+
availableStrategies: StrategyRecord | null | Error;
|
|
49
|
+
disabledStrategies: StrategyRecord;
|
|
50
|
+
availableList: Strategy[] | null | Error;
|
|
51
|
+
disabledList: Strategy[] | null | Error;
|
|
52
|
+
cmsOfStrategiesByChain: StrategiesCMListByChain<CM> | undefined;
|
|
53
|
+
strategiesInfo: Record<number, PartialRecord<Strategy["id"], StrategyInfoResult<CM>>>;
|
|
54
|
+
}
|