@kestrelfi/lyc-sdk 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/.env.example +11 -0
- package/README.md +207 -0
- package/dist/sdks/long-yield-carry/scripts/asyncBurn.d.ts +1 -0
- package/dist/sdks/long-yield-carry/scripts/asyncBurn.js +117 -0
- package/dist/sdks/long-yield-carry/scripts/burnToken.d.ts +1 -0
- package/dist/sdks/long-yield-carry/scripts/burnToken.js +98 -0
- package/dist/sdks/long-yield-carry/scripts/claimIncentives.d.ts +1 -0
- package/dist/sdks/long-yield-carry/scripts/claimIncentives.js +108 -0
- package/dist/sdks/long-yield-carry/scripts/closeCpiPlans.d.ts +1 -0
- package/dist/sdks/long-yield-carry/scripts/closeCpiPlans.js +93 -0
- package/dist/sdks/long-yield-carry/scripts/collectInterest.d.ts +1 -0
- package/dist/sdks/long-yield-carry/scripts/collectInterest.js +164 -0
- package/dist/sdks/long-yield-carry/scripts/collectProtocolFees.d.ts +1 -0
- package/dist/sdks/long-yield-carry/scripts/collectProtocolFees.js +120 -0
- package/dist/sdks/long-yield-carry/scripts/computeOptimalAllocations.d.ts +1 -0
- package/dist/sdks/long-yield-carry/scripts/computeOptimalAllocations.js +84 -0
- package/dist/sdks/long-yield-carry/scripts/createToken.d.ts +1 -0
- package/dist/sdks/long-yield-carry/scripts/createToken.js +76 -0
- package/dist/sdks/long-yield-carry/scripts/createTokenLendingPosition.d.ts +1 -0
- package/dist/sdks/long-yield-carry/scripts/createTokenLendingPosition.js +157 -0
- package/dist/sdks/long-yield-carry/scripts/createYieldingBank.d.ts +1 -0
- package/dist/sdks/long-yield-carry/scripts/createYieldingBank.js +69 -0
- package/dist/sdks/long-yield-carry/scripts/decreaseCarryPositions.d.ts +1 -0
- package/dist/sdks/long-yield-carry/scripts/decreaseCarryPositions.js +247 -0
- package/dist/sdks/long-yield-carry/scripts/depositUnlentCollateral.d.ts +1 -0
- package/dist/sdks/long-yield-carry/scripts/depositUnlentCollateral.js +90 -0
- package/dist/sdks/long-yield-carry/scripts/emergency/deleverageAll.d.ts +1 -0
- package/dist/sdks/long-yield-carry/scripts/emergency/deleverageAll.js +202 -0
- package/dist/sdks/long-yield-carry/scripts/emergency/triggerCircuitBreaker.d.ts +1 -0
- package/dist/sdks/long-yield-carry/scripts/emergency/triggerCircuitBreaker.js +68 -0
- package/dist/sdks/long-yield-carry/scripts/env.d.ts +1 -0
- package/dist/sdks/long-yield-carry/scripts/env.js +8 -0
- package/dist/sdks/long-yield-carry/scripts/findTxs.d.ts +1 -0
- package/dist/sdks/long-yield-carry/scripts/findTxs.js +143 -0
- package/dist/sdks/long-yield-carry/scripts/increaseCarryPositions.d.ts +1 -0
- package/dist/sdks/long-yield-carry/scripts/increaseCarryPositions.js +112 -0
- package/dist/sdks/long-yield-carry/scripts/inspect/format.d.ts +13 -0
- package/dist/sdks/long-yield-carry/scripts/inspect/format.js +363 -0
- package/dist/sdks/long-yield-carry/scripts/inspect.d.ts +1 -0
- package/dist/sdks/long-yield-carry/scripts/inspect.js +108 -0
- package/dist/sdks/long-yield-carry/scripts/localUtils.d.ts +53 -0
- package/dist/sdks/long-yield-carry/scripts/localUtils.js +191 -0
- package/dist/sdks/long-yield-carry/scripts/mintToken.d.ts +1 -0
- package/dist/sdks/long-yield-carry/scripts/mintToken.js +103 -0
- package/dist/sdks/long-yield-carry/scripts/processAsyncBurns.d.ts +1 -0
- package/dist/sdks/long-yield-carry/scripts/processAsyncBurns.js +76 -0
- package/dist/sdks/long-yield-carry/scripts/rebalanceToken.d.ts +1 -0
- package/dist/sdks/long-yield-carry/scripts/rebalanceToken.js +210 -0
- package/dist/sdks/long-yield-carry/scripts/rebalanceYieldingBank.d.ts +1 -0
- package/dist/sdks/long-yield-carry/scripts/rebalanceYieldingBank.js +149 -0
- package/dist/sdks/long-yield-carry/scripts/recollateralizeLoss.d.ts +1 -0
- package/dist/sdks/long-yield-carry/scripts/recollateralizeLoss.js +64 -0
- package/dist/sdks/long-yield-carry/scripts/refresh.d.ts +1 -0
- package/dist/sdks/long-yield-carry/scripts/refresh.js +101 -0
- package/dist/sdks/long-yield-carry/scripts/updateFees.d.ts +1 -0
- package/dist/sdks/long-yield-carry/scripts/updateFees.js +369 -0
- package/dist/sdks/long-yield-carry/scripts/updateGeneralLut.d.ts +1 -0
- package/dist/sdks/long-yield-carry/scripts/updateGeneralLut.js +27 -0
- package/dist/sdks/long-yield-carry/scripts/updateLendingPositionConfig.d.ts +1 -0
- package/dist/sdks/long-yield-carry/scripts/updateLendingPositionConfig.js +127 -0
- package/dist/sdks/long-yield-carry/scripts/updateTokenLuts.d.ts +1 -0
- package/dist/sdks/long-yield-carry/scripts/updateTokenLuts.js +27 -0
- package/dist/sdks/long-yield-carry/scripts/updateTokenMetadata.d.ts +1 -0
- package/dist/sdks/long-yield-carry/scripts/updateTokenMetadata.js +194 -0
- package/dist/sdks/long-yield-carry/scripts/updateYieldingBankConfig.d.ts +1 -0
- package/dist/sdks/long-yield-carry/scripts/updateYieldingBankConfig.js +84 -0
- package/dist/sdks/long-yield-carry/scripts/withdrawUnlentCollateral.d.ts +1 -0
- package/dist/sdks/long-yield-carry/scripts/withdrawUnlentCollateral.js +140 -0
- package/dist/sdks/long-yield-carry/src/client/account.d.ts +152 -0
- package/dist/sdks/long-yield-carry/src/client/account.js +349 -0
- package/dist/sdks/long-yield-carry/src/client/builders/args.d.ts +299 -0
- package/dist/sdks/long-yield-carry/src/client/builders/args.js +2 -0
- package/dist/sdks/long-yield-carry/src/client/builders/asyncBurnBuilder.d.ts +20 -0
- package/dist/sdks/long-yield-carry/src/client/builders/asyncBurnBuilder.js +212 -0
- package/dist/sdks/long-yield-carry/src/client/builders/base.d.ts +77 -0
- package/dist/sdks/long-yield-carry/src/client/builders/base.js +191 -0
- package/dist/sdks/long-yield-carry/src/client/builders/burnTokenBuilder.d.ts +18 -0
- package/dist/sdks/long-yield-carry/src/client/builders/burnTokenBuilder.js +165 -0
- package/dist/sdks/long-yield-carry/src/client/builders/claimIncentivesBuilder.d.ts +9 -0
- package/dist/sdks/long-yield-carry/src/client/builders/claimIncentivesBuilder.js +135 -0
- package/dist/sdks/long-yield-carry/src/client/builders/collectFeesBuilder.d.ts +14 -0
- package/dist/sdks/long-yield-carry/src/client/builders/collectFeesBuilder.js +50 -0
- package/dist/sdks/long-yield-carry/src/client/builders/collectInterestBuilder.d.ts +8 -0
- package/dist/sdks/long-yield-carry/src/client/builders/collectInterestBuilder.js +86 -0
- package/dist/sdks/long-yield-carry/src/client/builders/createCpiPlanBuilder.d.ts +6 -0
- package/dist/sdks/long-yield-carry/src/client/builders/createCpiPlanBuilder.js +22 -0
- package/dist/sdks/long-yield-carry/src/client/builders/createTokenBuilder.d.ts +7 -0
- package/dist/sdks/long-yield-carry/src/client/builders/createTokenBuilder.js +64 -0
- package/dist/sdks/long-yield-carry/src/client/builders/createTokenLendingPositionBuilder.d.ts +10 -0
- package/dist/sdks/long-yield-carry/src/client/builders/createTokenLendingPositionBuilder.js +138 -0
- package/dist/sdks/long-yield-carry/src/client/builders/createYieldingBankAllocationBuilder.d.ts +7 -0
- package/dist/sdks/long-yield-carry/src/client/builders/createYieldingBankAllocationBuilder.js +29 -0
- package/dist/sdks/long-yield-carry/src/client/builders/createYieldingBankBuilder.d.ts +7 -0
- package/dist/sdks/long-yield-carry/src/client/builders/createYieldingBankBuilder.js +39 -0
- package/dist/sdks/long-yield-carry/src/client/builders/decreaseCarryPositionBuilder.d.ts +30 -0
- package/dist/sdks/long-yield-carry/src/client/builders/decreaseCarryPositionBuilder.js +99 -0
- package/dist/sdks/long-yield-carry/src/client/builders/depositUnlentCollateralBuilder.d.ts +8 -0
- package/dist/sdks/long-yield-carry/src/client/builders/depositUnlentCollateralBuilder.js +64 -0
- package/dist/sdks/long-yield-carry/src/client/builders/increaseCarryPositionBuilder.d.ts +8 -0
- package/dist/sdks/long-yield-carry/src/client/builders/increaseCarryPositionBuilder.js +73 -0
- package/dist/sdks/long-yield-carry/src/client/builders/index.d.ts +28 -0
- package/dist/sdks/long-yield-carry/src/client/builders/index.js +62 -0
- package/dist/sdks/long-yield-carry/src/client/builders/mintTokenBuilder.d.ts +8 -0
- package/dist/sdks/long-yield-carry/src/client/builders/mintTokenBuilder.js +95 -0
- package/dist/sdks/long-yield-carry/src/client/builders/rebalanceTokenBuilder.d.ts +11 -0
- package/dist/sdks/long-yield-carry/src/client/builders/rebalanceTokenBuilder.js +255 -0
- package/dist/sdks/long-yield-carry/src/client/builders/rebalanceYieldingBankBuilder.d.ts +8 -0
- package/dist/sdks/long-yield-carry/src/client/builders/rebalanceYieldingBankBuilder.js +75 -0
- package/dist/sdks/long-yield-carry/src/client/builders/recollateralizeLossBuilder.d.ts +12 -0
- package/dist/sdks/long-yield-carry/src/client/builders/recollateralizeLossBuilder.js +220 -0
- package/dist/sdks/long-yield-carry/src/client/builders/refreshTokenStateBuilder.d.ts +9 -0
- package/dist/sdks/long-yield-carry/src/client/builders/refreshTokenStateBuilder.js +112 -0
- package/dist/sdks/long-yield-carry/src/client/builders/refreshTokensBuilder.d.ts +9 -0
- package/dist/sdks/long-yield-carry/src/client/builders/refreshTokensBuilder.js +59 -0
- package/dist/sdks/long-yield-carry/src/client/builders/refreshYieldingBankBuilder.d.ts +8 -0
- package/dist/sdks/long-yield-carry/src/client/builders/refreshYieldingBankBuilder.js +29 -0
- package/dist/sdks/long-yield-carry/src/client/builders/resetTokenBurnRateLimitBuilder.d.ts +7 -0
- package/dist/sdks/long-yield-carry/src/client/builders/resetTokenBurnRateLimitBuilder.js +19 -0
- package/dist/sdks/long-yield-carry/src/client/builders/setTokenCircuitBreakerBuilder.d.ts +11 -0
- package/dist/sdks/long-yield-carry/src/client/builders/setTokenCircuitBreakerBuilder.js +31 -0
- package/dist/sdks/long-yield-carry/src/client/builders/setYieldingBankCircuitBreakerBuilder.d.ts +8 -0
- package/dist/sdks/long-yield-carry/src/client/builders/setYieldingBankCircuitBreakerBuilder.js +28 -0
- package/dist/sdks/long-yield-carry/src/client/builders/updateLendingPositionConfigBuilder.d.ts +10 -0
- package/dist/sdks/long-yield-carry/src/client/builders/updateLendingPositionConfigBuilder.js +30 -0
- package/dist/sdks/long-yield-carry/src/client/builders/updateTokenConfigurationBuilder.d.ts +11 -0
- package/dist/sdks/long-yield-carry/src/client/builders/updateTokenConfigurationBuilder.js +47 -0
- package/dist/sdks/long-yield-carry/src/client/builders/updateTokenMetadataBuilder.d.ts +7 -0
- package/dist/sdks/long-yield-carry/src/client/builders/updateTokenMetadataBuilder.js +24 -0
- package/dist/sdks/long-yield-carry/src/client/builders/updateYieldingBankConfigBuilder.d.ts +10 -0
- package/dist/sdks/long-yield-carry/src/client/builders/updateYieldingBankConfigBuilder.js +31 -0
- package/dist/sdks/long-yield-carry/src/client/builders/utils.d.ts +4 -0
- package/dist/sdks/long-yield-carry/src/client/builders/utils.js +20 -0
- package/dist/sdks/long-yield-carry/src/client/client.d.ts +115 -0
- package/dist/sdks/long-yield-carry/src/client/client.js +166 -0
- package/dist/sdks/long-yield-carry/src/client/externalLiquidityResolver.d.ts +13 -0
- package/dist/sdks/long-yield-carry/src/client/externalLiquidityResolver.js +34 -0
- package/dist/sdks/long-yield-carry/src/client/index.d.ts +10 -0
- package/dist/sdks/long-yield-carry/src/client/index.js +33 -0
- package/dist/sdks/long-yield-carry/src/client/lendingPlatformClients.d.ts +19 -0
- package/dist/sdks/long-yield-carry/src/client/lendingPlatformClients.js +33 -0
- package/dist/sdks/long-yield-carry/src/client/pda.d.ts +33 -0
- package/dist/sdks/long-yield-carry/src/client/pda.js +79 -0
- package/dist/sdks/long-yield-carry/src/client/plans/collectInterest.d.ts +24 -0
- package/dist/sdks/long-yield-carry/src/client/plans/collectInterest.js +150 -0
- package/dist/sdks/long-yield-carry/src/client/plans/decreaseCarryPosition.d.ts +12 -0
- package/dist/sdks/long-yield-carry/src/client/plans/decreaseCarryPosition.js +140 -0
- package/dist/sdks/long-yield-carry/src/client/routes/collectInterest.d.ts +13 -0
- package/dist/sdks/long-yield-carry/src/client/routes/collectInterest.js +39 -0
- package/dist/sdks/long-yield-carry/src/client/transaction.d.ts +41 -0
- package/dist/sdks/long-yield-carry/src/client/transaction.js +55 -0
- package/dist/sdks/long-yield-carry/src/client/types/builders.d.ts +18 -0
- package/dist/sdks/long-yield-carry/src/client/types/builders.js +2 -0
- package/dist/sdks/long-yield-carry/src/client/types/enums.d.ts +22 -0
- package/dist/sdks/long-yield-carry/src/client/types/enums.js +48 -0
- package/dist/sdks/long-yield-carry/src/client/types/general.d.ts +98 -0
- package/dist/sdks/long-yield-carry/src/client/types/general.js +2 -0
- package/dist/sdks/long-yield-carry/src/client/types/index.d.ts +6 -0
- package/dist/sdks/long-yield-carry/src/client/types/index.js +22 -0
- package/dist/sdks/long-yield-carry/src/client/types/ix.d.ts +352 -0
- package/dist/sdks/long-yield-carry/src/client/types/ix.js +2 -0
- package/dist/sdks/long-yield-carry/src/client/types/planTypes/collectInterest.d.ts +91 -0
- package/dist/sdks/long-yield-carry/src/client/types/planTypes/collectInterest.js +2 -0
- package/dist/sdks/long-yield-carry/src/client/types/planTypes/common.d.ts +28 -0
- package/dist/sdks/long-yield-carry/src/client/types/planTypes/common.js +2 -0
- package/dist/sdks/long-yield-carry/src/client/types/planTypes/decreaseCarryPosition.d.ts +128 -0
- package/dist/sdks/long-yield-carry/src/client/types/planTypes/decreaseCarryPosition.js +2 -0
- package/dist/sdks/long-yield-carry/src/client/types/planTypes/index.d.ts +3 -0
- package/dist/sdks/long-yield-carry/src/client/types/planTypes/index.js +19 -0
- package/dist/sdks/long-yield-carry/src/client/types/tx.d.ts +339 -0
- package/dist/sdks/long-yield-carry/src/client/types/tx.js +2 -0
- package/dist/sdks/long-yield-carry/src/constants/configs/allocations.d.ts +3 -0
- package/dist/sdks/long-yield-carry/src/constants/configs/allocations.js +23 -0
- package/dist/sdks/long-yield-carry/src/constants/configs/carryTradePresets.d.ts +58 -0
- package/dist/sdks/long-yield-carry/src/constants/configs/carryTradePresets.js +116 -0
- package/dist/sdks/long-yield-carry/src/constants/configs/index.d.ts +2 -0
- package/dist/sdks/long-yield-carry/src/constants/configs/index.js +18 -0
- package/dist/sdks/long-yield-carry/src/constants/general.d.ts +70 -0
- package/dist/sdks/long-yield-carry/src/constants/general.js +107 -0
- package/dist/sdks/long-yield-carry/src/constants/index.d.ts +3 -0
- package/dist/sdks/long-yield-carry/src/constants/index.js +19 -0
- package/dist/sdks/long-yield-carry/src/constants/lycTokenMetadata.d.ts +36 -0
- package/dist/sdks/long-yield-carry/src/constants/lycTokenMetadata.js +41 -0
- package/dist/sdks/long-yield-carry/src/decoders/decodeTransaction.d.ts +86 -0
- package/dist/sdks/long-yield-carry/src/decoders/decodeTransaction.js +230 -0
- package/dist/sdks/long-yield-carry/src/decoders/discriminators.d.ts +8 -0
- package/dist/sdks/long-yield-carry/src/decoders/discriminators.js +11 -0
- package/dist/sdks/long-yield-carry/src/decoders/idlAccounts.d.ts +29 -0
- package/dist/sdks/long-yield-carry/src/decoders/idlAccounts.js +57 -0
- package/dist/sdks/long-yield-carry/src/decoders/index.d.ts +6 -0
- package/dist/sdks/long-yield-carry/src/decoders/index.js +14 -0
- package/dist/sdks/long-yield-carry/src/decoders/innerCpis.d.ts +68 -0
- package/dist/sdks/long-yield-carry/src/decoders/innerCpis.js +225 -0
- package/dist/sdks/long-yield-carry/src/decoders/lycInstructionNames.d.ts +6 -0
- package/dist/sdks/long-yield-carry/src/decoders/lycInstructionNames.js +73 -0
- package/dist/sdks/long-yield-carry/src/decoders/programIds.d.ts +4 -0
- package/dist/sdks/long-yield-carry/src/decoders/programIds.js +11 -0
- package/dist/sdks/long-yield-carry/src/decoders/solana.d.ts +7 -0
- package/dist/sdks/long-yield-carry/src/decoders/solana.js +30 -0
- package/dist/sdks/long-yield-carry/src/decoders/transactionPayload.d.ts +41 -0
- package/dist/sdks/long-yield-carry/src/decoders/transactionPayload.js +6 -0
- package/dist/sdks/long-yield-carry/src/decoders/types.d.ts +58 -0
- package/dist/sdks/long-yield-carry/src/decoders/types.js +2 -0
- package/dist/sdks/long-yield-carry/src/errors.d.ts +69 -0
- package/dist/sdks/long-yield-carry/src/errors.js +183 -0
- package/dist/sdks/long-yield-carry/src/idl/long_yield_carry.d.ts +7327 -0
- package/dist/sdks/long-yield-carry/src/idl/long_yield_carry.js +7323 -0
- package/dist/sdks/long-yield-carry/src/index.d.ts +10 -0
- package/dist/sdks/long-yield-carry/src/index.js +25 -0
- package/dist/sdks/long-yield-carry/src/metrics/index.d.ts +1 -0
- package/dist/sdks/long-yield-carry/src/metrics/index.js +17 -0
- package/dist/sdks/long-yield-carry/src/metrics/protocolMetrics.d.ts +276 -0
- package/dist/sdks/long-yield-carry/src/metrics/protocolMetrics.js +547 -0
- package/dist/sdks/long-yield-carry/src/models/index.d.ts +3 -0
- package/dist/sdks/long-yield-carry/src/models/index.js +7 -0
- package/dist/sdks/long-yield-carry/src/models/lycToken.d.ts +156 -0
- package/dist/sdks/long-yield-carry/src/models/lycToken.js +288 -0
- package/dist/sdks/long-yield-carry/src/models/yieldingBank.d.ts +52 -0
- package/dist/sdks/long-yield-carry/src/models/yieldingBank.js +109 -0
- package/dist/sdks/long-yield-carry/src/services/allocation/allocationService.d.ts +106 -0
- package/dist/sdks/long-yield-carry/src/services/allocation/allocationService.js +589 -0
- package/dist/sdks/long-yield-carry/src/services/allocation/index.d.ts +2 -0
- package/dist/sdks/long-yield-carry/src/services/allocation/index.js +18 -0
- package/dist/sdks/long-yield-carry/src/services/allocation/types.d.ts +25 -0
- package/dist/sdks/long-yield-carry/src/services/allocation/types.js +2 -0
- package/dist/sdks/long-yield-carry/src/services/carry/carryAllocationConfig.d.ts +103 -0
- package/dist/sdks/long-yield-carry/src/services/carry/carryAllocationConfig.js +146 -0
- package/dist/sdks/long-yield-carry/src/services/carry/index.d.ts +2 -0
- package/dist/sdks/long-yield-carry/src/services/carry/index.js +18 -0
- package/dist/sdks/long-yield-carry/src/services/carry/lycLendingPositionManager.d.ts +39 -0
- package/dist/sdks/long-yield-carry/src/services/carry/lycLendingPositionManager.js +100 -0
- package/dist/sdks/long-yield-carry/src/services/index.d.ts +5 -0
- package/dist/sdks/long-yield-carry/src/services/index.js +21 -0
- package/dist/sdks/long-yield-carry/src/services/lendingPosition/index.d.ts +2 -0
- package/dist/sdks/long-yield-carry/src/services/lendingPosition/index.js +5 -0
- package/dist/sdks/long-yield-carry/src/services/lendingPosition/lendingPositionService.d.ts +88 -0
- package/dist/sdks/long-yield-carry/src/services/lendingPosition/lendingPositionService.js +229 -0
- package/dist/sdks/long-yield-carry/src/services/rebalance/index.d.ts +2 -0
- package/dist/sdks/long-yield-carry/src/services/rebalance/index.js +18 -0
- package/dist/sdks/long-yield-carry/src/services/rebalance/token/index.d.ts +1 -0
- package/dist/sdks/long-yield-carry/src/services/rebalance/token/index.js +17 -0
- package/dist/sdks/long-yield-carry/src/services/rebalance/token/tokenRebalanceService.d.ts +51 -0
- package/dist/sdks/long-yield-carry/src/services/rebalance/token/tokenRebalanceService.js +99 -0
- package/dist/sdks/long-yield-carry/src/services/rebalance/yieldingBank/index.d.ts +3 -0
- package/dist/sdks/long-yield-carry/src/services/rebalance/yieldingBank/index.js +21 -0
- package/dist/sdks/long-yield-carry/src/services/rebalance/yieldingBank/planner.d.ts +68 -0
- package/dist/sdks/long-yield-carry/src/services/rebalance/yieldingBank/planner.js +181 -0
- package/dist/sdks/long-yield-carry/src/services/rebalance/yieldingBank/strategy.d.ts +26 -0
- package/dist/sdks/long-yield-carry/src/services/rebalance/yieldingBank/strategy.js +26 -0
- package/dist/sdks/long-yield-carry/src/services/rebalance/yieldingBank/types.d.ts +40 -0
- package/dist/sdks/long-yield-carry/src/services/rebalance/yieldingBank/types.js +2 -0
- package/dist/sdks/long-yield-carry/src/services/redemption/index.d.ts +2 -0
- package/dist/sdks/long-yield-carry/src/services/redemption/index.js +5 -0
- package/dist/sdks/long-yield-carry/src/services/redemption/redemptionService.d.ts +139 -0
- package/dist/sdks/long-yield-carry/src/services/redemption/redemptionService.js +532 -0
- package/dist/sdks/long-yield-carry/src/types/enriched.d.ts +168 -0
- package/dist/sdks/long-yield-carry/src/types/enriched.js +2 -0
- package/dist/sdks/long-yield-carry/src/types/index.d.ts +1 -0
- package/dist/sdks/long-yield-carry/src/types/index.js +17 -0
- package/dist/sdks/long-yield-carry/src/utils/cache.d.ts +4 -0
- package/dist/sdks/long-yield-carry/src/utils/cache.js +10 -0
- package/dist/sdks/long-yield-carry/src/utils/data.d.ts +12 -0
- package/dist/sdks/long-yield-carry/src/utils/data.js +59 -0
- package/dist/sdks/long-yield-carry/src/utils/enrichment.d.ts +5 -0
- package/dist/sdks/long-yield-carry/src/utils/enrichment.js +244 -0
- package/dist/sdks/long-yield-carry/src/utils/feeDripMetrics.d.ts +36 -0
- package/dist/sdks/long-yield-carry/src/utils/feeDripMetrics.js +93 -0
- package/dist/sdks/long-yield-carry/src/utils/general.d.ts +28 -0
- package/dist/sdks/long-yield-carry/src/utils/general.js +47 -0
- package/dist/sdks/long-yield-carry/src/utils/index.d.ts +13 -0
- package/dist/sdks/long-yield-carry/src/utils/index.js +29 -0
- package/dist/sdks/long-yield-carry/src/utils/ix.d.ts +83 -0
- package/dist/sdks/long-yield-carry/src/utils/ix.js +165 -0
- package/dist/sdks/long-yield-carry/src/utils/lendingPosition.d.ts +68 -0
- package/dist/sdks/long-yield-carry/src/utils/lendingPosition.js +105 -0
- package/dist/sdks/long-yield-carry/src/utils/lookupTables.d.ts +55 -0
- package/dist/sdks/long-yield-carry/src/utils/lookupTables.js +216 -0
- package/dist/sdks/long-yield-carry/src/utils/lycData.d.ts +66 -0
- package/dist/sdks/long-yield-carry/src/utils/lycData.js +211 -0
- package/dist/sdks/long-yield-carry/src/utils/timelock.d.ts +19 -0
- package/dist/sdks/long-yield-carry/src/utils/timelock.js +37 -0
- package/dist/sdks/long-yield-carry/src/utils/tokenFeeMath.d.ts +11 -0
- package/dist/sdks/long-yield-carry/src/utils/tokenFeeMath.js +24 -0
- package/dist/sdks/long-yield-carry/src/utils/transactions.d.ts +20 -0
- package/dist/sdks/long-yield-carry/src/utils/transactions.js +72 -0
- package/dist/sdks/long-yield-carry/src/utils/yieldingBank.d.ts +24 -0
- package/dist/sdks/long-yield-carry/src/utils/yieldingBank.js +36 -0
- package/dist/shared/common/src/constants/accountMetas.d.ts +3 -0
- package/dist/shared/common/src/constants/accountMetas.js +9 -0
- package/dist/shared/common/src/constants/general.d.ts +21 -0
- package/dist/shared/common/src/constants/general.js +30 -0
- package/dist/shared/common/src/constants/generated/cpi.d.ts +23 -0
- package/dist/shared/common/src/constants/generated/cpi.js +28 -0
- package/dist/shared/common/src/constants/generated/index.d.ts +1 -0
- package/dist/shared/common/src/constants/generated/index.js +17 -0
- package/dist/shared/common/src/constants/index.d.ts +3 -0
- package/dist/shared/common/src/constants/index.js +19 -0
- package/dist/shared/common/src/index.d.ts +4 -0
- package/dist/shared/common/src/index.js +20 -0
- package/dist/shared/common/src/services/baseAccountClient.d.ts +22 -0
- package/dist/shared/common/src/services/baseAccountClient.js +38 -0
- package/dist/shared/common/src/services/baseIxBuilderService.d.ts +27 -0
- package/dist/shared/common/src/services/baseIxBuilderService.js +48 -0
- package/dist/shared/common/src/services/dataCache.d.ts +41 -0
- package/dist/shared/common/src/services/dataCache.js +130 -0
- package/dist/shared/common/src/services/index.d.ts +8 -0
- package/dist/shared/common/src/services/index.js +24 -0
- package/dist/shared/common/src/services/lutManager.d.ts +31 -0
- package/dist/shared/common/src/services/lutManager.js +133 -0
- package/dist/shared/common/src/services/mints/defaults.d.ts +2 -0
- package/dist/shared/common/src/services/mints/defaults.js +152 -0
- package/dist/shared/common/src/services/mints/index.d.ts +4 -0
- package/dist/shared/common/src/services/mints/index.js +20 -0
- package/dist/shared/common/src/services/mints/registry.d.ts +70 -0
- package/dist/shared/common/src/services/mints/registry.js +117 -0
- package/dist/shared/common/src/services/mints/symbols.d.ts +6 -0
- package/dist/shared/common/src/services/mints/symbols.js +13 -0
- package/dist/shared/common/src/services/mints/types.d.ts +30 -0
- package/dist/shared/common/src/services/mints/types.js +2 -0
- package/dist/shared/common/src/services/swap/index.d.ts +4 -0
- package/dist/shared/common/src/services/swap/index.js +20 -0
- package/dist/shared/common/src/services/swap/routableSwapClient.d.ts +36 -0
- package/dist/shared/common/src/services/swap/routableSwapClient.js +2 -0
- package/dist/shared/common/src/services/swap/swapClientBase.d.ts +45 -0
- package/dist/shared/common/src/services/swap/swapClientBase.js +2 -0
- package/dist/shared/common/src/services/swap/swapRouting.d.ts +13 -0
- package/dist/shared/common/src/services/swap/swapRouting.js +28 -0
- package/dist/shared/common/src/services/swap/types.d.ts +77 -0
- package/dist/shared/common/src/services/swap/types.js +2 -0
- package/dist/shared/common/src/services/token/index.d.ts +2 -0
- package/dist/shared/common/src/services/token/index.js +18 -0
- package/dist/shared/common/src/services/token/tokenProtocolClientBase.d.ts +51 -0
- package/dist/shared/common/src/services/token/tokenProtocolClientBase.js +2 -0
- package/dist/shared/common/src/services/token/types.d.ts +19 -0
- package/dist/shared/common/src/services/token/types.js +2 -0
- package/dist/shared/common/src/services/transactionSender.d.ts +24 -0
- package/dist/shared/common/src/services/transactionSender.js +30 -0
- package/dist/shared/common/src/types/cpi.d.ts +34 -0
- package/dist/shared/common/src/types/cpi.js +8 -0
- package/dist/shared/common/src/types/enums.d.ts +59 -0
- package/dist/shared/common/src/types/enums.js +122 -0
- package/dist/shared/common/src/types/general.d.ts +38 -0
- package/dist/shared/common/src/types/general.js +2 -0
- package/dist/shared/common/src/types/index.d.ts +4 -0
- package/dist/shared/common/src/types/index.js +20 -0
- package/dist/shared/common/src/types/solana.d.ts +24 -0
- package/dist/shared/common/src/types/solana.js +2 -0
- package/dist/shared/common/src/utils/accounts/index.d.ts +5 -0
- package/dist/shared/common/src/utils/accounts/index.js +21 -0
- package/dist/shared/common/src/utils/accounts/meta.d.ts +21 -0
- package/dist/shared/common/src/utils/accounts/meta.js +27 -0
- package/dist/shared/common/src/utils/accounts/pda.d.ts +2 -0
- package/dist/shared/common/src/utils/accounts/pda.js +17 -0
- package/dist/shared/common/src/utils/accounts/roles.d.ts +26 -0
- package/dist/shared/common/src/utils/accounts/roles.js +54 -0
- package/dist/shared/common/src/utils/accounts/rpc.d.ts +8 -0
- package/dist/shared/common/src/utils/accounts/rpc.js +30 -0
- package/dist/shared/common/src/utils/accounts/splBalances.d.ts +15 -0
- package/dist/shared/common/src/utils/accounts/splBalances.js +52 -0
- package/dist/shared/common/src/utils/anchor.d.ts +17 -0
- package/dist/shared/common/src/utils/anchor.js +29 -0
- package/dist/shared/common/src/utils/asyncConcurrency.d.ts +5 -0
- package/dist/shared/common/src/utils/asyncConcurrency.js +28 -0
- package/dist/shared/common/src/utils/compat.d.ts +46 -0
- package/dist/shared/common/src/utils/compat.js +72 -0
- package/dist/shared/common/src/utils/cpi/args.d.ts +69 -0
- package/dist/shared/common/src/utils/cpi/args.js +100 -0
- package/dist/shared/common/src/utils/cpi/index.d.ts +2 -0
- package/dist/shared/common/src/utils/cpi/index.js +18 -0
- package/dist/shared/common/src/utils/cpi/refs.d.ts +122 -0
- package/dist/shared/common/src/utils/cpi/refs.js +234 -0
- package/dist/shared/common/src/utils/data.d.ts +20 -0
- package/dist/shared/common/src/utils/data.js +27 -0
- package/dist/shared/common/src/utils/general.d.ts +24 -0
- package/dist/shared/common/src/utils/general.js +95 -0
- package/dist/shared/common/src/utils/index.d.ts +22 -0
- package/dist/shared/common/src/utils/index.js +38 -0
- package/dist/shared/common/src/utils/instruction.d.ts +74 -0
- package/dist/shared/common/src/utils/instruction.js +147 -0
- package/dist/shared/common/src/utils/jito.d.ts +113 -0
- package/dist/shared/common/src/utils/jito.js +178 -0
- package/dist/shared/common/src/utils/json.d.ts +5 -0
- package/dist/shared/common/src/utils/json.js +25 -0
- package/dist/shared/common/src/utils/jsonRpcFetch.d.ts +21 -0
- package/dist/shared/common/src/utils/jsonRpcFetch.js +134 -0
- package/dist/shared/common/src/utils/metadata.d.ts +107 -0
- package/dist/shared/common/src/utils/metadata.js +194 -0
- package/dist/shared/common/src/utils/numbers.d.ts +72 -0
- package/dist/shared/common/src/utils/numbers.js +193 -0
- package/dist/shared/common/src/utils/priorityFee.d.ts +18 -0
- package/dist/shared/common/src/utils/priorityFee.js +63 -0
- package/dist/shared/common/src/utils/retry.d.ts +20 -0
- package/dist/shared/common/src/utils/retry.js +69 -0
- package/dist/shared/common/src/utils/rpc.d.ts +40 -0
- package/dist/shared/common/src/utils/rpc.js +130 -0
- package/dist/shared/common/src/utils/solana.d.ts +23 -0
- package/dist/shared/common/src/utils/solana.js +61 -0
- package/dist/shared/common/src/utils/timeSeries.d.ts +18 -0
- package/dist/shared/common/src/utils/timeSeries.js +40 -0
- package/dist/shared/common/src/utils/token.d.ts +33 -0
- package/dist/shared/common/src/utils/token.js +82 -0
- package/dist/shared/common/src/utils/transaction.d.ts +154 -0
- package/dist/shared/common/src/utils/transaction.js +585 -0
- package/dist/shared/common/src/utils/transactionSplitter.d.ts +85 -0
- package/dist/shared/common/src/utils/transactionSplitter.js +127 -0
- package/dist/shared/common/src/utils/txAccountCoverage.d.ts +49 -0
- package/dist/shared/common/src/utils/txAccountCoverage.js +122 -0
- package/dist/shared/jupiter-helpers/src/api.d.ts +59 -0
- package/dist/shared/jupiter-helpers/src/api.js +130 -0
- package/dist/shared/jupiter-helpers/src/client.d.ts +79 -0
- package/dist/shared/jupiter-helpers/src/client.js +173 -0
- package/dist/shared/jupiter-helpers/src/constants.d.ts +35 -0
- package/dist/shared/jupiter-helpers/src/constants.js +38 -0
- package/dist/shared/jupiter-helpers/src/extract.d.ts +30 -0
- package/dist/shared/jupiter-helpers/src/extract.js +57 -0
- package/dist/shared/jupiter-helpers/src/index.d.ts +5 -0
- package/dist/shared/jupiter-helpers/src/index.js +21 -0
- package/dist/shared/jupiter-helpers/src/routePreInstructions.d.ts +19 -0
- package/dist/shared/jupiter-helpers/src/routePreInstructions.js +61 -0
- package/dist/shared/jupiter-helpers/src/sizeExactInForMinOutput.d.ts +70 -0
- package/dist/shared/jupiter-helpers/src/sizeExactInForMinOutput.js +95 -0
- package/dist/shared/jupiter-helpers/src/types.d.ts +66 -0
- package/dist/shared/jupiter-helpers/src/types.js +2 -0
- package/dist/shared/lending-platforms/src/constants/cache.d.ts +8 -0
- package/dist/shared/lending-platforms/src/constants/cache.js +11 -0
- package/dist/shared/lending-platforms/src/constants/index.d.ts +3 -0
- package/dist/shared/lending-platforms/src/constants/index.js +19 -0
- package/dist/shared/lending-platforms/src/constants/kamino.d.ts +7 -0
- package/dist/shared/lending-platforms/src/constants/kamino.js +83 -0
- package/dist/shared/lending-platforms/src/constants/lendingPosition.d.ts +7 -0
- package/dist/shared/lending-platforms/src/constants/lendingPosition.js +10 -0
- package/dist/shared/lending-platforms/src/data/accounts/index.d.ts +2 -0
- package/dist/shared/lending-platforms/src/data/accounts/index.js +18 -0
- package/dist/shared/lending-platforms/src/data/accounts/kamino.d.ts +42 -0
- package/dist/shared/lending-platforms/src/data/accounts/kamino.js +104 -0
- package/dist/shared/lending-platforms/src/data/accounts/lpAccountsBase.d.ts +7 -0
- package/dist/shared/lending-platforms/src/data/accounts/lpAccountsBase.js +9 -0
- package/dist/shared/lending-platforms/src/data/incentive/incentiveBase.d.ts +35 -0
- package/dist/shared/lending-platforms/src/data/incentive/incentiveBase.js +26 -0
- package/dist/shared/lending-platforms/src/data/incentive/index.d.ts +2 -0
- package/dist/shared/lending-platforms/src/data/incentive/index.js +18 -0
- package/dist/shared/lending-platforms/src/data/incentive/kamino.d.ts +55 -0
- package/dist/shared/lending-platforms/src/data/incentive/kamino.js +101 -0
- package/dist/shared/lending-platforms/src/data/index.d.ts +6 -0
- package/dist/shared/lending-platforms/src/data/index.js +22 -0
- package/dist/shared/lending-platforms/src/data/instructions/index.d.ts +3 -0
- package/dist/shared/lending-platforms/src/data/instructions/index.js +19 -0
- package/dist/shared/lending-platforms/src/data/instructions/kamino.d.ts +55 -0
- package/dist/shared/lending-platforms/src/data/instructions/kamino.js +630 -0
- package/dist/shared/lending-platforms/src/data/instructions/lpInstructionsBase.d.ts +175 -0
- package/dist/shared/lending-platforms/src/data/instructions/lpInstructionsBase.js +192 -0
- package/dist/shared/lending-platforms/src/data/instructions/types.d.ts +7 -0
- package/dist/shared/lending-platforms/src/data/instructions/types.js +2 -0
- package/dist/shared/lending-platforms/src/data/platform/index.d.ts +2 -0
- package/dist/shared/lending-platforms/src/data/platform/index.js +18 -0
- package/dist/shared/lending-platforms/src/data/platform/kamino.d.ts +59 -0
- package/dist/shared/lending-platforms/src/data/platform/kamino.js +206 -0
- package/dist/shared/lending-platforms/src/data/platform/lpDataBase.d.ts +35 -0
- package/dist/shared/lending-platforms/src/data/platform/lpDataBase.js +31 -0
- package/dist/shared/lending-platforms/src/data/reserve/index.d.ts +2 -0
- package/dist/shared/lending-platforms/src/data/reserve/index.js +18 -0
- package/dist/shared/lending-platforms/src/data/reserve/kamino.d.ts +45 -0
- package/dist/shared/lending-platforms/src/data/reserve/kamino.js +141 -0
- package/dist/shared/lending-platforms/src/data/reserve/reserveBase.d.ts +114 -0
- package/dist/shared/lending-platforms/src/data/reserve/reserveBase.js +125 -0
- package/dist/shared/lending-platforms/src/data/userPosition/index.d.ts +2 -0
- package/dist/shared/lending-platforms/src/data/userPosition/index.js +18 -0
- package/dist/shared/lending-platforms/src/data/userPosition/kamino.d.ts +15 -0
- package/dist/shared/lending-platforms/src/data/userPosition/kamino.js +45 -0
- package/dist/shared/lending-platforms/src/data/userPosition/userPositionBase.d.ts +50 -0
- package/dist/shared/lending-platforms/src/data/userPosition/userPositionBase.js +63 -0
- package/dist/shared/lending-platforms/src/index.d.ts +5 -0
- package/dist/shared/lending-platforms/src/index.js +21 -0
- package/dist/shared/lending-platforms/src/services/client/index.d.ts +2 -0
- package/dist/shared/lending-platforms/src/services/client/index.js +18 -0
- package/dist/shared/lending-platforms/src/services/client/kamino.d.ts +53 -0
- package/dist/shared/lending-platforms/src/services/client/kamino.js +142 -0
- package/dist/shared/lending-platforms/src/services/client/lpClientBase.d.ts +66 -0
- package/dist/shared/lending-platforms/src/services/client/lpClientBase.js +19 -0
- package/dist/shared/lending-platforms/src/services/flashLoan/flashLoanBase.d.ts +49 -0
- package/dist/shared/lending-platforms/src/services/flashLoan/flashLoanBase.js +16 -0
- package/dist/shared/lending-platforms/src/services/flashLoan/index.d.ts +2 -0
- package/dist/shared/lending-platforms/src/services/flashLoan/index.js +18 -0
- package/dist/shared/lending-platforms/src/services/flashLoan/kamino.d.ts +11 -0
- package/dist/shared/lending-platforms/src/services/flashLoan/kamino.js +85 -0
- package/dist/shared/lending-platforms/src/services/index.d.ts +5 -0
- package/dist/shared/lending-platforms/src/services/index.js +21 -0
- package/dist/shared/lending-platforms/src/services/lendingPosition/index.d.ts +2 -0
- package/dist/shared/lending-platforms/src/services/lendingPosition/index.js +18 -0
- package/dist/shared/lending-platforms/src/services/lendingPosition/lendingPositionManager.d.ts +117 -0
- package/dist/shared/lending-platforms/src/services/lendingPosition/lendingPositionManager.js +342 -0
- package/dist/shared/lending-platforms/src/services/lendingPosition/types.d.ts +40 -0
- package/dist/shared/lending-platforms/src/services/lendingPosition/types.js +2 -0
- package/dist/shared/lending-platforms/src/services/leverage/index.d.ts +2 -0
- package/dist/shared/lending-platforms/src/services/leverage/index.js +18 -0
- package/dist/shared/lending-platforms/src/services/leverage/leverageService.d.ts +104 -0
- package/dist/shared/lending-platforms/src/services/leverage/leverageService.js +437 -0
- package/dist/shared/lending-platforms/src/services/leverage/types.d.ts +261 -0
- package/dist/shared/lending-platforms/src/services/leverage/types.js +2 -0
- package/dist/shared/lending-platforms/src/services/reservesManager.d.ts +53 -0
- package/dist/shared/lending-platforms/src/services/reservesManager.js +112 -0
- package/dist/shared/lending-platforms/src/types/general.d.ts +37 -0
- package/dist/shared/lending-platforms/src/types/general.js +8 -0
- package/dist/shared/lending-platforms/src/types/index.d.ts +2 -0
- package/dist/shared/lending-platforms/src/types/index.js +18 -0
- package/dist/shared/lending-platforms/src/types/kamino.d.ts +10 -0
- package/dist/shared/lending-platforms/src/types/kamino.js +2 -0
- package/dist/shared/lending-platforms/src/utils/accounts.d.ts +16 -0
- package/dist/shared/lending-platforms/src/utils/accounts.js +36 -0
- package/dist/shared/lending-platforms/src/utils/cache.d.ts +3 -0
- package/dist/shared/lending-platforms/src/utils/cache.js +11 -0
- package/dist/shared/lending-platforms/src/utils/index.d.ts +6 -0
- package/dist/shared/lending-platforms/src/utils/index.js +22 -0
- package/dist/shared/lending-platforms/src/utils/kamino.d.ts +87 -0
- package/dist/shared/lending-platforms/src/utils/kamino.js +190 -0
- package/dist/shared/lending-platforms/src/utils/lendingPlatform.d.ts +6 -0
- package/dist/shared/lending-platforms/src/utils/lendingPlatform.js +16 -0
- package/dist/shared/lending-platforms/src/utils/math.d.ts +47 -0
- package/dist/shared/lending-platforms/src/utils/math.js +123 -0
- package/dist/shared/lending-platforms/src/utils/scope.d.ts +38 -0
- package/dist/shared/lending-platforms/src/utils/scope.js +144 -0
- package/dist/shared/oracle-service/src/constants/index.d.ts +3 -0
- package/dist/shared/oracle-service/src/constants/index.js +19 -0
- package/dist/shared/oracle-service/src/constants/pyth.d.ts +7 -0
- package/dist/shared/oracle-service/src/constants/pyth.js +71 -0
- package/dist/shared/oracle-service/src/constants/splStake.d.ts +2 -0
- package/dist/shared/oracle-service/src/constants/splStake.js +6 -0
- package/dist/shared/oracle-service/src/constants/switchboard.d.ts +7 -0
- package/dist/shared/oracle-service/src/constants/switchboard.js +10 -0
- package/dist/shared/oracle-service/src/feeds/custom.d.ts +30 -0
- package/dist/shared/oracle-service/src/feeds/custom.js +56 -0
- package/dist/shared/oracle-service/src/feeds/jupiter.d.ts +7 -0
- package/dist/shared/oracle-service/src/feeds/jupiter.js +43 -0
- package/dist/shared/oracle-service/src/feeds/priceBase.d.ts +13 -0
- package/dist/shared/oracle-service/src/feeds/priceBase.js +25 -0
- package/dist/shared/oracle-service/src/feeds/pyth.d.ts +8 -0
- package/dist/shared/oracle-service/src/feeds/pyth.js +59 -0
- package/dist/shared/oracle-service/src/feeds/splStake.d.ts +26 -0
- package/dist/shared/oracle-service/src/feeds/splStake.js +99 -0
- package/dist/shared/oracle-service/src/feeds/switchboard.d.ts +6 -0
- package/dist/shared/oracle-service/src/feeds/switchboard.js +11 -0
- package/dist/shared/oracle-service/src/index.d.ts +5 -0
- package/dist/shared/oracle-service/src/index.js +26 -0
- package/dist/shared/oracle-service/src/oracle.d.ts +22 -0
- package/dist/shared/oracle-service/src/oracle.js +104 -0
- package/dist/shared/oracle-service/src/types.d.ts +4 -0
- package/dist/shared/oracle-service/src/types.js +2 -0
- package/dist/shared/oracle-service/src/utils/general.d.ts +20 -0
- package/dist/shared/oracle-service/src/utils/general.js +65 -0
- package/dist/shared/oracle-service/src/utils/index.d.ts +1 -0
- package/dist/shared/oracle-service/src/utils/index.js +17 -0
- package/dist/shared/perena-helpers/src/accounts.d.ts +7 -0
- package/dist/shared/perena-helpers/src/accounts.js +12 -0
- package/dist/shared/perena-helpers/src/client.d.ts +299 -0
- package/dist/shared/perena-helpers/src/client.js +680 -0
- package/dist/shared/perena-helpers/src/constants.d.ts +5 -0
- package/dist/shared/perena-helpers/src/constants.js +8 -0
- package/dist/shared/perena-helpers/src/cpi/burn.d.ts +27 -0
- package/dist/shared/perena-helpers/src/cpi/burn.js +22 -0
- package/dist/shared/perena-helpers/src/cpi/index.d.ts +3 -0
- package/dist/shared/perena-helpers/src/cpi/index.js +19 -0
- package/dist/shared/perena-helpers/src/cpi/mint.d.ts +27 -0
- package/dist/shared/perena-helpers/src/cpi/mint.js +22 -0
- package/dist/shared/perena-helpers/src/cpi/requestUnstake.d.ts +19 -0
- package/dist/shared/perena-helpers/src/cpi/requestUnstake.js +16 -0
- package/dist/shared/perena-helpers/src/index.d.ts +5 -0
- package/dist/shared/perena-helpers/src/index.js +21 -0
- package/dist/shared/perena-helpers/src/utils.d.ts +9 -0
- package/dist/shared/perena-helpers/src/utils.js +54 -0
- package/dist/shared/swap-aggregator/src/aggSwapClient.d.ts +71 -0
- package/dist/shared/swap-aggregator/src/aggSwapClient.js +103 -0
- package/dist/shared/swap-aggregator/src/index.d.ts +1 -0
- package/dist/shared/swap-aggregator/src/index.js +17 -0
- package/docs/launchingToken.md +57 -0
- package/package.json +75 -0
- package/scripts/asyncBurn.ts +155 -0
- package/scripts/burnToken.ts +120 -0
- package/scripts/claimIncentives.ts +125 -0
- package/scripts/closeCpiPlans.ts +113 -0
- package/scripts/collectInterest.ts +194 -0
- package/scripts/collectProtocolFees.ts +144 -0
- package/scripts/computeOptimalAllocations.ts +117 -0
- package/scripts/createToken.ts +100 -0
- package/scripts/createTokenLendingPosition.ts +204 -0
- package/scripts/createYieldingBank.ts +91 -0
- package/scripts/decreaseCarryPositions.ts +359 -0
- package/scripts/depositUnlentCollateral.ts +106 -0
- package/scripts/emergency/deleverageAll.ts +287 -0
- package/scripts/emergency/triggerCircuitBreaker.ts +87 -0
- package/scripts/env.ts +4 -0
- package/scripts/findTxs.ts +169 -0
- package/scripts/increaseCarryPositions.ts +134 -0
- package/scripts/inspect/format.ts +576 -0
- package/scripts/inspect.ts +147 -0
- package/scripts/localUtils.ts +249 -0
- package/scripts/mintToken.ts +126 -0
- package/scripts/processAsyncBurns.ts +89 -0
- package/scripts/rebalanceToken.ts +269 -0
- package/scripts/rebalanceYieldingBank.ts +183 -0
- package/scripts/recollateralizeLoss.ts +79 -0
- package/scripts/refresh.ts +156 -0
- package/scripts/updateFees.ts +486 -0
- package/scripts/updateGeneralLut.ts +36 -0
- package/scripts/updateLendingPositionConfig.ts +172 -0
- package/scripts/updateTokenLuts.ts +36 -0
- package/scripts/updateTokenMetadata.ts +199 -0
- package/scripts/updateYieldingBankConfig.ts +100 -0
- package/scripts/withdrawUnlentCollateral.ts +178 -0
- package/src/client/account.ts +503 -0
- package/src/client/builders/args.ts +381 -0
- package/src/client/builders/asyncBurnBuilder.ts +305 -0
- package/src/client/builders/base.ts +303 -0
- package/src/client/builders/burnTokenBuilder.ts +258 -0
- package/src/client/builders/claimIncentivesBuilder.ts +211 -0
- package/src/client/builders/collectFeesBuilder.ts +52 -0
- package/src/client/builders/collectInterestBuilder.ts +165 -0
- package/src/client/builders/createCpiPlanBuilder.ts +21 -0
- package/src/client/builders/createTokenBuilder.ts +73 -0
- package/src/client/builders/createTokenLendingPositionBuilder.ts +219 -0
- package/src/client/builders/createYieldingBankAllocationBuilder.ts +32 -0
- package/src/client/builders/createYieldingBankBuilder.ts +39 -0
- package/src/client/builders/decreaseCarryPositionBuilder.ts +162 -0
- package/src/client/builders/depositUnlentCollateralBuilder.ts +95 -0
- package/src/client/builders/increaseCarryPositionBuilder.ts +105 -0
- package/src/client/builders/index.ts +37 -0
- package/src/client/builders/mintTokenBuilder.ts +137 -0
- package/src/client/builders/rebalanceTokenBuilder.ts +356 -0
- package/src/client/builders/rebalanceYieldingBankBuilder.ts +109 -0
- package/src/client/builders/recollateralizeLossBuilder.ts +367 -0
- package/src/client/builders/refreshTokenStateBuilder.ts +153 -0
- package/src/client/builders/refreshTokensBuilder.ts +82 -0
- package/src/client/builders/refreshYieldingBankBuilder.ts +42 -0
- package/src/client/builders/resetTokenBurnRateLimitBuilder.ts +21 -0
- package/src/client/builders/setTokenCircuitBreakerBuilder.ts +40 -0
- package/src/client/builders/setYieldingBankCircuitBreakerBuilder.ts +37 -0
- package/src/client/builders/updateLendingPositionConfigBuilder.ts +33 -0
- package/src/client/builders/updateTokenConfigurationBuilder.ts +50 -0
- package/src/client/builders/updateTokenMetadataBuilder.ts +24 -0
- package/src/client/builders/updateYieldingBankConfigBuilder.ts +32 -0
- package/src/client/builders/utils.ts +26 -0
- package/src/client/client.ts +264 -0
- package/src/client/externalLiquidityResolver.ts +54 -0
- package/src/client/index.ts +20 -0
- package/src/client/lendingPlatformClients.ts +50 -0
- package/src/client/pda.ts +102 -0
- package/src/client/plans/collectInterest.ts +207 -0
- package/src/client/plans/decreaseCarryPosition.ts +226 -0
- package/src/client/routes/collectInterest.ts +56 -0
- package/src/client/transaction.ts +106 -0
- package/src/client/types/builders.ts +19 -0
- package/src/client/types/enums.ts +47 -0
- package/src/client/types/general.ts +117 -0
- package/src/client/types/index.ts +6 -0
- package/src/client/types/ix.ts +452 -0
- package/src/client/types/planTypes/collectInterest.ts +97 -0
- package/src/client/types/planTypes/common.ts +31 -0
- package/src/client/types/planTypes/decreaseCarryPosition.ts +134 -0
- package/src/client/types/planTypes/index.ts +3 -0
- package/src/client/types/tx.ts +409 -0
- package/src/constants/configs/allocations.ts +30 -0
- package/src/constants/configs/carryTradePresets.ts +164 -0
- package/src/constants/configs/index.ts +2 -0
- package/src/constants/general.ts +141 -0
- package/src/constants/index.ts +3 -0
- package/src/constants/lycTokenMetadata.ts +52 -0
- package/src/decoders/decodeTransaction.ts +319 -0
- package/src/decoders/discriminators.ts +10 -0
- package/src/decoders/idlAccounts.ts +75 -0
- package/src/decoders/index.ts +15 -0
- package/src/decoders/innerCpis.ts +262 -0
- package/src/decoders/lycInstructionNames.ts +73 -0
- package/src/decoders/programIds.ts +12 -0
- package/src/decoders/solana.ts +25 -0
- package/src/decoders/transactionPayload.ts +41 -0
- package/src/decoders/types.ts +60 -0
- package/src/errors.ts +195 -0
- package/src/idl/long_yield_carry.ts +14648 -0
- package/src/index.ts +10 -0
- package/src/metrics/index.ts +1 -0
- package/src/metrics/protocolMetrics.ts +976 -0
- package/src/models/index.ts +9 -0
- package/src/models/lycToken.ts +380 -0
- package/src/models/yieldingBank.ts +127 -0
- package/src/services/allocation/allocationService.ts +823 -0
- package/src/services/allocation/index.ts +2 -0
- package/src/services/allocation/types.ts +27 -0
- package/src/services/carry/carryAllocationConfig.ts +266 -0
- package/src/services/carry/index.ts +2 -0
- package/src/services/carry/lycLendingPositionManager.ts +167 -0
- package/src/services/index.ts +5 -0
- package/src/services/lendingPosition/index.ts +5 -0
- package/src/services/lendingPosition/lendingPositionService.ts +328 -0
- package/src/services/rebalance/index.ts +2 -0
- package/src/services/rebalance/token/index.ts +1 -0
- package/src/services/rebalance/token/tokenRebalanceService.ts +142 -0
- package/src/services/rebalance/yieldingBank/index.ts +3 -0
- package/src/services/rebalance/yieldingBank/planner.ts +215 -0
- package/src/services/rebalance/yieldingBank/strategy.ts +41 -0
- package/src/services/rebalance/yieldingBank/types.ts +41 -0
- package/src/services/redemption/index.ts +9 -0
- package/src/services/redemption/redemptionService.ts +758 -0
- package/src/types/enriched.ts +187 -0
- package/src/types/index.ts +1 -0
- package/src/utils/cache.ts +12 -0
- package/src/utils/data.ts +65 -0
- package/src/utils/enrichment.ts +330 -0
- package/src/utils/feeDripMetrics.ts +146 -0
- package/src/utils/general.ts +54 -0
- package/src/utils/index.ts +13 -0
- package/src/utils/ix.ts +227 -0
- package/src/utils/lendingPosition.ts +221 -0
- package/src/utils/lookupTables.ts +309 -0
- package/src/utils/lycData.ts +321 -0
- package/src/utils/timelock.ts +63 -0
- package/src/utils/tokenFeeMath.ts +25 -0
- package/src/utils/transactions.ts +109 -0
- package/src/utils/yieldingBank.ts +38 -0
- package/tsconfig.json +11 -0
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.UserPositionBase = void 0;
|
|
4
|
+
const core_1 = require("@anchor-lang/core");
|
|
5
|
+
const common_1 = require("common");
|
|
6
|
+
/**
|
|
7
|
+
* Base class representing a user's lending position.
|
|
8
|
+
* Contains aggregated data about deposits, borrows, and health metrics.
|
|
9
|
+
*/
|
|
10
|
+
class UserPositionBase {
|
|
11
|
+
constructor(address,
|
|
12
|
+
/** Current utilization as a ratio of borrowed value to borrow limit (0-1) */
|
|
13
|
+
utilizationRate, deposits, borrows,
|
|
14
|
+
/** Loan-to-value ratio (if applicable based on elevation group) */
|
|
15
|
+
ltv,
|
|
16
|
+
/** Liquidation threshold percentage (if applicable) */
|
|
17
|
+
liquidationThreshold,
|
|
18
|
+
/**
|
|
19
|
+
* Obligation-level max borrow capacity in USD (`borrowedUsd / utilizationRate`).
|
|
20
|
+
* Each platform loader must set this from that protocol's position health model.
|
|
21
|
+
*/
|
|
22
|
+
borrowLimitUsd) {
|
|
23
|
+
this.address = address;
|
|
24
|
+
this.utilizationRate = utilizationRate;
|
|
25
|
+
this.deposits = deposits;
|
|
26
|
+
this.borrows = borrows;
|
|
27
|
+
this.ltv = ltv;
|
|
28
|
+
this.liquidationThreshold = liquidationThreshold;
|
|
29
|
+
this.borrowLimitUsd = borrowLimitUsd;
|
|
30
|
+
}
|
|
31
|
+
/** Aggregate borrowed USD for headroom; prefers per-borrow breakdown when present. */
|
|
32
|
+
userPositionBorrowedValueUsd() {
|
|
33
|
+
const fromBorrows = this.borrows.reduce((sum, borrow) => sum + borrow.valueUsd, 0);
|
|
34
|
+
if (fromBorrows > 0) {
|
|
35
|
+
return fromBorrows;
|
|
36
|
+
}
|
|
37
|
+
if (this.borrowLimitUsd !== undefined && this.utilizationRate > 0) {
|
|
38
|
+
return this.borrowLimitUsd * this.utilizationRate;
|
|
39
|
+
}
|
|
40
|
+
return 0;
|
|
41
|
+
}
|
|
42
|
+
/**
|
|
43
|
+
* Max additional debt UI amount before the platform rejects the borrow.
|
|
44
|
+
* Uses obligation `borrowLimitUsd − borrowedUsd`, floored to base units with a
|
|
45
|
+
* one-unit buffer so simulation-time refresh cannot overshoot. Returns `undefined`
|
|
46
|
+
* when `borrowLimitUsd` was not set by the platform loader.
|
|
47
|
+
*/
|
|
48
|
+
getMaxAdditionalBorrowUiAmount(debtPriceUsd, debtDecimals) {
|
|
49
|
+
if (this.borrowLimitUsd === undefined) {
|
|
50
|
+
return undefined;
|
|
51
|
+
}
|
|
52
|
+
const borrowedValueUsd = this.userPositionBorrowedValueUsd();
|
|
53
|
+
const headroomUsd = Math.max(0, this.borrowLimitUsd - borrowedValueUsd);
|
|
54
|
+
if (headroomUsd <= 0 || !(debtPriceUsd > 0)) {
|
|
55
|
+
return 0;
|
|
56
|
+
}
|
|
57
|
+
const headroomUi = headroomUsd / debtPriceUsd;
|
|
58
|
+
const maxBaseUnits = (0, common_1.fromUiAmount)(headroomUi, debtDecimals);
|
|
59
|
+
const safeBaseUnits = core_1.BN.max(maxBaseUnits.subn(1), new core_1.BN(0));
|
|
60
|
+
return (0, common_1.toUiAmount)(safeBaseUnits, debtDecimals);
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
exports.UserPositionBase = UserPositionBase;
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./services"), exports);
|
|
18
|
+
__exportStar(require("./data"), exports);
|
|
19
|
+
__exportStar(require("./constants"), exports);
|
|
20
|
+
__exportStar(require("./utils"), exports);
|
|
21
|
+
__exportStar(require("./types"), exports);
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./kamino"), exports);
|
|
18
|
+
__exportStar(require("./lpClientBase"), exports);
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
import { Address } from "@solana/kit";
|
|
2
|
+
import { BN } from "@anchor-lang/core";
|
|
3
|
+
import { LendingPlatformClientBase } from "./lpClientBase";
|
|
4
|
+
import { KaminoData } from "../../data";
|
|
5
|
+
import { KaminoAccounts } from "../../data/accounts";
|
|
6
|
+
import { KaminoInstructions } from "../../data/instructions";
|
|
7
|
+
import { KaminoFlashLoan } from "../flashLoan/kamino";
|
|
8
|
+
import type { OutstandingIncentive } from "../../types";
|
|
9
|
+
/**
|
|
10
|
+
* Client for interacting with Kamino Lend protocol.
|
|
11
|
+
* Provides access to data, accounts, and instruction builders for lending operations.
|
|
12
|
+
*/
|
|
13
|
+
export declare class KaminoClient extends LendingPlatformClientBase<KaminoData> {
|
|
14
|
+
accounts: KaminoAccounts;
|
|
15
|
+
ix: KaminoInstructions;
|
|
16
|
+
constructor(rpcUrl?: string, rpcUrls?: string[]);
|
|
17
|
+
refreshData(pools: Address[]): Promise<void>;
|
|
18
|
+
getFlashLoan(): KaminoFlashLoan;
|
|
19
|
+
/**
|
|
20
|
+
* Kamino's `RepayObligationLiquidityV2` interprets `u64::MAX` as "repay
|
|
21
|
+
* the obligation's full debt for this reserve" — letting the on-chain
|
|
22
|
+
* handler clear interest-accrual dust between the off-chain quote and
|
|
23
|
+
* settlement. The flash-borrow over-borrows by a slippage buffer to fund
|
|
24
|
+
* this; the post-repay surplus is swept into the yielding bank.
|
|
25
|
+
*/
|
|
26
|
+
getRepayAllSentinel(): BN;
|
|
27
|
+
getAvailableUserAccountId(pool: Address, user: Address, excludeUserAccounts?: readonly Address[]): Promise<number>;
|
|
28
|
+
/**
|
|
29
|
+
* Returns claimable rewards across all kamino farms tied to this obligation:
|
|
30
|
+
*
|
|
31
|
+
* - **Obligation farms** (klend reserve `farmCollateral`/`farmDebt`):
|
|
32
|
+
* UserState.owner = obligation owner (the lyc-token PDA),
|
|
33
|
+
* UserState.delegatee = the obligation itself.
|
|
34
|
+
* - **Direct/extra farms** (e.g. paired-reserve incentives): the lyc-token
|
|
35
|
+
* PDA stakes directly in the farms program.
|
|
36
|
+
* UserState.owner = UserState.delegatee = lyc-token PDA.
|
|
37
|
+
*
|
|
38
|
+
* The farms SDK filters UserStates by memcmp against `owner` (offset 48),
|
|
39
|
+
* so we query by the obligation's owner and then accept any UserState whose
|
|
40
|
+
* `delegatee` is either the obligation or the owner itself. In both cases
|
|
41
|
+
* `userFarm.userStateAddress` is the correct UserState account for the
|
|
42
|
+
* `HarvestReward` CPI; deriving via `obligationFarmStatePda` would be wrong
|
|
43
|
+
* for direct farms (different seed scheme).
|
|
44
|
+
*/
|
|
45
|
+
getOutstandingIncentives(userAccount: Address, minUiAmount?: number, log?: (msg: string) => void): Promise<OutstandingIncentive[]>;
|
|
46
|
+
/**
|
|
47
|
+
* Reads the klend obligation account and returns its `owner` field (the
|
|
48
|
+
* authority that opened the obligation — for LYC this is the lyc-token PDA).
|
|
49
|
+
* Returns null when the account doesn't exist on-chain (stale protocolUserAcc).
|
|
50
|
+
*/
|
|
51
|
+
private fetchObligationOwner;
|
|
52
|
+
private isInactiveUserAccount;
|
|
53
|
+
}
|
|
@@ -0,0 +1,142 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.KaminoClient = void 0;
|
|
4
|
+
const klend_sdk_1 = require("@kamino-finance/klend-sdk");
|
|
5
|
+
const common_1 = require("common");
|
|
6
|
+
const lpClientBase_1 = require("./lpClientBase");
|
|
7
|
+
const data_1 = require("../../data");
|
|
8
|
+
const accounts_1 = require("../../data/accounts");
|
|
9
|
+
const instructions_1 = require("../../data/instructions");
|
|
10
|
+
const kamino_1 = require("../flashLoan/kamino");
|
|
11
|
+
/**
|
|
12
|
+
* Client for interacting with Kamino Lend protocol.
|
|
13
|
+
* Provides access to data, accounts, and instruction builders for lending operations.
|
|
14
|
+
*/
|
|
15
|
+
class KaminoClient extends lpClientBase_1.LendingPlatformClientBase {
|
|
16
|
+
constructor(rpcUrl = (0, common_1.getRpcUrl)(common_1.ENVIRONMENT), rpcUrls = [rpcUrl]) {
|
|
17
|
+
super(rpcUrl, rpcUrls);
|
|
18
|
+
this.data = new data_1.KaminoData(rpcUrl, undefined, rpcUrls);
|
|
19
|
+
this.accounts = new accounts_1.KaminoAccounts(this.data);
|
|
20
|
+
this.ix = new instructions_1.KaminoInstructions(this.rpc, rpcUrl, this.data, this.accounts);
|
|
21
|
+
}
|
|
22
|
+
async refreshData(pools) {
|
|
23
|
+
this.data.clearCache();
|
|
24
|
+
await this.data.load(pools);
|
|
25
|
+
}
|
|
26
|
+
getFlashLoan() {
|
|
27
|
+
return new kamino_1.KaminoFlashLoan(this.data);
|
|
28
|
+
}
|
|
29
|
+
/**
|
|
30
|
+
* Kamino's `RepayObligationLiquidityV2` interprets `u64::MAX` as "repay
|
|
31
|
+
* the obligation's full debt for this reserve" — letting the on-chain
|
|
32
|
+
* handler clear interest-accrual dust between the off-chain quote and
|
|
33
|
+
* settlement. The flash-borrow over-borrows by a slippage buffer to fund
|
|
34
|
+
* this; the post-repay surplus is swept into the yielding bank.
|
|
35
|
+
*/
|
|
36
|
+
getRepayAllSentinel() {
|
|
37
|
+
return common_1.U64_MAX_BN;
|
|
38
|
+
}
|
|
39
|
+
async getAvailableUserAccountId(pool, user, excludeUserAccounts = []) {
|
|
40
|
+
const positions = await this.data.fetchAllUserPositionsForUserInPool(pool, user);
|
|
41
|
+
const positionsByAddress = new Map(positions.map((position) => [position.address, position]));
|
|
42
|
+
const excludeSet = new Set(excludeUserAccounts);
|
|
43
|
+
for (let userAccountId = 0;; userAccountId++) {
|
|
44
|
+
const userAccount = await this.accounts.getUserAccountAddress(pool, user, userAccountId);
|
|
45
|
+
if (excludeSet.has(userAccount)) {
|
|
46
|
+
continue;
|
|
47
|
+
}
|
|
48
|
+
const existingPosition = positionsByAddress.get(userAccount);
|
|
49
|
+
if (!existingPosition || this.isInactiveUserAccount(existingPosition)) {
|
|
50
|
+
return userAccountId;
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
/**
|
|
55
|
+
* Returns claimable rewards across all kamino farms tied to this obligation:
|
|
56
|
+
*
|
|
57
|
+
* - **Obligation farms** (klend reserve `farmCollateral`/`farmDebt`):
|
|
58
|
+
* UserState.owner = obligation owner (the lyc-token PDA),
|
|
59
|
+
* UserState.delegatee = the obligation itself.
|
|
60
|
+
* - **Direct/extra farms** (e.g. paired-reserve incentives): the lyc-token
|
|
61
|
+
* PDA stakes directly in the farms program.
|
|
62
|
+
* UserState.owner = UserState.delegatee = lyc-token PDA.
|
|
63
|
+
*
|
|
64
|
+
* The farms SDK filters UserStates by memcmp against `owner` (offset 48),
|
|
65
|
+
* so we query by the obligation's owner and then accept any UserState whose
|
|
66
|
+
* `delegatee` is either the obligation or the owner itself. In both cases
|
|
67
|
+
* `userFarm.userStateAddress` is the correct UserState account for the
|
|
68
|
+
* `HarvestReward` CPI; deriving via `obligationFarmStatePda` would be wrong
|
|
69
|
+
* for direct farms (different seed scheme).
|
|
70
|
+
*/
|
|
71
|
+
async getOutstandingIncentives(userAccount, minUiAmount = 0, log) {
|
|
72
|
+
const obligationOwner = await this.fetchObligationOwner(userAccount);
|
|
73
|
+
if (!obligationOwner) {
|
|
74
|
+
log?.(` [getOutstandingIncentives] no obligation owner found for ${userAccount}`);
|
|
75
|
+
return [];
|
|
76
|
+
}
|
|
77
|
+
const allOwnerFarms = await this.data.fetchUserActiveIncentives(obligationOwner);
|
|
78
|
+
log?.(` [getOutstandingIncentives] found ${allOwnerFarms.length} farm(s) owned by ${obligationOwner.slice(0, 6)}…`);
|
|
79
|
+
const userFarms = allOwnerFarms.filter((uf) => uf.userState.delegatee === userAccount || uf.userState.delegatee === obligationOwner);
|
|
80
|
+
const filteredOut = allOwnerFarms.length - userFarms.length;
|
|
81
|
+
if (filteredOut > 0) {
|
|
82
|
+
log?.(` [getOutstandingIncentives] ${filteredOut} farm(s) skipped — delegatee matched neither userAccount (${userAccount.slice(0, 6)}…) nor owner`);
|
|
83
|
+
}
|
|
84
|
+
if (userFarms.length === 0) {
|
|
85
|
+
log?.(` [getOutstandingIncentives] no matching farms for userAccount`);
|
|
86
|
+
return [];
|
|
87
|
+
}
|
|
88
|
+
// Reward token decimals live on the FarmState, not on the pending-reward
|
|
89
|
+
// entry, so fetch the (cached) farm states to convert raw balances to UI
|
|
90
|
+
// units for the dust filter.
|
|
91
|
+
const farmStates = await this.data.fetchFarms(userFarms.map((uf) => uf.farm));
|
|
92
|
+
const decimalsByFarmAndMint = new Map();
|
|
93
|
+
farmStates.forEach((farmState, i) => {
|
|
94
|
+
const farm = userFarms[i].farm;
|
|
95
|
+
for (const rewardInfo of farmState.rewardInfos) {
|
|
96
|
+
decimalsByFarmAndMint.set(`${farm}:${rewardInfo.token.mint}`, rewardInfo.token.decimals.toNumber());
|
|
97
|
+
}
|
|
98
|
+
});
|
|
99
|
+
const incentives = [];
|
|
100
|
+
for (const userFarm of userFarms) {
|
|
101
|
+
log?.(` [getOutstandingIncentives] farm ${userFarm.farm.slice(0, 6)}… userFarm ${userFarm.userStateAddress.slice(0, 6)}… delegatee ${userFarm.userState.delegatee.slice(0, 6)}… ${userFarm.pendingRewards.length} pending reward(s)`);
|
|
102
|
+
for (const reward of userFarm.pendingRewards) {
|
|
103
|
+
const amount = reward.cumulatedPendingRewards.toNumber();
|
|
104
|
+
const decimals = decimalsByFarmAndMint.get(`${userFarm.farm}:${reward.rewardTokenMint}`) ?? 0;
|
|
105
|
+
const uiAmount = amount / 10 ** decimals;
|
|
106
|
+
if (amount <= 0) {
|
|
107
|
+
log?.(` reward ${reward.rewardTokenMint.slice(0, 6)}… — skipped (amount=0)`);
|
|
108
|
+
continue;
|
|
109
|
+
}
|
|
110
|
+
if (uiAmount < minUiAmount) {
|
|
111
|
+
log?.(` reward ${reward.rewardTokenMint.slice(0, 6)}… — skipped (uiAmount=${uiAmount.toFixed(4)} < minUiAmount=${minUiAmount})`);
|
|
112
|
+
continue;
|
|
113
|
+
}
|
|
114
|
+
log?.(` reward ${reward.rewardTokenMint.slice(0, 6)}… — claimable uiAmount=${uiAmount.toFixed(4)}`);
|
|
115
|
+
incentives.push({
|
|
116
|
+
mint: reward.rewardTokenMint,
|
|
117
|
+
amount,
|
|
118
|
+
decimals,
|
|
119
|
+
uiAmount,
|
|
120
|
+
claimAccounts: {
|
|
121
|
+
farm: userFarm.farm,
|
|
122
|
+
userFarm: userFarm.userStateAddress,
|
|
123
|
+
},
|
|
124
|
+
});
|
|
125
|
+
}
|
|
126
|
+
}
|
|
127
|
+
return incentives;
|
|
128
|
+
}
|
|
129
|
+
/**
|
|
130
|
+
* Reads the klend obligation account and returns its `owner` field (the
|
|
131
|
+
* authority that opened the obligation — for LYC this is the lyc-token PDA).
|
|
132
|
+
* Returns null when the account doesn't exist on-chain (stale protocolUserAcc).
|
|
133
|
+
*/
|
|
134
|
+
async fetchObligationOwner(userAccount) {
|
|
135
|
+
const obligation = await klend_sdk_1.Obligation.fetch(this.rpc, userAccount);
|
|
136
|
+
return obligation ? obligation.owner : null;
|
|
137
|
+
}
|
|
138
|
+
isInactiveUserAccount(position) {
|
|
139
|
+
return [...position.deposits, ...position.borrows].every((entry) => entry.amount.isZero());
|
|
140
|
+
}
|
|
141
|
+
}
|
|
142
|
+
exports.KaminoClient = KaminoClient;
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
import { Address, Rpc, SolanaRpcApi } from "@solana/kit";
|
|
2
|
+
import { BN } from "@anchor-lang/core";
|
|
3
|
+
import { TransactionCacheInvalidation } from "common";
|
|
4
|
+
import { LendingPlatformData, LpAccountsBase, LpInstructionsBase } from "../../data";
|
|
5
|
+
import type { FlashLoanBase } from "../flashLoan/flashLoanBase";
|
|
6
|
+
import type { OutstandingIncentive } from "../../types";
|
|
7
|
+
/**
|
|
8
|
+
* A platform-agnostic lending client — the base class instantiated against
|
|
9
|
+
* any concrete `LendingPlatformData` subclass. Use this when a function
|
|
10
|
+
* doesn't care about the underlying platform (Kamino, Marginfi, etc.) and
|
|
11
|
+
* just needs to call the shared abstract surface.
|
|
12
|
+
*/
|
|
13
|
+
export type AnyLendingPlatformClient = LendingPlatformClientBase<LendingPlatformData>;
|
|
14
|
+
/**
|
|
15
|
+
* Abstract base class for lending platform clients.
|
|
16
|
+
* Provides a unified interface for interacting with different lending protocols.
|
|
17
|
+
*
|
|
18
|
+
* @typeParam T - The platform-specific data class extending LendingPlatformData
|
|
19
|
+
*/
|
|
20
|
+
export declare abstract class LendingPlatformClientBase<T extends LendingPlatformData> {
|
|
21
|
+
rpc: Rpc<SolanaRpcApi>;
|
|
22
|
+
data: T;
|
|
23
|
+
abstract accounts: LpAccountsBase<T>;
|
|
24
|
+
abstract ix: LpInstructionsBase<T>;
|
|
25
|
+
constructor(rpcUrl: string, rpcUrls?: string[]);
|
|
26
|
+
applyPostSuccessCacheInvalidations(invalidations: TransactionCacheInvalidation[]): void;
|
|
27
|
+
/** Refreshes cached platform data for the specified pools */
|
|
28
|
+
abstract refreshData(pools: Address[]): Promise<void>;
|
|
29
|
+
/**
|
|
30
|
+
* Returns this platform's flash-loan client. Implementations should throw
|
|
31
|
+
* if the platform doesn't expose a flash-loan facility.
|
|
32
|
+
*/
|
|
33
|
+
abstract getFlashLoan(): FlashLoanBase<T>;
|
|
34
|
+
/**
|
|
35
|
+
* Returns the platform-specific "repay full obligation debt" sentinel for
|
|
36
|
+
* the repay CPI's amount field, or `null` if the platform has no such
|
|
37
|
+
* sentinel and callers must compute the exact debt amount themselves.
|
|
38
|
+
* Used by `rebalance_token` on full-position moves to clear obligation
|
|
39
|
+
* debt exactly without leaving interest-accrual dust.
|
|
40
|
+
*/
|
|
41
|
+
abstract getRepayAllSentinel(): BN | null;
|
|
42
|
+
/**
|
|
43
|
+
* Returns the first user-account ID that can be used in `pool` for `user`.
|
|
44
|
+
*
|
|
45
|
+
* Implementations may reuse an existing inactive account or return the first
|
|
46
|
+
* never-before-used ID, depending on the platform's account model.
|
|
47
|
+
*
|
|
48
|
+
* `excludeUserAccounts`, when provided, lists protocol user-account
|
|
49
|
+
* addresses that must NOT be returned even if they look reusable on-chain
|
|
50
|
+
* (e.g. zero deposits + zero borrows). Callers managing multiple
|
|
51
|
+
* higher-level positions over the same `(pool, user)` pair use this to
|
|
52
|
+
* ensure each position gets its own distinct user account, even when
|
|
53
|
+
* sibling positions are temporarily inactive on-chain.
|
|
54
|
+
*/
|
|
55
|
+
abstract getAvailableUserAccountId(pool: Address, user: Address, excludeUserAccounts?: readonly Address[]): Promise<number>;
|
|
56
|
+
/**
|
|
57
|
+
* Returns the protocol user account's currently claimable rewards, excluding
|
|
58
|
+
* zero balances. Entries may include claim metadata required by the platform
|
|
59
|
+
* to harvest that specific reward.
|
|
60
|
+
*
|
|
61
|
+
* `minUiAmount` filters out dust: rewards whose UI-denominated balance is
|
|
62
|
+
* below this threshold are omitted, so callers don't pay transaction fees to
|
|
63
|
+
* harvest economically negligible amounts. Defaults to `0` (no filtering).
|
|
64
|
+
*/
|
|
65
|
+
abstract getOutstandingIncentives(userAccount: Address, minUiAmount?: number, log?: (msg: string) => void): Promise<OutstandingIncentive[]>;
|
|
66
|
+
}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.LendingPlatformClientBase = void 0;
|
|
4
|
+
const common_1 = require("common");
|
|
5
|
+
/**
|
|
6
|
+
* Abstract base class for lending platform clients.
|
|
7
|
+
* Provides a unified interface for interacting with different lending protocols.
|
|
8
|
+
*
|
|
9
|
+
* @typeParam T - The platform-specific data class extending LendingPlatformData
|
|
10
|
+
*/
|
|
11
|
+
class LendingPlatformClientBase {
|
|
12
|
+
constructor(rpcUrl, rpcUrls = [rpcUrl]) {
|
|
13
|
+
this.rpc = (0, common_1.createRpcWithFailover)(rpcUrls);
|
|
14
|
+
}
|
|
15
|
+
applyPostSuccessCacheInvalidations(invalidations) {
|
|
16
|
+
this.ix.applyPostSuccessCacheInvalidations(invalidations);
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
exports.LendingPlatformClientBase = LendingPlatformClientBase;
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import { BN } from "@anchor-lang/core";
|
|
2
|
+
import type { Address, Instruction } from "@solana/kit";
|
|
3
|
+
import { LendingPlatformData } from "../../data/platform";
|
|
4
|
+
/** Parameters for building a flash-borrow instruction. */
|
|
5
|
+
export interface FlashBorrowParams {
|
|
6
|
+
/** Authority that signs the transfer of the borrowed liquidity. */
|
|
7
|
+
user: Address;
|
|
8
|
+
pool: Address;
|
|
9
|
+
reserve: Address;
|
|
10
|
+
/** Amount to borrow, in the reserve liquidity mint's base units. */
|
|
11
|
+
amountBaseUnits: BN;
|
|
12
|
+
/** Destination ATA for the borrowed liquidity. Defaults to `user`'s ATA for the mint. */
|
|
13
|
+
destinationAta?: Address;
|
|
14
|
+
}
|
|
15
|
+
/** Parameters for building a flash-repay instruction, paired with a prior flash-borrow. */
|
|
16
|
+
export interface FlashRepayParams extends FlashBorrowParams {
|
|
17
|
+
/** Top-level transaction index of the matching flash-borrow instruction. */
|
|
18
|
+
borrowIxIndex: number;
|
|
19
|
+
/** Source ATA for the repay. Defaults to the destination ATA used on the flash-borrow. */
|
|
20
|
+
userSourceLiquidity?: Address;
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* Abstract base for lending-platform flash-loan instruction builders.
|
|
24
|
+
* Flash loans are composed of a top-level borrow and repay pair that must live
|
|
25
|
+
* in the same transaction; the repay references the borrow by instruction index.
|
|
26
|
+
*
|
|
27
|
+
* @typeParam T - The platform-specific data class extending LendingPlatformData
|
|
28
|
+
*/
|
|
29
|
+
export declare abstract class FlashLoanBase<T extends LendingPlatformData> {
|
|
30
|
+
data: T;
|
|
31
|
+
constructor(data: T);
|
|
32
|
+
/** Builds the top-level flash-borrow instruction. */
|
|
33
|
+
abstract getFlashBorrowIx(params: FlashBorrowParams): Promise<Instruction>;
|
|
34
|
+
/**
|
|
35
|
+
* Builds the top-level flash-repay instruction. Must be paired with a
|
|
36
|
+
* flash-borrow at `borrowIxIndex` in the same transaction.
|
|
37
|
+
*/
|
|
38
|
+
abstract getFlashRepayIx(params: FlashRepayParams): Promise<Instruction>;
|
|
39
|
+
/**
|
|
40
|
+
* Returns the maximum amount that can be flash-borrowed from `reserve`, in
|
|
41
|
+
* the reserve liquidity mint's base units.
|
|
42
|
+
*/
|
|
43
|
+
abstract getAvailableFlashBorrowAmount(pool: Address, reserve: Address): Promise<BN>;
|
|
44
|
+
/**
|
|
45
|
+
* Returns `reserve`'s flash-loan fee rate as a fraction of the borrowed
|
|
46
|
+
* amount (e.g. `0.003` for 0.3%).
|
|
47
|
+
*/
|
|
48
|
+
abstract getFlashLoanFeeRate(pool: Address, reserve: Address): Promise<number>;
|
|
49
|
+
}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.FlashLoanBase = void 0;
|
|
4
|
+
/**
|
|
5
|
+
* Abstract base for lending-platform flash-loan instruction builders.
|
|
6
|
+
* Flash loans are composed of a top-level borrow and repay pair that must live
|
|
7
|
+
* in the same transaction; the repay references the borrow by instruction index.
|
|
8
|
+
*
|
|
9
|
+
* @typeParam T - The platform-specific data class extending LendingPlatformData
|
|
10
|
+
*/
|
|
11
|
+
class FlashLoanBase {
|
|
12
|
+
constructor(data) {
|
|
13
|
+
this.data = data;
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
exports.FlashLoanBase = FlashLoanBase;
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./flashLoanBase"), exports);
|
|
18
|
+
__exportStar(require("./kamino"), exports);
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { BN } from "@anchor-lang/core";
|
|
2
|
+
import { type Address, type Instruction } from "@solana/kit";
|
|
3
|
+
import { KaminoData } from "../../data/platform";
|
|
4
|
+
import { FlashBorrowParams, FlashLoanBase, FlashRepayParams } from "./flashLoanBase";
|
|
5
|
+
export declare class KaminoFlashLoan extends FlashLoanBase<KaminoData> {
|
|
6
|
+
getFlashBorrowIx(params: FlashBorrowParams): Promise<Instruction>;
|
|
7
|
+
getAvailableFlashBorrowAmount(pool: Address, reserve: Address): Promise<BN>;
|
|
8
|
+
getFlashLoanFeeRate(pool: Address, reserve: Address): Promise<number>;
|
|
9
|
+
getFlashRepayIx(params: FlashRepayParams): Promise<Instruction>;
|
|
10
|
+
private resolveSharedAccounts;
|
|
11
|
+
}
|
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.KaminoFlashLoan = void 0;
|
|
7
|
+
const core_1 = require("@anchor-lang/core");
|
|
8
|
+
const decimal_js_1 = __importDefault(require("decimal.js"));
|
|
9
|
+
const kit_1 = require("@solana/kit");
|
|
10
|
+
const klend_sdk_1 = require("@kamino-finance/klend-sdk");
|
|
11
|
+
const common_1 = require("common");
|
|
12
|
+
const flashLoanBase_1 = require("./flashLoanBase");
|
|
13
|
+
/**
|
|
14
|
+
* Drop the `signer` field from any account meta, leaving the address + role
|
|
15
|
+
* intact. The Kamino codegen attaches a placeholder `NoopSigner` to the
|
|
16
|
+
* `userTransferAuthority` meta to satisfy its TS types; if we keep it, Kit's
|
|
17
|
+
* dedup conflicts with the real fee-payer `KeyPairSigner` whenever the
|
|
18
|
+
* placeholder address matches the fee payer (or appears twice — borrow +
|
|
19
|
+
* repay — in the same tx). Stripping it lets `addSignersToTransactionMessage`
|
|
20
|
+
* re-attach the real signer at compile time.
|
|
21
|
+
*/
|
|
22
|
+
function stripAccountSigners(ix) {
|
|
23
|
+
if (!ix.accounts)
|
|
24
|
+
return ix;
|
|
25
|
+
return {
|
|
26
|
+
...ix,
|
|
27
|
+
accounts: ix.accounts.map((account) => {
|
|
28
|
+
if (!("signer" in account))
|
|
29
|
+
return account;
|
|
30
|
+
const { signer: _signer, ...rest } = account;
|
|
31
|
+
return rest;
|
|
32
|
+
}),
|
|
33
|
+
};
|
|
34
|
+
}
|
|
35
|
+
class KaminoFlashLoan extends flashLoanBase_1.FlashLoanBase {
|
|
36
|
+
async getFlashBorrowIx(params) {
|
|
37
|
+
const { reserve, lendingMarketAuthority, destinationAta } = await this.resolveSharedAccounts(params);
|
|
38
|
+
return stripAccountSigners((0, klend_sdk_1.getBorrowFlashLoanInstruction)({
|
|
39
|
+
userTransferAuthority: (0, common_1.createSignerFromAddress)(params.user),
|
|
40
|
+
lendingMarketAuthority,
|
|
41
|
+
lendingMarketAddress: params.pool,
|
|
42
|
+
reserve: reserve.rawData,
|
|
43
|
+
amountLamports: new decimal_js_1.default(params.amountBaseUnits.toString()),
|
|
44
|
+
destinationAta,
|
|
45
|
+
referrerAccount: (0, kit_1.none)(),
|
|
46
|
+
referrerTokenState: (0, kit_1.none)(),
|
|
47
|
+
programId: klend_sdk_1.PROGRAM_ID,
|
|
48
|
+
}));
|
|
49
|
+
}
|
|
50
|
+
async getAvailableFlashBorrowAmount(pool, reserve) {
|
|
51
|
+
const reserveData = await this.data.fetchReserve(pool, reserve);
|
|
52
|
+
return new core_1.BN(reserveData.rawData.getLiquidityAvailableAmount().toFixed(0));
|
|
53
|
+
}
|
|
54
|
+
async getFlashLoanFeeRate(pool, reserve) {
|
|
55
|
+
const reserveData = await this.data.fetchReserve(pool, reserve);
|
|
56
|
+
return reserveData.config.flashLoanFeePct;
|
|
57
|
+
}
|
|
58
|
+
async getFlashRepayIx(params) {
|
|
59
|
+
const { reserve, lendingMarketAuthority, destinationAta } = await this.resolveSharedAccounts(params);
|
|
60
|
+
return stripAccountSigners((0, klend_sdk_1.getRepayFlashLoanInstruction)({
|
|
61
|
+
borrowIxIndex: params.borrowIxIndex,
|
|
62
|
+
userTransferAuthority: (0, common_1.createSignerFromAddress)(params.user),
|
|
63
|
+
lendingMarketAuthority,
|
|
64
|
+
lendingMarketAddress: params.pool,
|
|
65
|
+
reserve: reserve.rawData,
|
|
66
|
+
amountLamports: new decimal_js_1.default(params.amountBaseUnits.toString()),
|
|
67
|
+
userSourceLiquidity: params.userSourceLiquidity ?? destinationAta,
|
|
68
|
+
referrerAccount: (0, kit_1.none)(),
|
|
69
|
+
referrerTokenState: (0, kit_1.none)(),
|
|
70
|
+
programId: klend_sdk_1.PROGRAM_ID,
|
|
71
|
+
}));
|
|
72
|
+
}
|
|
73
|
+
async resolveSharedAccounts(params) {
|
|
74
|
+
const reserve = await this.data.fetchReserve(params.pool, params.reserve);
|
|
75
|
+
const [lendingMarketAuthority] = await (0, klend_sdk_1.lendingMarketAuthPda)(params.pool);
|
|
76
|
+
const liquidityMint = reserve.mint.mint;
|
|
77
|
+
const tokenProgram = common_1.mints.get(liquidityMint)?.tokenProgram;
|
|
78
|
+
if (!tokenProgram) {
|
|
79
|
+
throw new Error(`Unsupported liquidity mint for flash loan: ${liquidityMint}`);
|
|
80
|
+
}
|
|
81
|
+
const destinationAta = params.destinationAta ?? (await (0, common_1.getAtaAddress)(liquidityMint, params.user, tokenProgram));
|
|
82
|
+
return { reserve, lendingMarketAuthority, destinationAta };
|
|
83
|
+
}
|
|
84
|
+
}
|
|
85
|
+
exports.KaminoFlashLoan = KaminoFlashLoan;
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./client"), exports);
|
|
18
|
+
__exportStar(require("./flashLoan"), exports);
|
|
19
|
+
__exportStar(require("./leverage"), exports);
|
|
20
|
+
__exportStar(require("./lendingPosition"), exports);
|
|
21
|
+
__exportStar(require("./reservesManager"), exports);
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./lendingPositionManager"), exports);
|
|
18
|
+
__exportStar(require("./types"), exports);
|