@alphafi/alphafi-sdk 0.0.58 → 0.0.60
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/common/constants.d.ts +24 -0
- package/dist/cjs/common/constants.d.ts.map +1 -1
- package/dist/cjs/common/constants.js +23 -3
- package/dist/cjs/common/constants.js.map +1 -1
- package/dist/cjs/common/maps.d.ts.map +1 -1
- package/dist/cjs/common/maps.js +20 -0
- package/dist/cjs/common/maps.js.map +1 -1
- package/dist/cjs/common/types.d.ts +1 -1
- package/dist/cjs/common/types.d.ts.map +1 -1
- package/dist/cjs/common/types.js.map +1 -1
- package/dist/cjs/getAprs.d.ts +2 -0
- package/dist/cjs/getAprs.d.ts.map +1 -1
- package/dist/cjs/getAprs.js +251 -1
- package/dist/cjs/getAprs.js.map +1 -1
- package/dist/cjs/sui-sdk/functions/getReceipts.d.ts +1 -0
- package/dist/cjs/sui-sdk/functions/getReceipts.d.ts.map +1 -1
- package/dist/cjs/transactions/collect_rewards.d.ts.map +1 -1
- package/dist/cjs/transactions/collect_rewards.js +17 -0
- package/dist/cjs/transactions/collect_rewards.js.map +1 -1
- package/dist/cjs/transactions/navi-looping.d.ts +6 -0
- package/dist/cjs/transactions/navi-looping.d.ts.map +1 -1
- package/dist/cjs/transactions/navi-looping.js +125 -1
- package/dist/cjs/transactions/navi-looping.js.map +1 -1
- package/dist/esm/common/constants.d.ts +24 -0
- package/dist/esm/common/constants.d.ts.map +1 -1
- package/dist/esm/common/constants.js +23 -3
- package/dist/esm/common/constants.js.map +1 -1
- package/dist/esm/common/maps.d.ts.map +1 -1
- package/dist/esm/common/maps.js +20 -0
- package/dist/esm/common/maps.js.map +1 -1
- package/dist/esm/common/types.d.ts +1 -1
- package/dist/esm/common/types.d.ts.map +1 -1
- package/dist/esm/common/types.js.map +1 -1
- package/dist/esm/getAprs.d.ts +2 -0
- package/dist/esm/getAprs.d.ts.map +1 -1
- package/dist/esm/getAprs.js +249 -2
- package/dist/esm/getAprs.js.map +1 -1
- package/dist/esm/sui-sdk/functions/getReceipts.d.ts +1 -0
- package/dist/esm/sui-sdk/functions/getReceipts.d.ts.map +1 -1
- package/dist/esm/transactions/collect_rewards.d.ts.map +1 -1
- package/dist/esm/transactions/collect_rewards.js +17 -0
- package/dist/esm/transactions/collect_rewards.js.map +1 -1
- package/dist/esm/transactions/navi-looping.d.ts +6 -0
- package/dist/esm/transactions/navi-looping.d.ts.map +1 -1
- package/dist/esm/transactions/navi-looping.js +123 -1
- package/dist/esm/transactions/navi-looping.js.map +1 -1
- package/docs/assets/highlight.css +51 -74
- package/docs/assets/icons.js +17 -20
- package/docs/assets/main.js +5 -2163
- package/docs/assets/navigation.js +1 -2
- package/docs/assets/search.js +1 -2
- package/docs/assets/style.css +850 -846
- package/docs/functions/alphaLpBreakdown.html +1 -253
- package/docs/functions/cetusLpBreakdown.html +1 -253
- package/docs/functions/claimBlueRewardTxb.html +1 -258
- package/docs/functions/claimRewardTxb.html +1 -243
- package/docs/functions/coinAmountToXTokensDoubleAsset.html +1 -267
- package/docs/functions/coinAmountToXTokensSingleAsset.html +1 -260
- package/docs/functions/coinsInPool.html +1 -438
- package/docs/functions/collectRewards.html +1 -242
- package/docs/functions/deposit.html +1 -246
- package/docs/functions/depositDoubleAssetTxb.html +1 -270
- package/docs/functions/depositSingleAssetTxb.html +1 -263
- package/docs/functions/fetchAfterTransactionEvents.html +1 -328
- package/docs/functions/fetchAutoCompoundingEvents.html +1 -257
- package/docs/functions/fetchAutoCompoundingEventsGql.html +1 -251
- package/docs/functions/fetchCetusPools.html +1 -231
- package/docs/functions/fetchChainIdentifier.html +1 -233
- package/docs/functions/fetchCheckRatioEvents.html +1 -249
- package/docs/functions/fetchLiquidityChangeEvents.html +1 -257
- package/docs/functions/fetchMultiCategoryEvents.html +1 -348
- package/docs/functions/fetchMultiReceipts.html +1 -261
- package/docs/functions/fetchNftHolders.html +1 -233
- package/docs/functions/fetchPools.html +1 -230
- package/docs/functions/fetchPortfolioData.html +1 -243
- package/docs/functions/fetchProtocolData.html +1 -231
- package/docs/functions/fetchTVL.html +1 -253
- package/docs/functions/fetchUserVaultBalances.html +1 -245
- package/docs/functions/fetchUserVaults.html +1 -243
- package/docs/functions/fetchUserWalletData.html +1 -243
- package/docs/functions/fetchVoloExchangeRate.html +1 -251
- package/docs/functions/fetchWithdrawV2Events.html +1 -255
- package/docs/functions/getAirdropShare.html +1 -243
- package/docs/functions/getAllDoubleAssetVaults.html +1 -235
- package/docs/functions/getAllSingleAssetVaults.html +1 -235
- package/docs/functions/getAllVaultBalances.html +1 -265
- package/docs/functions/getAllVaults.html +1 -233
- package/docs/functions/getAlphaUnlocks.html +1 -245
- package/docs/functions/getAlphaVaultBalance.html +1 -255
- package/docs/functions/getAmounts.html +1 -272
- package/docs/functions/getApr.html +1 -243
- package/docs/functions/getAprs.html +1 -255
- package/docs/functions/getApy.html +1 -243
- package/docs/functions/getApys.html +1 -255
- package/docs/functions/getCetusInvestorTicksMap.html +1 -284
- package/docs/functions/getCetusPool.html +1 -270
- package/docs/functions/getCetusSqrtPriceMap.html +1 -249
- package/docs/functions/getCoinAmountsFromLiquidity.html +1 -273
- package/docs/functions/getConf.html +1 -13163
- package/docs/functions/getCurrentTick.html +1 -247
- package/docs/functions/getDistributor.html +1 -252
- package/docs/functions/getDoubleAssetVaultBalance.html +1 -268
- package/docs/functions/getDoubleAssetVaults.html +1 -253
- package/docs/functions/getHoldersFromTransactions.html +1 -299
- package/docs/functions/getInvestor.html +1 -259
- package/docs/functions/getInvestorPoolMap.html +1 -241
- package/docs/functions/getLastAutoCompoundTime.html +1 -249
- package/docs/functions/getLatestPrices.html +1 -253
- package/docs/functions/getLiquidity.html +1 -260
- package/docs/functions/getMultiCetusPool.html +1 -231
- package/docs/functions/getMultiInvestor.html +1 -231
- package/docs/functions/getMultiLatestPrices.html +1 -233
- package/docs/functions/getMultiParentPool.html +1 -231
- package/docs/functions/getMultiPool.html +1 -231
- package/docs/functions/getMultiReceipts.html +1 -243
- package/docs/functions/getParentPool.html +1 -266
- package/docs/functions/getPool.html +1 -262
- package/docs/functions/getPoolExchangeRate.html +1 -254
- package/docs/functions/getPoolExchangeRateMap.html +1 -249
- package/docs/functions/getPoolsWeightDistribution.html +1 -266
- package/docs/functions/getPositionRange.html +1 -283
- package/docs/functions/getPositionRanges.html +1 -289
- package/docs/functions/getPositionTicks.html +1 -249
- package/docs/functions/getPriceToTick.html +1 -264
- package/docs/functions/getRebalanceHistories.html +1 -269
- package/docs/functions/getRebalanceHistory.html +1 -255
- package/docs/functions/getReceipts.html +1 -268
- package/docs/functions/getSingleAssetVaultBalance.html +1 -268
- package/docs/functions/getSingleAssetVaults.html +1 -253
- package/docs/functions/getSuiClient.html +3 -247
- package/docs/functions/getSuiNodeUrl.html +3 -232
- package/docs/functions/getTVLs-1.html +1 -243
- package/docs/functions/getTickSpacing.html +1 -247
- package/docs/functions/getTickToPrice.html +1 -248
- package/docs/functions/getTvls.html +1 -259
- package/docs/functions/getUserTokensFromTransactions.html +1 -269
- package/docs/functions/getUserTokensInUsdFromTransactions.html +1 -263
- package/docs/functions/getVaultBalance.html +1 -277
- package/docs/functions/getVaultBalanceForActiveUsers.html +1 -261
- package/docs/functions/getVaults.html +1 -250
- package/docs/functions/getXTokenVaultBalanceForActiveUsers.html +1 -261
- package/docs/functions/getZapAmounts.html +1 -323
- package/docs/functions/lastAutocompoundTime.html +1 -249
- package/docs/functions/liquidityToTokens.html +1 -253
- package/docs/functions/multiLiquidityToTokens.html +1 -271
- package/docs/functions/multiTokensToUsd.html +1 -262
- package/docs/functions/multiXTokensToLiquidity.html +1 -257
- package/docs/functions/parseUserWalletData.html +1 -243
- package/docs/functions/pendingBlueRewardAmount.html +1 -256
- package/docs/functions/setCustomSuiClient.html +5 -251
- package/docs/functions/setSuiClient.html +7 -255
- package/docs/functions/setSuiNodeUrl.html +5 -249
- package/docs/functions/setWeights.html +1 -270
- package/docs/functions/withdraw.html +1 -249
- package/docs/functions/withdrawAlphaTxb.html +1 -257
- package/docs/functions/withdrawTxb.html +1 -260
- package/docs/functions/zapDepositTxb.html +1 -300
- package/docs/index.html +41 -587
- package/docs/interfaces/Coin.html +12 -474
- package/docs/interfaces/CoinPair.html +3 -358
- package/docs/interfaces/NaviVoloData.html +3 -514
- package/docs/interfaces/PoolData.html +8 -579
- package/docs/interfaces/PoolWeightDistribution.html +4 -414
- package/docs/interfaces/RebalanceHistoryType.html +9 -652
- package/docs/modules.html +198 -1430
- package/docs/types/AfterTransactionEventNode.html +1 -305
- package/docs/types/Allocator.html +1 -321
- package/docs/types/AlphaFiDoubleAssetVault.html +1 -258
- package/docs/types/AlphaFiMultiVaultBalance.html +1 -219
- package/docs/types/AlphaFiSingleAssetVault.html +1 -244
- package/docs/types/AlphaFiVault.html +1 -214
- package/docs/types/AlphaFiVaultBalance.html +1 -220
- package/docs/types/AlphaPoolType.html +1 -383
- package/docs/types/AlphaReceipt.html +1 -220
- package/docs/types/AlphaReceiptFields.html +1 -421
- package/docs/types/AlphaVaultBalance.html +1 -245
- package/docs/types/AutoBalancePoolNames.html +1 -226
- package/docs/types/AutoCompoundingEventNode.html +1 -230
- package/docs/types/BluefinInvestor.html +1 -209
- package/docs/types/BluefinPoolType.html +1 -440
- package/docs/types/BucketInvestor.html +1 -249
- package/docs/types/CetusInvestor.html +1 -240
- package/docs/types/CetusPoolType.html +1 -433
- package/docs/types/CetusSwapOptions.html +1 -209
- package/docs/types/CoinAmounts.html +1 -216
- package/docs/types/CoinName.html +1 -293
- package/docs/types/CoinType.html +1 -294
- package/docs/types/CommonInvestorFields.html +1 -276
- package/docs/types/CreatePoolOptions.html +1 -246
- package/docs/types/Distributor.html +1 -341
- package/docs/types/DoubleAssetMultiVaultBalance.html +1 -236
- package/docs/types/DoubleAssetPoolNames.html +1 -297
- package/docs/types/DoubleAssetTokenHoldings.html +1 -232
- package/docs/types/DoubleAssetVaultBalance.html +1 -229
- package/docs/types/EventCategory.html +1 -209
- package/docs/types/EventNode.html +1 -229
- package/docs/types/GetHoldersParams.html +1 -221
- package/docs/types/GetTokenHoldingsParams.html +1 -227
- package/docs/types/GetUserTokensFromTransactionsParams.html +1 -233
- package/docs/types/GetUserTokensInUsdFromTransactionsParams.html +1 -244
- package/docs/types/GetVaultBalanceForActiveUsersParams.html +1 -231
- package/docs/types/GetVaultBalanceParams.html +1 -217
- package/docs/types/HoldingsObj.html +1 -223
- package/docs/types/Icon.html +1 -266
- package/docs/types/Investor.html +1 -245
- package/docs/types/LiquidityChangeEventNode.html +1 -220
- package/docs/types/LiquidityToTokensParams.html +1 -255
- package/docs/types/LiquidityToUsdParams.html +1 -267
- package/docs/types/LoopingDebt.html +1 -258
- package/docs/types/LoopingPoolNames.html +1 -216
- package/docs/types/LpBreakdownType.html +1 -238
- package/docs/types/MemberPoolDataType.html +1 -276
- package/docs/types/MemberType.html +1 -269
- package/docs/types/MultiGetVaultBalancesParams.html +1 -229
- package/docs/types/NaviInvestor.html +1 -235
- package/docs/types/OtherReceiptFields.html +1 -373
- package/docs/types/PoolName.html +1 -214
- package/docs/types/PoolReceipt.html +1 -253
- package/docs/types/PoolType.html +1 -388
- package/docs/types/Receipt.html +1 -475
- package/docs/types/ReceiptGQL.html +1 -374
- package/docs/types/SingleAssetMultiVaultBalance.html +1 -232
- package/docs/types/SingleAssetPoolNames.html +1 -244
- package/docs/types/SingleAssetTokenHoldings.html +1 -228
- package/docs/types/SingleAssetVaultBalance.html +1 -223
- package/docs/types/SingleGetVaultBalancesParams.html +1 -224
- package/docs/types/StrategyType.html +1 -221
- package/docs/types/SuiNetwork.html +1 -213
- package/docs/types/SwapOptions.html +1 -248
- package/docs/types/TickSpacing.html +1 -212
- package/docs/types/TotalWeightType.html +1 -246
- package/docs/types/TransactionBlockType.html +1 -358
- package/docs/types/UserPoolLiquidity.html +1 -221
- package/docs/types/UserPoolTokenHoldings.html +1 -217
- package/docs/types/UserUsdHoldings.html +1 -223
- package/docs/types/VaultBalance.html +1 -216
- package/docs/types/WithdrawV2EventNode.html +1 -208
- package/docs/variables/bluefinPoolMap.html +1 -214
- package/docs/variables/cetusPoolMap.html +1 -214
- package/docs/variables/coinsList.html +1 -220
- package/docs/variables/defunctPoolsSet.html +1 -209
- package/docs/variables/doubleAssetPoolCoinMap.html +1 -237
- package/docs/variables/eventCategories.html +1 -210
- package/docs/variables/ignoredWalletsForDailyRevenue.html +1 -218
- package/docs/variables/loopingAccountAddresses.html +1 -219
- package/docs/variables/loopingPoolCoinMap.html +1 -233
- package/docs/variables/naviAssetMap.html +1 -215
- package/docs/variables/poolIdPoolNameMap.html +1 -218
- package/docs/variables/poolInfo.html +1 -319
- package/docs/variables/singleAssetPoolCoinMap.html +1 -229
- package/docs/variables/stableCoins.html +1 -207
- package/package.json +2 -2
|
@@ -2,7 +2,7 @@ import BN from "bn.js";
|
|
|
2
2
|
export type SuiNetwork = "mainnet" | "testnet" | "devnet" | "localnet";
|
|
3
3
|
export type PoolName = SingleAssetPoolNames | DoubleAssetPoolNames;
|
|
4
4
|
export type SingleAssetPoolNames = "ALPHA" | "NAVI-SUI" | "NAVI-VSUI" | "NAVI-WETH" | "NAVI-USDT" | "NAVI-WUSDC" | "NAVI-HASUI" | "NAVI-USDC" | "BUCKET-BUCK" | "NAVI-USDY" | "NAVI-AUSD" | "NAVI-ETH" | "NAVI-NS" | "NAVI-NAVX" | "NAVI-STSUI" | LoopingPoolNames;
|
|
5
|
-
export type LoopingPoolNames = "NAVI-LOOP-HASUI-SUI" | "NAVI-LOOP-USDT-USDC" | "NAVI-LOOP-SUI-VSUI" | "NAVI-LOOP-USDC-USDT";
|
|
5
|
+
export type LoopingPoolNames = "NAVI-LOOP-HASUI-SUI" | "NAVI-LOOP-USDT-USDC" | "NAVI-LOOP-SUI-VSUI" | "NAVI-LOOP-USDC-USDT" | "NAVI-LOOP-SUI-STSUI";
|
|
6
6
|
export type DoubleAssetPoolNames = "HASUI-SUI" | "USDY-WUSDC" | "ALPHA-SUI" | "ALPHA-WUSDC" | "USDT-WUSDC" | "WUSDC-SUI" | "WUSDC-WBTC" | "WETH-WUSDC" | "NAVX-SUI" | "BUCK-WUSDC" | "CETUS-SUI" | "WSOL-WUSDC" | "FUD-SUI" | "BLUB-SUI" | "SCA-SUI" | "USDC-SUI" | "USDC-USDT" | "ALPHA-USDC" | "USDC-WUSDC" | "USDC-ETH" | "DEEP-SUI" | "BUCK-SUI" | "BLUEFIN-SUI-USDC" | "BLUEFIN-USDT-USDC" | "BLUEFIN-SUI-BUCK" | "BLUEFIN-AUSD-USDC" | "BLUEFIN-SUI-AUSD" | "BLUEFIN-ALPHA-USDC" | "BLUEFIN-WBTC-USDC" | "BLUEFIN-NAVX-VSUI" | "BLUEFIN-BLUE-SUI" | "BLUEFIN-BLUE-USDC" | "BLUEFIN-SEND-USDC" | "BLUEFIN-WBTC-SUI" | "BLUEFIN-DEEP-SUI" | "BLUEFIN-STSUI-SUI" | "BLUEFIN-STSUI-USDC" | "BLUEFIN-STSUI-ETH" | "BLUEFIN-STSUI-WSOL" | "BLUEFIN-ALPHA-STSUI" | "BLUEFIN-SUIUSDT-USDC" | "BLUEFIN-STSUI-BUCK" | "BLUEFIN-STSUI-MUSD" | AutoBalancePoolNames;
|
|
7
7
|
export type AutoBalancePoolNames = "BLUEFIN-AUTOBALANCE-USDT-USDC" | "BLUEFIN-AUTOBALANCE-SUI-USDC" | "BLUEFIN-AUTOBALANCE-SUIUSDT-USDC" | "BLUEFIN-AUTOBALANCE-DEEP-BLUE" | "BLUEFIN-AUTOBALANCE-DEEP-SUI" | "BLUEFIN-AUTOBALANCE-BLUE-SUI";
|
|
8
8
|
export type CoinName = "ALPHA" | "SUI" | "WUSDC" | "USDC" | "USDT" | "VSUI" | "NAVX" | "SCA" | "CETUS" | "AFSUI" | "WETH" | "APT" | "WSOL" | "SLP" | "WBTC" | "CELO" | "TURBOS" | "HASUI" | "USDY" | "BUCK" | "FUD" | "BLUB" | "ETH" | "DEEP" | "AUSD" | "NS" | "BLUE" | "SEND" | "STSUI" | "SUIUSDT" | "MUSD";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/common/types.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/common/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,OAAO,CAAC;AAGvB,MAAM,MAAM,UAAU,GAAG,SAAS,GAAG,SAAS,GAAG,QAAQ,GAAG,UAAU,CAAC;AAEvE,MAAM,MAAM,QAAQ,GAAG,oBAAoB,GAAG,oBAAoB,CAAC;AAEnE,MAAM,MAAM,oBAAoB,GAC5B,OAAO,GACP,UAAU,GACV,WAAW,GACX,WAAW,GACX,WAAW,GACX,YAAY,GACZ,YAAY,GACZ,WAAW,GACX,aAAa,GACb,WAAW,GACX,WAAW,GACX,UAAU,GACV,SAAS,GACT,WAAW,GACX,YAAY,GACZ,gBAAgB,CAAC;AAErB,MAAM,MAAM,gBAAgB,GACxB,qBAAqB,GACrB,qBAAqB,GACrB,oBAAoB,GACpB,qBAAqB,GACrB,qBAAqB,CAAC;AAE1B,MAAM,MAAM,oBAAoB,GAC5B,WAAW,GACX,YAAY,GACZ,WAAW,GACX,aAAa,GACb,YAAY,GACZ,WAAW,GACX,YAAY,GACZ,YAAY,GACZ,UAAU,GACV,YAAY,GACZ,WAAW,GACX,YAAY,GACZ,SAAS,GACT,UAAU,GACV,SAAS,GACT,UAAU,GACV,WAAW,GACX,YAAY,GACZ,YAAY,GACZ,UAAU,GACV,UAAU,GACV,UAAU,GACV,kBAAkB,GAClB,mBAAmB,GACnB,kBAAkB,GAClB,mBAAmB,GACnB,kBAAkB,GAClB,oBAAoB,GACpB,mBAAmB,GACnB,mBAAmB,GACnB,kBAAkB,GAClB,mBAAmB,GACnB,mBAAmB,GACnB,kBAAkB,GAClB,kBAAkB,GAClB,mBAAmB,GACnB,oBAAoB,GACpB,mBAAmB,GACnB,oBAAoB,GACpB,qBAAqB,GACrB,sBAAsB,GACtB,oBAAoB,GACpB,oBAAoB,GACpB,oBAAoB,CAAC;AAEzB,MAAM,MAAM,oBAAoB,GAC5B,+BAA+B,GAC/B,8BAA8B,GAC9B,kCAAkC,GAClC,+BAA+B,GAC/B,8BAA8B,GAC9B,8BAA8B,CAAC;AAEnC,MAAM,MAAM,QAAQ,GAChB,OAAO,GACP,KAAK,GACL,OAAO,GACP,MAAM,GACN,MAAM,GACN,MAAM,GACN,MAAM,GACN,KAAK,GACL,OAAO,GACP,OAAO,GACP,MAAM,GACN,KAAK,GACL,MAAM,GACN,KAAK,GACL,MAAM,GACN,MAAM,GACN,QAAQ,GACR,OAAO,GACP,MAAM,GACN,MAAM,GACN,KAAK,GACL,MAAM,GACN,KAAK,GACL,MAAM,GACN,MAAM,GACN,IAAI,GACJ,MAAM,GACN,MAAM,GACN,OAAO,GACP,SAAS,GACT,MAAM,CAAC;AAEX,MAAM,MAAM,YAAY,GACpB,SAAS,GACT,QAAQ,GACR,SAAS,GACT,gBAAgB,GAChB,SAAS,GACT,gBAAgB,GAChB,4BAA4B,CAAC;AAEjC;;GAEG;AACH,MAAM,WAAW,IAAI;IACnB;;OAEG;IACH,IAAI,EAAE,QAAQ,CAAC;IAEf;;OAEG;IACH,IAAI,EAAE,QAAQ,CAAC;IAEf;;OAEG;IACH,IAAI,EAAE,IAAI,CAAC;IAEX;;;;OAIG;IACH,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,MAAM,IAAI,GACZ,yHAAyH,GACzH,4HAA4H,GAC5H,4HAA4H,GAC5H,4HAA4H,GAC5H,4HAA4H,GAC5H,+CAA+C,GAC/C,0HAA0H,GAC1H,8HAA8H,GAC9H,4HAA4H,GAC5H,4HAA4H,GAC5H,4HAA4H,GAC5H,0HAA0H,GAC1H,4HAA4H,GAC5H,4HAA4H,GAC5H,8HAA8H,GAC9H,+HAA+H,GAC/H,sHAAsH,GACtH,6HAA6H,GAC7H,2HAA2H,GAC3H,kEAAkE,GAClE,EAAE,CAAC;AAEP,MAAM,MAAM,QAAQ,GAChB,kFAAkF,GAClF,eAAe,GACf,gFAAgF,GAChF,gFAAgF,GAChF,gFAAgF,GAChF,gFAAgF,GAChF,8EAA8E,GAC9E,kFAAkF,GAClF,gFAAgF,GAChF,gFAAgF,GAChF,gFAAgF,GAChF,8EAA8E,GAC9E,+EAA+E,GAC/E,gFAAgF,GAChF,iFAAiF,GACjF,oFAAoF,GACpF,kFAAkF,GAClF,gFAAgF,GAChF,gFAAgF,GAChF,8EAA8E,GAC9E,gFAAgF,GAChF,gFAAgF,GAChF,8EAA8E,GAC9E,gFAAgF,GAChF,gFAAgF,GAChF,4EAA4E,GAC5E,gFAAgF,GAChF,gFAAgF,GAChF,kFAAkF,GAClF,gFAAgF,GAChF,gFAAgF,CAAC;AAErF,QAAA,MAAM,sBAAsB,QAAwC,CAAC;AACrE,QAAA,MAAM,uBAAuB,QAAyC,CAAC;AACvE,QAAA,MAAM,uBAAuB,QAAyC,CAAC;AACvE,QAAA,MAAM,kBAAkB,QAAoC,CAAC;AAC7D,QAAA,MAAM,sBAAsB,QAAwC,CAAC;AACrE,QAAA,MAAM,sBAAsB,QAAwC,CAAC;AACrE,QAAA,MAAM,uBAAuB,QAAyC,CAAC;AACvE,QAAA,MAAM,uBAAuB,QAAyC,CAAC;AACvE,QAAA,MAAM,qBAAqB,QAAuC,CAAC;AACnE,QAAA,MAAM,sBAAsB,QAAwC,CAAC;AACrE,QAAA,MAAM,qBAAqB,QAAuC,CAAC;AACnE,QAAA,MAAM,sBAAsB,QAAwC,CAAC;AACrE,QAAA,MAAM,sBAAsB,QAAwC,CAAC;AACrE,QAAA,MAAM,uBAAuB,QAAyC,CAAC;AACvE,QAAA,MAAM,sBAAsB,QAAwC,CAAC;AACrE,QAAA,MAAM,wBAAwB,QAA0C,CAAC;AACzE,MAAM,MAAM,WAAW,GACnB,OAAO,sBAAsB,GAC7B,OAAO,uBAAuB,GAC9B,OAAO,uBAAuB,GAC9B,OAAO,kBAAkB,GACzB,OAAO,sBAAsB,GAC7B,OAAO,sBAAsB,GAC7B,OAAO,uBAAuB,GAC9B,OAAO,uBAAuB,GAC9B,OAAO,qBAAqB,GAC5B,OAAO,sBAAsB,GAC7B,OAAO,qBAAqB,GAC5B,OAAO,sBAAsB,GAC7B,OAAO,sBAAsB,GAC7B,OAAO,uBAAuB,GAC9B,OAAO,sBAAsB,GAC7B,OAAO,wBAAwB,CAAC;AAEpC,MAAM,WAAW,QAAQ;IACvB,MAAM,EAAE,MAAM,CAAC;IACf,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC/B,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC/B,QAAQ,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC9B,QAAQ,EAAE,MAAM,CAAC;CAClB;AACD,MAAM,WAAW,sBAAsB;IACrC,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,QAAQ,EAAE,CAAC;CAClB;AAED,MAAM,MAAM,WAAW,GAAG;IACxB,KAAK,EAAE,EAAE,CAAC;IACV,KAAK,EAAE,EAAE,CAAC;CACX,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG;IAC1B,OAAO,EAAE;QACP,MAAM,EAAE;YACN,cAAc,EAAE,MAAM,CAAC;YACvB,cAAc,EAAE,MAAM,CAAC;YACvB,UAAU,EAAE,MAAM,CAAC;YACnB,UAAU,EAAE,MAAM,CAAC;SACpB,CAAC;KACH,CAAC;CACH,CAAC;AAEF,MAAM,MAAM,eAAe,GAAG,aAAa,CAAC;AAE5C,MAAM,MAAM,YAAY,GAAG;IACzB,OAAO,EAAE;QACP,MAAM,EAAE;YACN,sBAAsB,EAAE,MAAM,CAAC;YAC/B,eAAe,EAAE,MAAM,CAAC;YACxB,4BAA4B,EAAE,MAAM,CAAC;SACtC,CAAC;KACH,CAAC;CACH,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG;IAC3B,OAAO,EAAE;QACP,MAAM,EAAE;YACN,eAAe,EAAE,MAAM,CAAC;YACxB,WAAW,EAAE;gBACX,IAAI,EAAE,MAAM,CAAC;gBACb,MAAM,EAAE;oBACN,YAAY,EAAE,MAAM,CAAC;iBACtB,CAAC;aACH,CAAC;SACH,CAAC;KACH,CAAC;CACH,CAAC;AAEF,MAAM,MAAM,oBAAoB,GAAG;IACjC,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE;QACP,QAAQ,EAAE,MAAM,CAAC;QACjB,IAAI,EAAE,MAAM,CAAC;QACb,iBAAiB,EAAE,OAAO,CAAC;QAC3B,MAAM,EAAE;YACN,EAAE,EAAE;gBACF,EAAE,EAAE,MAAM,CAAC;aACZ,CAAC;YACF,eAAe,EAAE,MAAM,CAAC;YACxB,uBAAuB,EAAE,MAAM,CAAC;SACjC,CAAC;KACH,CAAC;CACH,CAAC;AAEF,MAAM,MAAM,QAAQ,GAChB,CAAC,aAAa,GAAG,oBAAoB,CAAC,GACtC,CAAC,YAAY,GAAG,oBAAoB,CAAC,GACrC,CAAC,cAAc,GAAG,oBAAoB,CAAC,GACvC,CAAC,eAAe,GAAG,oBAAoB,CAAC,CAAC;AAE7C,MAAM,MAAM,aAAa,GAAG;IAC1B,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE;QACP,QAAQ,EAAE,MAAM,CAAC;QACjB,IAAI,EAAE,MAAM,CAAC;QACb,iBAAiB,EAAE,OAAO,CAAC;QAC3B,MAAM,EAAE;YACN,YAAY,EAAE,MAAM,CAAC;YACrB,cAAc,EAAE,MAAM,CAAC;YACvB,MAAM,EAAE,MAAM,CAAC;YACf,MAAM,EAAE,MAAM,CAAC;YACf,kBAAkB,EAAE,MAAM,CAAC;YAC3B,kBAAkB,EAAE;gBAClB,MAAM,EAAE;oBAAE,IAAI,EAAE,MAAM,CAAA;iBAAE,CAAC;gBACzB,IAAI,EAAE,MAAM,CAAC;aACd,CAAC;YACF,mBAAmB,EAAE,MAAM,CAAC;YAC5B,mBAAmB,EAAE,MAAM,CAAC;YAC5B,mBAAmB,EAAE,MAAM,CAAC;YAC5B,mBAAmB,EAAE,MAAM,CAAC;YAC5B,QAAQ,EAAE,MAAM,CAAC;YACjB,EAAE,EAAE;gBAAE,EAAE,EAAE,MAAM,CAAA;aAAE,CAAC;YACnB,KAAK,EAAE,MAAM,CAAC;YACd,QAAQ,EAAE,OAAO,CAAC;YAClB,SAAS,EAAE,MAAM,CAAC;YAClB,gBAAgB,EAAE;gBAChB,MAAM,EAAE;oBACN,cAAc,EAAE,MAAM,CAAC;oBACvB,SAAS,EAAE;wBACT,MAAM,EAAE;4BACN,IAAI,EAAE,MAAM,CAAC;4BACb,EAAE,EAAE;gCAAE,EAAE,EAAE,MAAM,CAAA;6BAAE,CAAC;4BACnB,IAAI,EAAE,MAAM,CAAC;4BACb,IAAI,EAAE,MAAM,CAAC;yBACd,CAAC;wBACF,IAAI,EAAE,MAAM,CAAC;qBACd,CAAC;oBACF,YAAY,EAAE,MAAM,CAAC;iBACtB,CAAC;gBACF,IAAI,EAAE,MAAM,CAAC;aACd,CAAC;YAGF,YAAY,EAAE,MAAM,CAAC;YACrB,GAAG,EAAE,MAAM,CAAC;SACb,CAAC;KACH,CAAC;CACH,CAAC;AAEF,MAAM,MAAM,eAAe,GAAG;IAC5B,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE;QACP,QAAQ,EAAE,MAAM,CAAC;QACjB,IAAI,EAAE,MAAM,CAAC;QACb,iBAAiB,EAAE,OAAO,CAAC;QAC3B,MAAM,EAAE;YACN,MAAM,EAAE,MAAM,CAAC;YACf,MAAM,EAAE,MAAM,CAAC;YACf,kBAAkB,EAAE,MAAM,CAAC;YAC3B,kBAAkB,EAAE;gBAClB,MAAM,EAAE;oBAAE,IAAI,EAAE,MAAM,CAAA;iBAAE,CAAC;gBACzB,IAAI,EAAE,MAAM,CAAC;aACd,CAAC;YACF,wBAAwB,EAAE,MAAM,CAAC;YACjC,wBAAwB,EAAE,MAAM,CAAC;YACjC,QAAQ,EAAE,MAAM,CAAC;YACjB,QAAQ,EAAE,MAAM,CAAC;YACjB,EAAE,EAAE;gBAAE,EAAE,EAAE,MAAM,CAAA;aAAE,CAAC;YACnB,SAAS,EAAE,OAAO,CAAC;YACnB,SAAS,EAAE,MAAM,CAAC;YAClB,IAAI,EAAE,MAAM,CAAC;YACb,mBAAmB,EAAE;gBACnB,MAAM,EAAE;oBACN,iBAAiB,EAAE,MAAM,CAAC;oBAC1B,WAAW,EAAE,EAAE,CAAC;oBAChB,uBAAuB,EAAE,MAAM,CAAC;oBAChC,4BAA4B,EAAE,MAAM,CAAC;iBACtC,CAAC;gBACF,IAAI,EAAE,MAAM,CAAC;aACd,CAAC;YACF,cAAc,EAAE,MAAM,CAAC;YACvB,mBAAmB,EAAE,MAAM,CAAC;YAC5B,mBAAmB,EAAE,MAAM,CAAC;YAC5B,kBAAkB,EAAE,MAAM,CAAC;YAC3B,YAAY,EAAE,EAAE,CAAC;YACjB,eAAe,EAAE,MAAM,CAAC;YACxB,aAAa,EAAE;gBACb,IAAI,EAAE,MAAM,CAAC;gBACb,MAAM,EAAE;oBAAE,MAAM,EAAE,EAAE,CAAC;oBAAC,YAAY,EAAE,MAAM,CAAC;oBAAC,KAAK,EAAE,EAAE,CAAA;iBAAE,CAAC;aACzD,CAAC;SACH,CAAC;KACH,CAAC;CACH,CAAC;AAEF,MAAM,MAAM,YAAY,GAAG;IACzB,aAAa,EAAE,MAAM,CAAC;IACtB,eAAe,EAAE,MAAM,CAAC;IACxB,OAAO,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF,MAAM,MAAM,OAAO,GAAG;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE;QACP,QAAQ,EAAE,MAAM,CAAC;QACjB,IAAI,EAAE,MAAM,CAAC;QACb,iBAAiB,EAAE,OAAO,CAAC;QAC3B,MAAM,EAAE;YACN,EAAE,EAAE;gBAAE,EAAE,EAAE,MAAM,CAAA;aAAE,CAAC;YACnB,SAAS,EAAE,MAAM,CAAC;YAClB,0BAA0B,EAAE;gBAC1B,IAAI,EAAE,MAAM,CAAC;gBACb,MAAM,EAAE;oBACN,QAAQ,EAAE;wBACR,IAAI,EAAE,MAAM,CAAC;wBACb,MAAM,EAAE;4BACN,KAAK,EAAE,MAAM,CAAC;4BACd,GAAG,EAAE;gCACH,IAAI,EAAE,MAAM,CAAC;gCACb,MAAM,EAAE;oCACN,IAAI,EAAE,MAAM,CAAC;iCACd,CAAC;6BACH,CAAC;yBACH,CAAC;qBACH,EAAE,CAAC;iBACL,CAAC;aACH,CAAC;YACF,cAAc,EACV;gBACE,IAAI,EAAE,MAAM,CAAC;gBACb,MAAM,EAAE;oBACN,IAAI,EAAE,MAAM,CAAC;oBACb,EAAE,EAAE;wBAAE,EAAE,EAAE,MAAM,CAAA;qBAAE,CAAC;oBACnB,IAAI,EAAE,MAAM,CAAC;oBACb,IAAI,EAAE,MAAM,CAAC;iBACd,CAAC;aACH,GACD,SAAS,CAAC;YACd,IAAI,EAAE,MAAM,CAAC;YACb,KAAK,EAAE,MAAM,CAAC;YACd,eAAe,EAAE;gBACf,IAAI,EAAE,MAAM,CAAC;gBACb,MAAM,EAAE;oBACN,QAAQ,EAAE;wBACR,MAAM,EAAE;4BACN,GAAG,EAAE;gCACH,IAAI,EAAE,MAAM,CAAC;gCACb,MAAM,EAAE;oCACN,IAAI,EAAE,MAAM,CAAC;iCACd,CAAC;6BACH,CAAC;4BACF,KAAK,EAAE,MAAM,CAAC;yBACf,CAAC;wBACF,IAAI,EAAE,MAAM,CAAC;qBACd,EAAE,CAAC;iBACL,CAAC;aACH,CAAC;YACF,OAAO,EAAE,MAAM,CAAC;YAChB,aAAa,EAAE,MAAM,CAAC;YACtB,gBAAgB,EAAE,MAAM,GAAG,SAAS,CAAC;SACtC,CAAC;KACH,CAAC;CACH,CAAC;AAEF,MAAM,MAAM,QAAQ,GAAG;IACrB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE;QACP,QAAQ,EAAE,MAAM,CAAC;QACjB,IAAI,EAAE,MAAM,CAAC;QACb,iBAAiB,EAAE,OAAO,CAAC;QAC3B,MAAM,EAAE;YACN,EAAE,EAAE;gBAAE,EAAE,EAAE,MAAM,CAAA;aAAE,CAAC;YACnB,YAAY,EAAE,MAAM,CAAC;YACrB,cAAc,EAAE,MAAM,CAAC;YAEvB,sBAAsB,EAAE;gBACtB,IAAI,EAAE,MAAM,CAAC;gBACb,MAAM,EAAE;oBACN,QAAQ,EAAE;wBACR;4BACE,IAAI,EAAE,MAAM,CAAC;4BACb,MAAM,EAAE;gCACN,KAAK,EAAE,MAAM,CAAC;gCACd,GAAG,EAAE;oCACH,IAAI,EAAE,MAAM,CAAC;oCACb,MAAM,EAAE;wCACN,IAAI,EAAE,MAAM,CAAC;qCACd,CAAC;iCACH,CAAC;6BACH,CAAC;yBACH;qBACF,CAAC;iBACH,CAAC;aACH,CAAC;YACF,qBAAqB,EAAE,MAAM,CAAC;YAC9B,iBAAiB,EAAE,MAAM,CAAC;YAC1B,SAAS,EAAE,MAAM,CAAC;YAClB,6BAA6B,EAAE,MAAM,CAAC;YACtC,WAAW,EAAE,MAAM,CAAC;YACpB,mBAAmB,EAAE,MAAM,CAAC;YAC5B,cAAc,EAAE,MAAM,CAAC;YACvB,oBAAoB,EAAE,MAAM,CAAC;YAC7B,MAAM,EAAE,MAAM,CAAC;YACf,sBAAsB,EAAE,MAAM,CAAC;SAChC,CAAC;KACH,CAAC;CACH,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG;IAC1B,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE;QACP,QAAQ,EAAE,MAAM,CAAC;QACjB,IAAI,EAAE,MAAM,CAAC;QACb,iBAAiB,EAAE,OAAO,CAAC;QAC3B,MAAM,EAAE;YAEN,SAAS,EAAE,MAAM,CAAC;YAClB,WAAW,EAAE,MAAM,CAAC;YACpB,mBAAmB,EAAE,MAAM,CAAC;YAC5B,EAAE,EAAE;gBAAE,EAAE,EAAE,MAAM,CAAA;aAAE,CAAC;YAEnB,oBAAoB,EAAE,MAAM,CAAC;YAC7B,4BAA4B,EAAE,MAAM,CAAC;YACrC,qBAAqB,EAAE,MAAM,CAAC;YAC9B,iBAAiB,EAAE,MAAM,CAAC;YAC1B,sBAAsB,EAAE;gBACtB,IAAI,EAAE,MAAM,CAAC;gBACb,MAAM,EAAE;oBACN,QAAQ,EAAE;wBACR;4BACE,IAAI,EAAE,MAAM,CAAC;4BACb,MAAM,EAAE;gCACN,KAAK,EAAE,MAAM,CAAC;gCACd,GAAG,EAAE;oCACH,IAAI,EAAE,MAAM,CAAC;oCACb,MAAM,EAAE;wCACN,IAAI,EAAE,MAAM,CAAC;qCACd,CAAC;iCACH,CAAC;6BACH,CAAC;yBACH;qBACF,CAAC;iBACH,CAAC;aACH,CAAC;YAGF,cAAc,EAAE,MAAM,CAAC;YACvB,oBAAoB,EAAE,MAAM,CAAC;YAC7B,cAAc,EAAE,MAAM,CAAC;YACvB,YAAY,EAAE,MAAM,CAAC;SACtB,CAAC;KACH,CAAC;CACH,CAAC;AAEF,MAAM,WAAW,QAAQ;IACvB,KAAK,EAAE,IAAI,CAAC;IACZ,KAAK,EAAE,IAAI,CAAC;CACb;AAED,MAAM,MAAM,WAAW,GAAG;IACxB,IAAI,EAAE,QAAQ,CAAC;IACf,aAAa,EAAE,MAAM,CAAC;IACtB,QAAQ,EAAE,MAAM,CAAC;CAClB,GAAG,CAAC;IAAE,QAAQ,EAAE,EAAE,CAAC;IAAC,SAAS,CAAC,EAAE,KAAK,CAAA;CAAE,GAAG;IAAE,SAAS,EAAE,EAAE,CAAC;IAAC,QAAQ,CAAC,EAAE,KAAK,CAAA;CAAE,CAAC,CAAC;AAEhF,MAAM,MAAM,gBAAgB,GAAG,WAAW,CAAC;AAE3C,MAAM,MAAM,WAAW,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,GAAG,CAAC;AAE5C,MAAM,MAAM,iBAAiB,GAAG;IAC9B,WAAW,EAAE,WAAW,CAAC;IACzB,eAAe,EAAE,MAAM,CAAC;IACxB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,QAAQ,CAAC;IACpB,SAAS,EAAE,QAAQ,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,OAAO,CAAC;CACpB,CAAC;AAEF,MAAM,MAAM,uBAAuB,GAAG;IACpC,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,QAAQ,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,QAAQ,CAAC;IACnB,QAAQ,EAAE,QAAQ,CAAC;CACpB,CAAC;AAEF,MAAM,MAAM,uBAAuB,GAAG;IACpC,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,QAAQ,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,QAAQ,CAAC;IACpB,SAAS,EAAE,QAAQ,CAAC;IACpB,SAAS,EAAE,QAAQ,CAAC;IACpB,SAAS,EAAE,QAAQ,CAAC;CACrB,CAAC;AAGF,MAAM,MAAM,YAAY,GAAG,uBAAuB,GAAG,uBAAuB,CAAC;AAE7E,MAAM,MAAM,iBAAiB,GAAG;IAC9B,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,qBAAqB,EAAE,MAAM,GAAG,IAAI,CAAC;IACrC,kBAAkB,EAAE,MAAM,GAAG,IAAI,CAAC;IAClC,uBAAuB,EAAE,MAAM,GAAG,IAAI,CAAC;IACvC,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,oBAAoB,EAAE,MAAM,GAAG,IAAI,CAAC;CACrC,CAAC;AAEF,MAAM,MAAM,uBAAuB,GAAG;IACpC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;CAC3B,CAAC;AAEF,MAAM,MAAM,uBAAuB,GAAG;IACpC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;CAC3B,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAC3B,iBAAiB,GACjB,uBAAuB,GACvB,uBAAuB,CAAC;AAE5B,MAAM,MAAM,eAAe,GAAG;IAC5B,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;CAC1B,CAAC;AAEF,MAAM,WAAW,oBAAoB;IACnC,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,eAAe,EAAE,MAAM,CAAC;IACxB,eAAe,EAAE,MAAM,CAAC;IACxB,cAAc,EAAE,MAAM,CAAC;IACvB,cAAc,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,MAAM,oBAAoB,GAAG;IACjC,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,EAAE;QACX,IAAI,EAAE;YACJ,cAAc,EAAE,MAAM,CAAC;YACvB,WAAW,EAAE;gBACX,IAAI,EAAE,MAAM,CAAC;gBACb,MAAM,EAAE;oBACN,IAAI,EAAE,MAAM,CAAC;oBACb,SAAS,EAAE,MAAM,CAAC;oBAClB,KAAK,EAAE,MAAM,CAAC;oBACd,QAAQ,EAAE,MAAM,GAAG,SAAS,CAAC;iBAC9B,EAAE,CAAC;gBACJ,YAAY,EAAE;oBACZ,QAAQ,EAAE;wBACR,OAAO,EAAE,MAAM,CAAC;wBAChB,MAAM,EAAE,MAAM,CAAC;wBACf,QAAQ,EAAE,MAAM,CAAC;wBACjB,cAAc,EAAE,MAAM,EAAE,CAAC;wBACzB,SAAS,EAAE,MAAM,EAAE,CAAC;qBACrB,CAAC;iBACH,EAAE,CAAC;aACL,CAAC;YACF,MAAM,EAAE,MAAM,CAAC;SAChB,CAAC;QACF,YAAY,EAAE,MAAM,EAAE,CAAC;KACxB,CAAC;IACF,MAAM,EAAE;QACN,IAAI,EAAE,MAAM,CAAC;QACb,UAAU,EAAE;YACV,gBAAgB,EAAE,MAAM,CAAC;SAC1B,CAAC;KACH,EAAE,CAAC;IACJ,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE;QACJ,eAAe,EAAE,MAAM,CAAC;QACxB,cAAc,EAAE,MAAM,CAAC;QACvB,aAAa,EAAE,MAAM,CAAC;QACtB,gBAAgB,EAAE,MAAM,CAAC;QACzB,mBAAmB,EAAE,MAAM,CAAC;QAC5B,WAAW,EAAE,MAAM,CAAC;QACpB,WAAW,EAAE,MAAM,CAAC;QACpB,gBAAgB,EAAE,MAAM,CAAC;QACzB,YAAY,EAAE,MAAM,CAAC;QACrB,UAAU,EAAE,MAAM,CAAC;QACnB,YAAY,EAAE,MAAM,CAAC;QACrB,WAAW,EAAE,MAAM,CAAC;QACpB,GAAG,EAAE,MAAM,CAAC;QACZ,gBAAgB,EAAE,MAAM,EAAE,CAAC;QAC3B,iBAAiB,EAAE,MAAM,CAAC;QAC1B,eAAe,EAAE,MAAM,CAAC;KACzB,CAAC;IACF,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,MAAM,WAAW,GAAG;IACxB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE;QACP,QAAQ,EAAE,MAAM,CAAC;QACjB,IAAI,EAAE,MAAM,CAAC;QACb,iBAAiB,EAAE,OAAO,CAAC;QAC3B,MAAM,EAAE;YACN,IAAI,EAAE,EAAE,CAAC;YACT,KAAK,EAAE,MAAM,CAAC;SACf,CAAC;KACH,CAAC;CACH,CAAC;AAEF,MAAM,MAAM,WAAW,GAAG;IACxB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE;QACP,QAAQ,EAAE,MAAM,CAAC;QACjB,IAAI,EAAE,MAAM,CAAC;QACb,iBAAiB,EAAE,OAAO,CAAC;QAC3B,MAAM,EAAE;YACN,cAAc,EAAE,MAAM,CAAC;YACvB,sBAAsB,EAAE,MAAM,CAAC;YAC/B,mBAAmB,EAAE,MAAM,CAAC;YAC5B,UAAU,EAAE,MAAM,CAAC;YACnB,EAAE,EAAE;gBACF,EAAE,EAAE,MAAM,CAAC;aACZ,CAAC;YACF,sBAAsB,EAAE,MAAM,CAAC;YAC/B,cAAc,EAAE,SAAS,CAAC;YAG1B,aAAa,EAAE;gBACb,MAAM,EAAE;oBAAE,QAAQ,EAAE,EAAE,CAAA;iBAAE,CAAC;gBACzB,IAAI,EAAE,MAAM,CAAC;aACd,CAAC;YACF,eAAe,EAAE,MAAM,CAAC;YACxB,MAAM,EAAE,MAAM,CAAC;YACf,mBAAmB,EAAE,MAAM,CAAC;YAC5B,mBAAmB,EAAE,MAAM,CAAC;SAC7B,CAAC;KACH,CAAC;CACH,CAAC;AAEF,MAAM,MAAM,SAAS,GAAG;IACtB,MAAM,EAAE;QACN,EAAE,EAAE;YACF,EAAE,EAAE,MAAM,CAAC;SACZ,CAAC;QACF,OAAO,EAAE;YACP,MAAM,EAAE;gBACN,QAAQ,EAAE,UAAU,EAAE,CAAC;aACxB,CAAC;YACF,IAAI,EAAE,MAAM,CAAC;SACd,CAAC;QACF,OAAO,EAAE;YACP,MAAM,EAAE;gBACN,EAAE,EAAE;oBACF,EAAE,EAAE,MAAM,CAAC;iBACZ,CAAC;gBACF,IAAI,EAAE,MAAM,CAAC;aACd,CAAC;YACF,IAAI,EAAE,MAAM,CAAC;SACd,CAAC;QACF,aAAa,EAAE;YACb,MAAM,EAAE;gBACN,QAAQ,EAAE,eAAe,EAAE,CAAC;aAC7B,CAAC;YACF,IAAI,EAAE,MAAM,CAAC;SACd,CAAC;KACH,CAAC;IACF,IAAI,EAAE,MAAM,CAAC;CACd,CAAC;AAEF,MAAM,MAAM,eAAe,GAAG;IAC5B,MAAM,EAAE;QACN,GAAG,EAAE;YACH,MAAM,EAAE;gBACN,IAAI,EAAE,MAAM,CAAC;aACd,CAAC;YACF,IAAI,EAAE,MAAM,CAAC;SACd,CAAC;QACF,KAAK,EAAE,MAAM,CAAC;KACf,CAAC;IACF,IAAI,EAAE,MAAM,CAAC;CACd,CAAC;AAEF,MAAM,MAAM,kBAAkB,GAAG;IAC/B,MAAM,EAAE;QACN,GAAG,EAAE;YACH,MAAM,EAAE;gBACN,IAAI,EAAE,MAAM,CAAC;aACd,CAAC;YACF,IAAI,EAAE,MAAM,CAAC;SACd,CAAC;QACF,KAAK,EAAE;YACL,MAAM,EAAE;gBACN,gBAAgB,EAAE,MAAM,CAAC;gBACzB,eAAe,EAAE,MAAM,CAAC;gBACxB,MAAM,EAAE,MAAM,CAAC;aAChB,CAAC;YACF,IAAI,EAAE,MAAM,CAAC;SACd,CAAC;KACH,CAAC;IACF,IAAI,EAAE,MAAM,CAAC;CACd,CAAC;AAEF,MAAM,MAAM,UAAU,GAAG;IACvB,MAAM,EAAE;QACN,GAAG,EAAE,MAAM,CAAC;QACZ,KAAK,EAAE;YACL,MAAM,EAAE;gBACN,SAAS,EAAE;oBACT,MAAM,EAAE;wBACN,QAAQ,EAAE,kBAAkB,EAAE,CAAC;qBAChC,CAAC;oBACF,IAAI,EAAE,MAAM,CAAC;iBACd,CAAC;aACH,CAAC;YACF,IAAI,EAAE,MAAM,CAAC;SACd,CAAC;KACH,CAAC;IACF,IAAI,EAAE,MAAM,CAAC;CACd,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/common/types.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAiNhD,MAAM,sBAAsB,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,sBAAsB,CAAC;AACrE,MAAM,uBAAuB,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,uBAAuB,CAAC;AACvE,MAAM,uBAAuB,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,uBAAuB,CAAC;AACvE,MAAM,kBAAkB,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,kBAAkB,CAAC;AAC7D,MAAM,sBAAsB,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,sBAAsB,CAAC;AACrE,MAAM,sBAAsB,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,sBAAsB,CAAC;AACrE,MAAM,uBAAuB,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,uBAAuB,CAAC;AACvE,MAAM,uBAAuB,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,uBAAuB,CAAC;AACvE,MAAM,qBAAqB,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,qBAAqB,CAAC;AACnE,MAAM,sBAAsB,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,sBAAsB,CAAC;AACrE,MAAM,qBAAqB,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,qBAAqB,CAAC;AACnE,MAAM,sBAAsB,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,sBAAsB,CAAC;AACrE,MAAM,sBAAsB,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,sBAAsB,CAAC;AACrE,MAAM,uBAAuB,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,uBAAuB,CAAC;AACvE,MAAM,sBAAsB,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,sBAAsB,CAAC;AACrE,MAAM,wBAAwB,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,wBAAwB,CAAC","sourcesContent":["import BN from \"bn.js\";\nimport { conf, CONF_ENV } from \"./constants.js\";\n\nexport type SuiNetwork = \"mainnet\" | \"testnet\" | \"devnet\" | \"localnet\";\n\nexport type PoolName = SingleAssetPoolNames | DoubleAssetPoolNames;\n\nexport type SingleAssetPoolNames =\n | \"ALPHA\"\n | \"NAVI-SUI\"\n | \"NAVI-VSUI\"\n | \"NAVI-WETH\"\n | \"NAVI-USDT\"\n | \"NAVI-WUSDC\"\n | \"NAVI-HASUI\"\n | \"NAVI-USDC\"\n | \"BUCKET-BUCK\"\n | \"NAVI-USDY\"\n | \"NAVI-AUSD\"\n | \"NAVI-ETH\"\n | \"NAVI-NS\"\n | \"NAVI-NAVX\"\n | \"NAVI-STSUI\"\n | LoopingPoolNames;\n\nexport type LoopingPoolNames =\n | \"NAVI-LOOP-HASUI-SUI\"\n | \"NAVI-LOOP-USDT-USDC\"\n | \"NAVI-LOOP-SUI-VSUI\"\n | \"NAVI-LOOP-USDC-USDT\";\n\nexport type DoubleAssetPoolNames =\n | \"HASUI-SUI\"\n | \"USDY-WUSDC\"\n | \"ALPHA-SUI\"\n | \"ALPHA-WUSDC\"\n | \"USDT-WUSDC\"\n | \"WUSDC-SUI\"\n | \"WUSDC-WBTC\"\n | \"WETH-WUSDC\"\n | \"NAVX-SUI\"\n | \"BUCK-WUSDC\"\n | \"CETUS-SUI\"\n | \"WSOL-WUSDC\"\n | \"FUD-SUI\"\n | \"BLUB-SUI\"\n | \"SCA-SUI\"\n | \"USDC-SUI\"\n | \"USDC-USDT\"\n | \"ALPHA-USDC\"\n | \"USDC-WUSDC\"\n | \"USDC-ETH\"\n | \"DEEP-SUI\"\n | \"BUCK-SUI\"\n | \"BLUEFIN-SUI-USDC\"\n | \"BLUEFIN-USDT-USDC\"\n | \"BLUEFIN-SUI-BUCK\"\n | \"BLUEFIN-AUSD-USDC\"\n | \"BLUEFIN-SUI-AUSD\"\n | \"BLUEFIN-ALPHA-USDC\"\n | \"BLUEFIN-WBTC-USDC\"\n | \"BLUEFIN-NAVX-VSUI\"\n | \"BLUEFIN-BLUE-SUI\"\n | \"BLUEFIN-BLUE-USDC\"\n | \"BLUEFIN-SEND-USDC\"\n | \"BLUEFIN-WBTC-SUI\"\n | \"BLUEFIN-DEEP-SUI\"\n | \"BLUEFIN-STSUI-SUI\"\n | \"BLUEFIN-STSUI-USDC\"\n | \"BLUEFIN-STSUI-ETH\"\n | \"BLUEFIN-STSUI-WSOL\"\n | \"BLUEFIN-ALPHA-STSUI\"\n | \"BLUEFIN-SUIUSDT-USDC\"\n | \"BLUEFIN-STSUI-BUCK\"\n | \"BLUEFIN-STSUI-MUSD\"\n | AutoBalancePoolNames;\n\nexport type AutoBalancePoolNames =\n | \"BLUEFIN-AUTOBALANCE-USDT-USDC\"\n | \"BLUEFIN-AUTOBALANCE-SUI-USDC\"\n | \"BLUEFIN-AUTOBALANCE-SUIUSDT-USDC\"\n | \"BLUEFIN-AUTOBALANCE-DEEP-BLUE\"\n | \"BLUEFIN-AUTOBALANCE-DEEP-SUI\"\n | \"BLUEFIN-AUTOBALANCE-BLUE-SUI\";\n\nexport type CoinName =\n | \"ALPHA\"\n | \"SUI\"\n | \"WUSDC\"\n | \"USDC\"\n | \"USDT\"\n | \"VSUI\"\n | \"NAVX\"\n | \"SCA\"\n | \"CETUS\"\n | \"AFSUI\"\n | \"WETH\"\n | \"APT\"\n | \"WSOL\"\n | \"SLP\"\n | \"WBTC\"\n | \"CELO\"\n | \"TURBOS\"\n | \"HASUI\"\n | \"USDY\"\n | \"BUCK\"\n | \"FUD\"\n | \"BLUB\"\n | \"ETH\"\n | \"DEEP\"\n | \"AUSD\"\n | \"NS\"\n | \"BLUE\"\n | \"SEND\"\n | \"STSUI\"\n | \"SUIUSDT\"\n | \"MUSD\";\n\nexport type StrategyType =\n | \"LOOPING\"\n | \"STABLE\"\n | \"STAKING\"\n | \"LIQUIDITY-POOL\"\n | \"LENDING\"\n | \"LIQUID-STAKING\"\n | \"AUTOBALANCE-LIQUIDITY-POOL\";\n\n/**\n * Represents a coin with its name, type, icon, and exponent.\n */\nexport interface Coin {\n /**\n * The name of the coin (e.g., SUI, ALPHA, WUSDC, USDT).\n */\n name: CoinName;\n\n /**\n * The type of the coin object on the Sui blockchain.\n */\n type: CoinType;\n\n /**\n * The icon or logo associated with the coin.\n */\n icon: Icon;\n\n /**\n * The exponent used to scale the coin's value.\n * Typically used to convert between the smallest unit and the base unit.\n * For example, SUI has an exponent of 9 because 1 SUI equals 10^9 MISTs.\n */\n expo: number;\n}\n\nexport type Icon =\n | \"https://coinmeta.polymedia.app/img/coins/0x0000000000000000000000000000000000000000000000000000000000000002-sui-SUI.svg\"\n | \"https://coinmeta.polymedia.app/img/coins/0x5d4b302506645c37ff133b98c4b50a5ae14841659738d6d733d59d0d217a93bf-coin-COIN.webp\"\n | \"https://coinmeta.polymedia.app/img/coins/0xc060006111016b8a020ad5b33834984a437aaa7d3c74c18e09a95d48aceab08c-coin-COIN.webp\"\n | \"https://coinmeta.polymedia.app/img/coins/0x549e8b69270defbfafd4f94e17ec44cdbdd99820b33bda2278dea3b9a32d3f55-cert-CERT.webp\"\n | \"https://coinmeta.polymedia.app/img/coins/0xa99b8952d4f7d947ea77fe0ecdcc9e5fc0bcab2841d6e2a5aa00c3044e5544b5-navx-NAVX.webp\"\n | \"https://suivision.xyz/images/coin-default.png\"\n | \"https://coinmeta.polymedia.app/img/coins/0x7016aae72cfc67f2fadf55769c0a7dd54291a583b63051a5ed71081cce836ac6-sca-SCA.webp\"\n | \"https://coinmeta.polymedia.app/img/coins/0xf325ce1300e8dac124071d3152c5c5ee6174914f8bc2161e88329cf579246efc-afsui-AFSUI.webp\"\n | \"https://coinmeta.polymedia.app/img/coins/0xaf8cd5edc19c4512f4259f0bee101a40d41ebed738ade5874359610ef8eeced5-coin-COIN.webp\"\n | \"https://coinmeta.polymedia.app/img/coins/0x3a5143bb1196e3bcdfab6203d1683ae29edd26294fc8bfeafe4aaa9d2704df37-coin-COIN.webp\"\n | \"https://coinmeta.polymedia.app/img/coins/0xb7844e289a8410e50fb3ca48d69eb9cf29e27d223ef90353fe1bd8e27ff8f3f8-coin-COIN.webp\"\n | \"https://coinmeta.polymedia.app/img/coins/0xc44d97a4bc4e5a33ca847b72b123172c88a6328196b71414f32c3070233604b2-slp-SLP.webp\"\n | \"https://coinmeta.polymedia.app/img/coins/0x027792d9fed7f9844eb4839566001bb6f6cb4804f66aa2da6fe1ee242d896881-coin-COIN.webp\"\n | \"https://coinmeta.polymedia.app/img/coins/0xa198f3be41cda8c07b3bf3fee02263526e535d682499806979a111e88a5a8d0f-coin-COIN.webp\"\n | \"https://coinmeta.polymedia.app/img/coins/0x06864a6f921804860930db6ddbe2e16acdf8504495ea7481637a1c8b9a8fe54b-cetus-CETUS.webp\"\n | \"https://coinmeta.polymedia.app/img/coins/0x5d1f47ea69bb0de31c313d7acf89b890dbb8991ea8e03c6c355171f84bb1ba4a-turbos-TURBOS.svg\"\n | \"https://7taj6jfau6n3dri7agspzfnva7qbj5sizz5xc3lb56nmxpsyoiba.arweave.net/_MCfJKCnm7HFHwGk_JW1B-AU9kjOe3FtYe-ay75YcgI\"\n | \"https://coinmeta.polymedia.app/img/coins/0xbde4ba4c2e274a60ce15c1cfff9e5c42e41654ac8b6d906a57efa4bd3c29f47d-hasui-HASUI.svg\"\n | \"https://coinmeta.polymedia.app/img/coins/0x960b531667636f39e85867775f52f6b1f220a058c4de786905bdf761e06a56bb-usdy-USDY.svg\"\n | \"https://imagedelivery.net/cBNDGgkrsEA-b_ixIp9SkQ/buck.svg/public\"\n | \"\";\n\nexport type CoinType =\n | \"0xfe3afec26c59e874f3c1d60b8203cb3852d2bb2aa415df9548b8d688e6683f93::alpha::ALPHA\"\n | \"0x2::sui::SUI\"\n | \"0x549e8b69270defbfafd4f94e17ec44cdbdd99820b33bda2278dea3b9a32d3f55::cert::CERT\"\n | \"0x5d4b302506645c37ff133b98c4b50a5ae14841659738d6d733d59d0d217a93bf::coin::COIN\"\n | \"0xc060006111016b8a020ad5b33834984a437aaa7d3c74c18e09a95d48aceab08c::coin::COIN\"\n | \"0xa99b8952d4f7d947ea77fe0ecdcc9e5fc0bcab2841d6e2a5aa00c3044e5544b5::navx::NAVX\"\n | \"0x7016aae72cfc67f2fadf55769c0a7dd54291a583b63051a5ed71081cce836ac6::sca::SCA\"\n | \"0xf325ce1300e8dac124071d3152c5c5ee6174914f8bc2161e88329cf579246efc::afsui::AFSUI\"\n | \"0xaf8cd5edc19c4512f4259f0bee101a40d41ebed738ade5874359610ef8eeced5::coin::COIN\"\n | \"0x3a5143bb1196e3bcdfab6203d1683ae29edd26294fc8bfeafe4aaa9d2704df37::coin::COIN\"\n | \"0xb7844e289a8410e50fb3ca48d69eb9cf29e27d223ef90353fe1bd8e27ff8f3f8::coin::COIN\"\n | \"0xc44d97a4bc4e5a33ca847b72b123172c88a6328196b71414f32c3070233604b2::slp::SLP\"\n | \"0x27792d9fed7f9844eb4839566001bb6f6cb4804f66aa2da6fe1ee242d896881::coin::COIN\"\n | \"0xa198f3be41cda8c07b3bf3fee02263526e535d682499806979a111e88a5a8d0f::coin::COIN\"\n | \"0x6864a6f921804860930db6ddbe2e16acdf8504495ea7481637a1c8b9a8fe54b::cetus::CETUS\"\n | \"0x5d1f47ea69bb0de31c313d7acf89b890dbb8991ea8e03c6c355171f84bb1ba4a::turbos::TURBOS\"\n | \"0xbde4ba4c2e274a60ce15c1cfff9e5c42e41654ac8b6d906a57efa4bd3c29f47d::hasui::HASUI\"\n | \"0x960b531667636f39e85867775f52f6b1f220a058c4de786905bdf761e06a56bb::usdy::USDY\"\n | \"0xce7ff77a83ea0cb6fd39bd8748e2ec89a3f41e8efdc3f4eb123e0ca37b184db2::buck::BUCK\"\n | \"0x76cb819b01abed502bee8a702b4c2d547532c12f25001c9dea795a5e631c26f1::fud::FUD\"\n | \"0xfa7ac3951fdca92c5200d468d31a365eb03b2be9936fde615e69f0c1274ad3a0::BLUB::BLUB\"\n | \"0xdba34672e30cb065b1f93e3ab55318768fd6fef66c15942c9f7cb846e2f900e7::usdc::USDC\"\n | \"0xd0e89b2af5e4910726fbcd8b8dd37bb79b29e5f83f7491bca830e94f7f226d29::eth::ETH\"\n | \"0xdeeb7a4662eec9f2f3def03fb937a663dddaa2e215b8078a284d026b7946c270::deep::DEEP\"\n | \"0x2053d08c1e2bd02791056171aab0fd12bd7cd7efad2ab8f6b9c8902f14df2ff2::ausd::AUSD\"\n | \"0x5145494a5f5100e645e4b0aa950fa6b68f614e8c59e17bc5ded3495123a79178::ns::NS\"\n | \"0xe1b45a0e641b9955a20aa0ad1c1f4ad86aad8afb07296d4085e349a50e90bdca::blue::BLUE\"\n | \"0xb45fcfcc2cc07ce0702cc2d229621e046c906ef14d9b25e8e4d25f6e8763fef7::send::SEND\"\n | \"0xd1b72982e40348d069bb1ff701e634c117bb5f741f44dff91e472d3b01461e55::stsui::STSUI\"\n | \"0x375f70cf2ae4c00bf37117d0c85a2c71545e6ee05c4a5c7d282cd66a4504b068::usdt::USDT\"\n | \"0xe44df51c0b21a27ab915fa1fe2ca610cd3eaa6d9666fe5e62b988bf7f0bd8722::musd::MUSD\";\n\nconst ALPHA_SUI_POOL_RECEIPT = conf[CONF_ENV].ALPHA_SUI_POOL_RECEIPT;\nconst USDY_WUSDC_POOL_RECEIPT = conf[CONF_ENV].USDY_WUSDC_POOL_RECEIPT;\nconst USDT_WUSDC_POOL_RECEIPT = conf[CONF_ENV].USDT_WUSDC_POOL_RECEIPT;\nconst ALPHA_POOL_RECEIPT = conf[CONF_ENV].ALPHA_POOL_RECEIPT;\nconst HASUI_SUI_POOL_RECEIPT = conf[CONF_ENV].HASUI_SUI_POOL_RECEIPT;\nconst WUSDC_SUI_POOL_RECEIPT = conf[CONF_ENV].WUSDC_SUI_POOL_RECEIPT;\nconst WUSDC_WBTC_POOL_RECEIPT = conf[CONF_ENV].WUSDC_WBTC_POOL_RECEIPT;\nconst WETH_WUSDC_POOL_RECEIPT = conf[CONF_ENV].WETH_WUSDC_POOL_RECEIPT;\nconst NAVI_SUI_POOL_RECEIPT = conf[CONF_ENV].NAVI_SUI_POOL_RECEIPT;\nconst NAVI_VSUI_POOL_RECEIPT = conf[CONF_ENV].NAVI_VSUI_POOL_RECEIPT;\nconst NAVX_SUI_POOL_RECEIPT = conf[CONF_ENV].NAVX_SUI_POOL_RECEIPT;\nconst NAVI_WETH_POOL_RECEIPT = conf[CONF_ENV].NAVI_WETH_POOL_RECEIPT;\nconst NAVI_USDT_POOL_RECEIPT = conf[CONF_ENV].NAVI_USDT_POOL_RECEIPT;\nconst NAVI_WUSDC_POOL_RECEIPT = conf[CONF_ENV].NAVI_WUSDC_POOL_RECEIPT;\nconst NAVI_USDC_POOL_RECEIPT = conf[CONF_ENV].NAVI_USDC_POOL_RECEIPT;\nconst BUCKET_BUCK_POOL_RECEIPT = conf[CONF_ENV].BUCKET_BUCK_POOL_RECEIPT;\nexport type PoolReceipt =\n | typeof ALPHA_SUI_POOL_RECEIPT\n | typeof USDY_WUSDC_POOL_RECEIPT\n | typeof USDT_WUSDC_POOL_RECEIPT\n | typeof ALPHA_POOL_RECEIPT\n | typeof HASUI_SUI_POOL_RECEIPT\n | typeof WUSDC_SUI_POOL_RECEIPT\n | typeof WUSDC_WBTC_POOL_RECEIPT\n | typeof WETH_WUSDC_POOL_RECEIPT\n | typeof NAVI_SUI_POOL_RECEIPT\n | typeof NAVI_VSUI_POOL_RECEIPT\n | typeof NAVX_SUI_POOL_RECEIPT\n | typeof NAVI_WETH_POOL_RECEIPT\n | typeof NAVI_USDT_POOL_RECEIPT\n | typeof NAVI_WUSDC_POOL_RECEIPT\n | typeof NAVI_USDC_POOL_RECEIPT\n | typeof BUCKET_BUCK_POOL_RECEIPT;\n\nexport interface PoolData {\n weight: number;\n lastUpdateTime?: number;\n pendingRewards?: string;\n imageUrl1?: string | undefined;\n imageUrl2?: string | undefined;\n lockIcon?: string | undefined;\n poolName: string;\n}\nexport interface PoolWeightDistribution {\n coinType: string;\n totalWeight: number;\n data: PoolData[];\n}\n\nexport type CoinAmounts = {\n coinA: BN;\n coinB: BN;\n};\n\nexport type CetusInvestor = {\n content: {\n fields: {\n free_balance_a: string;\n free_balance_b: string;\n lower_tick: string;\n upper_tick: string;\n };\n };\n};\n\nexport type BluefinInvestor = CetusInvestor;\n\nexport type NaviInvestor = {\n content: {\n fields: {\n safe_borrow_percentage: string;\n tokensDeposited: string;\n current_debt_to_supply_ratio: string;\n };\n };\n};\n\nexport type BucketInvestor = {\n content: {\n fields: {\n tokensDeposited: string;\n stake_proof: {\n type: string;\n fields: {\n stake_amount: string;\n };\n };\n };\n };\n};\n\nexport type CommonInvestorFields = {\n objectId: string;\n version: string;\n digest: string;\n type: string;\n content: {\n dataType: string;\n type: string;\n hasPublicTransfer: boolean;\n fields: {\n id: {\n id: string;\n };\n performance_fee: string;\n performance_fee_max_cap: string;\n };\n };\n};\n\nexport type Investor =\n | (CetusInvestor & CommonInvestorFields)\n | (NaviInvestor & CommonInvestorFields)\n | (BucketInvestor & CommonInvestorFields)\n | (BluefinInvestor & CommonInvestorFields);\n\nexport type CetusPoolType = {\n objectId: string;\n version: string;\n digest: string;\n content: {\n dataType: string;\n type: string;\n hasPublicTransfer: boolean;\n fields: {\n xTokenSupply: string;\n tokensInvested: string;\n coin_a: string;\n coin_b: string;\n current_sqrt_price: string;\n current_tick_index: {\n fields: { bits: number };\n type: string;\n };\n fee_growth_global_a: string;\n fee_growth_global_b: string;\n fee_protocol_coin_a: string;\n fee_protocol_coin_b: string;\n fee_rate: string;\n id: { id: string };\n index: string;\n is_pause: boolean;\n liquidity: string;\n position_manager: {\n fields: {\n position_index: string;\n positions: {\n fields: {\n head: string;\n id: { id: string };\n size: string;\n tail: string;\n };\n type: string;\n };\n tick_spacing: number;\n };\n type: string;\n };\n // reward_manager: {};\n // tick_manager: {};\n tick_spacing: number;\n url: string;\n };\n };\n};\n\nexport type BluefinPoolType = {\n objectId: string;\n version: string;\n digest: string;\n content: {\n dataType: string;\n type: string;\n hasPublicTransfer: boolean;\n fields: {\n coin_a: string;\n coin_b: string;\n current_sqrt_price: string;\n current_tick_index: {\n fields: { bits: number };\n type: string;\n };\n fee_growth_global_coin_a: string;\n fee_growth_global_coin_b: string;\n fee_rate: string;\n icon_url: string;\n id: { id: string };\n is_paused: boolean;\n liquidity: string;\n name: string;\n observation_manager: {\n fields: {\n observation_index: string;\n observation: [];\n observation_cardinality: string;\n observation_cardinality_next: string;\n };\n type: string;\n };\n position_index: string;\n protocol_fee_coin_a: string;\n protocol_fee_coin_b: string;\n protocol_fee_share: string;\n reward_infos: [];\n sequence_number: string;\n ticks_manager: {\n type: string;\n fields: { bitmap: []; tick_spacing: number; ticks: [] };\n };\n };\n };\n};\n\nexport type AlphaReceipt = {\n lockedBalance: string;\n unlockedBalance: string;\n balance: string;\n};\n\nexport type Receipt = {\n objectId: string;\n version: string;\n digest: string;\n content: {\n dataType: string;\n type: string;\n hasPublicTransfer: boolean;\n fields: {\n id: { id: string };\n image_url: string;\n last_acc_reward_per_xtoken: {\n type: string;\n fields: {\n contents: {\n type: string;\n fields: {\n value: string;\n key: {\n type: string;\n fields: {\n name: string;\n };\n };\n };\n }[];\n };\n };\n locked_balance:\n | {\n type: string;\n fields: {\n head: string;\n id: { id: string };\n size: string;\n tail: string;\n };\n }\n | undefined;\n name: string;\n owner: string;\n pending_rewards: {\n type: string;\n fields: {\n contents: {\n fields: {\n key: {\n type: string;\n fields: {\n name: string;\n };\n };\n value: string;\n };\n type: string;\n }[];\n };\n };\n pool_id: string;\n xTokenBalance: string;\n unlocked_xtokens: string | undefined;\n };\n };\n};\n\nexport type PoolType = {\n objectId: string;\n version: string;\n digest: string;\n content: {\n dataType: string;\n type: string;\n hasPublicTransfer: boolean;\n fields: {\n id: { id: string };\n xTokenSupply: string;\n tokensInvested: string;\n // rewards: Bag,\n acc_rewards_per_xtoken: {\n type: string;\n fields: {\n contents: [\n {\n type: string;\n fields: {\n value: string;\n key: {\n type: string;\n fields: {\n name: string;\n };\n };\n };\n },\n ];\n };\n };\n locked_period_in_days: string;\n locking_start_day: string;\n alpha_bal: string;\n locked_balance_withdrawal_fee: string;\n deposit_fee: string;\n deposit_fee_max_cap: string;\n withdrawal_fee: string;\n withdraw_fee_max_cap: string;\n weight: string;\n alphaUnlockedPerSecond: string;\n };\n };\n};\n\nexport type AlphaPoolType = {\n objectId: string;\n version: string;\n digest: string;\n content: {\n dataType: string;\n type: string;\n hasPublicTransfer: boolean;\n fields: {\n // acc_rewards_per_xtoken: VecMap<TypeName,u256>,\n alpha_bal: string;\n deposit_fee: string;\n deposit_fee_max_cap: string;\n id: { id: string };\n // image_url: string;\n instant_withdraw_fee: string;\n instant_withdraw_fee_max_cap: string;\n locked_period_in_days: string;\n locking_start_day: string;\n acc_rewards_per_xtoken: {\n type: string;\n fields: {\n contents: [\n {\n type: string;\n fields: {\n value: string;\n key: {\n type: string;\n fields: {\n name: string;\n };\n };\n };\n },\n ];\n };\n };\n // name: string;\n // rewards: Bag,\n tokensInvested: string;\n withdraw_fee_max_cap: string;\n withdrawal_fee: string;\n xTokenSupply: string;\n };\n };\n};\n\nexport interface CoinPair {\n coinA: Coin;\n coinB: Coin;\n}\n\nexport type SwapOptions = {\n pair: CoinPair;\n senderAddress: string;\n slippage: number;\n} & ({ inAmount: BN; outAmount?: never } | { outAmount: BN; inAmount?: never });\n\nexport type CetusSwapOptions = SwapOptions;\n\nexport type TickSpacing = 2 | 10 | 60 | 200;\n\nexport type CreatePoolOptions = {\n tickSpacing: TickSpacing;\n initializePrice: number;\n imageUrl: string;\n coinNameA: CoinName;\n coinNameB: CoinName;\n amount: number;\n isAmountA: boolean;\n};\n\nexport type AlphaFiSingleAssetVault = {\n poolId: string;\n poolName: PoolName;\n receiptName: string;\n receiptType: string;\n coinType: CoinType;\n coinName: CoinName;\n};\n\nexport type AlphaFiDoubleAssetVault = {\n poolId: string;\n poolName: PoolName;\n receiptName: string;\n receiptType: string;\n coinTypeA: CoinType;\n coinTypeB: CoinType;\n coinNameA: CoinName;\n coinNameB: CoinName;\n};\n\n// Union type for both single and double asset vaults\nexport type AlphaFiVault = AlphaFiSingleAssetVault | AlphaFiDoubleAssetVault;\n\nexport type AlphaVaultBalance = {\n lockedAlphaCoins: string | null;\n lockedAlphaCoinsInUSD: string | null;\n unlockedAlphaCoins: string | null;\n unlockedAlphaCoinsInUSD: string | null;\n totalAlphaCoins: string | null;\n totalAlphaCoinsInUSD: string | null;\n};\n\nexport type DoubleAssetVaultBalance = {\n coinA: string | null;\n coinB: string | null;\n valueInUSD: string | null;\n};\n\nexport type SingleAssetVaultBalance = {\n coin: string | null;\n valueInUSD: string | null;\n};\n\nexport type AlphaFiVaultBalance =\n | AlphaVaultBalance\n | SingleAssetVaultBalance\n | DoubleAssetVaultBalance;\n\nexport type LpBreakdownType = {\n coinA: string | null;\n coinAInUsd: string | null;\n coinB: string | null;\n coinBInUsd: string | null;\n liquidity: string | null;\n};\n\nexport interface RebalanceHistoryType {\n timestamp: string;\n lower_tick: string;\n upper_tick: string;\n after_price: string;\n amount_a_before: string;\n amount_b_before: string;\n amount_a_after: string;\n amount_b_after: string;\n}\n\nexport type TransactionBlockType = {\n digest: string;\n transaction: {\n data: {\n messageVersion: string;\n transaction: {\n kind: string;\n inputs: {\n type: string;\n valueType: string;\n value: number;\n objectId: string | undefined;\n }[];\n transactions: {\n MoveCall: {\n package: string;\n module: string;\n function: string;\n type_arguments: string[];\n arguments: string[];\n };\n }[];\n };\n sender: string;\n };\n txSignatures: string[];\n };\n events: {\n type: string;\n parsedJson: {\n after_sqrt_price: string;\n };\n }[];\n timestampMs: string;\n checkpoint: string;\n};\n\nexport interface NaviVoloData {\n data: {\n operatorBalance: string;\n collectableFee: string;\n pendingStakes: string;\n poolTotalRewards: string;\n unstakeTicketSupply: string;\n totalStaked: string;\n activeStake: string;\n calcTotalRewards: string;\n currentEpoch: string;\n validators: object;\n exchangeRate: string;\n totalSupply: string;\n apy: string;\n sortedValidators: string[];\n maxInstantUnstake: string;\n maxNoFeeUnstake: string;\n };\n code: number;\n}\n\nexport type LoopingDebt = {\n objectId: string;\n version: string;\n digest: string;\n content: {\n dataType: string;\n type: string;\n hasPublicTransfer: boolean;\n fields: {\n name: [];\n value: string;\n };\n };\n};\n\nexport type Distributor = {\n objectId: string;\n version: string;\n digest: string;\n type: string;\n content: {\n dataType: string;\n type: string;\n hasPublicTransfer: boolean;\n fields: {\n airdrop_wallet: string;\n airdrop_wallet_balance: string;\n dust_wallet_address: string;\n fee_wallet: string;\n id: {\n id: string;\n };\n next_halving_timestamp: string;\n pool_allocator: Allocator;\n\n // to-do\n reward_unlock: {\n fields: { contents: [] };\n type: string;\n };\n start_timestamp: string;\n target: string;\n team_wallet_address: string;\n team_wallet_balance: string;\n };\n };\n};\n\nexport type Allocator = {\n fields: {\n id: {\n id: string;\n };\n members: {\n fields: {\n contents: MemberType[];\n };\n type: string;\n };\n rewards: {\n fields: {\n id: {\n id: string;\n };\n size: string;\n };\n type: string;\n };\n total_weights: {\n fields: {\n contents: TotalWeightType[];\n };\n type: string;\n };\n };\n type: string;\n};\n\nexport type TotalWeightType = {\n fields: {\n key: {\n fields: {\n name: string;\n };\n type: string;\n };\n value: string;\n };\n type: string;\n};\n\nexport type MemberPoolDataType = {\n fields: {\n key: {\n fields: {\n name: string;\n };\n type: string;\n };\n value: {\n fields: {\n last_update_time: string;\n pending_rewards: string;\n weight: string;\n };\n type: string;\n };\n };\n type: string;\n};\n\nexport type MemberType = {\n fields: {\n key: string;\n value: {\n fields: {\n pool_data: {\n fields: {\n contents: MemberPoolDataType[];\n };\n type: string;\n };\n };\n type: string;\n };\n };\n type: string;\n};\n"]}
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/common/types.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAkNhD,MAAM,sBAAsB,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,sBAAsB,CAAC;AACrE,MAAM,uBAAuB,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,uBAAuB,CAAC;AACvE,MAAM,uBAAuB,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,uBAAuB,CAAC;AACvE,MAAM,kBAAkB,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,kBAAkB,CAAC;AAC7D,MAAM,sBAAsB,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,sBAAsB,CAAC;AACrE,MAAM,sBAAsB,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,sBAAsB,CAAC;AACrE,MAAM,uBAAuB,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,uBAAuB,CAAC;AACvE,MAAM,uBAAuB,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,uBAAuB,CAAC;AACvE,MAAM,qBAAqB,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,qBAAqB,CAAC;AACnE,MAAM,sBAAsB,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,sBAAsB,CAAC;AACrE,MAAM,qBAAqB,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,qBAAqB,CAAC;AACnE,MAAM,sBAAsB,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,sBAAsB,CAAC;AACrE,MAAM,sBAAsB,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,sBAAsB,CAAC;AACrE,MAAM,uBAAuB,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,uBAAuB,CAAC;AACvE,MAAM,sBAAsB,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,sBAAsB,CAAC;AACrE,MAAM,wBAAwB,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,wBAAwB,CAAC","sourcesContent":["import BN from \"bn.js\";\nimport { conf, CONF_ENV } from \"./constants.js\";\n\nexport type SuiNetwork = \"mainnet\" | \"testnet\" | \"devnet\" | \"localnet\";\n\nexport type PoolName = SingleAssetPoolNames | DoubleAssetPoolNames;\n\nexport type SingleAssetPoolNames =\n | \"ALPHA\"\n | \"NAVI-SUI\"\n | \"NAVI-VSUI\"\n | \"NAVI-WETH\"\n | \"NAVI-USDT\"\n | \"NAVI-WUSDC\"\n | \"NAVI-HASUI\"\n | \"NAVI-USDC\"\n | \"BUCKET-BUCK\"\n | \"NAVI-USDY\"\n | \"NAVI-AUSD\"\n | \"NAVI-ETH\"\n | \"NAVI-NS\"\n | \"NAVI-NAVX\"\n | \"NAVI-STSUI\"\n | LoopingPoolNames;\n\nexport type LoopingPoolNames =\n | \"NAVI-LOOP-HASUI-SUI\"\n | \"NAVI-LOOP-USDT-USDC\"\n | \"NAVI-LOOP-SUI-VSUI\"\n | \"NAVI-LOOP-USDC-USDT\"\n | \"NAVI-LOOP-SUI-STSUI\";\n\nexport type DoubleAssetPoolNames =\n | \"HASUI-SUI\"\n | \"USDY-WUSDC\"\n | \"ALPHA-SUI\"\n | \"ALPHA-WUSDC\"\n | \"USDT-WUSDC\"\n | \"WUSDC-SUI\"\n | \"WUSDC-WBTC\"\n | \"WETH-WUSDC\"\n | \"NAVX-SUI\"\n | \"BUCK-WUSDC\"\n | \"CETUS-SUI\"\n | \"WSOL-WUSDC\"\n | \"FUD-SUI\"\n | \"BLUB-SUI\"\n | \"SCA-SUI\"\n | \"USDC-SUI\"\n | \"USDC-USDT\"\n | \"ALPHA-USDC\"\n | \"USDC-WUSDC\"\n | \"USDC-ETH\"\n | \"DEEP-SUI\"\n | \"BUCK-SUI\"\n | \"BLUEFIN-SUI-USDC\"\n | \"BLUEFIN-USDT-USDC\"\n | \"BLUEFIN-SUI-BUCK\"\n | \"BLUEFIN-AUSD-USDC\"\n | \"BLUEFIN-SUI-AUSD\"\n | \"BLUEFIN-ALPHA-USDC\"\n | \"BLUEFIN-WBTC-USDC\"\n | \"BLUEFIN-NAVX-VSUI\"\n | \"BLUEFIN-BLUE-SUI\"\n | \"BLUEFIN-BLUE-USDC\"\n | \"BLUEFIN-SEND-USDC\"\n | \"BLUEFIN-WBTC-SUI\"\n | \"BLUEFIN-DEEP-SUI\"\n | \"BLUEFIN-STSUI-SUI\"\n | \"BLUEFIN-STSUI-USDC\"\n | \"BLUEFIN-STSUI-ETH\"\n | \"BLUEFIN-STSUI-WSOL\"\n | \"BLUEFIN-ALPHA-STSUI\"\n | \"BLUEFIN-SUIUSDT-USDC\"\n | \"BLUEFIN-STSUI-BUCK\"\n | \"BLUEFIN-STSUI-MUSD\"\n | AutoBalancePoolNames;\n\nexport type AutoBalancePoolNames =\n | \"BLUEFIN-AUTOBALANCE-USDT-USDC\"\n | \"BLUEFIN-AUTOBALANCE-SUI-USDC\"\n | \"BLUEFIN-AUTOBALANCE-SUIUSDT-USDC\"\n | \"BLUEFIN-AUTOBALANCE-DEEP-BLUE\"\n | \"BLUEFIN-AUTOBALANCE-DEEP-SUI\"\n | \"BLUEFIN-AUTOBALANCE-BLUE-SUI\";\n\nexport type CoinName =\n | \"ALPHA\"\n | \"SUI\"\n | \"WUSDC\"\n | \"USDC\"\n | \"USDT\"\n | \"VSUI\"\n | \"NAVX\"\n | \"SCA\"\n | \"CETUS\"\n | \"AFSUI\"\n | \"WETH\"\n | \"APT\"\n | \"WSOL\"\n | \"SLP\"\n | \"WBTC\"\n | \"CELO\"\n | \"TURBOS\"\n | \"HASUI\"\n | \"USDY\"\n | \"BUCK\"\n | \"FUD\"\n | \"BLUB\"\n | \"ETH\"\n | \"DEEP\"\n | \"AUSD\"\n | \"NS\"\n | \"BLUE\"\n | \"SEND\"\n | \"STSUI\"\n | \"SUIUSDT\"\n | \"MUSD\";\n\nexport type StrategyType =\n | \"LOOPING\"\n | \"STABLE\"\n | \"STAKING\"\n | \"LIQUIDITY-POOL\"\n | \"LENDING\"\n | \"LIQUID-STAKING\"\n | \"AUTOBALANCE-LIQUIDITY-POOL\";\n\n/**\n * Represents a coin with its name, type, icon, and exponent.\n */\nexport interface Coin {\n /**\n * The name of the coin (e.g., SUI, ALPHA, WUSDC, USDT).\n */\n name: CoinName;\n\n /**\n * The type of the coin object on the Sui blockchain.\n */\n type: CoinType;\n\n /**\n * The icon or logo associated with the coin.\n */\n icon: Icon;\n\n /**\n * The exponent used to scale the coin's value.\n * Typically used to convert between the smallest unit and the base unit.\n * For example, SUI has an exponent of 9 because 1 SUI equals 10^9 MISTs.\n */\n expo: number;\n}\n\nexport type Icon =\n | \"https://coinmeta.polymedia.app/img/coins/0x0000000000000000000000000000000000000000000000000000000000000002-sui-SUI.svg\"\n | \"https://coinmeta.polymedia.app/img/coins/0x5d4b302506645c37ff133b98c4b50a5ae14841659738d6d733d59d0d217a93bf-coin-COIN.webp\"\n | \"https://coinmeta.polymedia.app/img/coins/0xc060006111016b8a020ad5b33834984a437aaa7d3c74c18e09a95d48aceab08c-coin-COIN.webp\"\n | \"https://coinmeta.polymedia.app/img/coins/0x549e8b69270defbfafd4f94e17ec44cdbdd99820b33bda2278dea3b9a32d3f55-cert-CERT.webp\"\n | \"https://coinmeta.polymedia.app/img/coins/0xa99b8952d4f7d947ea77fe0ecdcc9e5fc0bcab2841d6e2a5aa00c3044e5544b5-navx-NAVX.webp\"\n | \"https://suivision.xyz/images/coin-default.png\"\n | \"https://coinmeta.polymedia.app/img/coins/0x7016aae72cfc67f2fadf55769c0a7dd54291a583b63051a5ed71081cce836ac6-sca-SCA.webp\"\n | \"https://coinmeta.polymedia.app/img/coins/0xf325ce1300e8dac124071d3152c5c5ee6174914f8bc2161e88329cf579246efc-afsui-AFSUI.webp\"\n | \"https://coinmeta.polymedia.app/img/coins/0xaf8cd5edc19c4512f4259f0bee101a40d41ebed738ade5874359610ef8eeced5-coin-COIN.webp\"\n | \"https://coinmeta.polymedia.app/img/coins/0x3a5143bb1196e3bcdfab6203d1683ae29edd26294fc8bfeafe4aaa9d2704df37-coin-COIN.webp\"\n | \"https://coinmeta.polymedia.app/img/coins/0xb7844e289a8410e50fb3ca48d69eb9cf29e27d223ef90353fe1bd8e27ff8f3f8-coin-COIN.webp\"\n | \"https://coinmeta.polymedia.app/img/coins/0xc44d97a4bc4e5a33ca847b72b123172c88a6328196b71414f32c3070233604b2-slp-SLP.webp\"\n | \"https://coinmeta.polymedia.app/img/coins/0x027792d9fed7f9844eb4839566001bb6f6cb4804f66aa2da6fe1ee242d896881-coin-COIN.webp\"\n | \"https://coinmeta.polymedia.app/img/coins/0xa198f3be41cda8c07b3bf3fee02263526e535d682499806979a111e88a5a8d0f-coin-COIN.webp\"\n | \"https://coinmeta.polymedia.app/img/coins/0x06864a6f921804860930db6ddbe2e16acdf8504495ea7481637a1c8b9a8fe54b-cetus-CETUS.webp\"\n | \"https://coinmeta.polymedia.app/img/coins/0x5d1f47ea69bb0de31c313d7acf89b890dbb8991ea8e03c6c355171f84bb1ba4a-turbos-TURBOS.svg\"\n | \"https://7taj6jfau6n3dri7agspzfnva7qbj5sizz5xc3lb56nmxpsyoiba.arweave.net/_MCfJKCnm7HFHwGk_JW1B-AU9kjOe3FtYe-ay75YcgI\"\n | \"https://coinmeta.polymedia.app/img/coins/0xbde4ba4c2e274a60ce15c1cfff9e5c42e41654ac8b6d906a57efa4bd3c29f47d-hasui-HASUI.svg\"\n | \"https://coinmeta.polymedia.app/img/coins/0x960b531667636f39e85867775f52f6b1f220a058c4de786905bdf761e06a56bb-usdy-USDY.svg\"\n | \"https://imagedelivery.net/cBNDGgkrsEA-b_ixIp9SkQ/buck.svg/public\"\n | \"\";\n\nexport type CoinType =\n | \"0xfe3afec26c59e874f3c1d60b8203cb3852d2bb2aa415df9548b8d688e6683f93::alpha::ALPHA\"\n | \"0x2::sui::SUI\"\n | \"0x549e8b69270defbfafd4f94e17ec44cdbdd99820b33bda2278dea3b9a32d3f55::cert::CERT\"\n | \"0x5d4b302506645c37ff133b98c4b50a5ae14841659738d6d733d59d0d217a93bf::coin::COIN\"\n | \"0xc060006111016b8a020ad5b33834984a437aaa7d3c74c18e09a95d48aceab08c::coin::COIN\"\n | \"0xa99b8952d4f7d947ea77fe0ecdcc9e5fc0bcab2841d6e2a5aa00c3044e5544b5::navx::NAVX\"\n | \"0x7016aae72cfc67f2fadf55769c0a7dd54291a583b63051a5ed71081cce836ac6::sca::SCA\"\n | \"0xf325ce1300e8dac124071d3152c5c5ee6174914f8bc2161e88329cf579246efc::afsui::AFSUI\"\n | \"0xaf8cd5edc19c4512f4259f0bee101a40d41ebed738ade5874359610ef8eeced5::coin::COIN\"\n | \"0x3a5143bb1196e3bcdfab6203d1683ae29edd26294fc8bfeafe4aaa9d2704df37::coin::COIN\"\n | \"0xb7844e289a8410e50fb3ca48d69eb9cf29e27d223ef90353fe1bd8e27ff8f3f8::coin::COIN\"\n | \"0xc44d97a4bc4e5a33ca847b72b123172c88a6328196b71414f32c3070233604b2::slp::SLP\"\n | \"0x27792d9fed7f9844eb4839566001bb6f6cb4804f66aa2da6fe1ee242d896881::coin::COIN\"\n | \"0xa198f3be41cda8c07b3bf3fee02263526e535d682499806979a111e88a5a8d0f::coin::COIN\"\n | \"0x6864a6f921804860930db6ddbe2e16acdf8504495ea7481637a1c8b9a8fe54b::cetus::CETUS\"\n | \"0x5d1f47ea69bb0de31c313d7acf89b890dbb8991ea8e03c6c355171f84bb1ba4a::turbos::TURBOS\"\n | \"0xbde4ba4c2e274a60ce15c1cfff9e5c42e41654ac8b6d906a57efa4bd3c29f47d::hasui::HASUI\"\n | \"0x960b531667636f39e85867775f52f6b1f220a058c4de786905bdf761e06a56bb::usdy::USDY\"\n | \"0xce7ff77a83ea0cb6fd39bd8748e2ec89a3f41e8efdc3f4eb123e0ca37b184db2::buck::BUCK\"\n | \"0x76cb819b01abed502bee8a702b4c2d547532c12f25001c9dea795a5e631c26f1::fud::FUD\"\n | \"0xfa7ac3951fdca92c5200d468d31a365eb03b2be9936fde615e69f0c1274ad3a0::BLUB::BLUB\"\n | \"0xdba34672e30cb065b1f93e3ab55318768fd6fef66c15942c9f7cb846e2f900e7::usdc::USDC\"\n | \"0xd0e89b2af5e4910726fbcd8b8dd37bb79b29e5f83f7491bca830e94f7f226d29::eth::ETH\"\n | \"0xdeeb7a4662eec9f2f3def03fb937a663dddaa2e215b8078a284d026b7946c270::deep::DEEP\"\n | \"0x2053d08c1e2bd02791056171aab0fd12bd7cd7efad2ab8f6b9c8902f14df2ff2::ausd::AUSD\"\n | \"0x5145494a5f5100e645e4b0aa950fa6b68f614e8c59e17bc5ded3495123a79178::ns::NS\"\n | \"0xe1b45a0e641b9955a20aa0ad1c1f4ad86aad8afb07296d4085e349a50e90bdca::blue::BLUE\"\n | \"0xb45fcfcc2cc07ce0702cc2d229621e046c906ef14d9b25e8e4d25f6e8763fef7::send::SEND\"\n | \"0xd1b72982e40348d069bb1ff701e634c117bb5f741f44dff91e472d3b01461e55::stsui::STSUI\"\n | \"0x375f70cf2ae4c00bf37117d0c85a2c71545e6ee05c4a5c7d282cd66a4504b068::usdt::USDT\"\n | \"0xe44df51c0b21a27ab915fa1fe2ca610cd3eaa6d9666fe5e62b988bf7f0bd8722::musd::MUSD\";\n\nconst ALPHA_SUI_POOL_RECEIPT = conf[CONF_ENV].ALPHA_SUI_POOL_RECEIPT;\nconst USDY_WUSDC_POOL_RECEIPT = conf[CONF_ENV].USDY_WUSDC_POOL_RECEIPT;\nconst USDT_WUSDC_POOL_RECEIPT = conf[CONF_ENV].USDT_WUSDC_POOL_RECEIPT;\nconst ALPHA_POOL_RECEIPT = conf[CONF_ENV].ALPHA_POOL_RECEIPT;\nconst HASUI_SUI_POOL_RECEIPT = conf[CONF_ENV].HASUI_SUI_POOL_RECEIPT;\nconst WUSDC_SUI_POOL_RECEIPT = conf[CONF_ENV].WUSDC_SUI_POOL_RECEIPT;\nconst WUSDC_WBTC_POOL_RECEIPT = conf[CONF_ENV].WUSDC_WBTC_POOL_RECEIPT;\nconst WETH_WUSDC_POOL_RECEIPT = conf[CONF_ENV].WETH_WUSDC_POOL_RECEIPT;\nconst NAVI_SUI_POOL_RECEIPT = conf[CONF_ENV].NAVI_SUI_POOL_RECEIPT;\nconst NAVI_VSUI_POOL_RECEIPT = conf[CONF_ENV].NAVI_VSUI_POOL_RECEIPT;\nconst NAVX_SUI_POOL_RECEIPT = conf[CONF_ENV].NAVX_SUI_POOL_RECEIPT;\nconst NAVI_WETH_POOL_RECEIPT = conf[CONF_ENV].NAVI_WETH_POOL_RECEIPT;\nconst NAVI_USDT_POOL_RECEIPT = conf[CONF_ENV].NAVI_USDT_POOL_RECEIPT;\nconst NAVI_WUSDC_POOL_RECEIPT = conf[CONF_ENV].NAVI_WUSDC_POOL_RECEIPT;\nconst NAVI_USDC_POOL_RECEIPT = conf[CONF_ENV].NAVI_USDC_POOL_RECEIPT;\nconst BUCKET_BUCK_POOL_RECEIPT = conf[CONF_ENV].BUCKET_BUCK_POOL_RECEIPT;\nexport type PoolReceipt =\n | typeof ALPHA_SUI_POOL_RECEIPT\n | typeof USDY_WUSDC_POOL_RECEIPT\n | typeof USDT_WUSDC_POOL_RECEIPT\n | typeof ALPHA_POOL_RECEIPT\n | typeof HASUI_SUI_POOL_RECEIPT\n | typeof WUSDC_SUI_POOL_RECEIPT\n | typeof WUSDC_WBTC_POOL_RECEIPT\n | typeof WETH_WUSDC_POOL_RECEIPT\n | typeof NAVI_SUI_POOL_RECEIPT\n | typeof NAVI_VSUI_POOL_RECEIPT\n | typeof NAVX_SUI_POOL_RECEIPT\n | typeof NAVI_WETH_POOL_RECEIPT\n | typeof NAVI_USDT_POOL_RECEIPT\n | typeof NAVI_WUSDC_POOL_RECEIPT\n | typeof NAVI_USDC_POOL_RECEIPT\n | typeof BUCKET_BUCK_POOL_RECEIPT;\n\nexport interface PoolData {\n weight: number;\n lastUpdateTime?: number;\n pendingRewards?: string;\n imageUrl1?: string | undefined;\n imageUrl2?: string | undefined;\n lockIcon?: string | undefined;\n poolName: string;\n}\nexport interface PoolWeightDistribution {\n coinType: string;\n totalWeight: number;\n data: PoolData[];\n}\n\nexport type CoinAmounts = {\n coinA: BN;\n coinB: BN;\n};\n\nexport type CetusInvestor = {\n content: {\n fields: {\n free_balance_a: string;\n free_balance_b: string;\n lower_tick: string;\n upper_tick: string;\n };\n };\n};\n\nexport type BluefinInvestor = CetusInvestor;\n\nexport type NaviInvestor = {\n content: {\n fields: {\n safe_borrow_percentage: string;\n tokensDeposited: string;\n current_debt_to_supply_ratio: string;\n };\n };\n};\n\nexport type BucketInvestor = {\n content: {\n fields: {\n tokensDeposited: string;\n stake_proof: {\n type: string;\n fields: {\n stake_amount: string;\n };\n };\n };\n };\n};\n\nexport type CommonInvestorFields = {\n objectId: string;\n version: string;\n digest: string;\n type: string;\n content: {\n dataType: string;\n type: string;\n hasPublicTransfer: boolean;\n fields: {\n id: {\n id: string;\n };\n performance_fee: string;\n performance_fee_max_cap: string;\n };\n };\n};\n\nexport type Investor =\n | (CetusInvestor & CommonInvestorFields)\n | (NaviInvestor & CommonInvestorFields)\n | (BucketInvestor & CommonInvestorFields)\n | (BluefinInvestor & CommonInvestorFields);\n\nexport type CetusPoolType = {\n objectId: string;\n version: string;\n digest: string;\n content: {\n dataType: string;\n type: string;\n hasPublicTransfer: boolean;\n fields: {\n xTokenSupply: string;\n tokensInvested: string;\n coin_a: string;\n coin_b: string;\n current_sqrt_price: string;\n current_tick_index: {\n fields: { bits: number };\n type: string;\n };\n fee_growth_global_a: string;\n fee_growth_global_b: string;\n fee_protocol_coin_a: string;\n fee_protocol_coin_b: string;\n fee_rate: string;\n id: { id: string };\n index: string;\n is_pause: boolean;\n liquidity: string;\n position_manager: {\n fields: {\n position_index: string;\n positions: {\n fields: {\n head: string;\n id: { id: string };\n size: string;\n tail: string;\n };\n type: string;\n };\n tick_spacing: number;\n };\n type: string;\n };\n // reward_manager: {};\n // tick_manager: {};\n tick_spacing: number;\n url: string;\n };\n };\n};\n\nexport type BluefinPoolType = {\n objectId: string;\n version: string;\n digest: string;\n content: {\n dataType: string;\n type: string;\n hasPublicTransfer: boolean;\n fields: {\n coin_a: string;\n coin_b: string;\n current_sqrt_price: string;\n current_tick_index: {\n fields: { bits: number };\n type: string;\n };\n fee_growth_global_coin_a: string;\n fee_growth_global_coin_b: string;\n fee_rate: string;\n icon_url: string;\n id: { id: string };\n is_paused: boolean;\n liquidity: string;\n name: string;\n observation_manager: {\n fields: {\n observation_index: string;\n observation: [];\n observation_cardinality: string;\n observation_cardinality_next: string;\n };\n type: string;\n };\n position_index: string;\n protocol_fee_coin_a: string;\n protocol_fee_coin_b: string;\n protocol_fee_share: string;\n reward_infos: [];\n sequence_number: string;\n ticks_manager: {\n type: string;\n fields: { bitmap: []; tick_spacing: number; ticks: [] };\n };\n };\n };\n};\n\nexport type AlphaReceipt = {\n lockedBalance: string;\n unlockedBalance: string;\n balance: string;\n};\n\nexport type Receipt = {\n objectId: string;\n version: string;\n digest: string;\n content: {\n dataType: string;\n type: string;\n hasPublicTransfer: boolean;\n fields: {\n id: { id: string };\n image_url: string;\n last_acc_reward_per_xtoken: {\n type: string;\n fields: {\n contents: {\n type: string;\n fields: {\n value: string;\n key: {\n type: string;\n fields: {\n name: string;\n };\n };\n };\n }[];\n };\n };\n locked_balance:\n | {\n type: string;\n fields: {\n head: string;\n id: { id: string };\n size: string;\n tail: string;\n };\n }\n | undefined;\n name: string;\n owner: string;\n pending_rewards: {\n type: string;\n fields: {\n contents: {\n fields: {\n key: {\n type: string;\n fields: {\n name: string;\n };\n };\n value: string;\n };\n type: string;\n }[];\n };\n };\n pool_id: string;\n xTokenBalance: string;\n unlocked_xtokens: string | undefined;\n };\n };\n};\n\nexport type PoolType = {\n objectId: string;\n version: string;\n digest: string;\n content: {\n dataType: string;\n type: string;\n hasPublicTransfer: boolean;\n fields: {\n id: { id: string };\n xTokenSupply: string;\n tokensInvested: string;\n // rewards: Bag,\n acc_rewards_per_xtoken: {\n type: string;\n fields: {\n contents: [\n {\n type: string;\n fields: {\n value: string;\n key: {\n type: string;\n fields: {\n name: string;\n };\n };\n };\n },\n ];\n };\n };\n locked_period_in_days: string;\n locking_start_day: string;\n alpha_bal: string;\n locked_balance_withdrawal_fee: string;\n deposit_fee: string;\n deposit_fee_max_cap: string;\n withdrawal_fee: string;\n withdraw_fee_max_cap: string;\n weight: string;\n alphaUnlockedPerSecond: string;\n };\n };\n};\n\nexport type AlphaPoolType = {\n objectId: string;\n version: string;\n digest: string;\n content: {\n dataType: string;\n type: string;\n hasPublicTransfer: boolean;\n fields: {\n // acc_rewards_per_xtoken: VecMap<TypeName,u256>,\n alpha_bal: string;\n deposit_fee: string;\n deposit_fee_max_cap: string;\n id: { id: string };\n // image_url: string;\n instant_withdraw_fee: string;\n instant_withdraw_fee_max_cap: string;\n locked_period_in_days: string;\n locking_start_day: string;\n acc_rewards_per_xtoken: {\n type: string;\n fields: {\n contents: [\n {\n type: string;\n fields: {\n value: string;\n key: {\n type: string;\n fields: {\n name: string;\n };\n };\n };\n },\n ];\n };\n };\n // name: string;\n // rewards: Bag,\n tokensInvested: string;\n withdraw_fee_max_cap: string;\n withdrawal_fee: string;\n xTokenSupply: string;\n };\n };\n};\n\nexport interface CoinPair {\n coinA: Coin;\n coinB: Coin;\n}\n\nexport type SwapOptions = {\n pair: CoinPair;\n senderAddress: string;\n slippage: number;\n} & ({ inAmount: BN; outAmount?: never } | { outAmount: BN; inAmount?: never });\n\nexport type CetusSwapOptions = SwapOptions;\n\nexport type TickSpacing = 2 | 10 | 60 | 200;\n\nexport type CreatePoolOptions = {\n tickSpacing: TickSpacing;\n initializePrice: number;\n imageUrl: string;\n coinNameA: CoinName;\n coinNameB: CoinName;\n amount: number;\n isAmountA: boolean;\n};\n\nexport type AlphaFiSingleAssetVault = {\n poolId: string;\n poolName: PoolName;\n receiptName: string;\n receiptType: string;\n coinType: CoinType;\n coinName: CoinName;\n};\n\nexport type AlphaFiDoubleAssetVault = {\n poolId: string;\n poolName: PoolName;\n receiptName: string;\n receiptType: string;\n coinTypeA: CoinType;\n coinTypeB: CoinType;\n coinNameA: CoinName;\n coinNameB: CoinName;\n};\n\n// Union type for both single and double asset vaults\nexport type AlphaFiVault = AlphaFiSingleAssetVault | AlphaFiDoubleAssetVault;\n\nexport type AlphaVaultBalance = {\n lockedAlphaCoins: string | null;\n lockedAlphaCoinsInUSD: string | null;\n unlockedAlphaCoins: string | null;\n unlockedAlphaCoinsInUSD: string | null;\n totalAlphaCoins: string | null;\n totalAlphaCoinsInUSD: string | null;\n};\n\nexport type DoubleAssetVaultBalance = {\n coinA: string | null;\n coinB: string | null;\n valueInUSD: string | null;\n};\n\nexport type SingleAssetVaultBalance = {\n coin: string | null;\n valueInUSD: string | null;\n};\n\nexport type AlphaFiVaultBalance =\n | AlphaVaultBalance\n | SingleAssetVaultBalance\n | DoubleAssetVaultBalance;\n\nexport type LpBreakdownType = {\n coinA: string | null;\n coinAInUsd: string | null;\n coinB: string | null;\n coinBInUsd: string | null;\n liquidity: string | null;\n};\n\nexport interface RebalanceHistoryType {\n timestamp: string;\n lower_tick: string;\n upper_tick: string;\n after_price: string;\n amount_a_before: string;\n amount_b_before: string;\n amount_a_after: string;\n amount_b_after: string;\n}\n\nexport type TransactionBlockType = {\n digest: string;\n transaction: {\n data: {\n messageVersion: string;\n transaction: {\n kind: string;\n inputs: {\n type: string;\n valueType: string;\n value: number;\n objectId: string | undefined;\n }[];\n transactions: {\n MoveCall: {\n package: string;\n module: string;\n function: string;\n type_arguments: string[];\n arguments: string[];\n };\n }[];\n };\n sender: string;\n };\n txSignatures: string[];\n };\n events: {\n type: string;\n parsedJson: {\n after_sqrt_price: string;\n };\n }[];\n timestampMs: string;\n checkpoint: string;\n};\n\nexport interface NaviVoloData {\n data: {\n operatorBalance: string;\n collectableFee: string;\n pendingStakes: string;\n poolTotalRewards: string;\n unstakeTicketSupply: string;\n totalStaked: string;\n activeStake: string;\n calcTotalRewards: string;\n currentEpoch: string;\n validators: object;\n exchangeRate: string;\n totalSupply: string;\n apy: string;\n sortedValidators: string[];\n maxInstantUnstake: string;\n maxNoFeeUnstake: string;\n };\n code: number;\n}\n\nexport type LoopingDebt = {\n objectId: string;\n version: string;\n digest: string;\n content: {\n dataType: string;\n type: string;\n hasPublicTransfer: boolean;\n fields: {\n name: [];\n value: string;\n };\n };\n};\n\nexport type Distributor = {\n objectId: string;\n version: string;\n digest: string;\n type: string;\n content: {\n dataType: string;\n type: string;\n hasPublicTransfer: boolean;\n fields: {\n airdrop_wallet: string;\n airdrop_wallet_balance: string;\n dust_wallet_address: string;\n fee_wallet: string;\n id: {\n id: string;\n };\n next_halving_timestamp: string;\n pool_allocator: Allocator;\n\n // to-do\n reward_unlock: {\n fields: { contents: [] };\n type: string;\n };\n start_timestamp: string;\n target: string;\n team_wallet_address: string;\n team_wallet_balance: string;\n };\n };\n};\n\nexport type Allocator = {\n fields: {\n id: {\n id: string;\n };\n members: {\n fields: {\n contents: MemberType[];\n };\n type: string;\n };\n rewards: {\n fields: {\n id: {\n id: string;\n };\n size: string;\n };\n type: string;\n };\n total_weights: {\n fields: {\n contents: TotalWeightType[];\n };\n type: string;\n };\n };\n type: string;\n};\n\nexport type TotalWeightType = {\n fields: {\n key: {\n fields: {\n name: string;\n };\n type: string;\n };\n value: string;\n };\n type: string;\n};\n\nexport type MemberPoolDataType = {\n fields: {\n key: {\n fields: {\n name: string;\n };\n type: string;\n };\n value: {\n fields: {\n last_update_time: string;\n pending_rewards: string;\n weight: string;\n };\n type: string;\n };\n };\n type: string;\n};\n\nexport type MemberType = {\n fields: {\n key: string;\n value: {\n fields: {\n pool_data: {\n fields: {\n contents: MemberPoolDataType[];\n };\n type: string;\n };\n };\n type: string;\n };\n };\n type: string;\n};\n"]}
|
package/dist/esm/getAprs.d.ts
CHANGED
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
import { PoolName } from "./common/types.js";
|
|
2
2
|
export declare function getApr(poolName: PoolName): Promise<number>;
|
|
3
3
|
export declare function getAprs(poolNames?: PoolName[]): Promise<Record<string, number>>;
|
|
4
|
+
export declare function getRewardAprs(poolNames?: PoolName[]): Promise<Record<string, number>>;
|
|
4
5
|
export declare function getApy(poolName: PoolName): Promise<number>;
|
|
5
6
|
export declare function getApys(poolNames?: PoolName[]): Promise<Record<string, number>>;
|
|
7
|
+
export declare function fetchRewardAPR(poolName: PoolName, ignoreCache: boolean): Promise<number>;
|
|
6
8
|
//# sourceMappingURL=getAprs.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getAprs.d.ts","sourceRoot":"","sources":["../../src/getAprs.ts"],"names":[],"mappings":"AAIA,OAAO,
|
|
1
|
+
{"version":3,"file":"getAprs.d.ts","sourceRoot":"","sources":["../../src/getAprs.ts"],"names":[],"mappings":"AAIA,OAAO,EAOL,QAAQ,EACT,MAAM,mBAAmB,CAAC;AAyB3B,wBAAsB,MAAM,CAAC,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAAC,MAAM,CAAC,CAIhE;AAED,wBAAsB,OAAO,CAC3B,SAAS,CAAC,EAAE,QAAQ,EAAE,GACrB,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAoBjC;AAED,wBAAsB,aAAa,CACjC,SAAS,CAAC,EAAE,QAAQ,EAAE,GACrB,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAoBjC;AAED,wBAAsB,MAAM,CAAC,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAAC,MAAM,CAAC,CAGhE;AAED,wBAAsB,OAAO,CAC3B,SAAS,CAAC,EAAE,QAAQ,EAAE,GACrB,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAejC;AAaD,wBAAsB,cAAc,CAClC,QAAQ,EAAE,QAAQ,EAClB,WAAW,EAAE,OAAO,GACnB,OAAO,CAAC,MAAM,CAAC,CA2RjB"}
|
package/dist/esm/getAprs.js
CHANGED
|
@@ -1,5 +1,12 @@
|
|
|
1
1
|
import { calculateAprForPools, fetchAutoCompoundingEvents, } from "./sui-sdk/events/fetchAutoCompoundingEvents.js";
|
|
2
|
-
import { poolInfo } from "./common/maps.js";
|
|
2
|
+
import { doubleAssetPoolCoinMap, poolInfo, singleAssetPoolCoinMap, } from "./common/maps.js";
|
|
3
|
+
import { Decimal } from "decimal.js";
|
|
4
|
+
import { getConf } from "./common/constants.js";
|
|
5
|
+
import { getCetusPool, getDistributor, getInvestor, getMultiCetusPool, getMultiInvestor, getMultiParentPool, getMultiPool, getParentPool, getPool, } from "./sui-sdk/functions/getReceipts.js";
|
|
6
|
+
import { getLatestPrices, getMultiLatestPrices } from "./utils/prices.js";
|
|
7
|
+
import { ClmmPoolUtil, TickMath } from "@cetusprotocol/cetus-sui-clmm-sdk";
|
|
8
|
+
import BN from "bn.js";
|
|
9
|
+
import { coinsList } from "./common/coins.js";
|
|
3
10
|
export async function getApr(poolName) {
|
|
4
11
|
const aprMap = await getAprs([poolName]);
|
|
5
12
|
const apr = aprMap[poolName];
|
|
@@ -22,17 +29,40 @@ export async function getAprs(poolNames) {
|
|
|
22
29
|
}
|
|
23
30
|
return aprMap;
|
|
24
31
|
}
|
|
32
|
+
export async function getRewardAprs(poolNames) {
|
|
33
|
+
await Promise.all([
|
|
34
|
+
getMultiPool(),
|
|
35
|
+
getMultiCetusPool(),
|
|
36
|
+
getMultiInvestor(),
|
|
37
|
+
getMultiParentPool(),
|
|
38
|
+
getMultiLatestPrices(),
|
|
39
|
+
]);
|
|
40
|
+
const aprMap = {};
|
|
41
|
+
if (poolNames) {
|
|
42
|
+
poolNames.forEach(async (pool) => {
|
|
43
|
+
aprMap[pool] = await fetchRewardAPR(pool, false);
|
|
44
|
+
});
|
|
45
|
+
}
|
|
46
|
+
else {
|
|
47
|
+
for (const pool of Object.keys(poolInfo)) {
|
|
48
|
+
aprMap[pool] = await fetchRewardAPR(pool, false);
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
return aprMap;
|
|
52
|
+
}
|
|
25
53
|
export async function getApy(poolName) {
|
|
26
54
|
const apy = convertAprToApy(await getApr(poolName));
|
|
27
55
|
return apy;
|
|
28
56
|
}
|
|
29
57
|
export async function getApys(poolNames) {
|
|
30
58
|
const aprMap = await getAprs(poolNames);
|
|
59
|
+
const rewardAprMap = await getRewardAprs(poolNames);
|
|
60
|
+
// console.log(aprMap);
|
|
31
61
|
// Convert each APR to APY
|
|
32
62
|
const apyMap = {};
|
|
33
63
|
for (const poolName in aprMap) {
|
|
34
64
|
if (aprMap.hasOwnProperty(poolName)) {
|
|
35
|
-
apyMap[poolName] = convertAprToApy(aprMap[poolName]);
|
|
65
|
+
apyMap[poolName] = convertAprToApy(aprMap[poolName] + rewardAprMap[poolName]);
|
|
36
66
|
}
|
|
37
67
|
}
|
|
38
68
|
return apyMap;
|
|
@@ -47,4 +77,221 @@ function convertAprToApy(apr) {
|
|
|
47
77
|
const apy = 100 * (Math.pow(1 + apr / 100 / n, n) - 1);
|
|
48
78
|
return apy;
|
|
49
79
|
}
|
|
80
|
+
export async function fetchRewardAPR(poolName, ignoreCache) {
|
|
81
|
+
let apr = 0;
|
|
82
|
+
if (!(poolName in poolInfo)) {
|
|
83
|
+
return 0;
|
|
84
|
+
}
|
|
85
|
+
try {
|
|
86
|
+
if (poolName === "ALPHA") {
|
|
87
|
+
const pool = await getPool("ALPHA", ignoreCache);
|
|
88
|
+
const distributor = await getDistributor(ignoreCache);
|
|
89
|
+
if (pool && distributor) {
|
|
90
|
+
const allocator = distributor.content.fields.pool_allocator;
|
|
91
|
+
const tokensInvested = Number(pool.content.fields.tokensInvested);
|
|
92
|
+
const target = Number(distributor.content.fields.target);
|
|
93
|
+
const members = allocator.fields.members.fields.contents;
|
|
94
|
+
let alphaMember = undefined;
|
|
95
|
+
for (const member of members) {
|
|
96
|
+
if (member.fields.key === getConf().ALPHA_POOL) {
|
|
97
|
+
alphaMember = member;
|
|
98
|
+
}
|
|
99
|
+
}
|
|
100
|
+
if (alphaMember) {
|
|
101
|
+
const weight = Number(alphaMember.fields.value.fields.pool_data.fields.contents[0].fields
|
|
102
|
+
.value.fields.weight);
|
|
103
|
+
const totalWeightArr = allocator.fields.total_weights.fields.contents;
|
|
104
|
+
const totalWeight = Number(totalWeightArr[0].fields.value);
|
|
105
|
+
if (totalWeight === 0 || tokensInvested === 0)
|
|
106
|
+
return 0;
|
|
107
|
+
apr =
|
|
108
|
+
(((target / 100) * 365 * weight) / totalWeight / tokensInvested) *
|
|
109
|
+
(2_750_000 / 4_250_000) *
|
|
110
|
+
100;
|
|
111
|
+
}
|
|
112
|
+
}
|
|
113
|
+
}
|
|
114
|
+
else if (Object.keys(doubleAssetPoolCoinMap).includes(poolName)) {
|
|
115
|
+
const distributor = await getDistributor(ignoreCache);
|
|
116
|
+
let clmmPool;
|
|
117
|
+
if (poolInfo[poolName].parentProtocolName == "CETUS") {
|
|
118
|
+
clmmPool = await getCetusPool(poolName, ignoreCache);
|
|
119
|
+
}
|
|
120
|
+
else {
|
|
121
|
+
clmmPool = await getParentPool(poolName, ignoreCache);
|
|
122
|
+
}
|
|
123
|
+
const pool = await getPool(poolName, ignoreCache);
|
|
124
|
+
let investor;
|
|
125
|
+
if (poolInfo[poolName].parentProtocolName == "CETUS") {
|
|
126
|
+
investor = (await getInvestor(poolName, ignoreCache));
|
|
127
|
+
}
|
|
128
|
+
else {
|
|
129
|
+
investor = (await getInvestor(poolName, ignoreCache));
|
|
130
|
+
}
|
|
131
|
+
const tokenA = doubleAssetPoolCoinMap[poolName].coin1;
|
|
132
|
+
const tokenB = doubleAssetPoolCoinMap[poolName].coin2;
|
|
133
|
+
if (distributor && clmmPool && investor && pool) {
|
|
134
|
+
const allocator = distributor.content.fields.pool_allocator;
|
|
135
|
+
const members = allocator.fields.members.fields.contents;
|
|
136
|
+
let poolMember = undefined;
|
|
137
|
+
for (const member of members) {
|
|
138
|
+
if (member.fields.key == poolInfo[poolName].poolId) {
|
|
139
|
+
poolMember = member;
|
|
140
|
+
}
|
|
141
|
+
}
|
|
142
|
+
if (poolMember) {
|
|
143
|
+
try {
|
|
144
|
+
const target = Number(distributor.content.fields.target);
|
|
145
|
+
const weight = Number(poolMember.fields.value.fields.pool_data.fields.contents[0].fields
|
|
146
|
+
.value.fields.weight);
|
|
147
|
+
const totalWeight = Number(allocator.fields.total_weights.fields.contents[0].fields.value);
|
|
148
|
+
if (totalWeight === 0)
|
|
149
|
+
return 0;
|
|
150
|
+
const [priceOfCoin0, priceOfCoin1] = await getLatestPrices([
|
|
151
|
+
`${tokenA}/USD`,
|
|
152
|
+
`${tokenB}/USD`,
|
|
153
|
+
], ignoreCache);
|
|
154
|
+
const [priceOfAlpha] = await getLatestPrices(["ALPHA/USD"], ignoreCache);
|
|
155
|
+
if (priceOfCoin0 && priceOfCoin1) {
|
|
156
|
+
const liquidity = Math.floor(parseFloat(pool.content.fields.tokensInvested)).toString();
|
|
157
|
+
const current_sqrt_price = new BN(clmmPool.content.fields.current_sqrt_price);
|
|
158
|
+
const upperBound = 443636;
|
|
159
|
+
let lowerTick = Number(investor.content.fields.lower_tick);
|
|
160
|
+
let upperTick = Number(investor.content.fields.upper_tick);
|
|
161
|
+
if (lowerTick > upperBound) {
|
|
162
|
+
lowerTick = -~(lowerTick - 1);
|
|
163
|
+
}
|
|
164
|
+
if (upperTick > upperBound) {
|
|
165
|
+
upperTick = -~(upperTick - 1);
|
|
166
|
+
}
|
|
167
|
+
const upper_sqrt_price = TickMath.tickIndexToSqrtPriceX64(upperTick);
|
|
168
|
+
const lower_sqrt_price = TickMath.tickIndexToSqrtPriceX64(lowerTick);
|
|
169
|
+
const { coinA, coinB } = ClmmPoolUtil.getCoinAmountFromLiquidity(new BN(liquidity), current_sqrt_price, lower_sqrt_price, upper_sqrt_price, false);
|
|
170
|
+
let amount0 = coinA;
|
|
171
|
+
let amount1 = coinB;
|
|
172
|
+
// amount0 = amount0 / 10 ** coins[tokenA as CoinName].expo;
|
|
173
|
+
// amount1 = amount1 / 10 ** coins[tokenB as CoinName].expo;
|
|
174
|
+
amount0 = amount0.div(new BN(10 ** coinsList[tokenA].expo));
|
|
175
|
+
amount1 = amount1.div(new BN(10 ** coinsList[tokenB].expo));
|
|
176
|
+
if (priceOfAlpha) {
|
|
177
|
+
const amount0Big = new Decimal(amount0.toString());
|
|
178
|
+
const targetBig = new Decimal(target);
|
|
179
|
+
const weightBig = new Decimal(weight);
|
|
180
|
+
const totalWeightBig = new Decimal(totalWeight);
|
|
181
|
+
const priceOfAlphaBig = new Decimal(priceOfAlpha);
|
|
182
|
+
const priceOfCoin0Big = new Decimal(priceOfCoin0);
|
|
183
|
+
const amount1Big = new Decimal(amount1.toString());
|
|
184
|
+
const priceOfCoin1Big = new Decimal(priceOfCoin1);
|
|
185
|
+
if (totalWeight === 0 ||
|
|
186
|
+
amount0Big
|
|
187
|
+
.mul(priceOfCoin0Big)
|
|
188
|
+
.add(amount1Big.mul(priceOfCoin1Big))
|
|
189
|
+
.isZero()) {
|
|
190
|
+
return 0;
|
|
191
|
+
}
|
|
192
|
+
// apr =
|
|
193
|
+
// (((((target / (100 * 1_000_000_000)) * 365 * weight) /
|
|
194
|
+
// totalWeight) *
|
|
195
|
+
// parseFloat(priceOfAlpha)) /
|
|
196
|
+
// (amount0 * Number(priceOfCoin0) +
|
|
197
|
+
// amount1 * Number(priceOfCoin1))) *
|
|
198
|
+
// (2_750_000 / 4_250_000) *
|
|
199
|
+
// 100;
|
|
200
|
+
apr = targetBig
|
|
201
|
+
.div(new Decimal(100).mul(new Decimal(1000000000)))
|
|
202
|
+
.mul(new Decimal(365))
|
|
203
|
+
.mul(weightBig)
|
|
204
|
+
.div(totalWeightBig)
|
|
205
|
+
.mul(priceOfAlphaBig)
|
|
206
|
+
.div(amount0Big
|
|
207
|
+
.mul(priceOfCoin0Big)
|
|
208
|
+
.add(amount1Big.mul(priceOfCoin1Big)))
|
|
209
|
+
.mul(new Decimal(2750000).div(new Decimal(4250000)))
|
|
210
|
+
.mul(new Decimal(100))
|
|
211
|
+
.toNumber();
|
|
212
|
+
}
|
|
213
|
+
}
|
|
214
|
+
}
|
|
215
|
+
catch (error) {
|
|
216
|
+
console.log(`Error calculating Alpha APR for pool ${poolName}`, error);
|
|
217
|
+
}
|
|
218
|
+
}
|
|
219
|
+
}
|
|
220
|
+
}
|
|
221
|
+
else if (Object.keys(singleAssetPoolCoinMap).includes(poolName)) {
|
|
222
|
+
const distributor = await getDistributor(ignoreCache);
|
|
223
|
+
const pool = await getPool(poolName, ignoreCache);
|
|
224
|
+
const token = singleAssetPoolCoinMap[poolName];
|
|
225
|
+
if (distributor && pool) {
|
|
226
|
+
const allocator = distributor.content.fields.pool_allocator;
|
|
227
|
+
const members = allocator.fields.members.fields.contents;
|
|
228
|
+
let poolMember = undefined;
|
|
229
|
+
for (const member of members) {
|
|
230
|
+
if (member.fields.key == poolInfo[poolName].poolId) {
|
|
231
|
+
poolMember = member;
|
|
232
|
+
}
|
|
233
|
+
}
|
|
234
|
+
if (poolMember) {
|
|
235
|
+
try {
|
|
236
|
+
const target = Number(distributor.content.fields.target);
|
|
237
|
+
const weight = Number(poolMember.fields.value.fields.pool_data.fields.contents[0].fields
|
|
238
|
+
.value.fields.weight);
|
|
239
|
+
const totalWeight = Number(allocator.fields.total_weights.fields.contents[0].fields.value);
|
|
240
|
+
if (totalWeight === 0)
|
|
241
|
+
return 0;
|
|
242
|
+
const [priceOfCoin] = await getLatestPrices([`${token.coin}/USD`], ignoreCache);
|
|
243
|
+
const [priceOfAlpha] = await getLatestPrices(["ALPHA/USD"], ignoreCache);
|
|
244
|
+
if (priceOfCoin) {
|
|
245
|
+
let tokensInvested = new Decimal(pool.content.fields.tokensInvested);
|
|
246
|
+
// dividing by 1e9 for every token because navi scales every token's liquidity to 1e9;
|
|
247
|
+
if (poolName == "NAVI-LOOP-SUI-VSUI" ||
|
|
248
|
+
poolName == "NAVI-LOOP-USDC-USDT" ||
|
|
249
|
+
poolName == "NAVI-LOOP-HASUI-SUI" ||
|
|
250
|
+
poolName == "NAVI-LOOP-USDT-USDC") {
|
|
251
|
+
const investor = (await getInvestor(poolName, ignoreCache));
|
|
252
|
+
if (investor) {
|
|
253
|
+
const debtToSupplyRatio = new Decimal(investor.content.fields.current_debt_to_supply_ratio);
|
|
254
|
+
tokensInvested = tokensInvested
|
|
255
|
+
.mul(new Decimal(1).minus(debtToSupplyRatio.div(new Decimal(1e20))))
|
|
256
|
+
.div(new Decimal(1e9));
|
|
257
|
+
}
|
|
258
|
+
else {
|
|
259
|
+
tokensInvested = new Decimal(0);
|
|
260
|
+
}
|
|
261
|
+
}
|
|
262
|
+
else {
|
|
263
|
+
tokensInvested = tokensInvested.div(Math.pow(10, 9));
|
|
264
|
+
}
|
|
265
|
+
const liquidity = tokensInvested.toNumber();
|
|
266
|
+
if (priceOfAlpha) {
|
|
267
|
+
if (totalWeight === 0 || liquidity * Number(priceOfCoin) === 0)
|
|
268
|
+
return 0;
|
|
269
|
+
apr =
|
|
270
|
+
(((((target / (100 * 1_000_000_000)) * 365 * weight) /
|
|
271
|
+
totalWeight) *
|
|
272
|
+
parseFloat(priceOfAlpha)) /
|
|
273
|
+
(liquidity * Number(priceOfCoin))) *
|
|
274
|
+
(2_750_000 / 4_250_000) *
|
|
275
|
+
100;
|
|
276
|
+
}
|
|
277
|
+
}
|
|
278
|
+
}
|
|
279
|
+
catch (e) {
|
|
280
|
+
console.error("error in fetchRewardAPR", e);
|
|
281
|
+
}
|
|
282
|
+
}
|
|
283
|
+
}
|
|
284
|
+
}
|
|
285
|
+
else {
|
|
286
|
+
console.log("fetchRewardAPR not implemented for poolName: " + poolName);
|
|
287
|
+
}
|
|
288
|
+
}
|
|
289
|
+
catch (e) {
|
|
290
|
+
console.error("error in fetchRewardAPR", e);
|
|
291
|
+
}
|
|
292
|
+
if (!apr) {
|
|
293
|
+
apr = 0;
|
|
294
|
+
}
|
|
295
|
+
return apr;
|
|
296
|
+
}
|
|
50
297
|
//# sourceMappingURL=getAprs.js.map
|
package/dist/esm/getAprs.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getAprs.js","sourceRoot":"","sources":["../../src/getAprs.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,oBAAoB,EACpB,0BAA0B,GAC3B,MAAM,gDAAgD,CAAC;AAExD,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAE5C,MAAM,CAAC,KAAK,UAAU,MAAM,CAAC,QAAkB;IAC7C,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC;IACzC,MAAM,GAAG,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC;IAC7B,OAAO,GAAG,CAAC;AACb,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,OAAO,CAC3B,SAAsB;IAEtB,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IAC3B,MAAM,SAAS,GAAG,OAAO,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC,6BAA6B;IAE9E,MAAM,MAAM,GAAG,MAAM,0BAA0B,CAAC;QAC9C,SAAS,EAAE,SAAS;QACpB,OAAO,EAAE,OAAO;QAChB,SAAS,EAAE,SAAS;KACrB,CAAC,CAAC;IAEH,MAAM,MAAM,GAAG,MAAM,oBAAoB,CAAC,MAAM,CAAC,CAAC;IAElD,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC;QACzC,MAAM,QAAQ,GAAG,IAAgB,CAAC;QAClC,IAAI,CAAC,CAAC,QAAQ,IAAI,MAAM,CAAC,EAAE,CAAC;YAC1B,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;QACvB,CAAC;IACH,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,MAAM,CAAC,QAAkB;IAC7C,MAAM,GAAG,GAAG,eAAe,CAAC,MAAM,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC;IACpD,OAAO,GAAG,CAAC;AACb,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,OAAO,CAC3B,SAAsB;IAEtB,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,SAAS,CAAC,CAAC;IAExC,0BAA0B;IAC1B,MAAM,MAAM,GAA2B,EAAE,CAAC;IAC1C,KAAK,MAAM,QAAQ,IAAI,MAAM,EAAE,CAAC;QAC9B,IAAI,MAAM,CAAC,cAAc,CAAC,QAAQ,CAAC,EAAE,CAAC;YACpC,MAAM,CAAC,QAAQ,CAAC,GAAG,eAAe,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC;QACvD,CAAC;IACH,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;;;GAIG;AACH,SAAS,eAAe,CAAC,GAAW;IAClC,MAAM,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC,CAAC,gBAAgB;IACnC,MAAM,GAAG,GAAG,GAAG,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;IACvD,OAAO,GAAG,CAAC;AACb,CAAC","sourcesContent":["import {\n calculateAprForPools,\n fetchAutoCompoundingEvents,\n} from \"./sui-sdk/events/fetchAutoCompoundingEvents.js\";\nimport { PoolName } from \"./common/types.js\";\nimport { poolInfo } from \"./common/maps.js\";\n\nexport async function getApr(poolName: PoolName): Promise<number> {\n const aprMap = await getAprs([poolName]);\n const apr = aprMap[poolName];\n return apr;\n}\n\nexport async function getAprs(\n poolNames?: PoolName[],\n): Promise<Record<string, number>> {\n const endTime = Date.now();\n const startTime = endTime - 24 * 60 * 60 * 1000; // timestamp for 24 hours ago\n\n const events = await fetchAutoCompoundingEvents({\n startTime: startTime,\n endTime: endTime,\n poolNames: poolNames,\n });\n\n const aprMap = await calculateAprForPools(events);\n\n for (const pool of Object.keys(poolInfo)) {\n const poolName = pool as PoolName;\n if (!(poolName in aprMap)) {\n aprMap[poolName] = 0;\n }\n }\n\n return aprMap;\n}\n\nexport async function getApy(poolName: PoolName): Promise<number> {\n const apy = convertAprToApy(await getApr(poolName));\n return apy;\n}\n\nexport async function getApys(\n poolNames?: PoolName[],\n): Promise<Record<string, number>> {\n const aprMap = await getAprs(poolNames);\n\n // Convert each APR to APY\n const apyMap: Record<string, number> = {};\n for (const poolName in aprMap) {\n if (aprMap.hasOwnProperty(poolName)) {\n apyMap[poolName] = convertAprToApy(aprMap[poolName]);\n }\n }\n\n return apyMap;\n}\n\n/**\n * Converts APR to APY with compounding 6 times a day\n * @param apr - The annual percentage rate (APR) as a decimal\n * @returns The annual percentage yield (APY) as a decimal\n */\nfunction convertAprToApy(apr: number): number {\n const n = 6 * 365; // 6 times a day\n const apy = 100 * (Math.pow(1 + apr / 100 / n, n) - 1);\n return apy;\n}\n"]}
|
|
1
|
+
{"version":3,"file":"getAprs.js","sourceRoot":"","sources":["../../src/getAprs.ts"],"names":[],"mappings":"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","sourcesContent":["import {\n calculateAprForPools,\n fetchAutoCompoundingEvents,\n} from \"./sui-sdk/events/fetchAutoCompoundingEvents.js\";\nimport {\n Allocator,\n BluefinInvestor,\n CetusInvestor,\n CommonInvestorFields,\n MemberType,\n NaviInvestor,\n PoolName,\n} from \"./common/types.js\";\nimport {\n doubleAssetPoolCoinMap,\n poolInfo,\n singleAssetPoolCoinMap,\n} from \"./common/maps.js\";\nimport { Decimal } from \"decimal.js\";\nimport { getConf } from \"./common/constants.js\";\nimport {\n getCetusPool,\n getDistributor,\n getInvestor,\n getMultiCetusPool,\n getMultiInvestor,\n getMultiParentPool,\n getMultiPool,\n getParentPool,\n getPool,\n} from \"./sui-sdk/functions/getReceipts.js\";\nimport { getLatestPrices, getMultiLatestPrices } from \"./utils/prices.js\";\nimport { PythPriceIdPair } from \"./common/pyth.js\";\nimport { ClmmPoolUtil, TickMath } from \"@cetusprotocol/cetus-sui-clmm-sdk\";\nimport BN from \"bn.js\";\nimport { coinsList } from \"./common/coins.js\";\n\nexport async function getApr(poolName: PoolName): Promise<number> {\n const aprMap = await getAprs([poolName]);\n const apr = aprMap[poolName];\n return apr;\n}\n\nexport async function getAprs(\n poolNames?: PoolName[],\n): Promise<Record<string, number>> {\n const endTime = Date.now();\n const startTime = endTime - 24 * 60 * 60 * 1000; // timestamp for 24 hours ago\n\n const events = await fetchAutoCompoundingEvents({\n startTime: startTime,\n endTime: endTime,\n poolNames: poolNames,\n });\n\n const aprMap = await calculateAprForPools(events);\n\n for (const pool of Object.keys(poolInfo)) {\n const poolName = pool as PoolName;\n if (!(poolName in aprMap)) {\n aprMap[poolName] = 0;\n }\n }\n\n return aprMap;\n}\n\nexport async function getRewardAprs(\n poolNames?: PoolName[],\n): Promise<Record<string, number>> {\n await Promise.all([\n getMultiPool(),\n getMultiCetusPool(),\n getMultiInvestor(),\n getMultiParentPool(),\n getMultiLatestPrices(),\n ]);\n const aprMap: Record<string, number> = {};\n\n if (poolNames) {\n poolNames.forEach(async (pool) => {\n aprMap[pool] = await fetchRewardAPR(pool as PoolName, false);\n });\n } else {\n for (const pool of Object.keys(poolInfo)) {\n aprMap[pool] = await fetchRewardAPR(pool as PoolName, false);\n }\n }\n return aprMap;\n}\n\nexport async function getApy(poolName: PoolName): Promise<number> {\n const apy = convertAprToApy(await getApr(poolName));\n return apy;\n}\n\nexport async function getApys(\n poolNames?: PoolName[],\n): Promise<Record<string, number>> {\n const aprMap = await getAprs(poolNames);\n const rewardAprMap = await getRewardAprs(poolNames);\n // console.log(aprMap);\n // Convert each APR to APY\n const apyMap: Record<string, number> = {};\n for (const poolName in aprMap) {\n if (aprMap.hasOwnProperty(poolName)) {\n apyMap[poolName] = convertAprToApy(\n aprMap[poolName] + rewardAprMap[poolName],\n );\n }\n }\n\n return apyMap;\n}\n\n/**\n * Converts APR to APY with compounding 6 times a day\n * @param apr - The annual percentage rate (APR) as a decimal\n * @returns The annual percentage yield (APY) as a decimal\n */\nfunction convertAprToApy(apr: number): number {\n const n = 6 * 365; // 6 times a day\n const apy = 100 * (Math.pow(1 + apr / 100 / n, n) - 1);\n return apy;\n}\n\nexport async function fetchRewardAPR(\n poolName: PoolName,\n ignoreCache: boolean,\n): Promise<number> {\n let apr = 0;\n if (!(poolName in poolInfo)) {\n return 0;\n }\n try {\n if (poolName === \"ALPHA\") {\n const pool = await getPool(\"ALPHA\", ignoreCache);\n const distributor = await getDistributor(ignoreCache);\n if (pool && distributor) {\n const allocator: Allocator = distributor.content.fields.pool_allocator;\n const tokensInvested = Number(pool.content.fields.tokensInvested);\n const target = Number(distributor.content.fields.target);\n const members: MemberType[] = allocator.fields.members.fields.contents;\n let alphaMember: MemberType | undefined = undefined;\n for (const member of members) {\n if (member.fields.key === getConf().ALPHA_POOL) {\n alphaMember = member;\n }\n }\n if (alphaMember) {\n const weight = Number(\n alphaMember.fields.value.fields.pool_data.fields.contents[0].fields\n .value.fields.weight,\n );\n const totalWeightArr = allocator.fields.total_weights.fields.contents;\n const totalWeight = Number(totalWeightArr[0].fields.value);\n\n if (totalWeight === 0 || tokensInvested === 0) return 0;\n\n apr =\n (((target / 100) * 365 * weight) / totalWeight / tokensInvested) *\n (2_750_000 / 4_250_000) *\n 100;\n }\n }\n } else if (Object.keys(doubleAssetPoolCoinMap).includes(poolName)) {\n const distributor = await getDistributor(ignoreCache);\n let clmmPool;\n if (poolInfo[poolName].parentProtocolName == \"CETUS\") {\n clmmPool = await getCetusPool(poolName, ignoreCache);\n } else {\n clmmPool = await getParentPool(poolName, ignoreCache);\n }\n const pool = await getPool(poolName, ignoreCache);\n let investor;\n if (poolInfo[poolName].parentProtocolName == \"CETUS\") {\n investor = (await getInvestor(poolName, ignoreCache)) as CetusInvestor &\n CommonInvestorFields;\n } else {\n investor = (await getInvestor(\n poolName,\n ignoreCache,\n )) as BluefinInvestor & CommonInvestorFields;\n }\n const tokenA = doubleAssetPoolCoinMap[poolName].coin1;\n const tokenB = doubleAssetPoolCoinMap[poolName].coin2;\n\n if (distributor && clmmPool && investor && pool) {\n const allocator: Allocator = distributor.content.fields.pool_allocator;\n const members: MemberType[] = allocator.fields.members.fields.contents;\n\n let poolMember: MemberType | undefined = undefined;\n\n for (const member of members) {\n if (member.fields.key == poolInfo[poolName].poolId) {\n poolMember = member;\n }\n }\n\n if (poolMember) {\n try {\n const target = Number(distributor.content.fields.target);\n const weight = Number(\n poolMember.fields.value.fields.pool_data.fields.contents[0].fields\n .value.fields.weight,\n );\n const totalWeight = Number(\n allocator.fields.total_weights.fields.contents[0].fields.value,\n );\n\n if (totalWeight === 0) return 0;\n\n const [priceOfCoin0, priceOfCoin1] = await getLatestPrices(\n [\n `${tokenA}/USD` as PythPriceIdPair,\n `${tokenB}/USD` as PythPriceIdPair,\n ],\n ignoreCache,\n );\n const [priceOfAlpha] = await getLatestPrices(\n [\"ALPHA/USD\"],\n ignoreCache,\n );\n if (priceOfCoin0 && priceOfCoin1) {\n const liquidity = Math.floor(\n parseFloat(pool.content.fields.tokensInvested),\n ).toString();\n const current_sqrt_price = new BN(\n clmmPool.content.fields.current_sqrt_price,\n );\n const upperBound = 443636;\n let lowerTick = Number(investor.content.fields.lower_tick);\n let upperTick = Number(investor.content.fields.upper_tick);\n\n if (lowerTick > upperBound) {\n lowerTick = -~(lowerTick - 1);\n }\n if (upperTick > upperBound) {\n upperTick = -~(upperTick - 1);\n }\n const upper_sqrt_price =\n TickMath.tickIndexToSqrtPriceX64(upperTick);\n const lower_sqrt_price =\n TickMath.tickIndexToSqrtPriceX64(lowerTick);\n const { coinA, coinB } = ClmmPoolUtil.getCoinAmountFromLiquidity(\n new BN(liquidity),\n current_sqrt_price,\n lower_sqrt_price,\n upper_sqrt_price,\n false,\n );\n let amount0 = coinA;\n let amount1 = coinB;\n // amount0 = amount0 / 10 ** coins[tokenA as CoinName].expo;\n // amount1 = amount1 / 10 ** coins[tokenB as CoinName].expo;\n amount0 = amount0.div(new BN(10 ** coinsList[tokenA].expo));\n amount1 = amount1.div(new BN(10 ** coinsList[tokenB].expo));\n\n if (priceOfAlpha) {\n const amount0Big = new Decimal(amount0.toString());\n const targetBig = new Decimal(target);\n const weightBig = new Decimal(weight);\n const totalWeightBig = new Decimal(totalWeight);\n const priceOfAlphaBig = new Decimal(priceOfAlpha);\n const priceOfCoin0Big = new Decimal(priceOfCoin0);\n const amount1Big = new Decimal(amount1.toString());\n const priceOfCoin1Big = new Decimal(priceOfCoin1);\n\n if (\n totalWeight === 0 ||\n amount0Big\n .mul(priceOfCoin0Big)\n .add(amount1Big.mul(priceOfCoin1Big))\n .isZero()\n ) {\n return 0;\n }\n // apr =\n // (((((target / (100 * 1_000_000_000)) * 365 * weight) /\n // totalWeight) *\n // parseFloat(priceOfAlpha)) /\n // (amount0 * Number(priceOfCoin0) +\n // amount1 * Number(priceOfCoin1))) *\n // (2_750_000 / 4_250_000) *\n // 100;\n\n apr = targetBig\n .div(new Decimal(100).mul(new Decimal(1000000000)))\n .mul(new Decimal(365))\n .mul(weightBig)\n .div(totalWeightBig)\n .mul(priceOfAlphaBig)\n .div(\n amount0Big\n .mul(priceOfCoin0Big)\n .add(amount1Big.mul(priceOfCoin1Big)),\n )\n .mul(new Decimal(2750000).div(new Decimal(4250000)))\n .mul(new Decimal(100))\n .toNumber();\n }\n }\n } catch (error) {\n console.log(\n `Error calculating Alpha APR for pool ${poolName}`,\n error,\n );\n }\n }\n }\n } else if (Object.keys(singleAssetPoolCoinMap).includes(poolName)) {\n const distributor = await getDistributor(ignoreCache);\n const pool = await getPool(poolName, ignoreCache);\n\n const token = singleAssetPoolCoinMap[poolName];\n\n if (distributor && pool) {\n const allocator: Allocator = distributor.content.fields.pool_allocator;\n const members: MemberType[] = allocator.fields.members.fields.contents;\n\n let poolMember: MemberType | undefined = undefined;\n\n for (const member of members) {\n if (member.fields.key == poolInfo[poolName].poolId) {\n poolMember = member;\n }\n }\n\n if (poolMember) {\n try {\n const target = Number(distributor.content.fields.target);\n const weight = Number(\n poolMember.fields.value.fields.pool_data.fields.contents[0].fields\n .value.fields.weight,\n );\n const totalWeight = Number(\n allocator.fields.total_weights.fields.contents[0].fields.value,\n );\n\n if (totalWeight === 0) return 0;\n\n const [priceOfCoin] = await getLatestPrices(\n [`${token.coin}/USD` as PythPriceIdPair],\n ignoreCache,\n );\n\n const [priceOfAlpha] = await getLatestPrices(\n [\"ALPHA/USD\"],\n ignoreCache,\n );\n if (priceOfCoin) {\n let tokensInvested = new Decimal(\n pool.content.fields.tokensInvested,\n );\n // dividing by 1e9 for every token because navi scales every token's liquidity to 1e9;\n if (\n poolName == \"NAVI-LOOP-SUI-VSUI\" ||\n poolName == \"NAVI-LOOP-USDC-USDT\" ||\n poolName == \"NAVI-LOOP-HASUI-SUI\" ||\n poolName == \"NAVI-LOOP-USDT-USDC\"\n ) {\n const investor = (await getInvestor(\n poolName,\n ignoreCache,\n )) as NaviInvestor & CommonInvestorFields;\n if (investor) {\n const debtToSupplyRatio = new Decimal(\n investor.content.fields.current_debt_to_supply_ratio,\n );\n tokensInvested = tokensInvested\n .mul(\n new Decimal(1).minus(\n debtToSupplyRatio.div(new Decimal(1e20)),\n ),\n )\n .div(new Decimal(1e9));\n } else {\n tokensInvested = new Decimal(0);\n }\n } else {\n tokensInvested = tokensInvested.div(Math.pow(10, 9));\n }\n const liquidity = tokensInvested.toNumber();\n if (priceOfAlpha) {\n if (totalWeight === 0 || liquidity * Number(priceOfCoin) === 0)\n return 0;\n\n apr =\n (((((target / (100 * 1_000_000_000)) * 365 * weight) /\n totalWeight) *\n parseFloat(priceOfAlpha)) /\n (liquidity * Number(priceOfCoin))) *\n (2_750_000 / 4_250_000) *\n 100;\n }\n }\n } catch (e) {\n console.error(\"error in fetchRewardAPR\", e);\n }\n }\n }\n } else {\n console.log(\"fetchRewardAPR not implemented for poolName: \" + poolName);\n }\n } catch (e) {\n console.error(\"error in fetchRewardAPR\", e);\n }\n\n if (!apr) {\n apr = 0;\n }\n return apr;\n}\n"]}
|
|
@@ -34,5 +34,6 @@ export declare function multiGetNaviInvestor(poolNames: SingleAssetPoolNames[]):
|
|
|
34
34
|
"NAVI-LOOP-USDT-USDC"?: (NaviInvestor & CommonInvestorFields) | undefined;
|
|
35
35
|
"NAVI-LOOP-SUI-VSUI"?: (NaviInvestor & CommonInvestorFields) | undefined;
|
|
36
36
|
"NAVI-LOOP-USDC-USDT"?: (NaviInvestor & CommonInvestorFields) | undefined;
|
|
37
|
+
"NAVI-LOOP-SUI-STSUI"?: (NaviInvestor & CommonInvestorFields) | undefined;
|
|
37
38
|
}>;
|
|
38
39
|
//# sourceMappingURL=getReceipts.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getReceipts.d.ts","sourceRoot":"","sources":["../../../../src/sui-sdk/functions/getReceipts.ts"],"names":[],"mappings":"AACA,OAAO,EACL,aAAa,EAEb,YAAY,EACZ,oBAAoB,EACpB,aAAa,EACb,QAAQ,EACR,QAAQ,EACR,OAAO,EACP,YAAY,EACZ,QAAQ,EAGR,oBAAoB,EAEpB,UAAU,EAGV,WAAW,EAEX,eAAe,EAChB,MAAM,gBAAgB,CAAC;AAExB,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAIrC,wBAAgB,0BAA0B,CAAC,QAAQ,EAAE,UAAU,EAAE,GAAG,OAAO,EAAE,CAyE5E;AAKD,wBAAsB,gBAAgB,CAAC,OAAO,EAAE,MAAM,iBA0BrD;AAED,wBAAsB,WAAW,CAC/B,QAAQ,EAAE,QAAQ,EAClB,OAAO,EAAE,MAAM,EACf,WAAW,EAAE,OAAO,GACnB,OAAO,CAAC,OAAO,EAAE,CAAC,CAgEpB;AAKD,wBAAsB,YAAY,kBAmCjC;AAED,wBAAsB,OAAO,CAC3B,QAAQ,EAAE,MAAM,EAChB,WAAW,EAAE,OAAO,GACnB,OAAO,CAAC,QAAQ,GAAG,aAAa,CAAC,CAgDnC;AAOD,wBAAsB,kBAAkB,kBAqCvC;AAED,wBAAsB,aAAa,CACjC,QAAQ,EAAE,MAAM,EAChB,WAAW,EAAE,OAAO,GACnB,OAAO,CAAC,aAAa,GAAG,eAAe,CAAC,CAkD1C;AAOD,wBAAsB,iBAAiB,kBAiCtC;AAED,wBAAsB,YAAY,CAChC,QAAQ,EAAE,MAAM,EAChB,WAAW,EAAE,OAAO,GACnB,OAAO,CAAC,aAAa,GAAG,eAAe,GAAG,SAAS,CAAC,CA6CtD;AAKD,wBAAsB,gBAAgB,kBAkCrC;AAED,wBAAsB,WAAW,CAC/B,QAAQ,EAAE,QAAQ,EAClB,WAAW,EAAE,OAAO,GACnB,OAAO,CAAC,QAAQ,CAAC,CAqDnB;AAOD,wBAAsB,cAAc,CAClC,WAAW,EAAE,OAAO,GACnB,OAAO,CAAC,WAAW,GAAG,SAAS,CAAC,CA6ClC;AAED,wBAAsB,mBAAmB,CACvC,QAAQ,EAAE,QAAQ,EAClB,WAAW,EAAE,OAAO,GACnB,OAAO,CAAC,OAAO,CAAC,CAgClB;AAOD,wBAAsB,qBAAqB,CACzC,WAAW,EAAE,OAAO,GACnB,OAAO,CAAC,YAAY,CAAC,CAmEvB;AAED,wBAAsB,oBAAoB,CAAC,SAAS,EAAE,oBAAoB,EAAE
|
|
1
|
+
{"version":3,"file":"getReceipts.d.ts","sourceRoot":"","sources":["../../../../src/sui-sdk/functions/getReceipts.ts"],"names":[],"mappings":"AACA,OAAO,EACL,aAAa,EAEb,YAAY,EACZ,oBAAoB,EACpB,aAAa,EACb,QAAQ,EACR,QAAQ,EACR,OAAO,EACP,YAAY,EACZ,QAAQ,EAGR,oBAAoB,EAEpB,UAAU,EAGV,WAAW,EAEX,eAAe,EAChB,MAAM,gBAAgB,CAAC;AAExB,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAIrC,wBAAgB,0BAA0B,CAAC,QAAQ,EAAE,UAAU,EAAE,GAAG,OAAO,EAAE,CAyE5E;AAKD,wBAAsB,gBAAgB,CAAC,OAAO,EAAE,MAAM,iBA0BrD;AAED,wBAAsB,WAAW,CAC/B,QAAQ,EAAE,QAAQ,EAClB,OAAO,EAAE,MAAM,EACf,WAAW,EAAE,OAAO,GACnB,OAAO,CAAC,OAAO,EAAE,CAAC,CAgEpB;AAKD,wBAAsB,YAAY,kBAmCjC;AAED,wBAAsB,OAAO,CAC3B,QAAQ,EAAE,MAAM,EAChB,WAAW,EAAE,OAAO,GACnB,OAAO,CAAC,QAAQ,GAAG,aAAa,CAAC,CAgDnC;AAOD,wBAAsB,kBAAkB,kBAqCvC;AAED,wBAAsB,aAAa,CACjC,QAAQ,EAAE,MAAM,EAChB,WAAW,EAAE,OAAO,GACnB,OAAO,CAAC,aAAa,GAAG,eAAe,CAAC,CAkD1C;AAOD,wBAAsB,iBAAiB,kBAiCtC;AAED,wBAAsB,YAAY,CAChC,QAAQ,EAAE,MAAM,EAChB,WAAW,EAAE,OAAO,GACnB,OAAO,CAAC,aAAa,GAAG,eAAe,GAAG,SAAS,CAAC,CA6CtD;AAKD,wBAAsB,gBAAgB,kBAkCrC;AAED,wBAAsB,WAAW,CAC/B,QAAQ,EAAE,QAAQ,EAClB,WAAW,EAAE,OAAO,GACnB,OAAO,CAAC,QAAQ,CAAC,CAqDnB;AAOD,wBAAsB,cAAc,CAClC,WAAW,EAAE,OAAO,GACnB,OAAO,CAAC,WAAW,GAAG,SAAS,CAAC,CA6ClC;AAED,wBAAsB,mBAAmB,CACvC,QAAQ,EAAE,QAAQ,EAClB,WAAW,EAAE,OAAO,GACnB,OAAO,CAAC,OAAO,CAAC,CAgClB;AAOD,wBAAsB,qBAAqB,CACzC,WAAW,EAAE,OAAO,GACnB,OAAO,CAAC,YAAY,CAAC,CAmEvB;AAED,wBAAsB,oBAAoB,CAAC,SAAS,EAAE,oBAAoB,EAAE;;;;;;;;;;;;;;;;;;;;;GA8B3E"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"collect_rewards.d.ts","sourceRoot":"","sources":["../../../src/transactions/collect_rewards.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAYvD,wBAAsB,cAAc,CAAC,OAAO,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"collect_rewards.d.ts","sourceRoot":"","sources":["../../../src/transactions/collect_rewards.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAYvD,wBAAsB,cAAc,CAAC,OAAO,EAAE,MAAM,wBA2bnD"}
|