@alphafi/alphafi-sdk 0.0.107 → 1.0.1
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/README.md +378 -130
- package/dist/cjs/core/index.d.ts +159 -0
- package/dist/cjs/core/index.d.ts.map +1 -0
- package/dist/cjs/core/index.js +253 -0
- package/dist/cjs/core/index.js.map +1 -0
- package/dist/cjs/core/types.d.ts +135 -0
- package/dist/cjs/core/types.d.ts.map +1 -0
- package/dist/cjs/core/types.js +7 -0
- package/dist/cjs/core/types.js.map +1 -0
- package/dist/cjs/index.d.ts +7 -46
- package/dist/cjs/index.d.ts.map +1 -1
- package/dist/cjs/index.js +8 -166
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/models/blockchain.d.ts +45 -0
- package/dist/cjs/models/blockchain.d.ts.map +1 -0
- package/dist/cjs/models/blockchain.js +237 -0
- package/dist/cjs/models/blockchain.js.map +1 -0
- package/dist/cjs/models/coinInfoProvider.d.ts +23 -0
- package/dist/cjs/models/coinInfoProvider.d.ts.map +1 -0
- package/dist/cjs/models/coinInfoProvider.js +87 -0
- package/dist/cjs/models/coinInfoProvider.js.map +1 -0
- package/dist/cjs/models/index.d.ts +3 -0
- package/dist/cjs/models/index.d.ts.map +1 -0
- package/dist/cjs/models/index.js +8 -0
- package/dist/cjs/models/index.js.map +1 -0
- package/dist/cjs/models/portfolio.d.ts +21 -0
- package/dist/cjs/models/portfolio.d.ts.map +1 -0
- package/dist/cjs/models/portfolio.js +173 -0
- package/dist/cjs/models/portfolio.js.map +1 -0
- package/dist/cjs/models/protocol.d.ts +25 -0
- package/dist/cjs/models/protocol.d.ts.map +1 -0
- package/dist/cjs/models/protocol.js +141 -0
- package/dist/cjs/models/protocol.js.map +1 -0
- package/dist/cjs/models/strategyContext.d.ts +150 -0
- package/dist/cjs/models/strategyContext.d.ts.map +1 -0
- package/dist/cjs/models/strategyContext.js +829 -0
- package/dist/cjs/models/strategyContext.js.map +1 -0
- package/dist/cjs/models/swap.d.ts +11 -0
- package/dist/cjs/models/swap.d.ts.map +1 -0
- package/dist/cjs/models/swap.js +60 -0
- package/dist/cjs/models/swap.js.map +1 -0
- package/dist/cjs/models/types.d.ts +145 -0
- package/dist/cjs/models/types.d.ts.map +1 -0
- package/dist/cjs/models/types.js.map +1 -0
- package/dist/cjs/strategies/alphaVault.d.ts +279 -0
- package/dist/cjs/strategies/alphaVault.d.ts.map +1 -0
- package/dist/cjs/strategies/alphaVault.js +891 -0
- package/dist/cjs/strategies/alphaVault.js.map +1 -0
- package/dist/cjs/strategies/autobalanceLp.d.ts +197 -0
- package/dist/cjs/strategies/autobalanceLp.d.ts.map +1 -0
- package/dist/cjs/strategies/autobalanceLp.js +567 -0
- package/dist/cjs/strategies/autobalanceLp.js.map +1 -0
- package/dist/cjs/strategies/fungibleLending.d.ts +98 -0
- package/dist/cjs/strategies/fungibleLending.d.ts.map +1 -0
- package/dist/cjs/strategies/fungibleLending.js +204 -0
- package/dist/cjs/strategies/fungibleLending.js.map +1 -0
- package/dist/cjs/strategies/fungibleLp.d.ts +165 -0
- package/dist/cjs/strategies/fungibleLp.d.ts.map +1 -0
- package/dist/cjs/strategies/fungibleLp.js +398 -0
- package/dist/cjs/strategies/fungibleLp.js.map +1 -0
- package/dist/cjs/strategies/index.d.ts +26 -0
- package/dist/cjs/strategies/index.d.ts.map +1 -0
- package/dist/cjs/strategies/index.js +24 -0
- package/dist/cjs/strategies/index.js.map +1 -0
- package/dist/cjs/strategies/lending.d.ts +155 -0
- package/dist/cjs/strategies/lending.d.ts.map +1 -0
- package/dist/cjs/strategies/lending.js +828 -0
- package/dist/cjs/strategies/lending.js.map +1 -0
- package/dist/cjs/strategies/looping.d.ts +176 -0
- package/dist/cjs/strategies/looping.d.ts.map +1 -0
- package/dist/cjs/strategies/looping.js +978 -0
- package/dist/cjs/strategies/looping.js.map +1 -0
- package/dist/cjs/strategies/lp.d.ts +207 -0
- package/dist/cjs/strategies/lp.d.ts.map +1 -0
- package/dist/cjs/strategies/lp.js +1452 -0
- package/dist/cjs/strategies/lp.js.map +1 -0
- package/dist/cjs/strategies/lyf.d.ts +207 -0
- package/dist/cjs/strategies/lyf.d.ts.map +1 -0
- package/dist/cjs/strategies/lyf.js +649 -0
- package/dist/cjs/strategies/lyf.js.map +1 -0
- package/dist/cjs/strategies/singleAssetLooping.d.ts +152 -0
- package/dist/cjs/strategies/singleAssetLooping.d.ts.map +1 -0
- package/dist/cjs/strategies/singleAssetLooping.js +631 -0
- package/dist/cjs/strategies/singleAssetLooping.js.map +1 -0
- package/dist/cjs/strategies/slushLending.d.ts +131 -0
- package/dist/cjs/strategies/slushLending.d.ts.map +1 -0
- package/dist/cjs/strategies/slushLending.js +392 -0
- package/dist/cjs/strategies/slushLending.js.map +1 -0
- package/dist/cjs/strategies/strategy.d.ts +198 -0
- package/dist/cjs/strategies/strategy.d.ts.map +1 -0
- package/dist/cjs/strategies/strategy.js +196 -0
- package/dist/cjs/strategies/strategy.js.map +1 -0
- package/dist/cjs/utils/cache.d.ts +98 -0
- package/dist/cjs/utils/cache.d.ts.map +1 -0
- package/dist/cjs/utils/cache.js +203 -0
- package/dist/cjs/utils/cache.js.map +1 -0
- package/dist/cjs/utils/constants.d.ts +236 -2
- package/dist/cjs/utils/constants.d.ts.map +1 -1
- package/dist/cjs/utils/constants.js +244 -107
- package/dist/cjs/utils/constants.js.map +1 -1
- package/dist/cjs/utils/poolMap.d.ts +20 -0
- package/dist/cjs/utils/poolMap.d.ts.map +1 -0
- package/dist/cjs/utils/poolMap.js +237 -0
- package/dist/cjs/utils/poolMap.js.map +1 -0
- package/dist/cjs/utils/testing-pools.d.ts +3 -0
- package/dist/cjs/utils/testing-pools.d.ts.map +1 -0
- package/dist/cjs/utils/testing-pools.js +27 -0
- package/dist/cjs/utils/testing-pools.js.map +1 -0
- package/dist/esm/core/index.d.ts +159 -0
- package/dist/esm/core/index.d.ts.map +1 -0
- package/dist/esm/core/index.js +249 -0
- package/dist/esm/core/index.js.map +1 -0
- package/dist/esm/core/types.d.ts +135 -0
- package/dist/esm/core/types.d.ts.map +1 -0
- package/dist/esm/core/types.js +6 -0
- package/dist/esm/core/types.js.map +1 -0
- package/dist/esm/index.d.ts +7 -46
- package/dist/esm/index.d.ts.map +1 -1
- package/dist/esm/index.js +8 -49
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/models/blockchain.d.ts +45 -0
- package/dist/esm/models/blockchain.d.ts.map +1 -0
- package/dist/esm/models/blockchain.js +233 -0
- package/dist/esm/models/blockchain.js.map +1 -0
- package/dist/esm/models/coinInfoProvider.d.ts +23 -0
- package/dist/esm/models/coinInfoProvider.d.ts.map +1 -0
- package/dist/esm/models/coinInfoProvider.js +83 -0
- package/dist/esm/models/coinInfoProvider.js.map +1 -0
- package/dist/esm/models/index.d.ts +3 -0
- package/dist/esm/models/index.d.ts.map +1 -0
- package/dist/esm/models/index.js +3 -0
- package/dist/esm/models/index.js.map +1 -0
- package/dist/esm/models/portfolio.d.ts +21 -0
- package/dist/esm/models/portfolio.d.ts.map +1 -0
- package/dist/esm/models/portfolio.js +169 -0
- package/dist/esm/models/portfolio.js.map +1 -0
- package/dist/esm/models/protocol.d.ts +25 -0
- package/dist/esm/models/protocol.d.ts.map +1 -0
- package/dist/esm/models/protocol.js +137 -0
- package/dist/esm/models/protocol.js.map +1 -0
- package/dist/esm/models/strategyContext.d.ts +150 -0
- package/dist/esm/models/strategyContext.d.ts.map +1 -0
- package/dist/esm/models/strategyContext.js +825 -0
- package/dist/esm/models/strategyContext.js.map +1 -0
- package/dist/esm/models/swap.d.ts +11 -0
- package/dist/esm/models/swap.d.ts.map +1 -0
- package/dist/esm/models/swap.js +58 -0
- package/dist/esm/models/swap.js.map +1 -0
- package/dist/esm/models/types.d.ts +145 -0
- package/dist/esm/models/types.d.ts.map +1 -0
- package/dist/esm/models/types.js.map +1 -0
- package/dist/esm/strategies/alphaVault.d.ts +279 -0
- package/dist/esm/strategies/alphaVault.d.ts.map +1 -0
- package/dist/esm/strategies/alphaVault.js +887 -0
- package/dist/esm/strategies/alphaVault.js.map +1 -0
- package/dist/esm/strategies/autobalanceLp.d.ts +197 -0
- package/dist/esm/strategies/autobalanceLp.d.ts.map +1 -0
- package/dist/esm/strategies/autobalanceLp.js +562 -0
- package/dist/esm/strategies/autobalanceLp.js.map +1 -0
- package/dist/esm/strategies/fungibleLending.d.ts +98 -0
- package/dist/esm/strategies/fungibleLending.d.ts.map +1 -0
- package/dist/esm/strategies/fungibleLending.js +200 -0
- package/dist/esm/strategies/fungibleLending.js.map +1 -0
- package/dist/esm/strategies/fungibleLp.d.ts +165 -0
- package/dist/esm/strategies/fungibleLp.d.ts.map +1 -0
- package/dist/esm/strategies/fungibleLp.js +393 -0
- package/dist/esm/strategies/fungibleLp.js.map +1 -0
- package/dist/esm/strategies/index.d.ts +26 -0
- package/dist/esm/strategies/index.d.ts.map +1 -0
- package/dist/esm/strategies/index.js +18 -0
- package/dist/esm/strategies/index.js.map +1 -0
- package/dist/esm/strategies/lending.d.ts +155 -0
- package/dist/esm/strategies/lending.d.ts.map +1 -0
- package/dist/esm/strategies/lending.js +824 -0
- package/dist/esm/strategies/lending.js.map +1 -0
- package/dist/esm/strategies/looping.d.ts +176 -0
- package/dist/esm/strategies/looping.d.ts.map +1 -0
- package/dist/esm/strategies/looping.js +974 -0
- package/dist/esm/strategies/looping.js.map +1 -0
- package/dist/esm/strategies/lp.d.ts +207 -0
- package/dist/esm/strategies/lp.d.ts.map +1 -0
- package/dist/esm/strategies/lp.js +1447 -0
- package/dist/esm/strategies/lp.js.map +1 -0
- package/dist/esm/strategies/lyf.d.ts +207 -0
- package/dist/esm/strategies/lyf.d.ts.map +1 -0
- package/dist/esm/strategies/lyf.js +644 -0
- package/dist/esm/strategies/lyf.js.map +1 -0
- package/dist/esm/strategies/singleAssetLooping.d.ts +152 -0
- package/dist/esm/strategies/singleAssetLooping.d.ts.map +1 -0
- package/dist/esm/strategies/singleAssetLooping.js +627 -0
- package/dist/esm/strategies/singleAssetLooping.js.map +1 -0
- package/dist/esm/strategies/slushLending.d.ts +131 -0
- package/dist/esm/strategies/slushLending.d.ts.map +1 -0
- package/dist/esm/strategies/slushLending.js +388 -0
- package/dist/esm/strategies/slushLending.js.map +1 -0
- package/dist/esm/strategies/strategy.d.ts +198 -0
- package/dist/esm/strategies/strategy.d.ts.map +1 -0
- package/dist/esm/strategies/strategy.js +192 -0
- package/dist/esm/strategies/strategy.js.map +1 -0
- package/dist/esm/utils/cache.d.ts +98 -0
- package/dist/esm/utils/cache.d.ts.map +1 -0
- package/dist/esm/utils/cache.js +198 -0
- package/dist/esm/utils/cache.js.map +1 -0
- package/dist/esm/utils/constants.d.ts +236 -2
- package/dist/esm/utils/constants.d.ts.map +1 -1
- package/dist/esm/utils/constants.js +243 -106
- package/dist/esm/utils/constants.js.map +1 -1
- package/dist/esm/utils/poolMap.d.ts +20 -0
- package/dist/esm/utils/poolMap.d.ts.map +1 -0
- package/dist/esm/utils/poolMap.js +233 -0
- package/dist/esm/utils/poolMap.js.map +1 -0
- package/dist/esm/utils/testing-pools.d.ts +3 -0
- package/dist/esm/utils/testing-pools.d.ts.map +1 -0
- package/dist/esm/utils/testing-pools.js +24 -0
- package/dist/esm/utils/testing-pools.js.map +1 -0
- package/package.json +45 -72
- package/dist/cjs/adminFunctions.d.ts +0 -33
- package/dist/cjs/adminFunctions.d.ts.map +0 -1
- package/dist/cjs/adminFunctions.js +0 -306
- package/dist/cjs/adminFunctions.js.map +0 -1
- package/dist/cjs/common/alphaTypes.d.ts +0 -110
- package/dist/cjs/common/alphaTypes.d.ts.map +0 -1
- package/dist/cjs/common/alphaTypes.js +0 -3
- package/dist/cjs/common/alphaTypes.js.map +0 -1
- package/dist/cjs/common/cetus_mainnet_config.d.ts +0 -3
- package/dist/cjs/common/cetus_mainnet_config.d.ts.map +0 -1
- package/dist/cjs/common/cetus_mainnet_config.js +0 -50
- package/dist/cjs/common/cetus_mainnet_config.js.map +0 -1
- package/dist/cjs/common/coins.d.ts +0 -6
- package/dist/cjs/common/coins.d.ts.map +0 -1
- package/dist/cjs/common/coins.js +0 -313
- package/dist/cjs/common/coins.js.map +0 -1
- package/dist/cjs/common/constants.d.ts +0 -3187
- package/dist/cjs/common/constants.d.ts.map +0 -1
- package/dist/cjs/common/constants.js +0 -2564
- package/dist/cjs/common/constants.js.map +0 -1
- package/dist/cjs/common/maps.d.ts +0 -120
- package/dist/cjs/common/maps.d.ts.map +0 -1
- package/dist/cjs/common/maps.js +0 -2527
- package/dist/cjs/common/maps.js.map +0 -1
- package/dist/cjs/common/pyth.d.ts +0 -7
- package/dist/cjs/common/pyth.d.ts.map +0 -1
- package/dist/cjs/common/pyth.js +0 -3
- package/dist/cjs/common/pyth.js.map +0 -1
- package/dist/cjs/common/types.d.ts +0 -736
- package/dist/cjs/common/types.d.ts.map +0 -1
- package/dist/cjs/common/types.js.map +0 -1
- package/dist/cjs/example.d.ts +0 -3
- package/dist/cjs/example.d.ts.map +0 -1
- package/dist/cjs/example.js +0 -42
- package/dist/cjs/example.js.map +0 -1
- package/dist/cjs/getAirdropShare.d.ts +0 -3
- package/dist/cjs/getAirdropShare.d.ts.map +0 -1
- package/dist/cjs/getAirdropShare.js +0 -10
- package/dist/cjs/getAirdropShare.js.map +0 -1
- package/dist/cjs/getAllVaults.d.ts +0 -7
- package/dist/cjs/getAllVaults.d.ts.map +0 -1
- package/dist/cjs/getAllVaults.js +0 -39
- package/dist/cjs/getAllVaults.js.map +0 -1
- package/dist/cjs/getAlphaUnlocks.d.ts +0 -15
- package/dist/cjs/getAlphaUnlocks.d.ts.map +0 -1
- package/dist/cjs/getAlphaUnlocks.js +0 -21
- package/dist/cjs/getAlphaUnlocks.js.map +0 -1
- package/dist/cjs/getAprs.d.ts +0 -14
- package/dist/cjs/getAprs.d.ts.map +0 -1
- package/dist/cjs/getAprs.js +0 -306
- package/dist/cjs/getAprs.js.map +0 -1
- package/dist/cjs/getLastAutoCompoundTime.d.ts +0 -4
- package/dist/cjs/getLastAutoCompoundTime.d.ts.map +0 -1
- package/dist/cjs/getLastAutoCompoundTime.js +0 -18
- package/dist/cjs/getLastAutoCompoundTime.js.map +0 -1
- package/dist/cjs/getRebalanceHistory.d.ts +0 -6
- package/dist/cjs/getRebalanceHistory.d.ts.map +0 -1
- package/dist/cjs/getRebalanceHistory.js +0 -26
- package/dist/cjs/getRebalanceHistory.js.map +0 -1
- package/dist/cjs/getTvls.d.ts +0 -10
- package/dist/cjs/getTvls.d.ts.map +0 -1
- package/dist/cjs/getTvls.js +0 -137
- package/dist/cjs/getTvls.js.map +0 -1
- package/dist/cjs/getVaultBalances.d.ts +0 -13
- package/dist/cjs/getVaultBalances.d.ts.map +0 -1
- package/dist/cjs/getVaultBalances.js +0 -103
- package/dist/cjs/getVaultBalances.js.map +0 -1
- package/dist/cjs/getVaults.d.ts +0 -8
- package/dist/cjs/getVaults.d.ts.map +0 -1
- package/dist/cjs/getVaults.js +0 -34
- package/dist/cjs/getVaults.js.map +0 -1
- package/dist/cjs/graphql/client.d.ts +0 -4
- package/dist/cjs/graphql/client.d.ts.map +0 -1
- package/dist/cjs/graphql/client.js +0 -14
- package/dist/cjs/graphql/client.js.map +0 -1
- package/dist/cjs/graphql/executeMutations.d.ts +0 -19
- package/dist/cjs/graphql/executeMutations.d.ts.map +0 -1
- package/dist/cjs/graphql/executeMutations.js +0 -40
- package/dist/cjs/graphql/executeMutations.js.map +0 -1
- package/dist/cjs/graphql/fetchAutoCompoundingEventsGql.d.ts +0 -28
- package/dist/cjs/graphql/fetchAutoCompoundingEventsGql.d.ts.map +0 -1
- package/dist/cjs/graphql/fetchAutoCompoundingEventsGql.js +0 -120
- package/dist/cjs/graphql/fetchAutoCompoundingEventsGql.js.map +0 -1
- package/dist/cjs/graphql/fetchData.d.ts +0 -35
- package/dist/cjs/graphql/fetchData.d.ts.map +0 -1
- package/dist/cjs/graphql/fetchData.js +0 -103
- package/dist/cjs/graphql/fetchData.js.map +0 -1
- package/dist/cjs/graphql/fetchNftHolders.d.ts +0 -4
- package/dist/cjs/graphql/fetchNftHolders.d.ts.map +0 -1
- package/dist/cjs/graphql/fetchNftHolders.js +0 -37
- package/dist/cjs/graphql/fetchNftHolders.js.map +0 -1
- package/dist/cjs/graphql/fetchReceipts.d.ts +0 -4
- package/dist/cjs/graphql/fetchReceipts.d.ts.map +0 -1
- package/dist/cjs/graphql/fetchReceipts.js +0 -38
- package/dist/cjs/graphql/fetchReceipts.js.map +0 -1
- package/dist/cjs/graphql/getMultiReceipts.d.ts +0 -4
- package/dist/cjs/graphql/getMultiReceipts.d.ts.map +0 -1
- package/dist/cjs/graphql/getMultiReceipts.js +0 -117
- package/dist/cjs/graphql/getMultiReceipts.js.map +0 -1
- package/dist/cjs/graphql/mutations.d.ts +0 -4
- package/dist/cjs/graphql/mutations.d.ts.map +0 -1
- package/dist/cjs/graphql/mutations.js +0 -33
- package/dist/cjs/graphql/mutations.js.map +0 -1
- package/dist/cjs/graphql/parseData.d.ts +0 -3
- package/dist/cjs/graphql/parseData.d.ts.map +0 -1
- package/dist/cjs/graphql/parseData.js +0 -10
- package/dist/cjs/graphql/parseData.js.map +0 -1
- package/dist/cjs/graphql/parseLockedTableId.d.ts +0 -8
- package/dist/cjs/graphql/parseLockedTableId.d.ts.map +0 -1
- package/dist/cjs/graphql/parseLockedTableId.js +0 -16
- package/dist/cjs/graphql/parseLockedTableId.js.map +0 -1
- package/dist/cjs/graphql/queries/autoCompoundEvents.d.ts +0 -2
- package/dist/cjs/graphql/queries/autoCompoundEvents.d.ts.map +0 -1
- package/dist/cjs/graphql/queries/autoCompoundEvents.js +0 -19
- package/dist/cjs/graphql/queries/autoCompoundEvents.js.map +0 -1
- package/dist/cjs/graphql/queries/cetusPools.d.ts +0 -2
- package/dist/cjs/graphql/queries/cetusPools.d.ts.map +0 -1
- package/dist/cjs/graphql/queries/cetusPools.js +0 -39
- package/dist/cjs/graphql/queries/cetusPools.js.map +0 -1
- package/dist/cjs/graphql/queries/getMultiReceipts.d.ts +0 -3
- package/dist/cjs/graphql/queries/getMultiReceipts.d.ts.map +0 -1
- package/dist/cjs/graphql/queries/getMultiReceipts.js +0 -59
- package/dist/cjs/graphql/queries/getMultiReceipts.js.map +0 -1
- package/dist/cjs/graphql/queries/investors.d.ts +0 -2
- package/dist/cjs/graphql/queries/investors.d.ts.map +0 -1
- package/dist/cjs/graphql/queries/investors.js +0 -39
- package/dist/cjs/graphql/queries/investors.js.map +0 -1
- package/dist/cjs/graphql/queries/lockedTableData.d.ts +0 -2
- package/dist/cjs/graphql/queries/lockedTableData.d.ts.map +0 -1
- package/dist/cjs/graphql/queries/lockedTableData.js +0 -30
- package/dist/cjs/graphql/queries/lockedTableData.js.map +0 -1
- package/dist/cjs/graphql/queries/lockedTableDataFragment.d.ts +0 -2
- package/dist/cjs/graphql/queries/lockedTableDataFragment.d.ts.map +0 -1
- package/dist/cjs/graphql/queries/lockedTableDataFragment.js +0 -24
- package/dist/cjs/graphql/queries/lockedTableDataFragment.js.map +0 -1
- package/dist/cjs/graphql/queries/nftHolders.d.ts +0 -2
- package/dist/cjs/graphql/queries/nftHolders.d.ts.map +0 -1
- package/dist/cjs/graphql/queries/nftHolders.js +0 -23
- package/dist/cjs/graphql/queries/nftHolders.js.map +0 -1
- package/dist/cjs/graphql/queries/pools.d.ts +0 -2
- package/dist/cjs/graphql/queries/pools.d.ts.map +0 -1
- package/dist/cjs/graphql/queries/pools.js +0 -57
- package/dist/cjs/graphql/queries/pools.js.map +0 -1
- package/dist/cjs/graphql/queries/receiptData.d.ts +0 -2
- package/dist/cjs/graphql/queries/receiptData.d.ts.map +0 -1
- package/dist/cjs/graphql/queries/receiptData.js +0 -21
- package/dist/cjs/graphql/queries/receiptData.js.map +0 -1
- package/dist/cjs/graphql/queries/userVaultBalances.d.ts +0 -2
- package/dist/cjs/graphql/queries/userVaultBalances.d.ts.map +0 -1
- package/dist/cjs/graphql/queries/userVaultBalances.js +0 -62
- package/dist/cjs/graphql/queries/userVaultBalances.js.map +0 -1
- package/dist/cjs/graphql/queries/userVaults.d.ts +0 -2
- package/dist/cjs/graphql/queries/userVaults.d.ts.map +0 -1
- package/dist/cjs/graphql/queries/userVaults.js +0 -62
- package/dist/cjs/graphql/queries/userVaults.js.map +0 -1
- package/dist/cjs/graphql/queries.d.ts +0 -15
- package/dist/cjs/graphql/queries.d.ts.map +0 -1
- package/dist/cjs/graphql/queries.js +0 -86
- package/dist/cjs/graphql/queries.js.map +0 -1
- package/dist/cjs/graphql/types.d.ts +0 -112
- package/dist/cjs/graphql/types.d.ts.map +0 -1
- package/dist/cjs/graphql/types.js +0 -3
- package/dist/cjs/graphql/types.js.map +0 -1
- package/dist/cjs/sui-sdk/client.d.ts +0 -44
- package/dist/cjs/sui-sdk/client.d.ts.map +0 -1
- package/dist/cjs/sui-sdk/client.js +0 -90
- package/dist/cjs/sui-sdk/client.js.map +0 -1
- package/dist/cjs/sui-sdk/events/fetchAfterTransactionEvents.d.ts +0 -10
- package/dist/cjs/sui-sdk/events/fetchAfterTransactionEvents.d.ts.map +0 -1
- package/dist/cjs/sui-sdk/events/fetchAfterTransactionEvents.js +0 -128
- package/dist/cjs/sui-sdk/events/fetchAfterTransactionEvents.js.map +0 -1
- package/dist/cjs/sui-sdk/events/fetchAirdropClaimEvent.d.ts +0 -4
- package/dist/cjs/sui-sdk/events/fetchAirdropClaimEvent.d.ts.map +0 -1
- package/dist/cjs/sui-sdk/events/fetchAirdropClaimEvent.js +0 -20
- package/dist/cjs/sui-sdk/events/fetchAirdropClaimEvent.js.map +0 -1
- package/dist/cjs/sui-sdk/events/fetchAutoCompoundingEvents.d.ts +0 -9
- package/dist/cjs/sui-sdk/events/fetchAutoCompoundingEvents.d.ts.map +0 -1
- package/dist/cjs/sui-sdk/events/fetchAutoCompoundingEvents.js +0 -406
- package/dist/cjs/sui-sdk/events/fetchAutoCompoundingEvents.js.map +0 -1
- package/dist/cjs/sui-sdk/events/fetchCheckRatioEvents.d.ts +0 -4
- package/dist/cjs/sui-sdk/events/fetchCheckRatioEvents.d.ts.map +0 -1
- package/dist/cjs/sui-sdk/events/fetchCheckRatioEvents.js +0 -47
- package/dist/cjs/sui-sdk/events/fetchCheckRatioEvents.js.map +0 -1
- package/dist/cjs/sui-sdk/events/fetchEvents.d.ts +0 -4
- package/dist/cjs/sui-sdk/events/fetchEvents.d.ts.map +0 -1
- package/dist/cjs/sui-sdk/events/fetchEvents.js +0 -453
- package/dist/cjs/sui-sdk/events/fetchEvents.js.map +0 -1
- package/dist/cjs/sui-sdk/events/fetchLiquidityChangeEvents.d.ts +0 -4
- package/dist/cjs/sui-sdk/events/fetchLiquidityChangeEvents.d.ts.map +0 -1
- package/dist/cjs/sui-sdk/events/fetchLiquidityChangeEvents.js +0 -45
- package/dist/cjs/sui-sdk/events/fetchLiquidityChangeEvents.js.map +0 -1
- package/dist/cjs/sui-sdk/events/fetchMultiCategoryEvents.d.ts +0 -9
- package/dist/cjs/sui-sdk/events/fetchMultiCategoryEvents.d.ts.map +0 -1
- package/dist/cjs/sui-sdk/events/fetchMultiCategoryEvents.js +0 -41
- package/dist/cjs/sui-sdk/events/fetchMultiCategoryEvents.js.map +0 -1
- package/dist/cjs/sui-sdk/events/fetchRebalanceEvents.d.ts +0 -7
- package/dist/cjs/sui-sdk/events/fetchRebalanceEvents.d.ts.map +0 -1
- package/dist/cjs/sui-sdk/events/fetchRebalanceEvents.js +0 -91
- package/dist/cjs/sui-sdk/events/fetchRebalanceEvents.js.map +0 -1
- package/dist/cjs/sui-sdk/events/fetchWithdrawV2Events.d.ts +0 -4
- package/dist/cjs/sui-sdk/events/fetchWithdrawV2Events.d.ts.map +0 -1
- package/dist/cjs/sui-sdk/events/fetchWithdrawV2Events.js +0 -28
- package/dist/cjs/sui-sdk/events/fetchWithdrawV2Events.js.map +0 -1
- package/dist/cjs/sui-sdk/events/parseData.d.ts +0 -6
- package/dist/cjs/sui-sdk/events/parseData.d.ts.map +0 -1
- package/dist/cjs/sui-sdk/events/parseData.js +0 -33
- package/dist/cjs/sui-sdk/events/parseData.js.map +0 -1
- package/dist/cjs/sui-sdk/events/types.d.ts +0 -238
- package/dist/cjs/sui-sdk/events/types.d.ts.map +0 -1
- package/dist/cjs/sui-sdk/events/types.js +0 -9
- package/dist/cjs/sui-sdk/events/types.js.map +0 -1
- package/dist/cjs/sui-sdk/functions/fetchTableData.d.ts +0 -50
- package/dist/cjs/sui-sdk/functions/fetchTableData.d.ts.map +0 -1
- package/dist/cjs/sui-sdk/functions/fetchTableData.js +0 -77
- package/dist/cjs/sui-sdk/functions/fetchTableData.js.map +0 -1
- package/dist/cjs/sui-sdk/functions/fetchUserVaultBalances.d.ts +0 -3
- package/dist/cjs/sui-sdk/functions/fetchUserVaultBalances.d.ts.map +0 -1
- package/dist/cjs/sui-sdk/functions/fetchUserVaultBalances.js +0 -73
- package/dist/cjs/sui-sdk/functions/fetchUserVaultBalances.js.map +0 -1
- package/dist/cjs/sui-sdk/functions/fetchUserVaults.d.ts +0 -3
- package/dist/cjs/sui-sdk/functions/fetchUserVaults.d.ts.map +0 -1
- package/dist/cjs/sui-sdk/functions/fetchUserVaults.js +0 -50
- package/dist/cjs/sui-sdk/functions/fetchUserVaults.js.map +0 -1
- package/dist/cjs/sui-sdk/functions/getPortfolioAmounts.d.ts +0 -19
- package/dist/cjs/sui-sdk/functions/getPortfolioAmounts.d.ts.map +0 -1
- package/dist/cjs/sui-sdk/functions/getPortfolioAmounts.js +0 -314
- package/dist/cjs/sui-sdk/functions/getPortfolioAmounts.js.map +0 -1
- package/dist/cjs/sui-sdk/functions/getPositionRange.d.ts +0 -12
- package/dist/cjs/sui-sdk/functions/getPositionRange.d.ts.map +0 -1
- package/dist/cjs/sui-sdk/functions/getPositionRange.js +0 -88
- package/dist/cjs/sui-sdk/functions/getPositionRange.js.map +0 -1
- package/dist/cjs/sui-sdk/functions/getReceipts.d.ts +0 -69
- package/dist/cjs/sui-sdk/functions/getReceipts.d.ts.map +0 -1
- package/dist/cjs/sui-sdk/functions/getReceipts.js +0 -768
- package/dist/cjs/sui-sdk/functions/getReceipts.js.map +0 -1
- package/dist/cjs/sui-sdk/transactions/constants.d.ts +0 -4
- package/dist/cjs/sui-sdk/transactions/constants.d.ts.map +0 -1
- package/dist/cjs/sui-sdk/transactions/constants.js +0 -90
- package/dist/cjs/sui-sdk/transactions/constants.js.map +0 -1
- package/dist/cjs/sui-sdk/transactions/fetchTransactions.d.ts +0 -5
- package/dist/cjs/sui-sdk/transactions/fetchTransactions.d.ts.map +0 -1
- package/dist/cjs/sui-sdk/transactions/fetchTransactions.js +0 -65
- package/dist/cjs/sui-sdk/transactions/fetchTransactions.js.map +0 -1
- package/dist/cjs/sui-sdk/transactions/types.d.ts +0 -9
- package/dist/cjs/sui-sdk/transactions/types.d.ts.map +0 -1
- package/dist/cjs/sui-sdk/transactions/types.js +0 -3
- package/dist/cjs/sui-sdk/transactions/types.js.map +0 -1
- package/dist/cjs/transactions/7k.d.ts +0 -8
- package/dist/cjs/transactions/7k.d.ts.map +0 -1
- package/dist/cjs/transactions/7k.js +0 -34
- package/dist/cjs/transactions/7k.js.map +0 -1
- package/dist/cjs/transactions/alpha.d.ts +0 -6
- package/dist/cjs/transactions/alpha.d.ts.map +0 -1
- package/dist/cjs/transactions/alpha.js +0 -110
- package/dist/cjs/transactions/alpha.js.map +0 -1
- package/dist/cjs/transactions/alphaVault.d.ts +0 -33
- package/dist/cjs/transactions/alphaVault.d.ts.map +0 -1
- package/dist/cjs/transactions/alphaVault.js +0 -449
- package/dist/cjs/transactions/alphaVault.js.map +0 -1
- package/dist/cjs/transactions/alphalend.d.ts +0 -30
- package/dist/cjs/transactions/alphalend.d.ts.map +0 -1
- package/dist/cjs/transactions/alphalend.js +0 -286
- package/dist/cjs/transactions/alphalend.js.map +0 -1
- package/dist/cjs/transactions/blueRewards.d.ts +0 -15
- package/dist/cjs/transactions/blueRewards.d.ts.map +0 -1
- package/dist/cjs/transactions/blueRewards.js +0 -395
- package/dist/cjs/transactions/blueRewards.js.map +0 -1
- package/dist/cjs/transactions/bluefin.d.ts +0 -60
- package/dist/cjs/transactions/bluefin.d.ts.map +0 -1
- package/dist/cjs/transactions/bluefin.js +0 -3078
- package/dist/cjs/transactions/bluefin.js.map +0 -1
- package/dist/cjs/transactions/bucket.d.ts +0 -8
- package/dist/cjs/transactions/bucket.d.ts.map +0 -1
- package/dist/cjs/transactions/bucket.js +0 -144
- package/dist/cjs/transactions/bucket.js.map +0 -1
- package/dist/cjs/transactions/cetus.d.ts +0 -27
- package/dist/cjs/transactions/cetus.d.ts.map +0 -1
- package/dist/cjs/transactions/cetus.js +0 -466
- package/dist/cjs/transactions/cetus.js.map +0 -1
- package/dist/cjs/transactions/cetusSwap.d.ts +0 -15
- package/dist/cjs/transactions/cetusSwap.d.ts.map +0 -1
- package/dist/cjs/transactions/cetusSwap.js +0 -74
- package/dist/cjs/transactions/cetusSwap.js.map +0 -1
- package/dist/cjs/transactions/collect_rewards.d.ts +0 -11
- package/dist/cjs/transactions/collect_rewards.d.ts.map +0 -1
- package/dist/cjs/transactions/collect_rewards.js +0 -1292
- package/dist/cjs/transactions/collect_rewards.js.map +0 -1
- package/dist/cjs/transactions/deposit.d.ts +0 -15
- package/dist/cjs/transactions/deposit.d.ts.map +0 -1
- package/dist/cjs/transactions/deposit.js +0 -194
- package/dist/cjs/transactions/deposit.js.map +0 -1
- package/dist/cjs/transactions/get_navi_rewards.d.ts +0 -11
- package/dist/cjs/transactions/get_navi_rewards.d.ts.map +0 -1
- package/dist/cjs/transactions/get_navi_rewards.js +0 -39
- package/dist/cjs/transactions/get_navi_rewards.js.map +0 -1
- package/dist/cjs/transactions/navi-looping.d.ts +0 -55
- package/dist/cjs/transactions/navi-looping.d.ts.map +0 -1
- package/dist/cjs/transactions/navi-looping.js +0 -1718
- package/dist/cjs/transactions/navi-looping.js.map +0 -1
- package/dist/cjs/transactions/navi.d.ts +0 -9
- package/dist/cjs/transactions/navi.d.ts.map +0 -1
- package/dist/cjs/transactions/navi.js +0 -2541
- package/dist/cjs/transactions/navi.js.map +0 -1
- package/dist/cjs/transactions/naviOracle.d.ts +0 -5
- package/dist/cjs/transactions/naviOracle.d.ts.map +0 -1
- package/dist/cjs/transactions/naviOracle.js +0 -28
- package/dist/cjs/transactions/naviOracle.js.map +0 -1
- package/dist/cjs/transactions/newZapDeposit.d.ts +0 -19
- package/dist/cjs/transactions/newZapDeposit.d.ts.map +0 -1
- package/dist/cjs/transactions/newZapDeposit.js +0 -1622
- package/dist/cjs/transactions/newZapDeposit.js.map +0 -1
- package/dist/cjs/transactions/slush.d.ts +0 -16
- package/dist/cjs/transactions/slush.d.ts.map +0 -1
- package/dist/cjs/transactions/slush.js +0 -219
- package/dist/cjs/transactions/slush.js.map +0 -1
- package/dist/cjs/transactions/types.d.ts +0 -17
- package/dist/cjs/transactions/types.d.ts.map +0 -1
- package/dist/cjs/transactions/types.js +0 -3
- package/dist/cjs/transactions/types.js.map +0 -1
- package/dist/cjs/transactions/withdraw.d.ts +0 -9
- package/dist/cjs/transactions/withdraw.d.ts.map +0 -1
- package/dist/cjs/transactions/withdraw.js +0 -132
- package/dist/cjs/transactions/withdraw.js.map +0 -1
- package/dist/cjs/transactions/zapDeposit.d.ts +0 -6
- package/dist/cjs/transactions/zapDeposit.d.ts.map +0 -1
- package/dist/cjs/transactions/zapDeposit.js +0 -1731
- package/dist/cjs/transactions/zapDeposit.js.map +0 -1
- package/dist/cjs/types.d.ts +0 -201
- package/dist/cjs/types.d.ts.map +0 -1
- package/dist/cjs/types.js +0 -3
- package/dist/cjs/types.js.map +0 -1
- package/dist/cjs/utils/clmm/prices.d.ts +0 -20
- package/dist/cjs/utils/clmm/prices.d.ts.map +0 -1
- package/dist/cjs/utils/clmm/prices.js +0 -321
- package/dist/cjs/utils/clmm/prices.js.map +0 -1
- package/dist/cjs/utils/clmm/tokenAmountFromLiquidity.d.ts +0 -15
- package/dist/cjs/utils/clmm/tokenAmountFromLiquidity.d.ts.map +0 -1
- package/dist/cjs/utils/clmm/tokenAmountFromLiquidity.js +0 -200
- package/dist/cjs/utils/clmm/tokenAmountFromLiquidity.js.map +0 -1
- package/dist/cjs/utils/clmm/types.d.ts +0 -25
- package/dist/cjs/utils/clmm/types.d.ts.map +0 -1
- package/dist/cjs/utils/clmm/types.js +0 -3
- package/dist/cjs/utils/clmm/types.js.map +0 -1
- package/dist/cjs/utils/getReceipts.d.ts +0 -4
- package/dist/cjs/utils/getReceipts.d.ts.map +0 -1
- package/dist/cjs/utils/getReceipts.js +0 -47
- package/dist/cjs/utils/getReceipts.js.map +0 -1
- package/dist/cjs/utils/hop.d.ts +0 -16
- package/dist/cjs/utils/hop.d.ts.map +0 -1
- package/dist/cjs/utils/hop.js +0 -130
- package/dist/cjs/utils/hop.js.map +0 -1
- package/dist/cjs/utils/prices.d.ts +0 -15
- package/dist/cjs/utils/prices.d.ts.map +0 -1
- package/dist/cjs/utils/prices.js +0 -168
- package/dist/cjs/utils/prices.js.map +0 -1
- package/dist/cjs/utils/simpleCache.d.ts +0 -14
- package/dist/cjs/utils/simpleCache.d.ts.map +0 -1
- package/dist/cjs/utils/simpleCache.js +0 -92
- package/dist/cjs/utils/simpleCache.js.map +0 -1
- package/dist/cjs/utils/types.d.ts +0 -5
- package/dist/cjs/utils/types.d.ts.map +0 -1
- package/dist/cjs/utils/types.js +0 -3
- package/dist/cjs/utils/types.js.map +0 -1
- package/dist/cjs/utils/userHoldings.d.ts +0 -10
- package/dist/cjs/utils/userHoldings.d.ts.map +0 -1
- package/dist/cjs/utils/userHoldings.js +0 -229
- package/dist/cjs/utils/userHoldings.js.map +0 -1
- package/dist/cjs/vaultFunctions.d.ts +0 -8
- package/dist/cjs/vaultFunctions.d.ts.map +0 -1
- package/dist/cjs/vaultFunctions.js +0 -36
- package/dist/cjs/vaultFunctions.js.map +0 -1
- package/dist/esm/adminFunctions.d.ts +0 -33
- package/dist/esm/adminFunctions.d.ts.map +0 -1
- package/dist/esm/adminFunctions.js +0 -290
- package/dist/esm/adminFunctions.js.map +0 -1
- package/dist/esm/common/alphaTypes.d.ts +0 -110
- package/dist/esm/common/alphaTypes.d.ts.map +0 -1
- package/dist/esm/common/alphaTypes.js +0 -2
- package/dist/esm/common/alphaTypes.js.map +0 -1
- package/dist/esm/common/cetus_mainnet_config.d.ts +0 -3
- package/dist/esm/common/cetus_mainnet_config.d.ts.map +0 -1
- package/dist/esm/common/cetus_mainnet_config.js +0 -47
- package/dist/esm/common/cetus_mainnet_config.js.map +0 -1
- package/dist/esm/common/coins.d.ts +0 -6
- package/dist/esm/common/coins.d.ts.map +0 -1
- package/dist/esm/common/coins.js +0 -310
- package/dist/esm/common/coins.js.map +0 -1
- package/dist/esm/common/constants.d.ts +0 -3187
- package/dist/esm/common/constants.d.ts.map +0 -1
- package/dist/esm/common/constants.js +0 -2560
- package/dist/esm/common/constants.js.map +0 -1
- package/dist/esm/common/maps.d.ts +0 -120
- package/dist/esm/common/maps.d.ts.map +0 -1
- package/dist/esm/common/maps.js +0 -2516
- package/dist/esm/common/maps.js.map +0 -1
- package/dist/esm/common/pyth.d.ts +0 -7
- package/dist/esm/common/pyth.d.ts.map +0 -1
- package/dist/esm/common/pyth.js +0 -2
- package/dist/esm/common/pyth.js.map +0 -1
- package/dist/esm/common/types.d.ts +0 -736
- package/dist/esm/common/types.d.ts.map +0 -1
- package/dist/esm/common/types.js.map +0 -1
- package/dist/esm/example.d.ts +0 -3
- package/dist/esm/example.d.ts.map +0 -1
- package/dist/esm/example.js +0 -38
- package/dist/esm/example.js.map +0 -1
- package/dist/esm/getAirdropShare.d.ts +0 -3
- package/dist/esm/getAirdropShare.d.ts.map +0 -1
- package/dist/esm/getAirdropShare.js +0 -7
- package/dist/esm/getAirdropShare.js.map +0 -1
- package/dist/esm/getAllVaults.d.ts +0 -7
- package/dist/esm/getAllVaults.d.ts.map +0 -1
- package/dist/esm/getAllVaults.js +0 -34
- package/dist/esm/getAllVaults.js.map +0 -1
- package/dist/esm/getAlphaUnlocks.d.ts +0 -15
- package/dist/esm/getAlphaUnlocks.d.ts.map +0 -1
- package/dist/esm/getAlphaUnlocks.js +0 -18
- package/dist/esm/getAlphaUnlocks.js.map +0 -1
- package/dist/esm/getAprs.d.ts +0 -14
- package/dist/esm/getAprs.d.ts.map +0 -1
- package/dist/esm/getAprs.js +0 -297
- package/dist/esm/getAprs.js.map +0 -1
- package/dist/esm/getLastAutoCompoundTime.d.ts +0 -4
- package/dist/esm/getLastAutoCompoundTime.d.ts.map +0 -1
- package/dist/esm/getLastAutoCompoundTime.js +0 -15
- package/dist/esm/getLastAutoCompoundTime.js.map +0 -1
- package/dist/esm/getRebalanceHistory.d.ts +0 -6
- package/dist/esm/getRebalanceHistory.d.ts.map +0 -1
- package/dist/esm/getRebalanceHistory.js +0 -22
- package/dist/esm/getRebalanceHistory.js.map +0 -1
- package/dist/esm/getTvls.d.ts +0 -10
- package/dist/esm/getTvls.d.ts.map +0 -1
- package/dist/esm/getTvls.js +0 -130
- package/dist/esm/getTvls.js.map +0 -1
- package/dist/esm/getVaultBalances.d.ts +0 -13
- package/dist/esm/getVaultBalances.d.ts.map +0 -1
- package/dist/esm/getVaultBalances.js +0 -96
- package/dist/esm/getVaultBalances.js.map +0 -1
- package/dist/esm/getVaults.d.ts +0 -8
- package/dist/esm/getVaults.d.ts.map +0 -1
- package/dist/esm/getVaults.js +0 -29
- package/dist/esm/getVaults.js.map +0 -1
- package/dist/esm/graphql/client.d.ts +0 -4
- package/dist/esm/graphql/client.d.ts.map +0 -1
- package/dist/esm/graphql/client.js +0 -12
- package/dist/esm/graphql/client.js.map +0 -1
- package/dist/esm/graphql/executeMutations.d.ts +0 -19
- package/dist/esm/graphql/executeMutations.d.ts.map +0 -1
- package/dist/esm/graphql/executeMutations.js +0 -34
- package/dist/esm/graphql/executeMutations.js.map +0 -1
- package/dist/esm/graphql/fetchAutoCompoundingEventsGql.d.ts +0 -28
- package/dist/esm/graphql/fetchAutoCompoundingEventsGql.d.ts.map +0 -1
- package/dist/esm/graphql/fetchAutoCompoundingEventsGql.js +0 -117
- package/dist/esm/graphql/fetchAutoCompoundingEventsGql.js.map +0 -1
- package/dist/esm/graphql/fetchData.d.ts +0 -35
- package/dist/esm/graphql/fetchData.d.ts.map +0 -1
- package/dist/esm/graphql/fetchData.js +0 -89
- package/dist/esm/graphql/fetchData.js.map +0 -1
- package/dist/esm/graphql/fetchNftHolders.d.ts +0 -4
- package/dist/esm/graphql/fetchNftHolders.d.ts.map +0 -1
- package/dist/esm/graphql/fetchNftHolders.js +0 -33
- package/dist/esm/graphql/fetchNftHolders.js.map +0 -1
- package/dist/esm/graphql/fetchReceipts.d.ts +0 -4
- package/dist/esm/graphql/fetchReceipts.d.ts.map +0 -1
- package/dist/esm/graphql/fetchReceipts.js +0 -34
- package/dist/esm/graphql/fetchReceipts.js.map +0 -1
- package/dist/esm/graphql/getMultiReceipts.d.ts +0 -4
- package/dist/esm/graphql/getMultiReceipts.d.ts.map +0 -1
- package/dist/esm/graphql/getMultiReceipts.js +0 -114
- package/dist/esm/graphql/getMultiReceipts.js.map +0 -1
- package/dist/esm/graphql/mutations.d.ts +0 -4
- package/dist/esm/graphql/mutations.d.ts.map +0 -1
- package/dist/esm/graphql/mutations.js +0 -30
- package/dist/esm/graphql/mutations.js.map +0 -1
- package/dist/esm/graphql/parseData.d.ts +0 -3
- package/dist/esm/graphql/parseData.d.ts.map +0 -1
- package/dist/esm/graphql/parseData.js +0 -7
- package/dist/esm/graphql/parseData.js.map +0 -1
- package/dist/esm/graphql/parseLockedTableId.d.ts +0 -8
- package/dist/esm/graphql/parseLockedTableId.d.ts.map +0 -1
- package/dist/esm/graphql/parseLockedTableId.js +0 -13
- package/dist/esm/graphql/parseLockedTableId.js.map +0 -1
- package/dist/esm/graphql/queries/autoCompoundEvents.d.ts +0 -2
- package/dist/esm/graphql/queries/autoCompoundEvents.d.ts.map +0 -1
- package/dist/esm/graphql/queries/autoCompoundEvents.js +0 -16
- package/dist/esm/graphql/queries/autoCompoundEvents.js.map +0 -1
- package/dist/esm/graphql/queries/cetusPools.d.ts +0 -2
- package/dist/esm/graphql/queries/cetusPools.d.ts.map +0 -1
- package/dist/esm/graphql/queries/cetusPools.js +0 -36
- package/dist/esm/graphql/queries/cetusPools.js.map +0 -1
- package/dist/esm/graphql/queries/getMultiReceipts.d.ts +0 -3
- package/dist/esm/graphql/queries/getMultiReceipts.d.ts.map +0 -1
- package/dist/esm/graphql/queries/getMultiReceipts.js +0 -56
- package/dist/esm/graphql/queries/getMultiReceipts.js.map +0 -1
- package/dist/esm/graphql/queries/investors.d.ts +0 -2
- package/dist/esm/graphql/queries/investors.d.ts.map +0 -1
- package/dist/esm/graphql/queries/investors.js +0 -36
- package/dist/esm/graphql/queries/investors.js.map +0 -1
- package/dist/esm/graphql/queries/lockedTableData.d.ts +0 -2
- package/dist/esm/graphql/queries/lockedTableData.d.ts.map +0 -1
- package/dist/esm/graphql/queries/lockedTableData.js +0 -27
- package/dist/esm/graphql/queries/lockedTableData.js.map +0 -1
- package/dist/esm/graphql/queries/lockedTableDataFragment.d.ts +0 -2
- package/dist/esm/graphql/queries/lockedTableDataFragment.d.ts.map +0 -1
- package/dist/esm/graphql/queries/lockedTableDataFragment.js +0 -21
- package/dist/esm/graphql/queries/lockedTableDataFragment.js.map +0 -1
- package/dist/esm/graphql/queries/nftHolders.d.ts +0 -2
- package/dist/esm/graphql/queries/nftHolders.d.ts.map +0 -1
- package/dist/esm/graphql/queries/nftHolders.js +0 -20
- package/dist/esm/graphql/queries/nftHolders.js.map +0 -1
- package/dist/esm/graphql/queries/pools.d.ts +0 -2
- package/dist/esm/graphql/queries/pools.d.ts.map +0 -1
- package/dist/esm/graphql/queries/pools.js +0 -54
- package/dist/esm/graphql/queries/pools.js.map +0 -1
- package/dist/esm/graphql/queries/receiptData.d.ts +0 -2
- package/dist/esm/graphql/queries/receiptData.d.ts.map +0 -1
- package/dist/esm/graphql/queries/receiptData.js +0 -18
- package/dist/esm/graphql/queries/receiptData.js.map +0 -1
- package/dist/esm/graphql/queries/userVaultBalances.d.ts +0 -2
- package/dist/esm/graphql/queries/userVaultBalances.d.ts.map +0 -1
- package/dist/esm/graphql/queries/userVaultBalances.js +0 -59
- package/dist/esm/graphql/queries/userVaultBalances.js.map +0 -1
- package/dist/esm/graphql/queries/userVaults.d.ts +0 -2
- package/dist/esm/graphql/queries/userVaults.d.ts.map +0 -1
- package/dist/esm/graphql/queries/userVaults.js +0 -59
- package/dist/esm/graphql/queries/userVaults.js.map +0 -1
- package/dist/esm/graphql/queries.d.ts +0 -15
- package/dist/esm/graphql/queries.d.ts.map +0 -1
- package/dist/esm/graphql/queries.js +0 -83
- package/dist/esm/graphql/queries.js.map +0 -1
- package/dist/esm/graphql/types.d.ts +0 -112
- package/dist/esm/graphql/types.d.ts.map +0 -1
- package/dist/esm/graphql/types.js +0 -2
- package/dist/esm/graphql/types.js.map +0 -1
- package/dist/esm/sui-sdk/client.d.ts +0 -44
- package/dist/esm/sui-sdk/client.d.ts.map +0 -1
- package/dist/esm/sui-sdk/client.js +0 -82
- package/dist/esm/sui-sdk/client.js.map +0 -1
- package/dist/esm/sui-sdk/events/fetchAfterTransactionEvents.d.ts +0 -10
- package/dist/esm/sui-sdk/events/fetchAfterTransactionEvents.d.ts.map +0 -1
- package/dist/esm/sui-sdk/events/fetchAfterTransactionEvents.js +0 -125
- package/dist/esm/sui-sdk/events/fetchAfterTransactionEvents.js.map +0 -1
- package/dist/esm/sui-sdk/events/fetchAirdropClaimEvent.d.ts +0 -4
- package/dist/esm/sui-sdk/events/fetchAirdropClaimEvent.d.ts.map +0 -1
- package/dist/esm/sui-sdk/events/fetchAirdropClaimEvent.js +0 -17
- package/dist/esm/sui-sdk/events/fetchAirdropClaimEvent.js.map +0 -1
- package/dist/esm/sui-sdk/events/fetchAutoCompoundingEvents.d.ts +0 -9
- package/dist/esm/sui-sdk/events/fetchAutoCompoundingEvents.d.ts.map +0 -1
- package/dist/esm/sui-sdk/events/fetchAutoCompoundingEvents.js +0 -401
- package/dist/esm/sui-sdk/events/fetchAutoCompoundingEvents.js.map +0 -1
- package/dist/esm/sui-sdk/events/fetchCheckRatioEvents.d.ts +0 -4
- package/dist/esm/sui-sdk/events/fetchCheckRatioEvents.d.ts.map +0 -1
- package/dist/esm/sui-sdk/events/fetchCheckRatioEvents.js +0 -44
- package/dist/esm/sui-sdk/events/fetchCheckRatioEvents.js.map +0 -1
- package/dist/esm/sui-sdk/events/fetchEvents.d.ts +0 -4
- package/dist/esm/sui-sdk/events/fetchEvents.d.ts.map +0 -1
- package/dist/esm/sui-sdk/events/fetchEvents.js +0 -450
- package/dist/esm/sui-sdk/events/fetchEvents.js.map +0 -1
- package/dist/esm/sui-sdk/events/fetchLiquidityChangeEvents.d.ts +0 -4
- package/dist/esm/sui-sdk/events/fetchLiquidityChangeEvents.d.ts.map +0 -1
- package/dist/esm/sui-sdk/events/fetchLiquidityChangeEvents.js +0 -42
- package/dist/esm/sui-sdk/events/fetchLiquidityChangeEvents.js.map +0 -1
- package/dist/esm/sui-sdk/events/fetchMultiCategoryEvents.d.ts +0 -9
- package/dist/esm/sui-sdk/events/fetchMultiCategoryEvents.d.ts.map +0 -1
- package/dist/esm/sui-sdk/events/fetchMultiCategoryEvents.js +0 -38
- package/dist/esm/sui-sdk/events/fetchMultiCategoryEvents.js.map +0 -1
- package/dist/esm/sui-sdk/events/fetchRebalanceEvents.d.ts +0 -7
- package/dist/esm/sui-sdk/events/fetchRebalanceEvents.d.ts.map +0 -1
- package/dist/esm/sui-sdk/events/fetchRebalanceEvents.js +0 -86
- package/dist/esm/sui-sdk/events/fetchRebalanceEvents.js.map +0 -1
- package/dist/esm/sui-sdk/events/fetchWithdrawV2Events.d.ts +0 -4
- package/dist/esm/sui-sdk/events/fetchWithdrawV2Events.d.ts.map +0 -1
- package/dist/esm/sui-sdk/events/fetchWithdrawV2Events.js +0 -25
- package/dist/esm/sui-sdk/events/fetchWithdrawV2Events.js.map +0 -1
- package/dist/esm/sui-sdk/events/parseData.d.ts +0 -6
- package/dist/esm/sui-sdk/events/parseData.d.ts.map +0 -1
- package/dist/esm/sui-sdk/events/parseData.js +0 -29
- package/dist/esm/sui-sdk/events/parseData.js.map +0 -1
- package/dist/esm/sui-sdk/events/types.d.ts +0 -238
- package/dist/esm/sui-sdk/events/types.d.ts.map +0 -1
- package/dist/esm/sui-sdk/events/types.js +0 -6
- package/dist/esm/sui-sdk/events/types.js.map +0 -1
- package/dist/esm/sui-sdk/functions/fetchTableData.d.ts +0 -50
- package/dist/esm/sui-sdk/functions/fetchTableData.d.ts.map +0 -1
- package/dist/esm/sui-sdk/functions/fetchTableData.js +0 -73
- package/dist/esm/sui-sdk/functions/fetchTableData.js.map +0 -1
- package/dist/esm/sui-sdk/functions/fetchUserVaultBalances.d.ts +0 -3
- package/dist/esm/sui-sdk/functions/fetchUserVaultBalances.d.ts.map +0 -1
- package/dist/esm/sui-sdk/functions/fetchUserVaultBalances.js +0 -70
- package/dist/esm/sui-sdk/functions/fetchUserVaultBalances.js.map +0 -1
- package/dist/esm/sui-sdk/functions/fetchUserVaults.d.ts +0 -3
- package/dist/esm/sui-sdk/functions/fetchUserVaults.d.ts.map +0 -1
- package/dist/esm/sui-sdk/functions/fetchUserVaults.js +0 -47
- package/dist/esm/sui-sdk/functions/fetchUserVaults.js.map +0 -1
- package/dist/esm/sui-sdk/functions/getPortfolioAmounts.d.ts +0 -19
- package/dist/esm/sui-sdk/functions/getPortfolioAmounts.d.ts.map +0 -1
- package/dist/esm/sui-sdk/functions/getPortfolioAmounts.js +0 -303
- package/dist/esm/sui-sdk/functions/getPortfolioAmounts.js.map +0 -1
- package/dist/esm/sui-sdk/functions/getPositionRange.d.ts +0 -12
- package/dist/esm/sui-sdk/functions/getPositionRange.d.ts.map +0 -1
- package/dist/esm/sui-sdk/functions/getPositionRange.js +0 -84
- package/dist/esm/sui-sdk/functions/getPositionRange.js.map +0 -1
- package/dist/esm/sui-sdk/functions/getReceipts.d.ts +0 -69
- package/dist/esm/sui-sdk/functions/getReceipts.d.ts.map +0 -1
- package/dist/esm/sui-sdk/functions/getReceipts.js +0 -751
- package/dist/esm/sui-sdk/functions/getReceipts.js.map +0 -1
- package/dist/esm/sui-sdk/transactions/constants.d.ts +0 -4
- package/dist/esm/sui-sdk/transactions/constants.d.ts.map +0 -1
- package/dist/esm/sui-sdk/transactions/constants.js +0 -87
- package/dist/esm/sui-sdk/transactions/constants.js.map +0 -1
- package/dist/esm/sui-sdk/transactions/fetchTransactions.d.ts +0 -5
- package/dist/esm/sui-sdk/transactions/fetchTransactions.d.ts.map +0 -1
- package/dist/esm/sui-sdk/transactions/fetchTransactions.js +0 -62
- package/dist/esm/sui-sdk/transactions/fetchTransactions.js.map +0 -1
- package/dist/esm/sui-sdk/transactions/types.d.ts +0 -9
- package/dist/esm/sui-sdk/transactions/types.d.ts.map +0 -1
- package/dist/esm/sui-sdk/transactions/types.js +0 -2
- package/dist/esm/sui-sdk/transactions/types.js.map +0 -1
- package/dist/esm/transactions/7k.d.ts +0 -8
- package/dist/esm/transactions/7k.d.ts.map +0 -1
- package/dist/esm/transactions/7k.js +0 -30
- package/dist/esm/transactions/7k.js.map +0 -1
- package/dist/esm/transactions/alpha.d.ts +0 -6
- package/dist/esm/transactions/alpha.d.ts.map +0 -1
- package/dist/esm/transactions/alpha.js +0 -105
- package/dist/esm/transactions/alpha.js.map +0 -1
- package/dist/esm/transactions/alphaVault.d.ts +0 -33
- package/dist/esm/transactions/alphaVault.d.ts.map +0 -1
- package/dist/esm/transactions/alphaVault.js +0 -441
- package/dist/esm/transactions/alphaVault.js.map +0 -1
- package/dist/esm/transactions/alphalend.d.ts +0 -30
- package/dist/esm/transactions/alphalend.d.ts.map +0 -1
- package/dist/esm/transactions/alphalend.js +0 -277
- package/dist/esm/transactions/alphalend.js.map +0 -1
- package/dist/esm/transactions/blueRewards.d.ts +0 -15
- package/dist/esm/transactions/blueRewards.d.ts.map +0 -1
- package/dist/esm/transactions/blueRewards.js +0 -357
- package/dist/esm/transactions/blueRewards.js.map +0 -1
- package/dist/esm/transactions/bluefin.d.ts +0 -60
- package/dist/esm/transactions/bluefin.d.ts.map +0 -1
- package/dist/esm/transactions/bluefin.js +0 -3060
- package/dist/esm/transactions/bluefin.js.map +0 -1
- package/dist/esm/transactions/bucket.d.ts +0 -8
- package/dist/esm/transactions/bucket.d.ts.map +0 -1
- package/dist/esm/transactions/bucket.js +0 -140
- package/dist/esm/transactions/bucket.js.map +0 -1
- package/dist/esm/transactions/cetus.d.ts +0 -27
- package/dist/esm/transactions/cetus.d.ts.map +0 -1
- package/dist/esm/transactions/cetus.js +0 -457
- package/dist/esm/transactions/cetus.js.map +0 -1
- package/dist/esm/transactions/cetusSwap.d.ts +0 -15
- package/dist/esm/transactions/cetusSwap.d.ts.map +0 -1
- package/dist/esm/transactions/cetusSwap.js +0 -72
- package/dist/esm/transactions/cetusSwap.js.map +0 -1
- package/dist/esm/transactions/collect_rewards.d.ts +0 -11
- package/dist/esm/transactions/collect_rewards.d.ts.map +0 -1
- package/dist/esm/transactions/collect_rewards.js +0 -1286
- package/dist/esm/transactions/collect_rewards.js.map +0 -1
- package/dist/esm/transactions/deposit.d.ts +0 -15
- package/dist/esm/transactions/deposit.d.ts.map +0 -1
- package/dist/esm/transactions/deposit.js +0 -185
- package/dist/esm/transactions/deposit.js.map +0 -1
- package/dist/esm/transactions/get_navi_rewards.d.ts +0 -11
- package/dist/esm/transactions/get_navi_rewards.d.ts.map +0 -1
- package/dist/esm/transactions/get_navi_rewards.js +0 -36
- package/dist/esm/transactions/get_navi_rewards.js.map +0 -1
- package/dist/esm/transactions/navi-looping.d.ts +0 -55
- package/dist/esm/transactions/navi-looping.d.ts.map +0 -1
- package/dist/esm/transactions/navi-looping.js +0 -1703
- package/dist/esm/transactions/navi-looping.js.map +0 -1
- package/dist/esm/transactions/navi.d.ts +0 -9
- package/dist/esm/transactions/navi.d.ts.map +0 -1
- package/dist/esm/transactions/navi.js +0 -2537
- package/dist/esm/transactions/navi.js.map +0 -1
- package/dist/esm/transactions/naviOracle.d.ts +0 -5
- package/dist/esm/transactions/naviOracle.d.ts.map +0 -1
- package/dist/esm/transactions/naviOracle.js +0 -25
- package/dist/esm/transactions/naviOracle.js.map +0 -1
- package/dist/esm/transactions/newZapDeposit.d.ts +0 -19
- package/dist/esm/transactions/newZapDeposit.d.ts.map +0 -1
- package/dist/esm/transactions/newZapDeposit.js +0 -1617
- package/dist/esm/transactions/newZapDeposit.js.map +0 -1
- package/dist/esm/transactions/slush.d.ts +0 -16
- package/dist/esm/transactions/slush.d.ts.map +0 -1
- package/dist/esm/transactions/slush.js +0 -213
- package/dist/esm/transactions/slush.js.map +0 -1
- package/dist/esm/transactions/types.d.ts +0 -17
- package/dist/esm/transactions/types.d.ts.map +0 -1
- package/dist/esm/transactions/types.js +0 -2
- package/dist/esm/transactions/types.js.map +0 -1
- package/dist/esm/transactions/withdraw.d.ts +0 -9
- package/dist/esm/transactions/withdraw.d.ts.map +0 -1
- package/dist/esm/transactions/withdraw.js +0 -127
- package/dist/esm/transactions/withdraw.js.map +0 -1
- package/dist/esm/transactions/zapDeposit.d.ts +0 -6
- package/dist/esm/transactions/zapDeposit.d.ts.map +0 -1
- package/dist/esm/transactions/zapDeposit.js +0 -1727
- package/dist/esm/transactions/zapDeposit.js.map +0 -1
- package/dist/esm/types.d.ts +0 -201
- package/dist/esm/types.d.ts.map +0 -1
- package/dist/esm/types.js +0 -2
- package/dist/esm/types.js.map +0 -1
- package/dist/esm/utils/clmm/prices.d.ts +0 -20
- package/dist/esm/utils/clmm/prices.d.ts.map +0 -1
- package/dist/esm/utils/clmm/prices.js +0 -313
- package/dist/esm/utils/clmm/prices.js.map +0 -1
- package/dist/esm/utils/clmm/tokenAmountFromLiquidity.d.ts +0 -15
- package/dist/esm/utils/clmm/tokenAmountFromLiquidity.d.ts.map +0 -1
- package/dist/esm/utils/clmm/tokenAmountFromLiquidity.js +0 -192
- package/dist/esm/utils/clmm/tokenAmountFromLiquidity.js.map +0 -1
- package/dist/esm/utils/clmm/types.d.ts +0 -25
- package/dist/esm/utils/clmm/types.d.ts.map +0 -1
- package/dist/esm/utils/clmm/types.js +0 -2
- package/dist/esm/utils/clmm/types.js.map +0 -1
- package/dist/esm/utils/getReceipts.d.ts +0 -4
- package/dist/esm/utils/getReceipts.d.ts.map +0 -1
- package/dist/esm/utils/getReceipts.js +0 -44
- package/dist/esm/utils/getReceipts.js.map +0 -1
- package/dist/esm/utils/hop.d.ts +0 -16
- package/dist/esm/utils/hop.d.ts.map +0 -1
- package/dist/esm/utils/hop.js +0 -122
- package/dist/esm/utils/hop.js.map +0 -1
- package/dist/esm/utils/prices.d.ts +0 -15
- package/dist/esm/utils/prices.d.ts.map +0 -1
- package/dist/esm/utils/prices.js +0 -161
- package/dist/esm/utils/prices.js.map +0 -1
- package/dist/esm/utils/simpleCache.d.ts +0 -14
- package/dist/esm/utils/simpleCache.d.ts.map +0 -1
- package/dist/esm/utils/simpleCache.js +0 -88
- package/dist/esm/utils/simpleCache.js.map +0 -1
- package/dist/esm/utils/types.d.ts +0 -5
- package/dist/esm/utils/types.d.ts.map +0 -1
- package/dist/esm/utils/types.js +0 -2
- package/dist/esm/utils/types.js.map +0 -1
- package/dist/esm/utils/userHoldings.d.ts +0 -10
- package/dist/esm/utils/userHoldings.d.ts.map +0 -1
- package/dist/esm/utils/userHoldings.js +0 -223
- package/dist/esm/utils/userHoldings.js.map +0 -1
- package/dist/esm/vaultFunctions.d.ts +0 -8
- package/dist/esm/vaultFunctions.d.ts.map +0 -1
- package/dist/esm/vaultFunctions.js +0 -31
- package/dist/esm/vaultFunctions.js.map +0 -1
- package/docs/assets/hierarchy.js +0 -1
- package/docs/assets/highlight.css +0 -78
- package/docs/assets/icons.js +0 -18
- package/docs/assets/icons.svg +0 -1
- package/docs/assets/main.js +0 -60
- package/docs/assets/navigation.js +0 -1
- package/docs/assets/search.js +0 -1
- package/docs/assets/style.css +0 -1633
- package/docs/functions/addAirdropCoin.html +0 -1
- package/docs/functions/alphaLpBreakdown.html +0 -1
- package/docs/functions/cetusLpBreakdown.html +0 -1
- package/docs/functions/claimAirdropTx.html +0 -1
- package/docs/functions/claimRewardTxb.html +0 -1
- package/docs/functions/claimRewardsTxb.html +0 -1
- package/docs/functions/claimWithdrawAlphaTx.html +0 -1
- package/docs/functions/coinAmountToXTokensDoubleAsset.html +0 -1
- package/docs/functions/coinAmountToXTokensSingleAsset.html +0 -1
- package/docs/functions/coinsInPool.html +0 -1
- package/docs/functions/collectAndSwapRewardsLyf.html +0 -1
- package/docs/functions/collectAndSwapRewardsSingleLoop.html +0 -1
- package/docs/functions/collectRewardTxb.html +0 -1
- package/docs/functions/collectRewards.html +0 -1
- package/docs/functions/collectRewardsAndSwapSlush.html +0 -1
- package/docs/functions/collectUnsuppliedBalance.html +0 -1
- package/docs/functions/deposit.html +0 -1
- package/docs/functions/depositAlphaTx.html +0 -1
- package/docs/functions/depositDoubleAssetTxb.html +0 -1
- package/docs/functions/depositSingleAssetTxb.html +0 -1
- package/docs/functions/fetchAfterTransactionEvents.html +0 -1
- package/docs/functions/fetchAirdropClaimEvents.html +0 -1
- package/docs/functions/fetchAutoCompoundingEvents.html +0 -1
- package/docs/functions/fetchAutoCompoundingEventsGql.html +0 -1
- package/docs/functions/fetchCetusPools.html +0 -1
- package/docs/functions/fetchChainIdentifier.html +0 -1
- package/docs/functions/fetchCheckRatioEvents.html +0 -1
- package/docs/functions/fetchEvents.html +0 -1
- package/docs/functions/fetchLiquidityChangeEvents.html +0 -1
- package/docs/functions/fetchMultiCategoryEvents.html +0 -1
- package/docs/functions/fetchMultiReceipts.html +0 -1
- package/docs/functions/fetchNftHolders.html +0 -1
- package/docs/functions/fetchPools.html +0 -1
- package/docs/functions/fetchPortfolioData.html +0 -1
- package/docs/functions/fetchProtocolData.html +0 -1
- package/docs/functions/fetchRequiredPrices.html +0 -1
- package/docs/functions/fetchTVL.html +0 -1
- package/docs/functions/fetchTransactions.html +0 -1
- package/docs/functions/fetchUserVaultBalances.html +0 -1
- package/docs/functions/fetchUserVaults.html +0 -1
- package/docs/functions/fetchUserWalletData.html +0 -1
- package/docs/functions/fetchVoloExchangeRate.html +0 -1
- package/docs/functions/fetchWithdrawV2Events.html +0 -1
- package/docs/functions/getAirdropShare.html +0 -1
- package/docs/functions/getAllDoubleAssetVaults.html +0 -1
- package/docs/functions/getAllSingleAssetVaults.html +0 -1
- package/docs/functions/getAllVaultBalances.html +0 -1
- package/docs/functions/getAllVaults.html +0 -1
- package/docs/functions/getAlphaUnlocks.html +0 -1
- package/docs/functions/getAlphaVaultBalance.html +0 -1
- package/docs/functions/getAmounts.html +0 -1
- package/docs/functions/getApr.html +0 -1
- package/docs/functions/getAprs.html +0 -1
- package/docs/functions/getApy.html +0 -1
- package/docs/functions/getApys.html +0 -1
- package/docs/functions/getCetusInvestorTicksMap.html +0 -1
- package/docs/functions/getCetusPool.html +0 -1
- package/docs/functions/getCetusSqrtPriceMap.html +0 -1
- package/docs/functions/getCoinAmountsFromLiquidity.html +0 -1
- package/docs/functions/getConf.html +0 -1
- package/docs/functions/getCurrentTick.html +0 -1
- package/docs/functions/getDistributor.html +0 -1
- package/docs/functions/getDoubleAssetVaultBalance.html +0 -1
- package/docs/functions/getDoubleAssetVaults.html +0 -1
- package/docs/functions/getInvestor.html +0 -1
- package/docs/functions/getInvestorPoolMap.html +0 -1
- package/docs/functions/getLastAutoCompoundTime.html +0 -1
- package/docs/functions/getLatestPrices.html +0 -1
- package/docs/functions/getLiquidity.html +0 -1
- package/docs/functions/getMultiCetusPool.html +0 -1
- package/docs/functions/getMultiInvestor.html +0 -1
- package/docs/functions/getMultiLatestPrices.html +0 -1
- package/docs/functions/getMultiParentPool.html +0 -1
- package/docs/functions/getMultiPool.html +0 -1
- package/docs/functions/getMultiReceipts.html +0 -1
- package/docs/functions/getParentPool.html +0 -1
- package/docs/functions/getPool.html +0 -1
- package/docs/functions/getPoolExchangeRate.html +0 -1
- package/docs/functions/getPoolExchangeRateMap.html +0 -1
- package/docs/functions/getPoolsWeightDistribution.html +0 -1
- package/docs/functions/getPositionRange.html +0 -1
- package/docs/functions/getPositionRanges.html +0 -1
- package/docs/functions/getPositionTicks.html +0 -1
- package/docs/functions/getPriceToTick.html +0 -1
- package/docs/functions/getRebalanceCap.html +0 -1
- package/docs/functions/getRebalanceHistories.html +0 -1
- package/docs/functions/getRebalanceHistory.html +0 -1
- package/docs/functions/getReceipts.html +0 -1
- package/docs/functions/getSingleAssetVaultBalance.html +0 -1
- package/docs/functions/getSingleAssetVaults.html +0 -1
- package/docs/functions/getSlushUserTotalXtokens.html +0 -1
- package/docs/functions/getSuiClient.html +0 -3
- package/docs/functions/getSuiNodeUrl.html +0 -3
- package/docs/functions/getTVLs-1.html +0 -1
- package/docs/functions/getTickSpacing.html +0 -1
- package/docs/functions/getTickToPrice.html +0 -1
- package/docs/functions/getTvls.html +0 -1
- package/docs/functions/getVaultBalance.html +0 -1
- package/docs/functions/getVaults.html +0 -1
- package/docs/functions/getWithdrawRequestsAndUnsuppliedAmount.html +0 -1
- package/docs/functions/initiateWithdrawAlpha.html +0 -1
- package/docs/functions/lastAutocompoundTime.html +0 -1
- package/docs/functions/liquidityToTokens.html +0 -1
- package/docs/functions/migrateBoostedToLoop.html +0 -1
- package/docs/functions/multiLiquidityToTokens.html +0 -1
- package/docs/functions/multiTokensToUsd.html +0 -1
- package/docs/functions/multiXTokensToLiquidity.html +0 -1
- package/docs/functions/parseUserWalletData.html +0 -1
- package/docs/functions/pendingRewardAmount.html +0 -1
- package/docs/functions/processWithdrawRequestsManual.html +0 -1
- package/docs/functions/setCustomSuiClient.html +0 -5
- package/docs/functions/setSuiClient.html +0 -7
- package/docs/functions/setSuiNodeUrl.html +0 -5
- package/docs/functions/setWeights.html +0 -1
- package/docs/functions/slushDeposit.html +0 -1
- package/docs/functions/slushWithdraw.html +0 -1
- package/docs/functions/updateSingleTokenPrice.html +0 -1
- package/docs/functions/withdraw.html +0 -1
- package/docs/functions/withdrawAlphaTxb.html +0 -1
- package/docs/functions/withdrawTxb.html +0 -1
- package/docs/functions/zapDepositQuoteTxb.html +0 -1
- package/docs/functions/zapDepositTxb.html +0 -1
- package/docs/hierarchy.html +0 -1
- package/docs/index.html +0 -82
- package/docs/interfaces/Coin.html +0 -12
- package/docs/interfaces/CoinPair.html +0 -3
- package/docs/interfaces/CommonEventAttributes.html +0 -7
- package/docs/interfaces/NaviVoloData.html +0 -3
- package/docs/interfaces/PoolData.html +0 -8
- package/docs/interfaces/PoolWeightDistribution.html +0 -4
- package/docs/interfaces/RebalanceHistoryType.html +0 -9
- package/docs/modules.html +0 -1
- package/docs/types/AfterTransactionEventNode.html +0 -1
- package/docs/types/AirdropClaimEventNode.html +0 -1
- package/docs/types/Allocator.html +0 -3
- package/docs/types/AlphaFiDoubleAssetVault.html +0 -9
- package/docs/types/AlphaFiMultiVaultBalance.html +0 -1
- package/docs/types/AlphaFiSingleAssetVault.html +0 -7
- package/docs/types/AlphaFiVault.html +0 -1
- package/docs/types/AlphaFiVaultBalance.html +0 -1
- package/docs/types/AlphaLendInvestor.html +0 -1
- package/docs/types/AlphaPoolType.html +0 -5
- package/docs/types/AlphaReceipt.html +0 -4
- package/docs/types/AlphaReceiptFields.html +0 -11
- package/docs/types/AlphaVaultBalance.html +0 -7
- package/docs/types/AutoBalancePoolNames.html +0 -1
- package/docs/types/AutoCompoundingEventNode.html +0 -1
- package/docs/types/Bag.html +0 -3
- package/docs/types/BluefinInvestor.html +0 -1
- package/docs/types/BluefinLyfInvestor.html +0 -1
- package/docs/types/BluefinPoolType.html +0 -5
- package/docs/types/BucketInvestor.html +0 -2
- package/docs/types/CetusInvestor.html +0 -2
- package/docs/types/CetusPoolType.html +0 -5
- package/docs/types/CetusSwapOptions.html +0 -1
- package/docs/types/CoinAmounts.html +0 -3
- package/docs/types/CoinName.html +0 -1
- package/docs/types/CoinType.html +0 -1
- package/docs/types/CommonInvestorFields.html +0 -6
- package/docs/types/CreatePoolOptions.html +0 -8
- package/docs/types/Distributor.html +0 -6
- package/docs/types/DoubleAssetMultiVaultBalance.html +0 -6
- package/docs/types/DoubleAssetPoolNames.html +0 -1
- package/docs/types/DoubleAssetTokenHoldings.html +0 -5
- package/docs/types/DoubleAssetVaultBalance.html +0 -4
- package/docs/types/EventCategory.html +0 -1
- package/docs/types/EventNode.html +0 -1
- package/docs/types/GetHoldersParams.html +0 -4
- package/docs/types/GetTokenHoldingsParams.html +0 -4
- package/docs/types/GetUserTokensFromTransactionsParams.html +0 -5
- package/docs/types/GetUserTokensInUsdFromTransactionsParams.html +0 -6
- package/docs/types/GetVaultBalanceParams.html +0 -1
- package/docs/types/HoldingsObj.html +0 -4
- package/docs/types/Icon.html +0 -1
- package/docs/types/Investor.html +0 -1
- package/docs/types/LiquidityChangeEventNode.html +0 -1
- package/docs/types/LiquidityToTokensParams.html +0 -3
- package/docs/types/LiquidityToUsdParams.html +0 -6
- package/docs/types/LoopingDebt.html +0 -5
- package/docs/types/LoopingPoolNames.html +0 -1
- package/docs/types/LpBreakdownType.html +0 -6
- package/docs/types/MemberPoolDataType.html +0 -3
- package/docs/types/MemberType.html +0 -3
- package/docs/types/MultiGetVaultBalancesParams.html +0 -4
- package/docs/types/NaviInvestor.html +0 -2
- package/docs/types/ObjectTable.html +0 -1
- package/docs/types/OtherReceiptFields.html +0 -9
- package/docs/types/PoolName.html +0 -1
- package/docs/types/PoolReceipt.html +0 -1
- package/docs/types/PoolType.html +0 -5
- package/docs/types/Receipt.html +0 -5
- package/docs/types/ReceiptGQL.html +0 -6
- package/docs/types/SingleAssetMultiVaultBalance.html +0 -5
- package/docs/types/SingleAssetPoolNames.html +0 -1
- package/docs/types/SingleAssetTokenHoldings.html +0 -4
- package/docs/types/SingleAssetVaultBalance.html +0 -3
- package/docs/types/SingleGetVaultBalancesParams.html +0 -3
- package/docs/types/StrategyType.html +0 -1
- package/docs/types/SuiNetwork.html +0 -1
- package/docs/types/SwapOptions.html +0 -1
- package/docs/types/TickSpacing.html +0 -1
- package/docs/types/TotalWeightType.html +0 -3
- package/docs/types/TransactionBlockType.html +0 -6
- package/docs/types/UserPoolLiquidity.html +0 -4
- package/docs/types/UserPoolTokenHoldings.html +0 -1
- package/docs/types/UserUsdHoldings.html +0 -4
- package/docs/types/VaultBalance.html +0 -1
- package/docs/types/VecMap.html +0 -3
- package/docs/types/VoteCastEvent.html +0 -1
- package/docs/types/WithdrawV2EventNode.html +0 -1
- package/docs/variables/AUTOBALANCE_SUI_FIRST_POOLS.html +0 -1
- package/docs/variables/AUTOBALANCE_SUI_SECOND_POOLS.html +0 -1
- package/docs/variables/AUTOBALANCE_TYPE_1_POOLS.html +0 -1
- package/docs/variables/alphalendMarketIdMap.html +0 -1
- package/docs/variables/bluefinPoolMap.html +0 -1
- package/docs/variables/cetusPoolMap.html +0 -1
- package/docs/variables/coinsList.html +0 -1
- package/docs/variables/defunctPoolsSet.html +0 -1
- package/docs/variables/doubleAssetPoolCoinMap.html +0 -1
- package/docs/variables/eventCategories.html +0 -1
- package/docs/variables/ignoredWalletsForDailyRevenue.html +0 -1
- package/docs/variables/loopingAccountAddresses.html +0 -1
- package/docs/variables/loopingPoolCoinMap.html +0 -1
- package/docs/variables/naviAssetMap.html +0 -1
- package/docs/variables/naviPriceFeedMap.html +0 -1
- package/docs/variables/poolIdPoolNameMap.html +0 -1
- package/docs/variables/poolInfo.html +0 -1
- package/docs/variables/singleAssetPoolCoinMap.html +0 -1
- package/docs/variables/stableCoins.html +0 -1
- package/eslint.config.js +0 -53
- package/prettier.config.js +0 -3
- package/scripts/package-lock.json +0 -2506
- package/scripts/package.json +0 -30
- package/scripts/testRun.ts +0 -117
- package/scripts/utils.ts +0 -108
- /package/dist/cjs/{common → models}/types.js +0 -0
- /package/dist/esm/{common → models}/types.js +0 -0
|
@@ -0,0 +1,392 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* SlushLending Strategy
|
|
4
|
+
*/
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.SlushLendingStrategy = void 0;
|
|
7
|
+
const decimal_js_1 = require("decimal.js");
|
|
8
|
+
const strategy_js_1 = require("./strategy.js");
|
|
9
|
+
const alphalend_sdk_1 = require("@alphafi/alphalend-sdk");
|
|
10
|
+
const constants_js_1 = require("../utils/constants.js");
|
|
11
|
+
/**
|
|
12
|
+
* SlushLending Strategy for slush lending pools without alpha mining
|
|
13
|
+
*/
|
|
14
|
+
class SlushLendingStrategy extends strategy_js_1.BaseStrategy {
|
|
15
|
+
poolLabel;
|
|
16
|
+
poolObject;
|
|
17
|
+
receiptObjects = [];
|
|
18
|
+
context;
|
|
19
|
+
constructor(poolLabel, poolObject, context) {
|
|
20
|
+
super();
|
|
21
|
+
this.poolLabel = poolLabel;
|
|
22
|
+
this.poolObject = this.parsePoolObject(poolObject);
|
|
23
|
+
this.context = context;
|
|
24
|
+
}
|
|
25
|
+
getPoolLabel() {
|
|
26
|
+
return this.poolLabel;
|
|
27
|
+
}
|
|
28
|
+
getOtherAmount(_amount, _isAmountA) {
|
|
29
|
+
throw new Error('getOtherAmount is not supported for single-asset SlushLending strategy');
|
|
30
|
+
}
|
|
31
|
+
updateReceipts(receipts) {
|
|
32
|
+
this.receiptObjects = this.parseReceiptObjects(receipts);
|
|
33
|
+
}
|
|
34
|
+
/**
|
|
35
|
+
* Returns alpha mining data - SlushLending pools do not support alpha mining
|
|
36
|
+
*/
|
|
37
|
+
getAlphaMiningData() {
|
|
38
|
+
return {
|
|
39
|
+
poolId: this.poolLabel.poolId,
|
|
40
|
+
accRewardsPerXtoken: [],
|
|
41
|
+
xTokenSupply: '0',
|
|
42
|
+
receipt: null,
|
|
43
|
+
};
|
|
44
|
+
}
|
|
45
|
+
/**
|
|
46
|
+
* Get the exchange rate for xtoken to underlying token ratio
|
|
47
|
+
* Calculated as tokens_invested / xtoken_supply
|
|
48
|
+
*/
|
|
49
|
+
exchangeRate() {
|
|
50
|
+
const tokensInvested = new decimal_js_1.Decimal(this.poolObject.tokensInvested);
|
|
51
|
+
const xtokenSupply = new decimal_js_1.Decimal(this.poolObject.xTokenSupply);
|
|
52
|
+
if (xtokenSupply.isZero()) {
|
|
53
|
+
return new decimal_js_1.Decimal(1);
|
|
54
|
+
}
|
|
55
|
+
return tokensInvested.div(xtokenSupply);
|
|
56
|
+
}
|
|
57
|
+
/**
|
|
58
|
+
* Get comprehensive pool data including TVL and APR information
|
|
59
|
+
*/
|
|
60
|
+
async getData() {
|
|
61
|
+
const [_alphafi, parent, apr] = await Promise.all([
|
|
62
|
+
this.getTvl(),
|
|
63
|
+
this.getParentTvl(),
|
|
64
|
+
this.context.getAprData(this.poolLabel.poolId),
|
|
65
|
+
]);
|
|
66
|
+
return {
|
|
67
|
+
poolId: this.poolLabel.poolId,
|
|
68
|
+
strategyType: this.poolLabel.strategyType,
|
|
69
|
+
coinType: this.poolLabel.asset.type,
|
|
70
|
+
poolName: this.poolLabel.poolName,
|
|
71
|
+
apr,
|
|
72
|
+
tvl: {
|
|
73
|
+
alphafi: parent,
|
|
74
|
+
parent,
|
|
75
|
+
},
|
|
76
|
+
};
|
|
77
|
+
}
|
|
78
|
+
/**
|
|
79
|
+
* Calculate total value locked using current asset price
|
|
80
|
+
*/
|
|
81
|
+
async getTvl() {
|
|
82
|
+
const coinType = this.poolLabel.asset.type;
|
|
83
|
+
const [price, decimals] = await Promise.all([
|
|
84
|
+
this.context.getCoinPrice(coinType),
|
|
85
|
+
this.context.getCoinDecimals(coinType),
|
|
86
|
+
]);
|
|
87
|
+
const tokenAmount = new decimal_js_1.Decimal(this.poolObject.tokensInvested).div(new decimal_js_1.Decimal(10).pow(decimals));
|
|
88
|
+
const usdValue = tokenAmount.mul(price);
|
|
89
|
+
return { tokenAmount, usdValue };
|
|
90
|
+
}
|
|
91
|
+
/**
|
|
92
|
+
* Calculate parent protocol TVL (Alphalend only)
|
|
93
|
+
*/
|
|
94
|
+
async getParentTvl() {
|
|
95
|
+
const protocol = this.poolLabel.parentProtocol;
|
|
96
|
+
if (protocol !== 'Alphalend') {
|
|
97
|
+
throw new Error(`Unsupported parent protocol for SlushLending: ${protocol}`);
|
|
98
|
+
}
|
|
99
|
+
const [tokenAmount, price] = await Promise.all([
|
|
100
|
+
this.context.getAlphaLendTvl(this.poolLabel.asset.type),
|
|
101
|
+
this.context.getCoinPrice(this.poolLabel.asset.type),
|
|
102
|
+
]);
|
|
103
|
+
return { tokenAmount, usdValue: tokenAmount.mul(price) };
|
|
104
|
+
}
|
|
105
|
+
/**
|
|
106
|
+
* Calculate user's current pool balance from xToken balance
|
|
107
|
+
* Converts xTokens to underlying tokens via exchange rate
|
|
108
|
+
*/
|
|
109
|
+
async getBalance(_userAddress) {
|
|
110
|
+
if (this.receiptObjects.length === 0 || this.receiptObjects[0].xTokens === '0') {
|
|
111
|
+
return { tokenAmount: new decimal_js_1.Decimal(0), usdValue: new decimal_js_1.Decimal(0) };
|
|
112
|
+
}
|
|
113
|
+
const xTokens = new decimal_js_1.Decimal(this.receiptObjects[0].xTokens);
|
|
114
|
+
const [price, exchangeRate, decimals] = await Promise.all([
|
|
115
|
+
this.context.getCoinPrice(this.poolLabel.asset.type),
|
|
116
|
+
Promise.resolve(this.exchangeRate()),
|
|
117
|
+
this.context.getCoinDecimals(this.poolLabel.asset.type),
|
|
118
|
+
]);
|
|
119
|
+
const tokens = xTokens.mul(exchangeRate).div(new decimal_js_1.Decimal(10).pow(decimals));
|
|
120
|
+
return { tokenAmount: tokens, usdValue: tokens.mul(price) };
|
|
121
|
+
}
|
|
122
|
+
/**
|
|
123
|
+
* Parse pool object from blockchain response
|
|
124
|
+
*/
|
|
125
|
+
parsePoolObject(response) {
|
|
126
|
+
return this.safeParseObject(() => {
|
|
127
|
+
const fields = this.extractFields(response);
|
|
128
|
+
return {
|
|
129
|
+
id: this.getStringField(fields, 'id'),
|
|
130
|
+
xTokenSupply: this.getNestedField(fields, 'xTokenSupply.value'),
|
|
131
|
+
tokensInvested: this.getStringField(fields, 'tokensInvested'),
|
|
132
|
+
interestBasedRewardsData: {
|
|
133
|
+
rewardBalance: this.getStringField(fields.interest_based_rewards_data, 'reward_balance'),
|
|
134
|
+
lastUpdatedTimestamp: this.getStringField(fields.interest_based_rewards_data, 'last_updated_timestamp'),
|
|
135
|
+
rewardShareFromInterestBps: this.getNestedField(fields.interest_based_rewards_data, 'reward_share_from_interest_bps.value'),
|
|
136
|
+
},
|
|
137
|
+
timeBasedRewardsData: {
|
|
138
|
+
rewardBalance: this.getStringField(fields.time_based_rewards_data, 'reward_balance'),
|
|
139
|
+
startTime: this.getStringField(fields.time_based_rewards_data, 'start_time'),
|
|
140
|
+
endTime: this.getStringField(fields.time_based_rewards_data, 'end_time'),
|
|
141
|
+
rewardPerMs: this.getNestedField(fields.time_based_rewards_data, 'reward_per_ms.value'),
|
|
142
|
+
lastUpdatedTimestamp: this.getStringField(fields.time_based_rewards_data, 'last_updated_timestamp'),
|
|
143
|
+
},
|
|
144
|
+
positionCount: this.getNestedField(fields, 'positions.size'),
|
|
145
|
+
positionsTableId: this.getNestedField(fields, 'positions.id'),
|
|
146
|
+
feeCollected: this.getStringField(fields, 'fee_collected'),
|
|
147
|
+
depositFee: this.getStringField(fields, 'deposit_fee'),
|
|
148
|
+
depositFeeMaxCap: this.getStringField(fields, 'deposit_fee_max_cap'),
|
|
149
|
+
withdrawalFee: this.getStringField(fields, 'withdrawal_fee'),
|
|
150
|
+
withdrawFeeMaxCap: this.getStringField(fields, 'withdraw_fee_max_cap'),
|
|
151
|
+
investor: {
|
|
152
|
+
id: this.getStringField(fields.investor, 'id'),
|
|
153
|
+
marketId: this.getStringField(fields.investor, 'market_id'),
|
|
154
|
+
},
|
|
155
|
+
paused: this.getBooleanField(fields, 'paused', false),
|
|
156
|
+
};
|
|
157
|
+
}, 'Failed to parse Slush Lending pool object');
|
|
158
|
+
}
|
|
159
|
+
/**
|
|
160
|
+
* Parse investor object (not applicable for SlushLending)
|
|
161
|
+
*/
|
|
162
|
+
parseInvestorObject(_) {
|
|
163
|
+
throw new Error('Investor object not used for SlushLending');
|
|
164
|
+
}
|
|
165
|
+
/**
|
|
166
|
+
* Parse parent pool object (not applicable for SlushLending)
|
|
167
|
+
*/
|
|
168
|
+
parseParentPoolObject(_) {
|
|
169
|
+
throw new Error('Parent pool object not used for SlushLending');
|
|
170
|
+
}
|
|
171
|
+
/**
|
|
172
|
+
* Parse receipt objects from blockchain responses
|
|
173
|
+
*/
|
|
174
|
+
parseReceiptObjects(responses) {
|
|
175
|
+
return responses.map((response, index) => {
|
|
176
|
+
return this.safeParseObject(() => {
|
|
177
|
+
const fields = this.extractFields(response);
|
|
178
|
+
return {
|
|
179
|
+
id: this.getStringField(fields, 'id'),
|
|
180
|
+
positionCapId: this.getStringField(fields, 'position_cap_id'),
|
|
181
|
+
poolId: this.getStringField(fields, 'pool_id'),
|
|
182
|
+
coinType: this.getNestedField(fields, 'coin_type.name'),
|
|
183
|
+
principal: this.getStringField(fields, 'principal'),
|
|
184
|
+
xTokens: this.getStringField(fields, 'xtokens') ||
|
|
185
|
+
this.getStringField(fields, 'x_token_balance') ||
|
|
186
|
+
this.getStringField(fields, 'xTokenBalance'),
|
|
187
|
+
};
|
|
188
|
+
}, `Failed to parse Slush Lending receipt object at index ${index}`);
|
|
189
|
+
});
|
|
190
|
+
}
|
|
191
|
+
createPositionCap(tx) {
|
|
192
|
+
const urlBytes = Array.from(new TextEncoder().encode(constants_js_1.IMAGE_URLS.SLUSH_POSITION_CAP));
|
|
193
|
+
const positionCap = tx.moveCall({
|
|
194
|
+
target: `${this.poolLabel.packageId}::alphalend_slush_pool::create_position_cap`,
|
|
195
|
+
arguments: [tx.pure.vector('u8', urlBytes)],
|
|
196
|
+
});
|
|
197
|
+
return positionCap;
|
|
198
|
+
}
|
|
199
|
+
coinAmountToXToken(amount) {
|
|
200
|
+
const exchangeRate = this.exchangeRate();
|
|
201
|
+
return new decimal_js_1.Decimal(amount).div(exchangeRate).floor().toString();
|
|
202
|
+
}
|
|
203
|
+
async collectAndSwapRewards(tx) {
|
|
204
|
+
const [alphaCoin, stsuiCoin, suiCoin, blueCoin, deepCoin, usdcCoin, walCoin] = await this.context.getCoinsBySymbols([
|
|
205
|
+
'ALPHA',
|
|
206
|
+
'stSUI',
|
|
207
|
+
'SUI',
|
|
208
|
+
'BLUE',
|
|
209
|
+
'DEEP',
|
|
210
|
+
'USDC',
|
|
211
|
+
'WAL',
|
|
212
|
+
]);
|
|
213
|
+
tx.moveCall({
|
|
214
|
+
target: `${this.poolLabel.packageId}::alphalend_slush_pool::collect_reward_and_swap_bluefin`,
|
|
215
|
+
typeArguments: [this.poolLabel.asset.type, alphaCoin.coinType, stsuiCoin.coinType],
|
|
216
|
+
arguments: [
|
|
217
|
+
tx.object(constants_js_1.VERSIONS.SLUSH),
|
|
218
|
+
tx.object(this.poolLabel.poolId),
|
|
219
|
+
tx.object(constants_js_1.ALPHALEND_LENDING_PROTOCOL_ID),
|
|
220
|
+
tx.object(await this.context.getPoolIdBySymbolsAndProtocol('ALPHA', 'stSUI', 'bluefin')),
|
|
221
|
+
tx.object(constants_js_1.GLOBAL_CONFIGS.BLUEFIN),
|
|
222
|
+
tx.pure.bool(true),
|
|
223
|
+
tx.pure.bool(true),
|
|
224
|
+
tx.object(constants_js_1.CLOCK_PACKAGE_ID),
|
|
225
|
+
],
|
|
226
|
+
});
|
|
227
|
+
tx.moveCall({
|
|
228
|
+
target: `${this.poolLabel.packageId}::alphalend_slush_pool::collect_reward_and_swap_bluefin`,
|
|
229
|
+
typeArguments: [this.poolLabel.asset.type, stsuiCoin.coinType, suiCoin.coinType],
|
|
230
|
+
arguments: [
|
|
231
|
+
tx.object(constants_js_1.VERSIONS.SLUSH),
|
|
232
|
+
tx.object(this.poolLabel.poolId),
|
|
233
|
+
tx.object(constants_js_1.ALPHALEND_LENDING_PROTOCOL_ID),
|
|
234
|
+
tx.object(await this.context.getPoolIdBySymbolsAndProtocol('stSUI', 'SUI', 'bluefin')),
|
|
235
|
+
tx.object(constants_js_1.GLOBAL_CONFIGS.BLUEFIN),
|
|
236
|
+
tx.pure.bool(true),
|
|
237
|
+
tx.pure.bool(true),
|
|
238
|
+
tx.object(constants_js_1.CLOCK_PACKAGE_ID),
|
|
239
|
+
],
|
|
240
|
+
});
|
|
241
|
+
tx.moveCall({
|
|
242
|
+
target: `${this.poolLabel.packageId}::alphalend_slush_pool::collect_reward_and_swap_bluefin`,
|
|
243
|
+
typeArguments: [this.poolLabel.asset.type, blueCoin.coinType, suiCoin.coinType],
|
|
244
|
+
arguments: [
|
|
245
|
+
tx.object(constants_js_1.VERSIONS.SLUSH),
|
|
246
|
+
tx.object(this.poolLabel.poolId),
|
|
247
|
+
tx.object(constants_js_1.ALPHALEND_LENDING_PROTOCOL_ID),
|
|
248
|
+
tx.object(await this.context.getPoolIdBySymbolsAndProtocol('BLUE', 'SUI', 'bluefin')),
|
|
249
|
+
tx.object(constants_js_1.GLOBAL_CONFIGS.BLUEFIN),
|
|
250
|
+
tx.pure.bool(true),
|
|
251
|
+
tx.pure.bool(true),
|
|
252
|
+
tx.object(constants_js_1.CLOCK_PACKAGE_ID),
|
|
253
|
+
],
|
|
254
|
+
});
|
|
255
|
+
if (this.poolLabel.asset.type !== deepCoin.coinType) {
|
|
256
|
+
tx.moveCall({
|
|
257
|
+
target: `${this.poolLabel.packageId}::alphalend_slush_pool::collect_reward_and_swap_bluefin`,
|
|
258
|
+
typeArguments: [this.poolLabel.asset.type, deepCoin.coinType, suiCoin.coinType],
|
|
259
|
+
arguments: [
|
|
260
|
+
tx.object(constants_js_1.VERSIONS.SLUSH),
|
|
261
|
+
tx.object(this.poolLabel.poolId),
|
|
262
|
+
tx.object(constants_js_1.ALPHALEND_LENDING_PROTOCOL_ID),
|
|
263
|
+
tx.object(await this.context.getPoolIdBySymbolsAndProtocol('DEEP', 'SUI', 'bluefin')),
|
|
264
|
+
tx.object(constants_js_1.GLOBAL_CONFIGS.BLUEFIN),
|
|
265
|
+
tx.pure.bool(true),
|
|
266
|
+
tx.pure.bool(true),
|
|
267
|
+
tx.object(constants_js_1.CLOCK_PACKAGE_ID),
|
|
268
|
+
],
|
|
269
|
+
});
|
|
270
|
+
}
|
|
271
|
+
if (this.poolLabel.asset.type === usdcCoin.coinType) {
|
|
272
|
+
tx.moveCall({
|
|
273
|
+
target: `${this.poolLabel.packageId}::alphalend_slush_pool::collect_reward_and_swap_bluefin`,
|
|
274
|
+
typeArguments: [this.poolLabel.asset.type, suiCoin.coinType, this.poolLabel.asset.type],
|
|
275
|
+
arguments: [
|
|
276
|
+
tx.object(constants_js_1.VERSIONS.SLUSH),
|
|
277
|
+
tx.object(this.poolLabel.poolId),
|
|
278
|
+
tx.object(constants_js_1.ALPHALEND_LENDING_PROTOCOL_ID),
|
|
279
|
+
tx.object(await this.context.getPoolIdBySymbolsAndProtocol('SUI', 'USDC', 'bluefin')),
|
|
280
|
+
tx.object(constants_js_1.GLOBAL_CONFIGS.BLUEFIN),
|
|
281
|
+
tx.pure.bool(true),
|
|
282
|
+
tx.pure.bool(false),
|
|
283
|
+
tx.object(constants_js_1.CLOCK_PACKAGE_ID),
|
|
284
|
+
],
|
|
285
|
+
});
|
|
286
|
+
}
|
|
287
|
+
else if (this.poolLabel.asset.type === walCoin.coinType) {
|
|
288
|
+
tx.moveCall({
|
|
289
|
+
target: `${this.poolLabel.packageId}::alphalend_slush_pool::collect_reward_and_swap_bluefin`,
|
|
290
|
+
typeArguments: [this.poolLabel.asset.type, walCoin.coinType, suiCoin.coinType],
|
|
291
|
+
arguments: [
|
|
292
|
+
tx.object(constants_js_1.VERSIONS.SLUSH),
|
|
293
|
+
tx.object(this.poolLabel.poolId),
|
|
294
|
+
tx.object(constants_js_1.ALPHALEND_LENDING_PROTOCOL_ID),
|
|
295
|
+
tx.object(await this.context.getPoolIdBySymbolsAndProtocol('WAL', 'SUI', 'bluefin')),
|
|
296
|
+
tx.object(constants_js_1.GLOBAL_CONFIGS.BLUEFIN),
|
|
297
|
+
tx.pure.bool(false),
|
|
298
|
+
tx.pure.bool(true),
|
|
299
|
+
tx.object(constants_js_1.CLOCK_PACKAGE_ID),
|
|
300
|
+
],
|
|
301
|
+
});
|
|
302
|
+
}
|
|
303
|
+
else if (this.poolLabel.asset.type === deepCoin.coinType) {
|
|
304
|
+
tx.moveCall({
|
|
305
|
+
target: `${this.poolLabel.packageId}::alphalend_slush_pool::collect_reward_and_swap_bluefin`,
|
|
306
|
+
typeArguments: [this.poolLabel.asset.type, deepCoin.coinType, suiCoin.coinType],
|
|
307
|
+
arguments: [
|
|
308
|
+
tx.object(constants_js_1.VERSIONS.SLUSH),
|
|
309
|
+
tx.object(this.poolLabel.poolId),
|
|
310
|
+
tx.object(constants_js_1.ALPHALEND_LENDING_PROTOCOL_ID),
|
|
311
|
+
tx.object(await this.context.getPoolIdBySymbolsAndProtocol('DEEP', 'SUI', 'bluefin')),
|
|
312
|
+
tx.object(constants_js_1.GLOBAL_CONFIGS.BLUEFIN),
|
|
313
|
+
tx.pure.bool(false),
|
|
314
|
+
tx.pure.bool(true),
|
|
315
|
+
tx.object(constants_js_1.CLOCK_PACKAGE_ID),
|
|
316
|
+
],
|
|
317
|
+
});
|
|
318
|
+
}
|
|
319
|
+
}
|
|
320
|
+
async deposit(tx, options) {
|
|
321
|
+
const alphalendClient = new alphalend_sdk_1.AlphalendClient('mainnet', this.context.blockchain.suiClient);
|
|
322
|
+
await alphalendClient.updatePrices(tx, [this.poolLabel.asset.type]);
|
|
323
|
+
// Get coin object
|
|
324
|
+
const depositCoin = await this.context.blockchain.getCoinObject(tx, this.poolLabel.asset.type, options.address, BigInt(options.amount));
|
|
325
|
+
await this.collectAndSwapRewards(tx);
|
|
326
|
+
const positionCaps = await this.context.getSlushPositionCaps(options.address);
|
|
327
|
+
if (positionCaps.length === 0) {
|
|
328
|
+
const positionCap = this.createPositionCap(tx);
|
|
329
|
+
tx.moveCall({
|
|
330
|
+
target: `${this.poolLabel.packageId}::alphalend_slush_pool::user_deposit`,
|
|
331
|
+
typeArguments: [this.poolLabel.asset.type],
|
|
332
|
+
arguments: [
|
|
333
|
+
tx.object(constants_js_1.VERSIONS.SLUSH),
|
|
334
|
+
positionCap,
|
|
335
|
+
tx.object(this.poolLabel.poolId),
|
|
336
|
+
depositCoin,
|
|
337
|
+
tx.object(constants_js_1.ALPHALEND_LENDING_PROTOCOL_ID),
|
|
338
|
+
tx.object(constants_js_1.SUI_SYSTEM_STATE),
|
|
339
|
+
tx.object(constants_js_1.CLOCK_PACKAGE_ID),
|
|
340
|
+
],
|
|
341
|
+
});
|
|
342
|
+
tx.transferObjects([positionCap], options.address);
|
|
343
|
+
}
|
|
344
|
+
else {
|
|
345
|
+
tx.moveCall({
|
|
346
|
+
target: `${this.poolLabel.packageId}::alphalend_slush_pool::user_deposit`,
|
|
347
|
+
typeArguments: [this.poolLabel.asset.type],
|
|
348
|
+
arguments: [
|
|
349
|
+
tx.object(constants_js_1.VERSIONS.SLUSH),
|
|
350
|
+
tx.object(positionCaps[0].id),
|
|
351
|
+
tx.object(this.poolLabel.poolId),
|
|
352
|
+
depositCoin,
|
|
353
|
+
tx.object(constants_js_1.ALPHALEND_LENDING_PROTOCOL_ID),
|
|
354
|
+
tx.object(constants_js_1.SUI_SYSTEM_STATE),
|
|
355
|
+
tx.object(constants_js_1.CLOCK_PACKAGE_ID),
|
|
356
|
+
],
|
|
357
|
+
});
|
|
358
|
+
}
|
|
359
|
+
}
|
|
360
|
+
async withdraw(tx, options) {
|
|
361
|
+
if (this.receiptObjects.length === 0) {
|
|
362
|
+
throw new Error('No receipt found for withdraw');
|
|
363
|
+
}
|
|
364
|
+
const alphalendClient = new alphalend_sdk_1.AlphalendClient('mainnet', this.context.blockchain.suiClient);
|
|
365
|
+
await alphalendClient.updatePrices(tx, [this.poolLabel.asset.type]);
|
|
366
|
+
let xTokenAmount = this.coinAmountToXToken(options.amount);
|
|
367
|
+
if (options.withdrawMax) {
|
|
368
|
+
xTokenAmount = this.receiptObjects[0].xTokens;
|
|
369
|
+
}
|
|
370
|
+
await this.collectAndSwapRewards(tx);
|
|
371
|
+
const positionCaps = await this.context.getSlushPositionCaps(options.address);
|
|
372
|
+
const [slushCoin] = tx.moveCall({
|
|
373
|
+
target: `${this.poolLabel.packageId}::alphalend_slush_pool::user_withdraw`,
|
|
374
|
+
typeArguments: [this.poolLabel.asset.type],
|
|
375
|
+
arguments: [
|
|
376
|
+
tx.object(constants_js_1.VERSIONS.SLUSH),
|
|
377
|
+
tx.object(positionCaps[0].id),
|
|
378
|
+
tx.object(this.poolLabel.poolId),
|
|
379
|
+
tx.pure.u64(xTokenAmount),
|
|
380
|
+
tx.object(constants_js_1.ALPHALEND_LENDING_PROTOCOL_ID),
|
|
381
|
+
tx.object(constants_js_1.SUI_SYSTEM_STATE),
|
|
382
|
+
tx.object(constants_js_1.CLOCK_PACKAGE_ID),
|
|
383
|
+
],
|
|
384
|
+
});
|
|
385
|
+
tx.transferObjects([slushCoin], options.address);
|
|
386
|
+
}
|
|
387
|
+
async claimRewards(_tx, _alphaReceipt) {
|
|
388
|
+
return;
|
|
389
|
+
}
|
|
390
|
+
}
|
|
391
|
+
exports.SlushLendingStrategy = SlushLendingStrategy;
|
|
392
|
+
//# sourceMappingURL=slushLending.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"slushLending.js","sourceRoot":"","sources":["../../../src/strategies/slushLending.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * SlushLending Strategy\n */\n\nimport { Decimal } from 'decimal.js';\nimport { AlphaMiningData, BaseStrategy, ProtocolType, StringMap } from './strategy.js';\nimport { PoolBalance, PoolData, SingleTvl } from '../models/types.js';\nimport { StrategyContext } from '../models/strategyContext.js';\nimport { DepositOptions, WithdrawOptions } from '../core/types.js';\nimport { Transaction, TransactionResult } from '@mysten/sui/transactions';\nimport { AlphalendClient } from '@alphafi/alphalend-sdk';\nimport {\n ALPHALEND_LENDING_PROTOCOL_ID,\n CLOCK_PACKAGE_ID,\n GLOBAL_CONFIGS,\n IMAGE_URLS,\n SUI_SYSTEM_STATE,\n VERSIONS,\n} from '../utils/constants.js';\n\n/**\n * SlushLending Strategy for slush lending pools without alpha mining\n */\nexport class SlushLendingStrategy extends BaseStrategy<\n SlushLendingPoolObject,\n never,\n never,\n SlushLendingReceiptObject\n> {\n private poolLabel: SlushLendingPoolLabel;\n private poolObject: SlushLendingPoolObject;\n private receiptObjects: SlushLendingReceiptObject[] = [];\n private context: StrategyContext;\n\n constructor(poolLabel: SlushLendingPoolLabel, poolObject: any, context: StrategyContext) {\n super();\n this.poolLabel = poolLabel;\n this.poolObject = this.parsePoolObject(poolObject);\n this.context = context;\n }\n\n getPoolLabel(): SlushLendingPoolLabel {\n return this.poolLabel;\n }\n\n getOtherAmount(_amount: string, _isAmountA: boolean): [string, string] {\n throw new Error('getOtherAmount is not supported for single-asset SlushLending strategy');\n }\n\n updateReceipts(receipts: any[]): void {\n this.receiptObjects = this.parseReceiptObjects(receipts);\n }\n\n /**\n * Returns alpha mining data - SlushLending pools do not support alpha mining\n */\n protected getAlphaMiningData(): AlphaMiningData {\n return {\n poolId: this.poolLabel.poolId,\n accRewardsPerXtoken: [],\n xTokenSupply: '0',\n receipt: null,\n };\n }\n\n /**\n * Get the exchange rate for xtoken to underlying token ratio\n * Calculated as tokens_invested / xtoken_supply\n */\n exchangeRate(): Decimal {\n const tokensInvested = new Decimal(this.poolObject.tokensInvested);\n const xtokenSupply = new Decimal(this.poolObject.xTokenSupply);\n\n if (xtokenSupply.isZero()) {\n return new Decimal(1);\n }\n\n return tokensInvested.div(xtokenSupply);\n }\n\n /**\n * Get comprehensive pool data including TVL and APR information\n */\n async getData(): Promise<PoolData> {\n const [_alphafi, parent, apr] = await Promise.all([\n this.getTvl(),\n this.getParentTvl(),\n this.context.getAprData(this.poolLabel.poolId),\n ]);\n return {\n poolId: this.poolLabel.poolId,\n strategyType: this.poolLabel.strategyType,\n coinType: this.poolLabel.asset.type,\n poolName: this.poolLabel.poolName,\n apr,\n tvl: {\n alphafi: parent,\n parent,\n },\n };\n }\n\n /**\n * Calculate total value locked using current asset price\n */\n async getTvl(): Promise<SingleTvl> {\n const coinType = this.poolLabel.asset.type;\n const [price, decimals] = await Promise.all([\n this.context.getCoinPrice(coinType),\n this.context.getCoinDecimals(coinType),\n ]);\n const tokenAmount = new Decimal(this.poolObject.tokensInvested).div(\n new Decimal(10).pow(decimals),\n );\n const usdValue = tokenAmount.mul(price);\n return { tokenAmount, usdValue };\n }\n\n /**\n * Calculate parent protocol TVL (Alphalend only)\n */\n async getParentTvl(): Promise<SingleTvl> {\n const protocol = this.poolLabel.parentProtocol;\n if (protocol !== 'Alphalend') {\n throw new Error(`Unsupported parent protocol for SlushLending: ${protocol}`);\n }\n const [tokenAmount, price] = await Promise.all([\n this.context.getAlphaLendTvl(this.poolLabel.asset.type),\n this.context.getCoinPrice(this.poolLabel.asset.type),\n ]);\n return { tokenAmount, usdValue: tokenAmount.mul(price) };\n }\n\n /**\n * Calculate user's current pool balance from xToken balance\n * Converts xTokens to underlying tokens via exchange rate\n */\n async getBalance(_userAddress: string): Promise<PoolBalance> {\n if (this.receiptObjects.length === 0 || this.receiptObjects[0].xTokens === '0') {\n return { tokenAmount: new Decimal(0), usdValue: new Decimal(0) };\n }\n const xTokens = new Decimal(this.receiptObjects[0].xTokens);\n const [price, exchangeRate, decimals] = await Promise.all([\n this.context.getCoinPrice(this.poolLabel.asset.type),\n Promise.resolve(this.exchangeRate()),\n this.context.getCoinDecimals(this.poolLabel.asset.type),\n ]);\n const tokens = xTokens.mul(exchangeRate).div(new Decimal(10).pow(decimals));\n return { tokenAmount: tokens, usdValue: tokens.mul(price) };\n }\n\n /**\n * Parse pool object from blockchain response\n */\n parsePoolObject(response: any): SlushLendingPoolObject {\n return this.safeParseObject(() => {\n const fields = this.extractFields(response);\n\n return {\n id: this.getStringField(fields, 'id'),\n xTokenSupply: this.getNestedField(fields, 'xTokenSupply.value'),\n tokensInvested: this.getStringField(fields, 'tokensInvested'),\n interestBasedRewardsData: {\n rewardBalance: this.getStringField(fields.interest_based_rewards_data, 'reward_balance'),\n lastUpdatedTimestamp: this.getStringField(\n fields.interest_based_rewards_data,\n 'last_updated_timestamp',\n ),\n rewardShareFromInterestBps: this.getNestedField(\n fields.interest_based_rewards_data,\n 'reward_share_from_interest_bps.value',\n ),\n },\n timeBasedRewardsData: {\n rewardBalance: this.getStringField(fields.time_based_rewards_data, 'reward_balance'),\n startTime: this.getStringField(fields.time_based_rewards_data, 'start_time'),\n endTime: this.getStringField(fields.time_based_rewards_data, 'end_time'),\n rewardPerMs: this.getNestedField(fields.time_based_rewards_data, 'reward_per_ms.value'),\n lastUpdatedTimestamp: this.getStringField(\n fields.time_based_rewards_data,\n 'last_updated_timestamp',\n ),\n },\n positionCount: this.getNestedField(fields, 'positions.size'),\n positionsTableId: this.getNestedField(fields, 'positions.id'),\n feeCollected: this.getStringField(fields, 'fee_collected'),\n depositFee: this.getStringField(fields, 'deposit_fee'),\n depositFeeMaxCap: this.getStringField(fields, 'deposit_fee_max_cap'),\n withdrawalFee: this.getStringField(fields, 'withdrawal_fee'),\n withdrawFeeMaxCap: this.getStringField(fields, 'withdraw_fee_max_cap'),\n investor: {\n id: this.getStringField(fields.investor, 'id'),\n marketId: this.getStringField(fields.investor, 'market_id'),\n },\n paused: this.getBooleanField(fields, 'paused', false),\n };\n }, 'Failed to parse Slush Lending pool object');\n }\n\n /**\n * Parse investor object (not applicable for SlushLending)\n */\n parseInvestorObject(_: any): never {\n throw new Error('Investor object not used for SlushLending');\n }\n\n /**\n * Parse parent pool object (not applicable for SlushLending)\n */\n parseParentPoolObject(_: any): never {\n throw new Error('Parent pool object not used for SlushLending');\n }\n\n /**\n * Parse receipt objects from blockchain responses\n */\n parseReceiptObjects(responses: any[]): SlushLendingReceiptObject[] {\n return responses.map((response, index) => {\n return this.safeParseObject(() => {\n const fields = this.extractFields(response);\n\n return {\n id: this.getStringField(fields, 'id'),\n positionCapId: this.getStringField(fields, 'position_cap_id'),\n poolId: this.getStringField(fields, 'pool_id'),\n coinType: this.getNestedField(fields, 'coin_type.name'),\n principal: this.getStringField(fields, 'principal'),\n xTokens:\n this.getStringField(fields, 'xtokens') ||\n this.getStringField(fields, 'x_token_balance') ||\n this.getStringField(fields, 'xTokenBalance'),\n };\n }, `Failed to parse Slush Lending receipt object at index ${index}`);\n });\n }\n\n createPositionCap(tx: Transaction): TransactionResult {\n const urlBytes = Array.from(new TextEncoder().encode(IMAGE_URLS.SLUSH_POSITION_CAP));\n const positionCap = tx.moveCall({\n target: `${this.poolLabel.packageId}::alphalend_slush_pool::create_position_cap`,\n arguments: [tx.pure.vector('u8', urlBytes)],\n });\n\n return positionCap;\n }\n\n private coinAmountToXToken(amount: string): string {\n const exchangeRate = this.exchangeRate();\n return new Decimal(amount).div(exchangeRate).floor().toString();\n }\n\n private async collectAndSwapRewards(tx: Transaction) {\n const [alphaCoin, stsuiCoin, suiCoin, blueCoin, deepCoin, usdcCoin, walCoin] =\n await this.context.getCoinsBySymbols([\n 'ALPHA',\n 'stSUI',\n 'SUI',\n 'BLUE',\n 'DEEP',\n 'USDC',\n 'WAL',\n ]);\n\n tx.moveCall({\n target: `${this.poolLabel.packageId}::alphalend_slush_pool::collect_reward_and_swap_bluefin`,\n typeArguments: [this.poolLabel.asset.type, alphaCoin.coinType, stsuiCoin.coinType],\n arguments: [\n tx.object(VERSIONS.SLUSH),\n tx.object(this.poolLabel.poolId),\n tx.object(ALPHALEND_LENDING_PROTOCOL_ID),\n tx.object(await this.context.getPoolIdBySymbolsAndProtocol('ALPHA', 'stSUI', 'bluefin')),\n tx.object(GLOBAL_CONFIGS.BLUEFIN),\n tx.pure.bool(true),\n tx.pure.bool(true),\n tx.object(CLOCK_PACKAGE_ID),\n ],\n });\n tx.moveCall({\n target: `${this.poolLabel.packageId}::alphalend_slush_pool::collect_reward_and_swap_bluefin`,\n typeArguments: [this.poolLabel.asset.type, stsuiCoin.coinType, suiCoin.coinType],\n arguments: [\n tx.object(VERSIONS.SLUSH),\n tx.object(this.poolLabel.poolId),\n tx.object(ALPHALEND_LENDING_PROTOCOL_ID),\n tx.object(await this.context.getPoolIdBySymbolsAndProtocol('stSUI', 'SUI', 'bluefin')),\n tx.object(GLOBAL_CONFIGS.BLUEFIN),\n tx.pure.bool(true),\n tx.pure.bool(true),\n tx.object(CLOCK_PACKAGE_ID),\n ],\n });\n tx.moveCall({\n target: `${this.poolLabel.packageId}::alphalend_slush_pool::collect_reward_and_swap_bluefin`,\n typeArguments: [this.poolLabel.asset.type, blueCoin.coinType, suiCoin.coinType],\n arguments: [\n tx.object(VERSIONS.SLUSH),\n tx.object(this.poolLabel.poolId),\n tx.object(ALPHALEND_LENDING_PROTOCOL_ID),\n tx.object(await this.context.getPoolIdBySymbolsAndProtocol('BLUE', 'SUI', 'bluefin')),\n tx.object(GLOBAL_CONFIGS.BLUEFIN),\n tx.pure.bool(true),\n tx.pure.bool(true),\n tx.object(CLOCK_PACKAGE_ID),\n ],\n });\n\n if (this.poolLabel.asset.type !== deepCoin.coinType) {\n tx.moveCall({\n target: `${this.poolLabel.packageId}::alphalend_slush_pool::collect_reward_and_swap_bluefin`,\n typeArguments: [this.poolLabel.asset.type, deepCoin.coinType, suiCoin.coinType],\n arguments: [\n tx.object(VERSIONS.SLUSH),\n tx.object(this.poolLabel.poolId),\n tx.object(ALPHALEND_LENDING_PROTOCOL_ID),\n tx.object(await this.context.getPoolIdBySymbolsAndProtocol('DEEP', 'SUI', 'bluefin')),\n tx.object(GLOBAL_CONFIGS.BLUEFIN),\n tx.pure.bool(true),\n tx.pure.bool(true),\n tx.object(CLOCK_PACKAGE_ID),\n ],\n });\n }\n\n if (this.poolLabel.asset.type === usdcCoin.coinType) {\n tx.moveCall({\n target: `${this.poolLabel.packageId}::alphalend_slush_pool::collect_reward_and_swap_bluefin`,\n typeArguments: [this.poolLabel.asset.type, suiCoin.coinType, this.poolLabel.asset.type],\n arguments: [\n tx.object(VERSIONS.SLUSH),\n tx.object(this.poolLabel.poolId),\n tx.object(ALPHALEND_LENDING_PROTOCOL_ID),\n tx.object(await this.context.getPoolIdBySymbolsAndProtocol('SUI', 'USDC', 'bluefin')),\n tx.object(GLOBAL_CONFIGS.BLUEFIN),\n tx.pure.bool(true),\n tx.pure.bool(false),\n tx.object(CLOCK_PACKAGE_ID),\n ],\n });\n } else if (this.poolLabel.asset.type === walCoin.coinType) {\n tx.moveCall({\n target: `${this.poolLabel.packageId}::alphalend_slush_pool::collect_reward_and_swap_bluefin`,\n typeArguments: [this.poolLabel.asset.type, walCoin.coinType, suiCoin.coinType],\n arguments: [\n tx.object(VERSIONS.SLUSH),\n tx.object(this.poolLabel.poolId),\n tx.object(ALPHALEND_LENDING_PROTOCOL_ID),\n tx.object(await this.context.getPoolIdBySymbolsAndProtocol('WAL', 'SUI', 'bluefin')),\n tx.object(GLOBAL_CONFIGS.BLUEFIN),\n tx.pure.bool(false),\n tx.pure.bool(true),\n tx.object(CLOCK_PACKAGE_ID),\n ],\n });\n } else if (this.poolLabel.asset.type === deepCoin.coinType) {\n tx.moveCall({\n target: `${this.poolLabel.packageId}::alphalend_slush_pool::collect_reward_and_swap_bluefin`,\n typeArguments: [this.poolLabel.asset.type, deepCoin.coinType, suiCoin.coinType],\n arguments: [\n tx.object(VERSIONS.SLUSH),\n tx.object(this.poolLabel.poolId),\n tx.object(ALPHALEND_LENDING_PROTOCOL_ID),\n tx.object(await this.context.getPoolIdBySymbolsAndProtocol('DEEP', 'SUI', 'bluefin')),\n tx.object(GLOBAL_CONFIGS.BLUEFIN),\n tx.pure.bool(false),\n tx.pure.bool(true),\n tx.object(CLOCK_PACKAGE_ID),\n ],\n });\n }\n }\n\n async deposit(tx: Transaction, options: DepositOptions) {\n const alphalendClient = new AlphalendClient('mainnet', this.context.blockchain.suiClient);\n await alphalendClient.updatePrices(tx, [this.poolLabel.asset.type]);\n\n // Get coin object\n const depositCoin = await this.context.blockchain.getCoinObject(\n tx,\n this.poolLabel.asset.type,\n options.address,\n BigInt(options.amount),\n );\n\n await this.collectAndSwapRewards(tx);\n\n const positionCaps = await this.context.getSlushPositionCaps(options.address);\n if (positionCaps.length === 0) {\n const positionCap: TransactionResult = this.createPositionCap(tx);\n tx.moveCall({\n target: `${this.poolLabel.packageId}::alphalend_slush_pool::user_deposit`,\n typeArguments: [this.poolLabel.asset.type],\n arguments: [\n tx.object(VERSIONS.SLUSH),\n positionCap,\n tx.object(this.poolLabel.poolId),\n depositCoin,\n tx.object(ALPHALEND_LENDING_PROTOCOL_ID),\n tx.object(SUI_SYSTEM_STATE),\n tx.object(CLOCK_PACKAGE_ID),\n ],\n });\n tx.transferObjects([positionCap], options.address);\n } else {\n tx.moveCall({\n target: `${this.poolLabel.packageId}::alphalend_slush_pool::user_deposit`,\n typeArguments: [this.poolLabel.asset.type],\n arguments: [\n tx.object(VERSIONS.SLUSH),\n tx.object(positionCaps[0].id),\n tx.object(this.poolLabel.poolId),\n depositCoin,\n tx.object(ALPHALEND_LENDING_PROTOCOL_ID),\n tx.object(SUI_SYSTEM_STATE),\n tx.object(CLOCK_PACKAGE_ID),\n ],\n });\n }\n }\n\n async withdraw(tx: Transaction, options: WithdrawOptions) {\n if (this.receiptObjects.length === 0) {\n throw new Error('No receipt found for withdraw');\n }\n\n const alphalendClient = new AlphalendClient('mainnet', this.context.blockchain.suiClient);\n await alphalendClient.updatePrices(tx, [this.poolLabel.asset.type]);\n\n let xTokenAmount = this.coinAmountToXToken(options.amount);\n if (options.withdrawMax) {\n xTokenAmount = this.receiptObjects[0].xTokens;\n }\n\n await this.collectAndSwapRewards(tx);\n\n const positionCaps = await this.context.getSlushPositionCaps(options.address);\n const [slushCoin] = tx.moveCall({\n target: `${this.poolLabel.packageId}::alphalend_slush_pool::user_withdraw`,\n typeArguments: [this.poolLabel.asset.type],\n arguments: [\n tx.object(VERSIONS.SLUSH),\n tx.object(positionCaps[0].id),\n tx.object(this.poolLabel.poolId),\n tx.pure.u64(xTokenAmount),\n tx.object(ALPHALEND_LENDING_PROTOCOL_ID),\n tx.object(SUI_SYSTEM_STATE),\n tx.object(CLOCK_PACKAGE_ID),\n ],\n });\n\n tx.transferObjects([slushCoin], options.address);\n }\n\n async claimRewards(_tx: Transaction, _alphaReceipt: TransactionResult) {\n return;\n }\n}\n\n/**\n * SlushLending Pool object data structure\n */\nexport interface SlushLendingPoolObject {\n id: string;\n xTokenSupply: string;\n tokensInvested: string;\n interestBasedRewardsData: {\n rewardBalance: string;\n lastUpdatedTimestamp: string;\n rewardShareFromInterestBps: string;\n };\n timeBasedRewardsData: {\n rewardBalance: string;\n startTime: string;\n endTime: string;\n rewardPerMs: string;\n lastUpdatedTimestamp: string;\n };\n positionCount: string;\n positionsTableId: string;\n feeCollected: string;\n depositFee: string;\n depositFeeMaxCap: string;\n withdrawalFee: string;\n withdrawFeeMaxCap: string;\n investor: {\n id: string;\n marketId: string;\n };\n paused: boolean;\n}\n\n/**\n * SlushLending Receipt object data structure\n */\nexport interface SlushLendingReceiptObject {\n id: string;\n positionCapId: string;\n poolId: string;\n coinType: string;\n principal: string;\n xTokens: string;\n}\n\n/**\n * SlushLending Pool Label configuration\n */\nexport interface SlushLendingPoolLabel {\n poolId: string;\n packageId: string;\n packageNumber: number;\n strategyType: 'SlushLending';\n parentProtocol: ProtocolType;\n asset: StringMap;\n events: {\n autocompoundEventType: string;\n };\n isActive: boolean;\n poolName: string;\n isNative: boolean;\n}\n"]}
|
|
@@ -0,0 +1,198 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Strategy interfaces and shared helpers used by all strategy implementations.
|
|
3
|
+
*/
|
|
4
|
+
import { Decimal } from 'decimal.js';
|
|
5
|
+
import { SingleTvl, DoubleTvl, PoolData, PoolBalance, DistributorObject } from '../models/types.js';
|
|
6
|
+
import { Transaction, TransactionResult } from '@mysten/sui/transactions';
|
|
7
|
+
import { DepositOptions, WithdrawOptions } from '../core/types.js';
|
|
8
|
+
export interface StringMap {
|
|
9
|
+
[key: string]: string;
|
|
10
|
+
}
|
|
11
|
+
/**
|
|
12
|
+
* Minimal data needed to compute ALPHA mining rewards for a user.
|
|
13
|
+
*
|
|
14
|
+
* Strategies that don't participate in alpha mining should return `receipt: null`.
|
|
15
|
+
*/
|
|
16
|
+
export interface AlphaMiningData {
|
|
17
|
+
poolId: string;
|
|
18
|
+
accRewardsPerXtoken: StringMap[];
|
|
19
|
+
xTokenSupply: string;
|
|
20
|
+
receipt: {
|
|
21
|
+
lastAccRewardPerXtoken: StringMap[];
|
|
22
|
+
pendingRewards: StringMap[];
|
|
23
|
+
xTokenBalance: string;
|
|
24
|
+
} | null;
|
|
25
|
+
}
|
|
26
|
+
/**
|
|
27
|
+
* Struct tag for the ALPHA coin used by the distributor.
|
|
28
|
+
*/
|
|
29
|
+
export declare const ALPHA_COIN_TYPE = "fe3afec26c59e874f3c1d60b8203cb3852d2bb2aa415df9548b8d688e6683f93::alpha::ALPHA";
|
|
30
|
+
export type StrategyType = 'AlphaVault' | 'Lp' | 'FungibleLp' | 'AutobalanceLp' | 'Lending' | 'SlushLending' | 'Looping' | 'SingleAssetLooping' | 'Lyf' | 'FungibleLending';
|
|
31
|
+
export type ProtocolType = 'AlphaFi' | 'Navi' | 'Alphalend' | 'Cetus' | 'Bluefin' | 'Bucket' | 'DeepBook';
|
|
32
|
+
export type LpPoolLabel = import('./lp.js').LpPoolLabel;
|
|
33
|
+
export type AlphaVaultPoolLabel = import('./alphaVault.js').AlphaVaultPoolLabel;
|
|
34
|
+
export type AutobalanceLpPoolLabel = import('./autobalanceLp.js').AutobalanceLpPoolLabel;
|
|
35
|
+
export type FungibleLpPoolLabel = import('./fungibleLp.js').FungibleLpPoolLabel;
|
|
36
|
+
export type LendingPoolLabel = import('./lending.js').LendingPoolLabel;
|
|
37
|
+
export type SlushLendingPoolLabel = import('./slushLending.js').SlushLendingPoolLabel;
|
|
38
|
+
export type LoopingPoolLabel = import('./looping.js').LoopingPoolLabel;
|
|
39
|
+
export type SingleAssetLoopingPoolLabel = import('./singleAssetLooping.js').SingleAssetLoopingPoolLabel;
|
|
40
|
+
export type LyfPoolLabel = import('./lyf.js').LyfPoolLabel;
|
|
41
|
+
export type FungibleLendingPoolLabel = import('./fungibleLending.js').FungibleLendingPoolLabel;
|
|
42
|
+
/**
|
|
43
|
+
* Union of all strategy-specific pool label types.
|
|
44
|
+
*/
|
|
45
|
+
export type PoolLabel = LpPoolLabel | AlphaVaultPoolLabel | AutobalanceLpPoolLabel | FungibleLpPoolLabel | LendingPoolLabel | SlushLendingPoolLabel | LoopingPoolLabel | SingleAssetLoopingPoolLabel | LyfPoolLabel | FungibleLendingPoolLabel;
|
|
46
|
+
/**
|
|
47
|
+
* Common strategy surface used by the SDK.
|
|
48
|
+
*/
|
|
49
|
+
export interface Strategy<TPool = any, TInvestor = any, TParentPool = any, TReceipt = any> {
|
|
50
|
+
/**
|
|
51
|
+
* Parse a pool object fetched from chain into a typed shape.
|
|
52
|
+
*/
|
|
53
|
+
parsePoolObject(response: any): TPool;
|
|
54
|
+
/**
|
|
55
|
+
* Parse an investor object fetched from chain into a typed shape.
|
|
56
|
+
*/
|
|
57
|
+
parseInvestorObject(response: any): TInvestor;
|
|
58
|
+
/**
|
|
59
|
+
* Parse a parent pool object (underlying protocol) fetched from chain.
|
|
60
|
+
*/
|
|
61
|
+
parseParentPoolObject(response: any): TParentPool;
|
|
62
|
+
/**
|
|
63
|
+
* Parse receipt objects fetched from chain.
|
|
64
|
+
*/
|
|
65
|
+
parseReceiptObjects(responses: any[]): TReceipt[];
|
|
66
|
+
/**
|
|
67
|
+
* Current exchange rate used by the strategy.
|
|
68
|
+
* Typically: `tokens_invested / xToken_supply`.
|
|
69
|
+
*/
|
|
70
|
+
exchangeRate(): Decimal;
|
|
71
|
+
/**
|
|
72
|
+
* TVL for the AlphaFi pool and the underlying parent protocol (if any).
|
|
73
|
+
*/
|
|
74
|
+
getTvl(): Promise<SingleTvl | DoubleTvl>;
|
|
75
|
+
getParentTvl(): Promise<SingleTvl | DoubleTvl>;
|
|
76
|
+
/**
|
|
77
|
+
* User balance breakdown for this pool.
|
|
78
|
+
*/
|
|
79
|
+
getBalance(userAddress: string): Promise<PoolBalance>;
|
|
80
|
+
/**
|
|
81
|
+
* Static metadata/config for this pool (from config API).
|
|
82
|
+
*/
|
|
83
|
+
getPoolLabel(): PoolLabel;
|
|
84
|
+
/**
|
|
85
|
+
* High-level pool summary (APR + TVL + strategy-specific metadata).
|
|
86
|
+
*/
|
|
87
|
+
getData(): Promise<PoolData>;
|
|
88
|
+
/**
|
|
89
|
+
* Compute ALPHA mining rewards claimable for this pool.
|
|
90
|
+
*
|
|
91
|
+
* Note: this uses the cached distributor object from `StrategyContext`.
|
|
92
|
+
*/
|
|
93
|
+
getAlphaMiningRewardsToClaim(distributor: DistributorObject): Decimal;
|
|
94
|
+
/**
|
|
95
|
+
* Get the other amount for a given amount and isAmountA flag.
|
|
96
|
+
*
|
|
97
|
+
* @param amount - The amount to get the other amount for
|
|
98
|
+
* @param isAmountA - Whether the amount is amount A
|
|
99
|
+
* @returns The other amount
|
|
100
|
+
*/
|
|
101
|
+
getOtherAmount(amount: string, isAmountA: boolean): [string, string];
|
|
102
|
+
/**
|
|
103
|
+
* Deposit assets into the pool.
|
|
104
|
+
*
|
|
105
|
+
* @param options - The options for the deposit
|
|
106
|
+
* @returns Transaction to deposit assets into the pool
|
|
107
|
+
*/
|
|
108
|
+
deposit(tx: Transaction, options: DepositOptions): Promise<void>;
|
|
109
|
+
/**
|
|
110
|
+
* Withdraw assets from the pool.
|
|
111
|
+
*
|
|
112
|
+
* @param options - The options for the withdrawal
|
|
113
|
+
* @returns Transaction to withdraw assets from the pool
|
|
114
|
+
*/
|
|
115
|
+
withdraw(tx: Transaction, options: WithdrawOptions): Promise<void>;
|
|
116
|
+
/**
|
|
117
|
+
* Claim rewards for a specific pool.
|
|
118
|
+
*
|
|
119
|
+
* @param poolId - The ID of the pool to claim rewards for
|
|
120
|
+
* @param address - The address of the user to claim rewards for
|
|
121
|
+
* @returns Transaction to claim rewards for the specified pool
|
|
122
|
+
*/
|
|
123
|
+
claimRewards(tx: Transaction, alphaReceipt: TransactionResult): Promise<void>;
|
|
124
|
+
/**
|
|
125
|
+
* Create an AlphaFi receipt.
|
|
126
|
+
*
|
|
127
|
+
* @param tx - The transaction to create the AlphaFi receipt
|
|
128
|
+
* @returns Transaction to create the AlphaFi receipt
|
|
129
|
+
*/
|
|
130
|
+
createAlphaFiReceipt(tx: Transaction): TransactionResult;
|
|
131
|
+
}
|
|
132
|
+
/**
|
|
133
|
+
* Base class shared by all strategies.
|
|
134
|
+
* Provides parsing helpers and common reward calculation logic.
|
|
135
|
+
*/
|
|
136
|
+
export declare abstract class BaseStrategy<TPool = any, TInvestor = any, TParentPool = any, TReceipt = any> implements Strategy<TPool, TInvestor, TParentPool, TReceipt> {
|
|
137
|
+
abstract parsePoolObject(response: any): TPool;
|
|
138
|
+
abstract parseInvestorObject(response: any): TInvestor;
|
|
139
|
+
abstract parseParentPoolObject(response: any): TParentPool;
|
|
140
|
+
abstract parseReceiptObjects(responses: any[]): TReceipt[];
|
|
141
|
+
abstract exchangeRate(): Decimal;
|
|
142
|
+
abstract getTvl(): Promise<SingleTvl | DoubleTvl>;
|
|
143
|
+
abstract getParentTvl(): Promise<SingleTvl | DoubleTvl>;
|
|
144
|
+
abstract getData(): Promise<PoolData>;
|
|
145
|
+
abstract getBalance(userAddress: string): Promise<PoolBalance>;
|
|
146
|
+
abstract getPoolLabel(): PoolLabel;
|
|
147
|
+
abstract getOtherAmount(amount: string, isAmountA: boolean): [string, string];
|
|
148
|
+
abstract deposit(tx: Transaction, options: DepositOptions): Promise<void>;
|
|
149
|
+
abstract withdraw(tx: Transaction, options: WithdrawOptions): Promise<void>;
|
|
150
|
+
abstract claimRewards(tx: Transaction, alphaReceipt: TransactionResult): Promise<void>;
|
|
151
|
+
createAlphaFiReceipt(tx: Transaction): TransactionResult;
|
|
152
|
+
/**
|
|
153
|
+
* Provide the inputs needed to compute ALPHA mining rewards for this strategy.
|
|
154
|
+
* Return `receipt: null` if the strategy/user has no alpha mining position.
|
|
155
|
+
*/
|
|
156
|
+
protected abstract getAlphaMiningData(): AlphaMiningData;
|
|
157
|
+
/**
|
|
158
|
+
* Compute claimable ALPHA rewards using the distributor + pool/receipt accounting.
|
|
159
|
+
* Returns a human-readable amount (divided by 1e9).
|
|
160
|
+
*/
|
|
161
|
+
getAlphaMiningRewardsToClaim(distributor: DistributorObject): Decimal;
|
|
162
|
+
/**
|
|
163
|
+
* Helper function to get string field from JSON with validation
|
|
164
|
+
*/
|
|
165
|
+
protected getStringField(fieldsJson: any, fieldName: string): string;
|
|
166
|
+
/**
|
|
167
|
+
* Helper function to get boolean field from JSON with default value
|
|
168
|
+
*/
|
|
169
|
+
protected getBooleanField(fieldsJson: any, fieldName: string, defaultValue: boolean): boolean;
|
|
170
|
+
/**
|
|
171
|
+
* Helper function to get number field from JSON
|
|
172
|
+
*/
|
|
173
|
+
protected getNumberField(fieldsJson: any, fieldName: string): number;
|
|
174
|
+
/**
|
|
175
|
+
* Helper function to parse VecMap structures from Move objects into StringMap format
|
|
176
|
+
*/
|
|
177
|
+
protected parseVecMap(vecMapField: any): {
|
|
178
|
+
key: any;
|
|
179
|
+
value: any;
|
|
180
|
+
}[];
|
|
181
|
+
/**
|
|
182
|
+
* Helper function to convert ASCII array from JSON to string
|
|
183
|
+
*/
|
|
184
|
+
protected asciiToString(asciiArray: any): string;
|
|
185
|
+
/**
|
|
186
|
+
* Helper function to extract fields from various response formats
|
|
187
|
+
*/
|
|
188
|
+
protected extractFields(response: any): any;
|
|
189
|
+
/**
|
|
190
|
+
* Helper function to safely parse nested object fields
|
|
191
|
+
*/
|
|
192
|
+
protected getNestedField(obj: any, path: string): any;
|
|
193
|
+
/**
|
|
194
|
+
* Helper function to parse object with error handling
|
|
195
|
+
*/
|
|
196
|
+
protected safeParseObject<T>(parseFunction: () => T, errorMessage: string): T;
|
|
197
|
+
}
|
|
198
|
+
//# sourceMappingURL=strategy.d.ts.map
|