@gearbox-protocol/sdk 15.1.0-next.11 → 15.1.0-next.12
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/dev/mode-parity/compareOpportunities.js +105 -0
- package/dist/cjs/dev/{comparePositions.js → mode-parity/comparePositions.js} +23 -46
- package/dist/cjs/dev/mode-parity/compareRules.js +93 -0
- package/dist/cjs/dev/{fieldDiff.js → mode-parity/fieldDiff.js} +49 -2
- package/dist/cjs/dev/mode-parity/scriptUtils.js +131 -0
- package/dist/cjs/model/compare.schema.js +33 -0
- package/dist/cjs/model/curators.schema.js +2 -1
- package/dist/cjs/model/index.js +5 -0
- package/dist/cjs/model/opportunities.schema.js +13 -12
- package/dist/cjs/model/positions.schema.js +15 -14
- package/dist/cjs/model/primitives.schema.js +2 -1
- package/dist/esm/common-utils/index.js +3 -3
- package/dist/esm/common-utils/utils/index.js +1 -1
- package/dist/esm/dev/AccountOpener.js +1 -1
- package/dist/esm/dev/{compareOpportunities.js → mode-parity/compareOpportunities.js} +14 -46
- package/dist/esm/dev/{comparePositions.js → mode-parity/comparePositions.js} +16 -39
- package/dist/esm/dev/mode-parity/compareRules.js +91 -0
- package/dist/esm/dev/{fieldDiff.js → mode-parity/fieldDiff.js} +49 -3
- package/dist/esm/dev/mode-parity/scriptUtils.js +121 -0
- package/dist/esm/dev/withdrawalUtils.js +1 -1
- package/dist/esm/model/compare.schema.js +29 -0
- package/dist/esm/model/curators.schema.js +2 -1
- package/dist/esm/model/index.js +2 -1
- package/dist/esm/model/opportunities.schema.js +13 -12
- package/dist/esm/model/positions.schema.js +15 -14
- package/dist/esm/model/primitives.schema.js +2 -1
- package/dist/esm/plugins/adapters/contracts/ERC4626AdapterContract.js +1 -1
- package/dist/esm/plugins/apy/ApyPlugin.js +2 -2
- package/dist/esm/preview/simulate/simulatePoolOperation.js +1 -1
- package/dist/esm/preview/trace/extractTransfers.js +1 -1
- package/dist/esm/sdk/accounts/CreditAccountsServiceV310.js +2 -2
- package/dist/esm/sdk/accounts/liquidations/LiquidationsService.js +1 -1
- package/dist/esm/sdk/accounts/withdrawal-compressor/RedemptionLoggerV310Contract.js +1 -1
- package/dist/esm/sdk/accounts/withdrawal-compressor/WithdrawalCompressorV310Contract.js +1 -1
- package/dist/esm/sdk/accounts/withdrawal-compressor/WithdrawalCompressorV311Contract.js +1 -1
- package/dist/esm/sdk/accounts/withdrawal-compressor/WithdrawalCompressorV313Contract.js +1 -1
- package/dist/esm/sdk/base/TokensMeta.js +3 -3
- package/dist/esm/sdk/chain/detectNetwork.js +1 -1
- package/dist/esm/sdk/core/createAddressProvider.js +1 -1
- package/dist/esm/sdk/market/credit/CreditFacadeV310BaseContract.js +1 -1
- package/dist/esm/sdk/market/pool/PoolV310Contract.js +1 -1
- package/dist/esm/sdk/market/zapper/IETHZapperContract.js +1 -1
- package/dist/esm/sdk/market/zapper/ZapperContract.js +1 -1
- package/dist/esm/sdk/pools/PoolService.js +1 -1
- package/dist/esm/sdk/utils/viem/simulateWithPriceUpdates.js +1 -1
- package/dist/types/dev/{compareOpportunities.d.ts → mode-parity/compareOpportunities.d.ts} +5 -5
- package/dist/types/dev/{comparePositions.d.ts → mode-parity/comparePositions.d.ts} +5 -5
- package/dist/types/dev/mode-parity/compareRules.d.ts +33 -0
- package/dist/types/dev/{fieldDiff.d.ts → mode-parity/fieldDiff.d.ts} +47 -5
- package/dist/types/dev/mode-parity/scriptUtils.d.ts +47 -0
- package/dist/types/model/compare.schema.d.ts +47 -0
- package/dist/types/model/index.d.ts +2 -1
- package/package.json +1 -1
- package/dist/cjs/dev/compareOpportunities.js +0 -137
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { ZodAddress } from "../sdk/utils/zod.js";
|
|
2
|
+
import { offchainOnly, tolerance } from "./compare.schema.js";
|
|
2
3
|
import { amountSchema, assetTypeSchema, bpsSchema, chainIdSchema, leverageSchema, timestampSchema, tokenSchema } from "./primitives.schema.js";
|
|
3
4
|
import { curatorSchema } from "./curators.schema.js";
|
|
4
5
|
import { isFilterSet } from "./filters.js";
|
|
@@ -45,9 +46,9 @@ const rewardsSchema = z.discriminatedUnion("kind", [tokenRewardsSchema, pointRew
|
|
|
45
46
|
* {@link ApyBreakdown}
|
|
46
47
|
**/
|
|
47
48
|
const apyBreakdownSchema = z.object({
|
|
48
|
-
totalApy: bpsSchema.optional(),
|
|
49
|
-
organicApy: bpsSchema,
|
|
50
|
-
rewards: z.array(rewardsSchema).optional()
|
|
49
|
+
totalApy: offchainOnly(bpsSchema).optional(),
|
|
50
|
+
organicApy: tolerance(bpsSchema, "bps"),
|
|
51
|
+
rewards: offchainOnly(z.array(rewardsSchema)).optional()
|
|
51
52
|
});
|
|
52
53
|
/**
|
|
53
54
|
* {@link OpportunityBase}
|
|
@@ -70,9 +71,9 @@ const poolOpportunitySchema = z.object({
|
|
|
70
71
|
...opportunityBaseSchema.shape,
|
|
71
72
|
kind: z.literal("pool"),
|
|
72
73
|
pool: ZodAddress(),
|
|
73
|
-
totalSupply: amountSchema,
|
|
74
|
-
availableLiquidity: amountSchema,
|
|
75
|
-
utilization: bpsSchema,
|
|
74
|
+
totalSupply: tolerance(amountSchema, "amount"),
|
|
75
|
+
availableLiquidity: tolerance(amountSchema, "amount"),
|
|
76
|
+
utilization: tolerance(bpsSchema, "bps"),
|
|
76
77
|
supplyApy: apyBreakdownSchema
|
|
77
78
|
});
|
|
78
79
|
/**
|
|
@@ -87,12 +88,12 @@ const strategyOpportunitySchema = z.object({
|
|
|
87
88
|
liquidationPremium: bpsSchema,
|
|
88
89
|
liquidationFee: bpsSchema,
|
|
89
90
|
expirationDate: timestampSchema.nullable(),
|
|
90
|
-
collateralApy: apyBreakdownSchema.optional(),
|
|
91
|
-
maxLeverageApy: apyBreakdownSchema.optional(),
|
|
92
|
-
borrowApy: bpsSchema.optional(),
|
|
93
|
-
additionalBorrowApy: bpsSchema.optional(),
|
|
94
|
-
totalValue: amountSchema.optional(),
|
|
95
|
-
utilization: bpsSchema.optional(),
|
|
91
|
+
collateralApy: offchainOnly(apyBreakdownSchema).optional(),
|
|
92
|
+
maxLeverageApy: offchainOnly(apyBreakdownSchema).optional(),
|
|
93
|
+
borrowApy: tolerance(bpsSchema, "bps").optional(),
|
|
94
|
+
additionalBorrowApy: tolerance(bpsSchema, "bps").optional(),
|
|
95
|
+
totalValue: offchainOnly(amountSchema).optional(),
|
|
96
|
+
utilization: offchainOnly(bpsSchema).optional(),
|
|
96
97
|
maxBorrowAmount: amountSchema,
|
|
97
98
|
maxLeverage: leverageSchema
|
|
98
99
|
});
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { ZodAddress, ZodBigInt, ZodHex } from "../sdk/utils/zod.js";
|
|
2
|
+
import { offchainOnly, onchainOnly, tolerance } from "./compare.schema.js";
|
|
2
3
|
import { assetTypeSchema, bpsSchema, chainIdSchema, leverageSchema, timestampSchema, tokenAmountSchema, tokenSchema } from "./primitives.schema.js";
|
|
3
4
|
import { isFilterSet } from "./filters.js";
|
|
4
5
|
import { booleanParamSchema, encodeFlag, filterable } from "./filters.schema.js";
|
|
@@ -55,8 +56,8 @@ const pnlBreakdownSchema = z.object({
|
|
|
55
56
|
* {@link PositionCollateral}
|
|
56
57
|
**/
|
|
57
58
|
const positionCollateralSchema = z.object({
|
|
58
|
-
collateral: tokenAmountSchema,
|
|
59
|
-
quota: tokenAmountSchema,
|
|
59
|
+
collateral: tolerance(tokenAmountSchema, "amount"),
|
|
60
|
+
quota: tolerance(tokenAmountSchema, "amount"),
|
|
60
61
|
withdrawals: z.array(delayedReceivedAssetSchema)
|
|
61
62
|
});
|
|
62
63
|
/**
|
|
@@ -67,9 +68,9 @@ const poolPositionSchema = z.object({
|
|
|
67
68
|
name: z.string(),
|
|
68
69
|
chainId: chainIdSchema,
|
|
69
70
|
pool: ZodAddress(),
|
|
70
|
-
netValue: tokenAmountSchema,
|
|
71
|
+
netValue: tolerance(tokenAmountSchema, "amount"),
|
|
71
72
|
apy: apyBreakdownSchema,
|
|
72
|
-
pnl: pnlBreakdownSchema.optional()
|
|
73
|
+
pnl: offchainOnly(pnlBreakdownSchema).optional()
|
|
73
74
|
});
|
|
74
75
|
/**
|
|
75
76
|
* {@link BorrowRateBreakdown}
|
|
@@ -90,16 +91,16 @@ const strategyPositionSchema = z.object({
|
|
|
90
91
|
creditManager: ZodAddress(),
|
|
91
92
|
creditAccount: ZodAddress(),
|
|
92
93
|
targetCollateral: tokenSchema.nullable(),
|
|
93
|
-
leverage: leverageSchema,
|
|
94
|
-
borrowApy: bpsSchema,
|
|
95
|
-
netApy: apyBreakdownSchema.optional(),
|
|
96
|
-
totalDebt: tokenAmountSchema,
|
|
97
|
-
totalValue: tokenAmountSchema,
|
|
98
|
-
healthFactor: bpsSchema,
|
|
99
|
-
borrowRate: borrowRateBreakdownSchema.optional(),
|
|
100
|
-
timeToLiquidation: ZodBigInt().nullable().optional(),
|
|
101
|
-
liquidationPrice: ZodBigInt().nullable().optional(),
|
|
102
|
-
pnl: pnlBreakdownSchema.optional(),
|
|
94
|
+
leverage: tolerance(leverageSchema, "float"),
|
|
95
|
+
borrowApy: tolerance(bpsSchema, "bps"),
|
|
96
|
+
netApy: offchainOnly(apyBreakdownSchema).optional(),
|
|
97
|
+
totalDebt: tolerance(tokenAmountSchema, "amount"),
|
|
98
|
+
totalValue: tolerance(tokenAmountSchema, "amount"),
|
|
99
|
+
healthFactor: tolerance(bpsSchema, "bps"),
|
|
100
|
+
borrowRate: onchainOnly(borrowRateBreakdownSchema).optional(),
|
|
101
|
+
timeToLiquidation: onchainOnly(ZodBigInt().nullable()).optional(),
|
|
102
|
+
liquidationPrice: onchainOnly(ZodBigInt().nullable()).optional(),
|
|
103
|
+
pnl: offchainOnly(pnlBreakdownSchema).optional(),
|
|
103
104
|
collaterals: z.array(positionCollateralSchema)
|
|
104
105
|
});
|
|
105
106
|
/**
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { ZodAddress, ZodBigInt, ZodHex } from "../sdk/utils/zod.js";
|
|
2
|
+
import { tolerance } from "./compare.schema.js";
|
|
2
3
|
import { z } from "zod/v4";
|
|
3
4
|
//#region src/model/primitives.schema.ts
|
|
4
5
|
/**
|
|
@@ -39,7 +40,7 @@ const leverageSchema = z.number().nonnegative();
|
|
|
39
40
|
**/
|
|
40
41
|
const amountSchema = z.object({
|
|
41
42
|
value: ZodBigInt(),
|
|
42
|
-
valueUsd: z.number().nullable()
|
|
43
|
+
valueUsd: tolerance(z.number().nullable(), "usd")
|
|
43
44
|
});
|
|
44
45
|
/**
|
|
45
46
|
* {@link Token}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { MissingSerializedParamsError } from "../../../sdk/base/errors.js";
|
|
2
1
|
import { ierc4626AdapterAbi } from "../../../abi/ierc4626Adapter.js";
|
|
2
|
+
import { MissingSerializedParamsError } from "../../../sdk/base/errors.js";
|
|
3
3
|
import "../../../sdk/index.js";
|
|
4
4
|
import { fnSigToName, swapFromTransfers } from "../transferHelpers.js";
|
|
5
5
|
import { AbstractAdapterContract } from "./AbstractAdapter.js";
|
|
@@ -1,5 +1,3 @@
|
|
|
1
|
-
import { AxiosCache } from "../../common-utils/axios-cache/AxiosCache.js";
|
|
2
|
-
import "../../common-utils/axios-cache/index.js";
|
|
3
1
|
import { AddressMap } from "../../sdk/utils/AddressMap.js";
|
|
4
2
|
import { AP_MARKET_COMPRESSOR } from "../../sdk/constants/address-provider.js";
|
|
5
3
|
import { PERCENTAGE_DECIMALS } from "../../sdk/constants/math.js";
|
|
@@ -10,6 +8,8 @@ import { hexEq } from "../../sdk/utils/hex.js";
|
|
|
10
8
|
import { marketCompressorAbi } from "../../abi/compressors/marketCompressor.js";
|
|
11
9
|
import { BasePlugin } from "../../sdk/plugins/BasePlugin.js";
|
|
12
10
|
import "../../sdk/index.js";
|
|
11
|
+
import { AxiosCache } from "../../common-utils/axios-cache/AxiosCache.js";
|
|
12
|
+
import "../../common-utils/axios-cache/index.js";
|
|
13
13
|
import { getStrategyCreditManagersListCore } from "../../common-utils/utils/strategies/credit-managers/get-strategy-credit-managers-list-core.js";
|
|
14
14
|
import { getAvailableAndDisabledStrategies } from "../../common-utils/utils/strategies/lists/get-available-and-disabled-strategies.js";
|
|
15
15
|
import { getReleasedStrategiesListCore } from "../../common-utils/utils/strategies/lists/get-released-strategies-list-core.js";
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { iPoolV310Abi } from "../../abi/310/generated.js";
|
|
2
1
|
import { iZapperAbi } from "../../abi/iZapper.js";
|
|
2
|
+
import { iPoolV310Abi } from "../../abi/310/generated.js";
|
|
3
3
|
import { asPreviewSimulationError } from "./errors.js";
|
|
4
4
|
//#region src/preview/simulate/simulatePoolOperation.ts
|
|
5
5
|
function previewRead(operation) {
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
+
import { ierc20Abi } from "../../abi/iERC20.js";
|
|
1
2
|
import { iCreditFacadeV310Abi } from "../../abi/310/generated.js";
|
|
2
3
|
import { AddressMap } from "../../sdk/utils/AddressMap.js";
|
|
3
|
-
import { ierc20Abi } from "../../abi/iERC20.js";
|
|
4
4
|
import "../../sdk/index.js";
|
|
5
5
|
import { UnexpectedFacadeEventOrderError } from "./errors.js";
|
|
6
6
|
import { getAddress, isAddressEqual, parseEventLogs } from "viem";
|
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
import { iBaseRewardPoolAbi } from "../../abi/iBaseRewardPool.js";
|
|
2
|
+
import { ierc4626AdapterAbi } from "../../abi/ierc4626Adapter.js";
|
|
1
3
|
import { AP_REWARDS_COMPRESSOR } from "../constants/address-provider.js";
|
|
2
4
|
import { ADDRESS_0X0 } from "../constants/addresses.js";
|
|
3
5
|
import { MAX_UINT256 } from "../constants/math.js";
|
|
@@ -8,8 +10,6 @@ import "../base/index.js";
|
|
|
8
10
|
import { AccountBotsService } from "./bots/AccountBotsService.js";
|
|
9
11
|
import "./bots/index.js";
|
|
10
12
|
import { rewardsCompressorAbi } from "../../abi/compressors/rewardsCompressor.js";
|
|
11
|
-
import { iBaseRewardPoolAbi } from "../../abi/iBaseRewardPool.js";
|
|
12
|
-
import { ierc4626AdapterAbi } from "../../abi/ierc4626Adapter.js";
|
|
13
13
|
import { expectedBalanceDeltas } from "../market/credit/expectedBalanceDeltas.js";
|
|
14
14
|
import "../market/index.js";
|
|
15
15
|
import { CreditAccountCompressor } from "./credit-account-compressor/CreditAccountCompressor.js";
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { iLiquidationCompressorV313Abi } from "../../../abi/ILiquidationCompressorV313.js";
|
|
1
2
|
import { AddressSet } from "../../utils/AddressSet.js";
|
|
2
3
|
import { bytes32ToString } from "../../utils/bytes32ToString.js";
|
|
3
4
|
import { ADDRESS_0X0 } from "../../constants/addresses.js";
|
|
@@ -19,7 +20,6 @@ import { SecuritizeLiquidatorContract } from "../../market/rwa/securitize/Securi
|
|
|
19
20
|
import "../../market/rwa/securitize/index.js";
|
|
20
21
|
import "../../market/index.js";
|
|
21
22
|
import { LIQUIDATION_APPROVAL_BUFFER, LIQUIDATION_COMPRESSOR_V313_ADDRESS } from "./constants.js";
|
|
22
|
-
import { iLiquidationCompressorV313Abi } from "../../../abi/ILiquidationCompressorV313.js";
|
|
23
23
|
//#region src/sdk/accounts/liquidations/LiquidationsService.ts
|
|
24
24
|
/**
|
|
25
25
|
* Service for discovering liquidatable credit accounts and previewing manual
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
+
import { iRedemptionLoggerV310Abi } from "../../../abi/iRedemptionLoggerV310.js";
|
|
1
2
|
import { BaseContract } from "../../base/BaseContract.js";
|
|
2
3
|
import "../../base/index.js";
|
|
3
4
|
import { decodeDelayedIntent } from "./intent-codec.js";
|
|
4
|
-
import { iRedemptionLoggerV310Abi } from "../../../abi/iRedemptionLoggerV310.js";
|
|
5
5
|
import { InvalidDelayedIntentError } from "./errors.js";
|
|
6
6
|
//#region src/sdk/accounts/withdrawal-compressor/RedemptionLoggerV310Contract.ts
|
|
7
7
|
const abi = iRedemptionLoggerV310Abi;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { AbstractWithdrawalCompressorContract } from "./AbstractWithdrawalCompressorContract.js";
|
|
2
1
|
import { iWithdrawalCompressorV310Abi } from "../../../abi/IWithdrawalCompressorV310.js";
|
|
2
|
+
import { AbstractWithdrawalCompressorContract } from "./AbstractWithdrawalCompressorContract.js";
|
|
3
3
|
//#region src/sdk/accounts/withdrawal-compressor/WithdrawalCompressorV310Contract.ts
|
|
4
4
|
const abi = iWithdrawalCompressorV310Abi;
|
|
5
5
|
/**
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { AbstractWithdrawalCompressorContract } from "./AbstractWithdrawalCompressorContract.js";
|
|
2
1
|
import { iWithdrawalCompressorV311Abi } from "../../../abi/IWithdrawalCompressorV311.js";
|
|
2
|
+
import { AbstractWithdrawalCompressorContract } from "./AbstractWithdrawalCompressorContract.js";
|
|
3
3
|
//#region src/sdk/accounts/withdrawal-compressor/WithdrawalCompressorV311Contract.ts
|
|
4
4
|
const abi = iWithdrawalCompressorV311Abi;
|
|
5
5
|
/**
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
+
import { iWithdrawalCompressorV313Abi } from "../../../abi/IWithdrawalCompressorV313.js";
|
|
1
2
|
import { encodeDelayedIntent } from "./intent-codec.js";
|
|
2
3
|
import { AbstractWithdrawalCompressorContract, iCreditAccountAbi, toClaimableWithdrawal, toPendingWithdrawal, toRequestableWithdrawal } from "./AbstractWithdrawalCompressorContract.js";
|
|
3
|
-
import { iWithdrawalCompressorV313Abi } from "../../../abi/IWithdrawalCompressorV313.js";
|
|
4
4
|
import { toWithdrawalStatus } from "./types.js";
|
|
5
5
|
//#region src/sdk/accounts/withdrawal-compressor/WithdrawalCompressorV313Contract.ts
|
|
6
6
|
const abi = iWithdrawalCompressorV313Abi;
|
|
@@ -1,12 +1,12 @@
|
|
|
1
|
+
import { iExpirableAbi } from "../../abi/iExpirable.js";
|
|
2
|
+
import { iStateSerializerAbi } from "../../abi/iStateSerializer.js";
|
|
3
|
+
import { iVersionAbi } from "../../abi/iVersion.js";
|
|
1
4
|
import { AddressMap } from "../utils/AddressMap.js";
|
|
2
5
|
import { AddressSet } from "../utils/AddressSet.js";
|
|
3
6
|
import { bytes32ToString } from "../utils/bytes32ToString.js";
|
|
4
7
|
import { getAssetType } from "../chain/chains.js";
|
|
5
8
|
import { formatBN } from "../utils/formatter.js";
|
|
6
9
|
import "../utils/index.js";
|
|
7
|
-
import { iExpirableAbi } from "../../abi/iExpirable.js";
|
|
8
|
-
import { iStateSerializerAbi } from "../../abi/iStateSerializer.js";
|
|
9
|
-
import { iVersionAbi } from "../../abi/iVersion.js";
|
|
10
10
|
import { executeMulticallBatches } from "../utils/viem/executeMulticallBatches.js";
|
|
11
11
|
//#region src/sdk/base/TokensMeta.ts
|
|
12
12
|
/**
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
+
import { iVersionAbi } from "../../abi/iVersion.js";
|
|
1
2
|
import { AP_MARKET_COMPRESSOR, AP_PRICE_FEED_COMPRESSOR } from "../constants/address-provider.js";
|
|
2
3
|
import { isV310 } from "../constants/versions.js";
|
|
3
4
|
import "../constants/index.js";
|
|
4
5
|
import { hexEq } from "../utils/hex.js";
|
|
5
|
-
import { iVersionAbi } from "../../abi/iVersion.js";
|
|
6
6
|
import { AddressProviderV310Contract } from "./AddressProviderV310Contract.js";
|
|
7
7
|
//#region src/sdk/core/createAddressProvider.ts
|
|
8
8
|
const OVERRIDE_ADDRESSES = { Mainnet: {
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
+
import { iPausableAbi } from "../../../abi/iPausable.js";
|
|
1
2
|
import { iCreditFacadeMulticallV310Abi, iCreditFacadeV310Abi } from "../../../abi/310/generated.js";
|
|
2
3
|
import { BaseContract } from "../../base/BaseContract.js";
|
|
3
4
|
import "../../base/index.js";
|
|
4
|
-
import { iPausableAbi } from "../../../abi/iPausable.js";
|
|
5
5
|
//#region src/sdk/market/credit/CreditFacadeV310BaseContract.ts
|
|
6
6
|
const abi = [
|
|
7
7
|
...iCreditFacadeV310Abi,
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { iPausableAbi } from "../../../abi/iPausable.js";
|
|
1
2
|
import { iPoolV310Abi } from "../../../abi/310/generated.js";
|
|
2
3
|
import { AddressMap } from "../../utils/AddressMap.js";
|
|
3
4
|
import { RAY } from "../../constants/math.js";
|
|
@@ -6,7 +7,6 @@ import { formatBN, formatBNvalue, percentFmt } from "../../utils/formatter.js";
|
|
|
6
7
|
import "../../utils/index.js";
|
|
7
8
|
import { BaseContract } from "../../base/BaseContract.js";
|
|
8
9
|
import "../../base/index.js";
|
|
9
|
-
import { iPausableAbi } from "../../../abi/iPausable.js";
|
|
10
10
|
import { calcUtilization } from "../math.js";
|
|
11
11
|
//#region src/sdk/market/pool/PoolV310Contract.ts
|
|
12
12
|
const abi = [...iPoolV310Abi, ...iPausableAbi];
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { ZapperContract } from "./ZapperContract.js";
|
|
2
1
|
import { iethZapperAbi } from "../../../abi/iETHZapper.js";
|
|
2
|
+
import { ZapperContract } from "./ZapperContract.js";
|
|
3
3
|
//#region src/sdk/market/zapper/IETHZapperContract.ts
|
|
4
4
|
const abi = iethZapperAbi;
|
|
5
5
|
var IETHZapperContract = class extends ZapperContract {
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
+
import { iZapperAbi } from "../../../abi/iZapper.js";
|
|
1
2
|
import { BaseContract } from "../../base/BaseContract.js";
|
|
2
3
|
import "../../base/index.js";
|
|
3
|
-
import { iZapperAbi } from "../../../abi/iZapper.js";
|
|
4
4
|
import { UnsupportedZapperFunctionError } from "./errors.js";
|
|
5
5
|
//#region src/sdk/market/zapper/ZapperContract.ts
|
|
6
6
|
/**
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { AddressSet } from "../utils/AddressSet.js";
|
|
2
1
|
import { ierc20Abi } from "../../abi/iERC20.js";
|
|
2
|
+
import { AddressSet } from "../utils/AddressSet.js";
|
|
3
3
|
import "../constants/addresses.js";
|
|
4
4
|
import { PERCENTAGE_FACTOR, RAY } from "../constants/math.js";
|
|
5
5
|
import "../constants/index.js";
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { errorAbis } from "../../../abi/errors.js";
|
|
2
|
-
import { generateCastTraceCall } from "./cast.js";
|
|
3
2
|
import { iUpdatablePriceFeedAbi } from "../../../abi/iUpdatablePriceFeed.js";
|
|
3
|
+
import { generateCastTraceCall } from "./cast.js";
|
|
4
4
|
import { simulateMulticall } from "./simulateMulticall.js";
|
|
5
5
|
import { BaseError, CallExecutionError, ContractFunctionRevertedError, decodeFunctionData, decodeFunctionResult, encodeFunctionData, parseAbi } from "viem";
|
|
6
6
|
import { getAction, parseAccount } from "viem/utils";
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import { ChainId } from "
|
|
2
|
-
import { Opportunity, OpportunityId, OpportunityKind } from "
|
|
3
|
-
import { ChainMetadata, DataResponse } from "
|
|
4
|
-
import "
|
|
1
|
+
import { ChainId } from "../../model/primitives.js";
|
|
2
|
+
import { Opportunity, OpportunityId, OpportunityKind } from "../../model/opportunities.js";
|
|
3
|
+
import { ChainMetadata, DataResponse } from "../../model/response.js";
|
|
4
|
+
import "../../model/index.js";
|
|
5
5
|
import { ChainCompareCounts, CompareCounts, DiffKind, DiffPathCount, ExpectedDiffReason, FieldDiff } from "./fieldDiff.js";
|
|
6
6
|
import { Address } from "viem";
|
|
7
|
-
//#region src/dev/compareOpportunities.d.ts
|
|
7
|
+
//#region src/dev/mode-parity/compareOpportunities.d.ts
|
|
8
8
|
/**
|
|
9
9
|
* Enough of an opportunity to identify it in a report without carrying the
|
|
10
10
|
* whole row.
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import { ChainId } from "
|
|
2
|
-
import { Position, PositionId, PositionKind } from "
|
|
3
|
-
import { ChainMetadata, DataResponse } from "
|
|
4
|
-
import "
|
|
1
|
+
import { ChainId } from "../../model/primitives.js";
|
|
2
|
+
import { Position, PositionId, PositionKind } from "../../model/positions.js";
|
|
3
|
+
import { ChainMetadata, DataResponse } from "../../model/response.js";
|
|
4
|
+
import "../../model/index.js";
|
|
5
5
|
import { ChainCompareCounts, CompareCounts, DiffPathCount, FieldDiff } from "./fieldDiff.js";
|
|
6
6
|
import { Address } from "viem";
|
|
7
|
-
//#region src/dev/comparePositions.d.ts
|
|
7
|
+
//#region src/dev/mode-parity/comparePositions.d.ts
|
|
8
8
|
/**
|
|
9
9
|
* Enough of a position to identify it in a report without carrying the whole
|
|
10
10
|
* row.
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import { CompareTag } from "../../model/compare.schema.js";
|
|
2
|
+
import { FieldDiff } from "./fieldDiff.js";
|
|
3
|
+
import { z } from "zod/v4";
|
|
4
|
+
//#region src/dev/mode-parity/compareRules.d.ts
|
|
5
|
+
/**
|
|
6
|
+
* Collapsed-path → tag map compiled from a zod schema, e.g.
|
|
7
|
+
* `apy.totalApy` → `"offchainOnly"`, `totalDebt.value` → `{ tolerance: amount }`.
|
|
8
|
+
**/
|
|
9
|
+
type CompareRuleMap = Map<string, CompareTag>;
|
|
10
|
+
/**
|
|
11
|
+
* Walks a schema and records every field that carries compare metadata.
|
|
12
|
+
*
|
|
13
|
+
* `"amount"` on an object (an Amount / TokenAmount) is stored
|
|
14
|
+
* at `<path>.value`; every other tag is stored at the field's own path.
|
|
15
|
+
**/
|
|
16
|
+
declare function compileCompareRules(schema: z.ZodType): CompareRuleMap;
|
|
17
|
+
/**
|
|
18
|
+
* Rules compiled for each row kind, e.g. `"pool"` vs `"strategy"`.
|
|
19
|
+
**/
|
|
20
|
+
type CompareRulesByKind = Record<string, CompareRuleMap>;
|
|
21
|
+
/**
|
|
22
|
+
* Tags one field diff using the rules compiled for its row kind.
|
|
23
|
+
**/
|
|
24
|
+
type TagDiff = (diff: FieldDiff, kind: string) => FieldDiff;
|
|
25
|
+
/**
|
|
26
|
+
* Tags diffs using the rules compiled for each row kind.
|
|
27
|
+
*
|
|
28
|
+
* Mode tags match the path or anything nested under it. Tolerance tags match
|
|
29
|
+
* the path exactly and dispatch on {@link CompareTolerance}.
|
|
30
|
+
**/
|
|
31
|
+
declare function makeTagDiff(rulesByKind: CompareRulesByKind): TagDiff;
|
|
32
|
+
//#endregion
|
|
33
|
+
export { CompareRuleMap, CompareRulesByKind, TagDiff, compileCompareRules, makeTagDiff };
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { ChainId } from "
|
|
2
|
-
import "
|
|
3
|
-
//#region src/dev/fieldDiff.d.ts
|
|
1
|
+
import { ChainId } from "../../model/primitives.js";
|
|
2
|
+
import "../../model/index.js";
|
|
3
|
+
//#region src/dev/mode-parity/fieldDiff.d.ts
|
|
4
4
|
/**
|
|
5
5
|
* What kind of disagreement a {@link FieldDiff} describes, so that a reader can
|
|
6
6
|
* bucket the report without re-deriving it from the values.
|
|
@@ -45,6 +45,33 @@ interface FieldDiff {
|
|
|
45
45
|
expected?: true;
|
|
46
46
|
reason?: ExpectedDiffReason;
|
|
47
47
|
}
|
|
48
|
+
/**
|
|
49
|
+
* The largest numeric disagreement seen for one collapsed field path, on
|
|
50
|
+
* either the unexpected or the expected side.
|
|
51
|
+
**/
|
|
52
|
+
interface WorstDiff {
|
|
53
|
+
/**
|
|
54
|
+
* Entity id (position/opportunity id) with the biggest relative difference.
|
|
55
|
+
**/
|
|
56
|
+
id: string;
|
|
57
|
+
/**
|
|
58
|
+
* Uncollapsed path, so the exact array element is named.
|
|
59
|
+
**/
|
|
60
|
+
path: string;
|
|
61
|
+
/**
|
|
62
|
+
* Relative difference in bps.
|
|
63
|
+
**/
|
|
64
|
+
bps: number;
|
|
65
|
+
onchain: unknown;
|
|
66
|
+
offchain: unknown;
|
|
67
|
+
}
|
|
68
|
+
/**
|
|
69
|
+
* One field disagreement together with the matched row it belongs to.
|
|
70
|
+
**/
|
|
71
|
+
interface EntityFieldDiff {
|
|
72
|
+
id: string;
|
|
73
|
+
diff: FieldDiff;
|
|
74
|
+
}
|
|
48
75
|
/**
|
|
49
76
|
* How often one field disagreed across all matched rows, with array keys
|
|
50
77
|
* collapsed, e.g. `collateralTokens[].symbol`.
|
|
@@ -55,6 +82,15 @@ interface DiffPathCount {
|
|
|
55
82
|
count: number;
|
|
56
83
|
expected: number;
|
|
57
84
|
unexpected: number;
|
|
85
|
+
/**
|
|
86
|
+
* Largest unexpected numeric disagreement, when any unexpected diff of this
|
|
87
|
+
* path yields a relative bps value.
|
|
88
|
+
**/
|
|
89
|
+
worstUnexpected?: WorstDiff;
|
|
90
|
+
/**
|
|
91
|
+
* Largest expected numeric disagreement, see {@link worstUnexpected}.
|
|
92
|
+
**/
|
|
93
|
+
worstExpected?: WorstDiff;
|
|
58
94
|
}
|
|
59
95
|
/**
|
|
60
96
|
* Counts of one chain, one wallet, or of the whole report when those ids are
|
|
@@ -127,7 +163,7 @@ declare function withExpected(diff: FieldDiff, reason: ExpectedDiffReason): Fiel
|
|
|
127
163
|
* field of a hundred collateral tokens counts as one path. Sorted so the
|
|
128
164
|
* unexpected disagreements come first.
|
|
129
165
|
**/
|
|
130
|
-
declare function countPaths(diffs: Iterable<
|
|
166
|
+
declare function countPaths(diffs: Iterable<EntityFieldDiff>): DiffPathCount[];
|
|
131
167
|
/**
|
|
132
168
|
* Collapse `collateralTokens[0xa0b8...].symbol` to `collateralTokens[].symbol`.
|
|
133
169
|
**/
|
|
@@ -161,7 +197,13 @@ declare function withinRelative(onchain: number | undefined, offchain: number |
|
|
|
161
197
|
**/
|
|
162
198
|
declare function withinRelativeBigint(onchain: bigint, offchain: bigint, epsilon: number): boolean;
|
|
163
199
|
declare function asFiniteNumber(value: unknown): number | undefined;
|
|
200
|
+
/**
|
|
201
|
+
* Relative difference of two numbers or bigints, in bps:
|
|
202
|
+
* `|a − b| / max(|a|, |b|) * 10_000`. `undefined` when the values are not
|
|
203
|
+
* a comparable pair of finite numbers or of bigints.
|
|
204
|
+
**/
|
|
205
|
+
declare function relativeDiffBps(onchain: unknown, offchain: unknown): number | undefined;
|
|
164
206
|
declare function union(left: string[], right: string[]): string[];
|
|
165
207
|
declare function isRecord(value: unknown): value is Record<string, unknown>;
|
|
166
208
|
//#endregion
|
|
167
|
-
export { AMOUNT_RELATIVE_EPSILON, ArrayElementKey, BPS_ABSOLUTE_EPSILON, ChainCompareCounts, CompareCounts, DiffKind, DiffOptions, DiffPathCount, ExpectedDiffReason, FieldDiff, USD_RELATIVE_EPSILON, asFiniteNumber, collapseArrayKeys, countPaths, diffObjects, diffValue, isAmountWithinTolerance, isBpsWithinTolerance, isRecord, isUsdWithinTolerance, toCompareCounts, union, withExpected, withinRelative, withinRelativeBigint };
|
|
209
|
+
export { AMOUNT_RELATIVE_EPSILON, ArrayElementKey, BPS_ABSOLUTE_EPSILON, ChainCompareCounts, CompareCounts, DiffKind, DiffOptions, DiffPathCount, EntityFieldDiff, ExpectedDiffReason, FieldDiff, USD_RELATIVE_EPSILON, WorstDiff, asFiniteNumber, collapseArrayKeys, countPaths, diffObjects, diffValue, isAmountWithinTolerance, isBpsWithinTolerance, isRecord, isUsdWithinTolerance, relativeDiffBps, toCompareCounts, union, withExpected, withinRelative, withinRelativeBigint };
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import { ChainMetadata } from "../../model/response.js";
|
|
2
|
+
import "../../model/index.js";
|
|
3
|
+
import { ChainCompareCounts, CompareCounts, DiffPathCount } from "./fieldDiff.js";
|
|
4
|
+
import { Logger } from "pino";
|
|
5
|
+
//#region src/dev/mode-parity/scriptUtils.d.ts
|
|
6
|
+
/**
|
|
7
|
+
* Chains the compare scripts attach to.
|
|
8
|
+
**/
|
|
9
|
+
type ComparedNetwork = "Mainnet" | "Monad" | "Plasma" | "Somnia" | "Etherlink";
|
|
10
|
+
declare const NETWORKS: ComparedNetwork[];
|
|
11
|
+
declare const BACKEND_URL: string;
|
|
12
|
+
declare const TIMEOUT = 480000;
|
|
13
|
+
/**
|
|
14
|
+
* Totals both compare reports print.
|
|
15
|
+
**/
|
|
16
|
+
interface PrintableCompareSummary extends CompareCounts {
|
|
17
|
+
byChain: ChainCompareCounts[];
|
|
18
|
+
diffsByPath: DiffPathCount[];
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* Per-source chain metadata both compare reports carry.
|
|
22
|
+
**/
|
|
23
|
+
interface PrintableCompareReport {
|
|
24
|
+
backendUrl: string;
|
|
25
|
+
summary: PrintableCompareSummary;
|
|
26
|
+
onchainChains: ChainMetadata[];
|
|
27
|
+
offchainChains: ChainMetadata[];
|
|
28
|
+
}
|
|
29
|
+
declare function requireEnv(name: string): string;
|
|
30
|
+
declare function rpcUrls(): Record<ComparedNetwork, string>;
|
|
31
|
+
declare function createLogger(): Logger;
|
|
32
|
+
declare function errorMessage(error: unknown): string;
|
|
33
|
+
/**
|
|
34
|
+
* Runs `fn` over `items` with at most `concurrency` in flight.
|
|
35
|
+
**/
|
|
36
|
+
declare function mapPool<T>(items: readonly T[], concurrency: number, fn: (item: T) => Promise<void>): Promise<void>;
|
|
37
|
+
/**
|
|
38
|
+
* Formats a relative difference in bps as a percent, e.g. 12.5 → `"0.125%"`.
|
|
39
|
+
**/
|
|
40
|
+
declare function formatBpsAsPercent(bps: number): string;
|
|
41
|
+
/**
|
|
42
|
+
* Prints the shared membership table, the fields that differed most often,
|
|
43
|
+
* and any chain that failed to answer.
|
|
44
|
+
**/
|
|
45
|
+
declare function printCompareSummary(noun: string, report: PrintableCompareReport, extraLines?: string[]): void;
|
|
46
|
+
//#endregion
|
|
47
|
+
export { BACKEND_URL, ComparedNetwork, NETWORKS, PrintableCompareReport, PrintableCompareSummary, TIMEOUT, createLogger, errorMessage, formatBpsAsPercent, mapPool, printCompareSummary, requireEnv, rpcUrls };
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import { z } from "zod/v4";
|
|
2
|
+
//#region src/model/compare.schema.d.ts
|
|
3
|
+
/**
|
|
4
|
+
* How close two numeric values may be before a disagreement counts as real.
|
|
5
|
+
*
|
|
6
|
+
* The compare scripts pick a formula from this union; the schemas only name
|
|
7
|
+
* which formula a field uses.
|
|
8
|
+
*
|
|
9
|
+
* - `"amount"` — accrual lag on an {@link Amount.value} / {@link TokenAmount.value}.
|
|
10
|
+
* - `"bps"` — truncation vs rounding on a basis-point rate, ±1.
|
|
11
|
+
* - `"float"` — relative float drift within 0.1% (leverage).
|
|
12
|
+
* - `"usd"` — price-derived {@link Amount.valueUsd} / {@link TokenAmount.valueUsd}.
|
|
13
|
+
**/
|
|
14
|
+
type CompareTolerance = "amount" | "bps" | "float" | "usd";
|
|
15
|
+
/**
|
|
16
|
+
* A numeric field whose two sources may drift within {@link tolerance}.
|
|
17
|
+
**/
|
|
18
|
+
interface ToleranceCompareTag {
|
|
19
|
+
tolerance: CompareTolerance;
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* Compare metadata a schema field may carry.
|
|
23
|
+
*
|
|
24
|
+
* - `"offchainOnly"` / `"onchainOnly"` — the other source typically leaves
|
|
25
|
+
* the field empty, so a disagreement is expected.
|
|
26
|
+
* - {@link ToleranceCompareTag} — a numeric disagreement within the named
|
|
27
|
+
* formula is expected snapshot noise.
|
|
28
|
+
**/
|
|
29
|
+
type CompareTag = "offchainOnly" | "onchainOnly" | ToleranceCompareTag;
|
|
30
|
+
/**
|
|
31
|
+
* Marks a field that only the backend fills.
|
|
32
|
+
**/
|
|
33
|
+
declare function offchainOnly<S extends z.ZodType>(schema: S): S;
|
|
34
|
+
/**
|
|
35
|
+
* Marks a field that only the chain fills.
|
|
36
|
+
**/
|
|
37
|
+
declare function onchainOnly<S extends z.ZodType>(schema: S): S;
|
|
38
|
+
/**
|
|
39
|
+
* Marks a numeric field whose two sources may drift within {@link kind}.
|
|
40
|
+
**/
|
|
41
|
+
declare function tolerance<S extends z.ZodType>(schema: S, kind: CompareTolerance): S;
|
|
42
|
+
/**
|
|
43
|
+
* The compare tag registered on a schema, if any.
|
|
44
|
+
**/
|
|
45
|
+
declare function compareTagOf(schema: z.ZodType): CompareTag | undefined;
|
|
46
|
+
//#endregion
|
|
47
|
+
export { CompareTag, CompareTolerance, ToleranceCompareTag, compareTagOf, offchainOnly, onchainOnly, tolerance };
|
|
@@ -2,6 +2,7 @@ import { Amount, AssetType, Bps, ChainId, Leverage, Timestamp, Token, TokenAmoun
|
|
|
2
2
|
import { Curator, CuratorName } from "./curators.js";
|
|
3
3
|
import { CHART_METRIC_UNITS, CHART_RANGES, CHART_UNAVAILABLE_CODES, ChartBundle, ChartDenomination, ChartMetric, ChartQuery, ChartRange, ChartSeries, ChartSeriesOk, ChartSeriesUnavailable, ChartUnavailableCode, ChartUnit, ChartValue, ChartWindow, GridSampling, OpportunityChartMetric, POOL_OPPORTUNITY_CHART_METRICS, POOL_POSITION_CHART_METRICS, PoolOpportunityChartMetric, PoolPositionChartMetric, PositionChartMetric, STRATEGY_OPPORTUNITY_CHART_METRICS, STRATEGY_POSITION_CHART_METRICS, StrategyOpportunityChartMetric, StrategyPositionChartMetric } from "./charts.js";
|
|
4
4
|
import { chartBundleSchemaFor, chartDenominationSchema, chartMetricSchema, chartQueryCodec, chartQueryParamsSchema, chartQuerySchema, chartRangeSchema, chartSeriesSchema, chartValueSchema, chartWindowSchema, poolOpportunityChartMetricSchema, poolPositionChartMetricSchema, strategyOpportunityChartMetricSchema, strategyPositionChartMetricSchema } from "./charts.schema.js";
|
|
5
|
+
import { CompareTag, CompareTolerance, ToleranceCompareTag, compareTagOf, offchainOnly, onchainOnly, tolerance } from "./compare.schema.js";
|
|
5
6
|
import { curatorNameSchema, curatorSchema } from "./curators.schema.js";
|
|
6
7
|
import { ChainScopedFilter, FILTER_ALL, FilterAll, Filterable, isFilterSet } from "./filters.js";
|
|
7
8
|
import { booleanParamSchema, encodeFlag, filterAllSchema, filterable } from "./filters.schema.js";
|
|
@@ -16,4 +17,4 @@ import { borrowRateBreakdownSchema, pnlBreakdownSchema, pointsProgramPnLSchema,
|
|
|
16
17
|
import { amountSchema, assetTypeSchema, bpsSchema, chainIdSchema, leverageSchema, timestampSchema, tokenAmountSchema, tokenSchema, txCallSchema } from "./primitives.schema.js";
|
|
17
18
|
import { ChainFailed, ChainMetadata, ChainScoped, ChainSucceeded, DataResponse, DataSource, ResponseMetadata } from "./response.js";
|
|
18
19
|
import { chainFailedSchema, chainMetadataSchema, chainSucceededSchema, dataSourceSchema, responseMetadataSchema, responseSchema } from "./response.schema.js";
|
|
19
|
-
export { Amount, ApyBreakdown, AssetType, BorrowRateBreakdown, Bps, CHART_METRIC_UNITS, CHART_RANGES, CHART_UNAVAILABLE_CODES, ChainFailed, ChainId, ChainMetadata, ChainScoped, ChainScopedFilter, ChainSucceeded, ChartBundle, ChartDenomination, ChartMetric, ChartQuery, ChartRange, ChartSeries, ChartSeriesOk, ChartSeriesUnavailable, ChartUnavailableCode, ChartUnit, ChartValue, ChartWindow, Curator, CuratorName, DataResponse, DataSource, DelayedReceivedAsset, FILTER_ALL, FilterAll, Filterable, GridSampling, InstantReceivedAsset, Leverage, LiquidatableAccount, LiquidatableAccountFilter, LiquidationApproval, LiquidationDetails, LiquidationPosition, Notice, NoticeKind, NoticeSubject, Opportunity, OpportunityBase, OpportunityChartMetric, OpportunityDetail, OpportunityFilter, OpportunityId, OpportunityKey, OpportunityKind, POOL_OPPORTUNITY_CHART_METRICS, POOL_POSITION_CHART_METRICS, PnlBreakdown, PointRewards, PointsProgram, PointsProgramPnL, PointsRewardsPnL, PoolOpportunity, PoolOpportunityChartMetric, PoolOpportunityDetail, PoolOpportunityKey, PoolOpportunityRef, PoolPosition, PoolPositionChartMetric, PoolPositionKey, PoolPositionRef, Position, PositionChartMetric, PositionCollateral, PositionFilter, PositionId, PositionKey, PositionKind, PositionMetrics, PositionTransaction, PositionTransactionKind, PositionsTotals, PriceFeedData, PriceFeedSummary, QuotaAsset, RateCurve, RateCurvePoint, ReceivedAsset, ResponseMetadata, Rewards, RewardsPnL, STRATEGY_OPPORTUNITY_CHART_METRICS, STRATEGY_POSITION_CHART_METRICS, StrategyOpportunity, StrategyOpportunityChartMetric, StrategyOpportunityDetail, StrategyOpportunityKey, StrategyOpportunityRef, StrategyPosition, StrategyPositionChartMetric, StrategyPositionKey, StrategyPositionRef, Timestamp, Token, TokenAmount, TokenRewards, TokenRewardsPnL, TxCall, amountSchema, apyBreakdownSchema, assetTypeSchema, booleanParamSchema, borrowRateBreakdownSchema, bpsSchema, chainFailedSchema, chainIdSchema, chainMetadataSchema, chainSucceededSchema, chartBundleSchemaFor, chartDenominationSchema, chartMetricSchema, chartQueryCodec, chartQueryParamsSchema, chartQuerySchema, chartRangeSchema, chartSeriesSchema, chartValueSchema, chartWindowSchema, curatorNameSchema, curatorSchema, dataSourceSchema, delayedReceivedAssetSchema, encodeFlag, filterAllSchema, filterable, instantReceivedAssetSchema, isFilterSet, leverageSchema, liquidatableAccountFilterSchema, liquidatableAccountSchema, liquidationApprovalSchema, liquidationDetailsSchema, liquidationPositionId, liquidationPositionSchema, matchesLiquidatableAccountFilter, matchesOpportunityFilter, matchesPositionFilter, noticeKindSchema, noticeSchema, opportunityBaseSchema, opportunityDetailSchema, opportunityFilterQueryParamsSchema, opportunityFilterQuerySchema, opportunityFilterSchema, opportunityId, opportunityKeySchema, opportunityKindSchema, opportunitySchema, pnlBreakdownSchema, pointRewardsSchema, pointsProgramPnLSchema, pointsProgramSchema, pointsRewardsPnLSchema, poolOpportunityChartMetricSchema, poolOpportunityDetailSchema, poolOpportunityId, poolOpportunityKeySchema, poolOpportunitySchema, poolPositionChartMetricSchema, poolPositionId, poolPositionKeySchema, poolPositionSchema, positionCollateralSchema, positionFilterQueryParamsSchema, positionFilterQuerySchema, positionFilterSchema, positionId, positionKeySchema, positionKindSchema, positionSchema, positionTransactionKindSchema, positionTransactionSchema, positionsTotalsSchema, priceFeedDataSchema, priceFeedSummarySchema, quotaAssetSchema, rateCurvePointSchema, rateCurveSchema, receivedAssetSchema, responseMetadataSchema, responseSchema, rewardsPnLSchema, rewardsSchema, strategyOpportunityChartMetricSchema, strategyOpportunityDetailSchema, strategyOpportunityId, strategyOpportunityKeySchema, strategyOpportunitySchema, strategyPositionChartMetricSchema, strategyPositionId, strategyPositionKeySchema, strategyPositionSchema, timestampSchema, tokenAmountSchema, tokenRewardsPnLSchema, tokenRewardsSchema, tokenSchema, txCallSchema };
|
|
20
|
+
export { Amount, ApyBreakdown, AssetType, BorrowRateBreakdown, Bps, CHART_METRIC_UNITS, CHART_RANGES, CHART_UNAVAILABLE_CODES, ChainFailed, ChainId, ChainMetadata, ChainScoped, ChainScopedFilter, ChainSucceeded, ChartBundle, ChartDenomination, ChartMetric, ChartQuery, ChartRange, ChartSeries, ChartSeriesOk, ChartSeriesUnavailable, ChartUnavailableCode, ChartUnit, ChartValue, ChartWindow, CompareTag, CompareTolerance, Curator, CuratorName, DataResponse, DataSource, DelayedReceivedAsset, FILTER_ALL, FilterAll, Filterable, GridSampling, InstantReceivedAsset, Leverage, LiquidatableAccount, LiquidatableAccountFilter, LiquidationApproval, LiquidationDetails, LiquidationPosition, Notice, NoticeKind, NoticeSubject, Opportunity, OpportunityBase, OpportunityChartMetric, OpportunityDetail, OpportunityFilter, OpportunityId, OpportunityKey, OpportunityKind, POOL_OPPORTUNITY_CHART_METRICS, POOL_POSITION_CHART_METRICS, PnlBreakdown, PointRewards, PointsProgram, PointsProgramPnL, PointsRewardsPnL, PoolOpportunity, PoolOpportunityChartMetric, PoolOpportunityDetail, PoolOpportunityKey, PoolOpportunityRef, PoolPosition, PoolPositionChartMetric, PoolPositionKey, PoolPositionRef, Position, PositionChartMetric, PositionCollateral, PositionFilter, PositionId, PositionKey, PositionKind, PositionMetrics, PositionTransaction, PositionTransactionKind, PositionsTotals, PriceFeedData, PriceFeedSummary, QuotaAsset, RateCurve, RateCurvePoint, ReceivedAsset, ResponseMetadata, Rewards, RewardsPnL, STRATEGY_OPPORTUNITY_CHART_METRICS, STRATEGY_POSITION_CHART_METRICS, StrategyOpportunity, StrategyOpportunityChartMetric, StrategyOpportunityDetail, StrategyOpportunityKey, StrategyOpportunityRef, StrategyPosition, StrategyPositionChartMetric, StrategyPositionKey, StrategyPositionRef, Timestamp, Token, TokenAmount, TokenRewards, TokenRewardsPnL, ToleranceCompareTag, TxCall, amountSchema, apyBreakdownSchema, assetTypeSchema, booleanParamSchema, borrowRateBreakdownSchema, bpsSchema, chainFailedSchema, chainIdSchema, chainMetadataSchema, chainSucceededSchema, chartBundleSchemaFor, chartDenominationSchema, chartMetricSchema, chartQueryCodec, chartQueryParamsSchema, chartQuerySchema, chartRangeSchema, chartSeriesSchema, chartValueSchema, chartWindowSchema, compareTagOf, curatorNameSchema, curatorSchema, dataSourceSchema, delayedReceivedAssetSchema, encodeFlag, filterAllSchema, filterable, instantReceivedAssetSchema, isFilterSet, leverageSchema, liquidatableAccountFilterSchema, liquidatableAccountSchema, liquidationApprovalSchema, liquidationDetailsSchema, liquidationPositionId, liquidationPositionSchema, matchesLiquidatableAccountFilter, matchesOpportunityFilter, matchesPositionFilter, noticeKindSchema, noticeSchema, offchainOnly, onchainOnly, opportunityBaseSchema, opportunityDetailSchema, opportunityFilterQueryParamsSchema, opportunityFilterQuerySchema, opportunityFilterSchema, opportunityId, opportunityKeySchema, opportunityKindSchema, opportunitySchema, pnlBreakdownSchema, pointRewardsSchema, pointsProgramPnLSchema, pointsProgramSchema, pointsRewardsPnLSchema, poolOpportunityChartMetricSchema, poolOpportunityDetailSchema, poolOpportunityId, poolOpportunityKeySchema, poolOpportunitySchema, poolPositionChartMetricSchema, poolPositionId, poolPositionKeySchema, poolPositionSchema, positionCollateralSchema, positionFilterQueryParamsSchema, positionFilterQuerySchema, positionFilterSchema, positionId, positionKeySchema, positionKindSchema, positionSchema, positionTransactionKindSchema, positionTransactionSchema, positionsTotalsSchema, priceFeedDataSchema, priceFeedSummarySchema, quotaAssetSchema, rateCurvePointSchema, rateCurveSchema, receivedAssetSchema, responseMetadataSchema, responseSchema, rewardsPnLSchema, rewardsSchema, strategyOpportunityChartMetricSchema, strategyOpportunityDetailSchema, strategyOpportunityId, strategyOpportunityKeySchema, strategyOpportunitySchema, strategyPositionChartMetricSchema, strategyPositionId, strategyPositionKeySchema, strategyPositionSchema, timestampSchema, tokenAmountSchema, tokenRewardsPnLSchema, tokenRewardsSchema, tokenSchema, tolerance, txCallSchema };
|