@kestrelfi/lyc-sdk 1.0.1 → 1.0.3
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 +32 -0
- package/dist/carry-XU3WUD22.mjs +20 -0
- package/dist/carry-XU3WUD22.mjs.map +1 -0
- package/dist/chunk-2T23QQCX.mjs +3707 -0
- package/dist/chunk-2T23QQCX.mjs.map +1 -0
- package/dist/chunk-GOW6CARW.mjs +3969 -0
- package/dist/chunk-GOW6CARW.mjs.map +1 -0
- package/dist/chunk-ZPXXY3QV.mjs +9330 -0
- package/dist/chunk-ZPXXY3QV.mjs.map +1 -0
- package/dist/{sdks/long-yield-carry/src/idl/long_yield_carry.d.ts → core-DP6wfpME.d.mts} +3242 -84
- package/dist/core-DP6wfpME.d.ts +10485 -0
- package/dist/core.d.mts +8 -0
- package/dist/core.d.ts +8 -0
- package/dist/core.js +12348 -0
- package/dist/core.js.map +1 -0
- package/dist/core.mjs +72 -0
- package/dist/core.mjs.map +1 -0
- package/dist/index.d.mts +2537 -0
- package/dist/index.d.ts +2537 -0
- package/dist/index.js +23884 -0
- package/dist/index.js.map +1 -0
- package/dist/index.mjs +5898 -0
- package/dist/index.mjs.map +1 -0
- package/package.json +56 -10
- package/.env.example +0 -11
- package/dist/sdks/long-yield-carry/scripts/asyncBurn.d.ts +0 -1
- package/dist/sdks/long-yield-carry/scripts/asyncBurn.js +0 -117
- package/dist/sdks/long-yield-carry/scripts/burnToken.d.ts +0 -1
- package/dist/sdks/long-yield-carry/scripts/burnToken.js +0 -98
- package/dist/sdks/long-yield-carry/scripts/claimIncentives.d.ts +0 -1
- package/dist/sdks/long-yield-carry/scripts/claimIncentives.js +0 -108
- package/dist/sdks/long-yield-carry/scripts/closeCpiPlans.d.ts +0 -1
- package/dist/sdks/long-yield-carry/scripts/closeCpiPlans.js +0 -93
- package/dist/sdks/long-yield-carry/scripts/collectInterest.d.ts +0 -1
- package/dist/sdks/long-yield-carry/scripts/collectInterest.js +0 -164
- package/dist/sdks/long-yield-carry/scripts/collectProtocolFees.d.ts +0 -1
- package/dist/sdks/long-yield-carry/scripts/collectProtocolFees.js +0 -120
- package/dist/sdks/long-yield-carry/scripts/computeOptimalAllocations.d.ts +0 -1
- package/dist/sdks/long-yield-carry/scripts/computeOptimalAllocations.js +0 -84
- package/dist/sdks/long-yield-carry/scripts/createToken.d.ts +0 -1
- package/dist/sdks/long-yield-carry/scripts/createToken.js +0 -76
- package/dist/sdks/long-yield-carry/scripts/createTokenLendingPosition.d.ts +0 -1
- package/dist/sdks/long-yield-carry/scripts/createTokenLendingPosition.js +0 -157
- package/dist/sdks/long-yield-carry/scripts/createYieldingBank.d.ts +0 -1
- package/dist/sdks/long-yield-carry/scripts/createYieldingBank.js +0 -69
- package/dist/sdks/long-yield-carry/scripts/decreaseCarryPositions.d.ts +0 -1
- package/dist/sdks/long-yield-carry/scripts/decreaseCarryPositions.js +0 -247
- package/dist/sdks/long-yield-carry/scripts/depositUnlentCollateral.d.ts +0 -1
- package/dist/sdks/long-yield-carry/scripts/depositUnlentCollateral.js +0 -90
- package/dist/sdks/long-yield-carry/scripts/emergency/deleverageAll.d.ts +0 -1
- package/dist/sdks/long-yield-carry/scripts/emergency/deleverageAll.js +0 -202
- package/dist/sdks/long-yield-carry/scripts/emergency/triggerCircuitBreaker.d.ts +0 -1
- package/dist/sdks/long-yield-carry/scripts/emergency/triggerCircuitBreaker.js +0 -68
- package/dist/sdks/long-yield-carry/scripts/env.d.ts +0 -1
- package/dist/sdks/long-yield-carry/scripts/env.js +0 -8
- package/dist/sdks/long-yield-carry/scripts/findTxs.d.ts +0 -1
- package/dist/sdks/long-yield-carry/scripts/findTxs.js +0 -143
- package/dist/sdks/long-yield-carry/scripts/increaseCarryPositions.d.ts +0 -1
- package/dist/sdks/long-yield-carry/scripts/increaseCarryPositions.js +0 -112
- package/dist/sdks/long-yield-carry/scripts/inspect/format.d.ts +0 -13
- package/dist/sdks/long-yield-carry/scripts/inspect/format.js +0 -363
- package/dist/sdks/long-yield-carry/scripts/inspect.d.ts +0 -1
- package/dist/sdks/long-yield-carry/scripts/inspect.js +0 -108
- package/dist/sdks/long-yield-carry/scripts/localUtils.d.ts +0 -53
- package/dist/sdks/long-yield-carry/scripts/localUtils.js +0 -191
- package/dist/sdks/long-yield-carry/scripts/mintToken.d.ts +0 -1
- package/dist/sdks/long-yield-carry/scripts/mintToken.js +0 -103
- package/dist/sdks/long-yield-carry/scripts/processAsyncBurns.d.ts +0 -1
- package/dist/sdks/long-yield-carry/scripts/processAsyncBurns.js +0 -76
- package/dist/sdks/long-yield-carry/scripts/rebalanceToken.d.ts +0 -1
- package/dist/sdks/long-yield-carry/scripts/rebalanceToken.js +0 -210
- package/dist/sdks/long-yield-carry/scripts/rebalanceYieldingBank.d.ts +0 -1
- package/dist/sdks/long-yield-carry/scripts/rebalanceYieldingBank.js +0 -149
- package/dist/sdks/long-yield-carry/scripts/recollateralizeLoss.d.ts +0 -1
- package/dist/sdks/long-yield-carry/scripts/recollateralizeLoss.js +0 -64
- package/dist/sdks/long-yield-carry/scripts/refresh.d.ts +0 -1
- package/dist/sdks/long-yield-carry/scripts/refresh.js +0 -101
- package/dist/sdks/long-yield-carry/scripts/updateFees.d.ts +0 -1
- package/dist/sdks/long-yield-carry/scripts/updateFees.js +0 -369
- package/dist/sdks/long-yield-carry/scripts/updateGeneralLut.d.ts +0 -1
- package/dist/sdks/long-yield-carry/scripts/updateGeneralLut.js +0 -27
- package/dist/sdks/long-yield-carry/scripts/updateLendingPositionConfig.d.ts +0 -1
- package/dist/sdks/long-yield-carry/scripts/updateLendingPositionConfig.js +0 -127
- package/dist/sdks/long-yield-carry/scripts/updateTokenLuts.d.ts +0 -1
- package/dist/sdks/long-yield-carry/scripts/updateTokenLuts.js +0 -27
- package/dist/sdks/long-yield-carry/scripts/updateTokenMetadata.d.ts +0 -1
- package/dist/sdks/long-yield-carry/scripts/updateTokenMetadata.js +0 -194
- package/dist/sdks/long-yield-carry/scripts/updateYieldingBankConfig.d.ts +0 -1
- package/dist/sdks/long-yield-carry/scripts/updateYieldingBankConfig.js +0 -84
- package/dist/sdks/long-yield-carry/scripts/withdrawUnlentCollateral.d.ts +0 -1
- package/dist/sdks/long-yield-carry/scripts/withdrawUnlentCollateral.js +0 -140
- package/dist/sdks/long-yield-carry/src/client/account.d.ts +0 -152
- package/dist/sdks/long-yield-carry/src/client/account.js +0 -349
- package/dist/sdks/long-yield-carry/src/client/builders/args.d.ts +0 -299
- package/dist/sdks/long-yield-carry/src/client/builders/args.js +0 -2
- package/dist/sdks/long-yield-carry/src/client/builders/asyncBurnBuilder.d.ts +0 -20
- package/dist/sdks/long-yield-carry/src/client/builders/asyncBurnBuilder.js +0 -212
- package/dist/sdks/long-yield-carry/src/client/builders/base.d.ts +0 -77
- package/dist/sdks/long-yield-carry/src/client/builders/base.js +0 -191
- package/dist/sdks/long-yield-carry/src/client/builders/burnTokenBuilder.d.ts +0 -18
- package/dist/sdks/long-yield-carry/src/client/builders/burnTokenBuilder.js +0 -165
- package/dist/sdks/long-yield-carry/src/client/builders/claimIncentivesBuilder.d.ts +0 -9
- package/dist/sdks/long-yield-carry/src/client/builders/claimIncentivesBuilder.js +0 -135
- package/dist/sdks/long-yield-carry/src/client/builders/collectFeesBuilder.d.ts +0 -14
- package/dist/sdks/long-yield-carry/src/client/builders/collectFeesBuilder.js +0 -50
- package/dist/sdks/long-yield-carry/src/client/builders/collectInterestBuilder.d.ts +0 -8
- package/dist/sdks/long-yield-carry/src/client/builders/collectInterestBuilder.js +0 -86
- package/dist/sdks/long-yield-carry/src/client/builders/createCpiPlanBuilder.d.ts +0 -6
- package/dist/sdks/long-yield-carry/src/client/builders/createCpiPlanBuilder.js +0 -22
- package/dist/sdks/long-yield-carry/src/client/builders/createTokenBuilder.d.ts +0 -7
- package/dist/sdks/long-yield-carry/src/client/builders/createTokenBuilder.js +0 -64
- package/dist/sdks/long-yield-carry/src/client/builders/createTokenLendingPositionBuilder.d.ts +0 -10
- package/dist/sdks/long-yield-carry/src/client/builders/createTokenLendingPositionBuilder.js +0 -138
- package/dist/sdks/long-yield-carry/src/client/builders/createYieldingBankAllocationBuilder.d.ts +0 -7
- package/dist/sdks/long-yield-carry/src/client/builders/createYieldingBankAllocationBuilder.js +0 -29
- package/dist/sdks/long-yield-carry/src/client/builders/createYieldingBankBuilder.d.ts +0 -7
- package/dist/sdks/long-yield-carry/src/client/builders/createYieldingBankBuilder.js +0 -39
- package/dist/sdks/long-yield-carry/src/client/builders/decreaseCarryPositionBuilder.d.ts +0 -30
- package/dist/sdks/long-yield-carry/src/client/builders/decreaseCarryPositionBuilder.js +0 -99
- package/dist/sdks/long-yield-carry/src/client/builders/depositUnlentCollateralBuilder.d.ts +0 -8
- package/dist/sdks/long-yield-carry/src/client/builders/depositUnlentCollateralBuilder.js +0 -64
- package/dist/sdks/long-yield-carry/src/client/builders/increaseCarryPositionBuilder.d.ts +0 -8
- package/dist/sdks/long-yield-carry/src/client/builders/increaseCarryPositionBuilder.js +0 -73
- package/dist/sdks/long-yield-carry/src/client/builders/index.d.ts +0 -28
- package/dist/sdks/long-yield-carry/src/client/builders/index.js +0 -62
- package/dist/sdks/long-yield-carry/src/client/builders/mintTokenBuilder.d.ts +0 -8
- package/dist/sdks/long-yield-carry/src/client/builders/mintTokenBuilder.js +0 -95
- package/dist/sdks/long-yield-carry/src/client/builders/rebalanceTokenBuilder.d.ts +0 -11
- package/dist/sdks/long-yield-carry/src/client/builders/rebalanceTokenBuilder.js +0 -255
- package/dist/sdks/long-yield-carry/src/client/builders/rebalanceYieldingBankBuilder.d.ts +0 -8
- package/dist/sdks/long-yield-carry/src/client/builders/rebalanceYieldingBankBuilder.js +0 -75
- package/dist/sdks/long-yield-carry/src/client/builders/recollateralizeLossBuilder.d.ts +0 -12
- package/dist/sdks/long-yield-carry/src/client/builders/recollateralizeLossBuilder.js +0 -220
- package/dist/sdks/long-yield-carry/src/client/builders/refreshTokenStateBuilder.d.ts +0 -9
- package/dist/sdks/long-yield-carry/src/client/builders/refreshTokenStateBuilder.js +0 -112
- package/dist/sdks/long-yield-carry/src/client/builders/refreshTokensBuilder.d.ts +0 -9
- package/dist/sdks/long-yield-carry/src/client/builders/refreshTokensBuilder.js +0 -59
- package/dist/sdks/long-yield-carry/src/client/builders/refreshYieldingBankBuilder.d.ts +0 -8
- package/dist/sdks/long-yield-carry/src/client/builders/refreshYieldingBankBuilder.js +0 -29
- package/dist/sdks/long-yield-carry/src/client/builders/resetTokenBurnRateLimitBuilder.d.ts +0 -7
- package/dist/sdks/long-yield-carry/src/client/builders/resetTokenBurnRateLimitBuilder.js +0 -19
- package/dist/sdks/long-yield-carry/src/client/builders/setTokenCircuitBreakerBuilder.d.ts +0 -11
- package/dist/sdks/long-yield-carry/src/client/builders/setTokenCircuitBreakerBuilder.js +0 -31
- package/dist/sdks/long-yield-carry/src/client/builders/setYieldingBankCircuitBreakerBuilder.d.ts +0 -8
- package/dist/sdks/long-yield-carry/src/client/builders/setYieldingBankCircuitBreakerBuilder.js +0 -28
- package/dist/sdks/long-yield-carry/src/client/builders/updateLendingPositionConfigBuilder.d.ts +0 -10
- package/dist/sdks/long-yield-carry/src/client/builders/updateLendingPositionConfigBuilder.js +0 -30
- package/dist/sdks/long-yield-carry/src/client/builders/updateTokenConfigurationBuilder.d.ts +0 -11
- package/dist/sdks/long-yield-carry/src/client/builders/updateTokenConfigurationBuilder.js +0 -47
- package/dist/sdks/long-yield-carry/src/client/builders/updateTokenMetadataBuilder.d.ts +0 -7
- package/dist/sdks/long-yield-carry/src/client/builders/updateTokenMetadataBuilder.js +0 -24
- package/dist/sdks/long-yield-carry/src/client/builders/updateYieldingBankConfigBuilder.d.ts +0 -10
- package/dist/sdks/long-yield-carry/src/client/builders/updateYieldingBankConfigBuilder.js +0 -31
- package/dist/sdks/long-yield-carry/src/client/builders/utils.d.ts +0 -4
- package/dist/sdks/long-yield-carry/src/client/builders/utils.js +0 -20
- package/dist/sdks/long-yield-carry/src/client/client.d.ts +0 -115
- package/dist/sdks/long-yield-carry/src/client/client.js +0 -166
- package/dist/sdks/long-yield-carry/src/client/externalLiquidityResolver.d.ts +0 -13
- package/dist/sdks/long-yield-carry/src/client/externalLiquidityResolver.js +0 -34
- package/dist/sdks/long-yield-carry/src/client/index.d.ts +0 -10
- package/dist/sdks/long-yield-carry/src/client/index.js +0 -33
- package/dist/sdks/long-yield-carry/src/client/lendingPlatformClients.d.ts +0 -19
- package/dist/sdks/long-yield-carry/src/client/lendingPlatformClients.js +0 -33
- package/dist/sdks/long-yield-carry/src/client/pda.d.ts +0 -33
- package/dist/sdks/long-yield-carry/src/client/pda.js +0 -79
- package/dist/sdks/long-yield-carry/src/client/plans/collectInterest.d.ts +0 -24
- package/dist/sdks/long-yield-carry/src/client/plans/collectInterest.js +0 -150
- package/dist/sdks/long-yield-carry/src/client/plans/decreaseCarryPosition.d.ts +0 -12
- package/dist/sdks/long-yield-carry/src/client/plans/decreaseCarryPosition.js +0 -140
- package/dist/sdks/long-yield-carry/src/client/routes/collectInterest.d.ts +0 -13
- package/dist/sdks/long-yield-carry/src/client/routes/collectInterest.js +0 -39
- package/dist/sdks/long-yield-carry/src/client/transaction.d.ts +0 -41
- package/dist/sdks/long-yield-carry/src/client/transaction.js +0 -55
- package/dist/sdks/long-yield-carry/src/client/types/builders.d.ts +0 -18
- package/dist/sdks/long-yield-carry/src/client/types/builders.js +0 -2
- package/dist/sdks/long-yield-carry/src/client/types/enums.d.ts +0 -22
- package/dist/sdks/long-yield-carry/src/client/types/enums.js +0 -48
- package/dist/sdks/long-yield-carry/src/client/types/general.d.ts +0 -98
- package/dist/sdks/long-yield-carry/src/client/types/general.js +0 -2
- package/dist/sdks/long-yield-carry/src/client/types/index.d.ts +0 -6
- package/dist/sdks/long-yield-carry/src/client/types/index.js +0 -22
- package/dist/sdks/long-yield-carry/src/client/types/ix.d.ts +0 -352
- package/dist/sdks/long-yield-carry/src/client/types/ix.js +0 -2
- package/dist/sdks/long-yield-carry/src/client/types/planTypes/collectInterest.d.ts +0 -91
- package/dist/sdks/long-yield-carry/src/client/types/planTypes/collectInterest.js +0 -2
- package/dist/sdks/long-yield-carry/src/client/types/planTypes/common.d.ts +0 -28
- package/dist/sdks/long-yield-carry/src/client/types/planTypes/common.js +0 -2
- package/dist/sdks/long-yield-carry/src/client/types/planTypes/decreaseCarryPosition.d.ts +0 -128
- package/dist/sdks/long-yield-carry/src/client/types/planTypes/decreaseCarryPosition.js +0 -2
- package/dist/sdks/long-yield-carry/src/client/types/planTypes/index.d.ts +0 -3
- package/dist/sdks/long-yield-carry/src/client/types/planTypes/index.js +0 -19
- package/dist/sdks/long-yield-carry/src/client/types/tx.d.ts +0 -339
- package/dist/sdks/long-yield-carry/src/client/types/tx.js +0 -2
- package/dist/sdks/long-yield-carry/src/constants/configs/allocations.d.ts +0 -3
- package/dist/sdks/long-yield-carry/src/constants/configs/allocations.js +0 -23
- package/dist/sdks/long-yield-carry/src/constants/configs/carryTradePresets.d.ts +0 -58
- package/dist/sdks/long-yield-carry/src/constants/configs/carryTradePresets.js +0 -116
- package/dist/sdks/long-yield-carry/src/constants/configs/index.d.ts +0 -2
- package/dist/sdks/long-yield-carry/src/constants/configs/index.js +0 -18
- package/dist/sdks/long-yield-carry/src/constants/general.d.ts +0 -70
- package/dist/sdks/long-yield-carry/src/constants/general.js +0 -107
- package/dist/sdks/long-yield-carry/src/constants/index.d.ts +0 -3
- package/dist/sdks/long-yield-carry/src/constants/index.js +0 -19
- package/dist/sdks/long-yield-carry/src/constants/lycTokenMetadata.d.ts +0 -36
- package/dist/sdks/long-yield-carry/src/constants/lycTokenMetadata.js +0 -41
- package/dist/sdks/long-yield-carry/src/decoders/decodeTransaction.d.ts +0 -86
- package/dist/sdks/long-yield-carry/src/decoders/decodeTransaction.js +0 -230
- package/dist/sdks/long-yield-carry/src/decoders/discriminators.d.ts +0 -8
- package/dist/sdks/long-yield-carry/src/decoders/discriminators.js +0 -11
- package/dist/sdks/long-yield-carry/src/decoders/idlAccounts.d.ts +0 -29
- package/dist/sdks/long-yield-carry/src/decoders/idlAccounts.js +0 -57
- package/dist/sdks/long-yield-carry/src/decoders/index.d.ts +0 -6
- package/dist/sdks/long-yield-carry/src/decoders/index.js +0 -14
- package/dist/sdks/long-yield-carry/src/decoders/innerCpis.d.ts +0 -68
- package/dist/sdks/long-yield-carry/src/decoders/innerCpis.js +0 -225
- package/dist/sdks/long-yield-carry/src/decoders/lycInstructionNames.d.ts +0 -6
- package/dist/sdks/long-yield-carry/src/decoders/lycInstructionNames.js +0 -73
- package/dist/sdks/long-yield-carry/src/decoders/programIds.d.ts +0 -4
- package/dist/sdks/long-yield-carry/src/decoders/programIds.js +0 -11
- package/dist/sdks/long-yield-carry/src/decoders/solana.d.ts +0 -7
- package/dist/sdks/long-yield-carry/src/decoders/solana.js +0 -30
- package/dist/sdks/long-yield-carry/src/decoders/transactionPayload.d.ts +0 -41
- package/dist/sdks/long-yield-carry/src/decoders/transactionPayload.js +0 -6
- package/dist/sdks/long-yield-carry/src/decoders/types.d.ts +0 -58
- package/dist/sdks/long-yield-carry/src/decoders/types.js +0 -2
- package/dist/sdks/long-yield-carry/src/errors.d.ts +0 -69
- package/dist/sdks/long-yield-carry/src/errors.js +0 -183
- package/dist/sdks/long-yield-carry/src/idl/long_yield_carry.js +0 -7323
- package/dist/sdks/long-yield-carry/src/index.d.ts +0 -10
- package/dist/sdks/long-yield-carry/src/index.js +0 -25
- package/dist/sdks/long-yield-carry/src/metrics/index.d.ts +0 -1
- package/dist/sdks/long-yield-carry/src/metrics/index.js +0 -17
- package/dist/sdks/long-yield-carry/src/metrics/protocolMetrics.d.ts +0 -276
- package/dist/sdks/long-yield-carry/src/metrics/protocolMetrics.js +0 -547
- package/dist/sdks/long-yield-carry/src/models/index.d.ts +0 -3
- package/dist/sdks/long-yield-carry/src/models/index.js +0 -7
- package/dist/sdks/long-yield-carry/src/models/lycToken.d.ts +0 -156
- package/dist/sdks/long-yield-carry/src/models/lycToken.js +0 -288
- package/dist/sdks/long-yield-carry/src/models/yieldingBank.d.ts +0 -52
- package/dist/sdks/long-yield-carry/src/models/yieldingBank.js +0 -109
- package/dist/sdks/long-yield-carry/src/services/allocation/allocationService.d.ts +0 -106
- package/dist/sdks/long-yield-carry/src/services/allocation/allocationService.js +0 -589
- package/dist/sdks/long-yield-carry/src/services/allocation/index.d.ts +0 -2
- package/dist/sdks/long-yield-carry/src/services/allocation/index.js +0 -18
- package/dist/sdks/long-yield-carry/src/services/allocation/types.d.ts +0 -25
- package/dist/sdks/long-yield-carry/src/services/allocation/types.js +0 -2
- package/dist/sdks/long-yield-carry/src/services/carry/carryAllocationConfig.d.ts +0 -103
- package/dist/sdks/long-yield-carry/src/services/carry/carryAllocationConfig.js +0 -146
- package/dist/sdks/long-yield-carry/src/services/carry/index.d.ts +0 -2
- package/dist/sdks/long-yield-carry/src/services/carry/index.js +0 -18
- package/dist/sdks/long-yield-carry/src/services/carry/lycLendingPositionManager.d.ts +0 -39
- package/dist/sdks/long-yield-carry/src/services/carry/lycLendingPositionManager.js +0 -100
- package/dist/sdks/long-yield-carry/src/services/index.d.ts +0 -5
- package/dist/sdks/long-yield-carry/src/services/index.js +0 -21
- package/dist/sdks/long-yield-carry/src/services/lendingPosition/index.d.ts +0 -2
- package/dist/sdks/long-yield-carry/src/services/lendingPosition/index.js +0 -5
- package/dist/sdks/long-yield-carry/src/services/lendingPosition/lendingPositionService.d.ts +0 -88
- package/dist/sdks/long-yield-carry/src/services/lendingPosition/lendingPositionService.js +0 -229
- package/dist/sdks/long-yield-carry/src/services/rebalance/index.d.ts +0 -2
- package/dist/sdks/long-yield-carry/src/services/rebalance/index.js +0 -18
- package/dist/sdks/long-yield-carry/src/services/rebalance/token/index.d.ts +0 -1
- package/dist/sdks/long-yield-carry/src/services/rebalance/token/index.js +0 -17
- package/dist/sdks/long-yield-carry/src/services/rebalance/token/tokenRebalanceService.d.ts +0 -51
- package/dist/sdks/long-yield-carry/src/services/rebalance/token/tokenRebalanceService.js +0 -99
- package/dist/sdks/long-yield-carry/src/services/rebalance/yieldingBank/index.d.ts +0 -3
- package/dist/sdks/long-yield-carry/src/services/rebalance/yieldingBank/index.js +0 -21
- package/dist/sdks/long-yield-carry/src/services/rebalance/yieldingBank/planner.d.ts +0 -68
- package/dist/sdks/long-yield-carry/src/services/rebalance/yieldingBank/planner.js +0 -181
- package/dist/sdks/long-yield-carry/src/services/rebalance/yieldingBank/strategy.d.ts +0 -26
- package/dist/sdks/long-yield-carry/src/services/rebalance/yieldingBank/strategy.js +0 -26
- package/dist/sdks/long-yield-carry/src/services/rebalance/yieldingBank/types.d.ts +0 -40
- package/dist/sdks/long-yield-carry/src/services/rebalance/yieldingBank/types.js +0 -2
- package/dist/sdks/long-yield-carry/src/services/redemption/index.d.ts +0 -2
- package/dist/sdks/long-yield-carry/src/services/redemption/index.js +0 -5
- package/dist/sdks/long-yield-carry/src/services/redemption/redemptionService.d.ts +0 -139
- package/dist/sdks/long-yield-carry/src/services/redemption/redemptionService.js +0 -532
- package/dist/sdks/long-yield-carry/src/types/enriched.d.ts +0 -168
- package/dist/sdks/long-yield-carry/src/types/enriched.js +0 -2
- package/dist/sdks/long-yield-carry/src/types/index.d.ts +0 -1
- package/dist/sdks/long-yield-carry/src/types/index.js +0 -17
- package/dist/sdks/long-yield-carry/src/utils/cache.d.ts +0 -4
- package/dist/sdks/long-yield-carry/src/utils/cache.js +0 -10
- package/dist/sdks/long-yield-carry/src/utils/data.d.ts +0 -12
- package/dist/sdks/long-yield-carry/src/utils/data.js +0 -59
- package/dist/sdks/long-yield-carry/src/utils/enrichment.d.ts +0 -5
- package/dist/sdks/long-yield-carry/src/utils/enrichment.js +0 -244
- package/dist/sdks/long-yield-carry/src/utils/feeDripMetrics.d.ts +0 -36
- package/dist/sdks/long-yield-carry/src/utils/feeDripMetrics.js +0 -93
- package/dist/sdks/long-yield-carry/src/utils/general.d.ts +0 -28
- package/dist/sdks/long-yield-carry/src/utils/general.js +0 -47
- package/dist/sdks/long-yield-carry/src/utils/index.d.ts +0 -13
- package/dist/sdks/long-yield-carry/src/utils/index.js +0 -29
- package/dist/sdks/long-yield-carry/src/utils/ix.d.ts +0 -83
- package/dist/sdks/long-yield-carry/src/utils/ix.js +0 -165
- package/dist/sdks/long-yield-carry/src/utils/lendingPosition.d.ts +0 -68
- package/dist/sdks/long-yield-carry/src/utils/lendingPosition.js +0 -105
- package/dist/sdks/long-yield-carry/src/utils/lookupTables.d.ts +0 -55
- package/dist/sdks/long-yield-carry/src/utils/lookupTables.js +0 -216
- package/dist/sdks/long-yield-carry/src/utils/lycData.d.ts +0 -66
- package/dist/sdks/long-yield-carry/src/utils/lycData.js +0 -211
- package/dist/sdks/long-yield-carry/src/utils/timelock.d.ts +0 -19
- package/dist/sdks/long-yield-carry/src/utils/timelock.js +0 -37
- package/dist/sdks/long-yield-carry/src/utils/tokenFeeMath.d.ts +0 -11
- package/dist/sdks/long-yield-carry/src/utils/tokenFeeMath.js +0 -24
- package/dist/sdks/long-yield-carry/src/utils/transactions.d.ts +0 -20
- package/dist/sdks/long-yield-carry/src/utils/transactions.js +0 -72
- package/dist/sdks/long-yield-carry/src/utils/yieldingBank.d.ts +0 -24
- package/dist/sdks/long-yield-carry/src/utils/yieldingBank.js +0 -36
- package/dist/shared/common/src/constants/accountMetas.d.ts +0 -3
- package/dist/shared/common/src/constants/accountMetas.js +0 -9
- package/dist/shared/common/src/constants/general.d.ts +0 -21
- package/dist/shared/common/src/constants/general.js +0 -30
- package/dist/shared/common/src/constants/generated/cpi.d.ts +0 -23
- package/dist/shared/common/src/constants/generated/cpi.js +0 -28
- package/dist/shared/common/src/constants/generated/index.d.ts +0 -1
- package/dist/shared/common/src/constants/generated/index.js +0 -17
- package/dist/shared/common/src/constants/index.d.ts +0 -3
- package/dist/shared/common/src/constants/index.js +0 -19
- package/dist/shared/common/src/index.d.ts +0 -4
- package/dist/shared/common/src/index.js +0 -20
- package/dist/shared/common/src/services/baseAccountClient.d.ts +0 -22
- package/dist/shared/common/src/services/baseAccountClient.js +0 -38
- package/dist/shared/common/src/services/baseIxBuilderService.d.ts +0 -27
- package/dist/shared/common/src/services/baseIxBuilderService.js +0 -48
- package/dist/shared/common/src/services/dataCache.d.ts +0 -41
- package/dist/shared/common/src/services/dataCache.js +0 -130
- package/dist/shared/common/src/services/index.d.ts +0 -8
- package/dist/shared/common/src/services/index.js +0 -24
- package/dist/shared/common/src/services/lutManager.d.ts +0 -31
- package/dist/shared/common/src/services/lutManager.js +0 -133
- package/dist/shared/common/src/services/mints/defaults.d.ts +0 -2
- package/dist/shared/common/src/services/mints/defaults.js +0 -152
- package/dist/shared/common/src/services/mints/index.d.ts +0 -4
- package/dist/shared/common/src/services/mints/index.js +0 -20
- package/dist/shared/common/src/services/mints/registry.d.ts +0 -70
- package/dist/shared/common/src/services/mints/registry.js +0 -117
- package/dist/shared/common/src/services/mints/symbols.d.ts +0 -6
- package/dist/shared/common/src/services/mints/symbols.js +0 -13
- package/dist/shared/common/src/services/mints/types.d.ts +0 -30
- package/dist/shared/common/src/services/mints/types.js +0 -2
- package/dist/shared/common/src/services/swap/index.d.ts +0 -4
- package/dist/shared/common/src/services/swap/index.js +0 -20
- package/dist/shared/common/src/services/swap/routableSwapClient.d.ts +0 -36
- package/dist/shared/common/src/services/swap/routableSwapClient.js +0 -2
- package/dist/shared/common/src/services/swap/swapClientBase.d.ts +0 -45
- package/dist/shared/common/src/services/swap/swapClientBase.js +0 -2
- package/dist/shared/common/src/services/swap/swapRouting.d.ts +0 -13
- package/dist/shared/common/src/services/swap/swapRouting.js +0 -28
- package/dist/shared/common/src/services/swap/types.d.ts +0 -77
- package/dist/shared/common/src/services/swap/types.js +0 -2
- package/dist/shared/common/src/services/token/index.d.ts +0 -2
- package/dist/shared/common/src/services/token/index.js +0 -18
- package/dist/shared/common/src/services/token/tokenProtocolClientBase.d.ts +0 -51
- package/dist/shared/common/src/services/token/tokenProtocolClientBase.js +0 -2
- package/dist/shared/common/src/services/token/types.d.ts +0 -19
- package/dist/shared/common/src/services/token/types.js +0 -2
- package/dist/shared/common/src/services/transactionSender.d.ts +0 -24
- package/dist/shared/common/src/services/transactionSender.js +0 -30
- package/dist/shared/common/src/types/cpi.d.ts +0 -34
- package/dist/shared/common/src/types/cpi.js +0 -8
- package/dist/shared/common/src/types/enums.d.ts +0 -59
- package/dist/shared/common/src/types/enums.js +0 -122
- package/dist/shared/common/src/types/general.d.ts +0 -38
- package/dist/shared/common/src/types/general.js +0 -2
- package/dist/shared/common/src/types/index.d.ts +0 -4
- package/dist/shared/common/src/types/index.js +0 -20
- package/dist/shared/common/src/types/solana.d.ts +0 -24
- package/dist/shared/common/src/types/solana.js +0 -2
- package/dist/shared/common/src/utils/accounts/index.d.ts +0 -5
- package/dist/shared/common/src/utils/accounts/index.js +0 -21
- package/dist/shared/common/src/utils/accounts/meta.d.ts +0 -21
- package/dist/shared/common/src/utils/accounts/meta.js +0 -27
- package/dist/shared/common/src/utils/accounts/pda.d.ts +0 -2
- package/dist/shared/common/src/utils/accounts/pda.js +0 -17
- package/dist/shared/common/src/utils/accounts/roles.d.ts +0 -26
- package/dist/shared/common/src/utils/accounts/roles.js +0 -54
- package/dist/shared/common/src/utils/accounts/rpc.d.ts +0 -8
- package/dist/shared/common/src/utils/accounts/rpc.js +0 -30
- package/dist/shared/common/src/utils/accounts/splBalances.d.ts +0 -15
- package/dist/shared/common/src/utils/accounts/splBalances.js +0 -52
- package/dist/shared/common/src/utils/anchor.d.ts +0 -17
- package/dist/shared/common/src/utils/anchor.js +0 -29
- package/dist/shared/common/src/utils/asyncConcurrency.d.ts +0 -5
- package/dist/shared/common/src/utils/asyncConcurrency.js +0 -28
- package/dist/shared/common/src/utils/compat.d.ts +0 -46
- package/dist/shared/common/src/utils/compat.js +0 -72
- package/dist/shared/common/src/utils/cpi/args.d.ts +0 -69
- package/dist/shared/common/src/utils/cpi/args.js +0 -100
- package/dist/shared/common/src/utils/cpi/index.d.ts +0 -2
- package/dist/shared/common/src/utils/cpi/index.js +0 -18
- package/dist/shared/common/src/utils/cpi/refs.d.ts +0 -122
- package/dist/shared/common/src/utils/cpi/refs.js +0 -234
- package/dist/shared/common/src/utils/data.d.ts +0 -20
- package/dist/shared/common/src/utils/data.js +0 -27
- package/dist/shared/common/src/utils/general.d.ts +0 -24
- package/dist/shared/common/src/utils/general.js +0 -95
- package/dist/shared/common/src/utils/index.d.ts +0 -22
- package/dist/shared/common/src/utils/index.js +0 -38
- package/dist/shared/common/src/utils/instruction.d.ts +0 -74
- package/dist/shared/common/src/utils/instruction.js +0 -147
- package/dist/shared/common/src/utils/jito.d.ts +0 -113
- package/dist/shared/common/src/utils/jito.js +0 -178
- package/dist/shared/common/src/utils/json.d.ts +0 -5
- package/dist/shared/common/src/utils/json.js +0 -25
- package/dist/shared/common/src/utils/jsonRpcFetch.d.ts +0 -21
- package/dist/shared/common/src/utils/jsonRpcFetch.js +0 -134
- package/dist/shared/common/src/utils/metadata.d.ts +0 -107
- package/dist/shared/common/src/utils/metadata.js +0 -194
- package/dist/shared/common/src/utils/numbers.d.ts +0 -72
- package/dist/shared/common/src/utils/numbers.js +0 -193
- package/dist/shared/common/src/utils/priorityFee.d.ts +0 -18
- package/dist/shared/common/src/utils/priorityFee.js +0 -63
- package/dist/shared/common/src/utils/retry.d.ts +0 -20
- package/dist/shared/common/src/utils/retry.js +0 -69
- package/dist/shared/common/src/utils/rpc.d.ts +0 -40
- package/dist/shared/common/src/utils/rpc.js +0 -130
- package/dist/shared/common/src/utils/solana.d.ts +0 -23
- package/dist/shared/common/src/utils/solana.js +0 -61
- package/dist/shared/common/src/utils/timeSeries.d.ts +0 -18
- package/dist/shared/common/src/utils/timeSeries.js +0 -40
- package/dist/shared/common/src/utils/token.d.ts +0 -33
- package/dist/shared/common/src/utils/token.js +0 -82
- package/dist/shared/common/src/utils/transaction.d.ts +0 -154
- package/dist/shared/common/src/utils/transaction.js +0 -585
- package/dist/shared/common/src/utils/transactionSplitter.d.ts +0 -85
- package/dist/shared/common/src/utils/transactionSplitter.js +0 -127
- package/dist/shared/common/src/utils/txAccountCoverage.d.ts +0 -49
- package/dist/shared/common/src/utils/txAccountCoverage.js +0 -122
- package/dist/shared/jupiter-helpers/src/api.d.ts +0 -59
- package/dist/shared/jupiter-helpers/src/api.js +0 -130
- package/dist/shared/jupiter-helpers/src/client.d.ts +0 -79
- package/dist/shared/jupiter-helpers/src/client.js +0 -173
- package/dist/shared/jupiter-helpers/src/constants.d.ts +0 -35
- package/dist/shared/jupiter-helpers/src/constants.js +0 -38
- package/dist/shared/jupiter-helpers/src/extract.d.ts +0 -30
- package/dist/shared/jupiter-helpers/src/extract.js +0 -57
- package/dist/shared/jupiter-helpers/src/index.d.ts +0 -5
- package/dist/shared/jupiter-helpers/src/index.js +0 -21
- package/dist/shared/jupiter-helpers/src/routePreInstructions.d.ts +0 -19
- package/dist/shared/jupiter-helpers/src/routePreInstructions.js +0 -61
- package/dist/shared/jupiter-helpers/src/sizeExactInForMinOutput.d.ts +0 -70
- package/dist/shared/jupiter-helpers/src/sizeExactInForMinOutput.js +0 -95
- package/dist/shared/jupiter-helpers/src/types.d.ts +0 -66
- package/dist/shared/jupiter-helpers/src/types.js +0 -2
- package/dist/shared/lending-platforms/src/constants/cache.d.ts +0 -8
- package/dist/shared/lending-platforms/src/constants/cache.js +0 -11
- package/dist/shared/lending-platforms/src/constants/index.d.ts +0 -3
- package/dist/shared/lending-platforms/src/constants/index.js +0 -19
- package/dist/shared/lending-platforms/src/constants/kamino.d.ts +0 -7
- package/dist/shared/lending-platforms/src/constants/kamino.js +0 -83
- package/dist/shared/lending-platforms/src/constants/lendingPosition.d.ts +0 -7
- package/dist/shared/lending-platforms/src/constants/lendingPosition.js +0 -10
- package/dist/shared/lending-platforms/src/data/accounts/index.d.ts +0 -2
- package/dist/shared/lending-platforms/src/data/accounts/index.js +0 -18
- package/dist/shared/lending-platforms/src/data/accounts/kamino.d.ts +0 -42
- package/dist/shared/lending-platforms/src/data/accounts/kamino.js +0 -104
- package/dist/shared/lending-platforms/src/data/accounts/lpAccountsBase.d.ts +0 -7
- package/dist/shared/lending-platforms/src/data/accounts/lpAccountsBase.js +0 -9
- package/dist/shared/lending-platforms/src/data/incentive/incentiveBase.d.ts +0 -35
- package/dist/shared/lending-platforms/src/data/incentive/incentiveBase.js +0 -26
- package/dist/shared/lending-platforms/src/data/incentive/index.d.ts +0 -2
- package/dist/shared/lending-platforms/src/data/incentive/index.js +0 -18
- package/dist/shared/lending-platforms/src/data/incentive/kamino.d.ts +0 -55
- package/dist/shared/lending-platforms/src/data/incentive/kamino.js +0 -101
- package/dist/shared/lending-platforms/src/data/index.d.ts +0 -6
- package/dist/shared/lending-platforms/src/data/index.js +0 -22
- package/dist/shared/lending-platforms/src/data/instructions/index.d.ts +0 -3
- package/dist/shared/lending-platforms/src/data/instructions/index.js +0 -19
- package/dist/shared/lending-platforms/src/data/instructions/kamino.d.ts +0 -55
- package/dist/shared/lending-platforms/src/data/instructions/kamino.js +0 -630
- package/dist/shared/lending-platforms/src/data/instructions/lpInstructionsBase.d.ts +0 -175
- package/dist/shared/lending-platforms/src/data/instructions/lpInstructionsBase.js +0 -192
- package/dist/shared/lending-platforms/src/data/instructions/types.d.ts +0 -7
- package/dist/shared/lending-platforms/src/data/instructions/types.js +0 -2
- package/dist/shared/lending-platforms/src/data/platform/index.d.ts +0 -2
- package/dist/shared/lending-platforms/src/data/platform/index.js +0 -18
- package/dist/shared/lending-platforms/src/data/platform/kamino.d.ts +0 -59
- package/dist/shared/lending-platforms/src/data/platform/kamino.js +0 -206
- package/dist/shared/lending-platforms/src/data/platform/lpDataBase.d.ts +0 -35
- package/dist/shared/lending-platforms/src/data/platform/lpDataBase.js +0 -31
- package/dist/shared/lending-platforms/src/data/reserve/index.d.ts +0 -2
- package/dist/shared/lending-platforms/src/data/reserve/index.js +0 -18
- package/dist/shared/lending-platforms/src/data/reserve/kamino.d.ts +0 -45
- package/dist/shared/lending-platforms/src/data/reserve/kamino.js +0 -141
- package/dist/shared/lending-platforms/src/data/reserve/reserveBase.d.ts +0 -114
- package/dist/shared/lending-platforms/src/data/reserve/reserveBase.js +0 -125
- package/dist/shared/lending-platforms/src/data/userPosition/index.d.ts +0 -2
- package/dist/shared/lending-platforms/src/data/userPosition/index.js +0 -18
- package/dist/shared/lending-platforms/src/data/userPosition/kamino.d.ts +0 -15
- package/dist/shared/lending-platforms/src/data/userPosition/kamino.js +0 -45
- package/dist/shared/lending-platforms/src/data/userPosition/userPositionBase.d.ts +0 -50
- package/dist/shared/lending-platforms/src/data/userPosition/userPositionBase.js +0 -63
- package/dist/shared/lending-platforms/src/index.d.ts +0 -5
- package/dist/shared/lending-platforms/src/index.js +0 -21
- package/dist/shared/lending-platforms/src/services/client/index.d.ts +0 -2
- package/dist/shared/lending-platforms/src/services/client/index.js +0 -18
- package/dist/shared/lending-platforms/src/services/client/kamino.d.ts +0 -53
- package/dist/shared/lending-platforms/src/services/client/kamino.js +0 -142
- package/dist/shared/lending-platforms/src/services/client/lpClientBase.d.ts +0 -66
- package/dist/shared/lending-platforms/src/services/client/lpClientBase.js +0 -19
- package/dist/shared/lending-platforms/src/services/flashLoan/flashLoanBase.d.ts +0 -49
- package/dist/shared/lending-platforms/src/services/flashLoan/flashLoanBase.js +0 -16
- package/dist/shared/lending-platforms/src/services/flashLoan/index.d.ts +0 -2
- package/dist/shared/lending-platforms/src/services/flashLoan/index.js +0 -18
- package/dist/shared/lending-platforms/src/services/flashLoan/kamino.d.ts +0 -11
- package/dist/shared/lending-platforms/src/services/flashLoan/kamino.js +0 -85
- package/dist/shared/lending-platforms/src/services/index.d.ts +0 -5
- package/dist/shared/lending-platforms/src/services/index.js +0 -21
- package/dist/shared/lending-platforms/src/services/lendingPosition/index.d.ts +0 -2
- package/dist/shared/lending-platforms/src/services/lendingPosition/index.js +0 -18
- package/dist/shared/lending-platforms/src/services/lendingPosition/lendingPositionManager.d.ts +0 -117
- package/dist/shared/lending-platforms/src/services/lendingPosition/lendingPositionManager.js +0 -342
- package/dist/shared/lending-platforms/src/services/lendingPosition/types.d.ts +0 -40
- package/dist/shared/lending-platforms/src/services/lendingPosition/types.js +0 -2
- package/dist/shared/lending-platforms/src/services/leverage/index.d.ts +0 -2
- package/dist/shared/lending-platforms/src/services/leverage/index.js +0 -18
- package/dist/shared/lending-platforms/src/services/leverage/leverageService.d.ts +0 -104
- package/dist/shared/lending-platforms/src/services/leverage/leverageService.js +0 -437
- package/dist/shared/lending-platforms/src/services/leverage/types.d.ts +0 -261
- package/dist/shared/lending-platforms/src/services/leverage/types.js +0 -2
- package/dist/shared/lending-platforms/src/services/reservesManager.d.ts +0 -53
- package/dist/shared/lending-platforms/src/services/reservesManager.js +0 -112
- package/dist/shared/lending-platforms/src/types/general.d.ts +0 -37
- package/dist/shared/lending-platforms/src/types/general.js +0 -8
- package/dist/shared/lending-platforms/src/types/index.d.ts +0 -2
- package/dist/shared/lending-platforms/src/types/index.js +0 -18
- package/dist/shared/lending-platforms/src/types/kamino.d.ts +0 -10
- package/dist/shared/lending-platforms/src/types/kamino.js +0 -2
- package/dist/shared/lending-platforms/src/utils/accounts.d.ts +0 -16
- package/dist/shared/lending-platforms/src/utils/accounts.js +0 -36
- package/dist/shared/lending-platforms/src/utils/cache.d.ts +0 -3
- package/dist/shared/lending-platforms/src/utils/cache.js +0 -11
- package/dist/shared/lending-platforms/src/utils/index.d.ts +0 -6
- package/dist/shared/lending-platforms/src/utils/index.js +0 -22
- package/dist/shared/lending-platforms/src/utils/kamino.d.ts +0 -87
- package/dist/shared/lending-platforms/src/utils/kamino.js +0 -190
- package/dist/shared/lending-platforms/src/utils/lendingPlatform.d.ts +0 -6
- package/dist/shared/lending-platforms/src/utils/lendingPlatform.js +0 -16
- package/dist/shared/lending-platforms/src/utils/math.d.ts +0 -47
- package/dist/shared/lending-platforms/src/utils/math.js +0 -123
- package/dist/shared/lending-platforms/src/utils/scope.d.ts +0 -38
- package/dist/shared/lending-platforms/src/utils/scope.js +0 -144
- package/dist/shared/oracle-service/src/constants/index.d.ts +0 -3
- package/dist/shared/oracle-service/src/constants/index.js +0 -19
- package/dist/shared/oracle-service/src/constants/pyth.d.ts +0 -7
- package/dist/shared/oracle-service/src/constants/pyth.js +0 -71
- package/dist/shared/oracle-service/src/constants/splStake.d.ts +0 -2
- package/dist/shared/oracle-service/src/constants/splStake.js +0 -6
- package/dist/shared/oracle-service/src/constants/switchboard.d.ts +0 -7
- package/dist/shared/oracle-service/src/constants/switchboard.js +0 -10
- package/dist/shared/oracle-service/src/feeds/custom.d.ts +0 -30
- package/dist/shared/oracle-service/src/feeds/custom.js +0 -56
- package/dist/shared/oracle-service/src/feeds/jupiter.d.ts +0 -7
- package/dist/shared/oracle-service/src/feeds/jupiter.js +0 -43
- package/dist/shared/oracle-service/src/feeds/priceBase.d.ts +0 -13
- package/dist/shared/oracle-service/src/feeds/priceBase.js +0 -25
- package/dist/shared/oracle-service/src/feeds/pyth.d.ts +0 -8
- package/dist/shared/oracle-service/src/feeds/pyth.js +0 -59
- package/dist/shared/oracle-service/src/feeds/splStake.d.ts +0 -26
- package/dist/shared/oracle-service/src/feeds/splStake.js +0 -99
- package/dist/shared/oracle-service/src/feeds/switchboard.d.ts +0 -6
- package/dist/shared/oracle-service/src/feeds/switchboard.js +0 -11
- package/dist/shared/oracle-service/src/index.d.ts +0 -5
- package/dist/shared/oracle-service/src/index.js +0 -26
- package/dist/shared/oracle-service/src/oracle.d.ts +0 -22
- package/dist/shared/oracle-service/src/oracle.js +0 -104
- package/dist/shared/oracle-service/src/types.d.ts +0 -4
- package/dist/shared/oracle-service/src/types.js +0 -2
- package/dist/shared/oracle-service/src/utils/general.d.ts +0 -20
- package/dist/shared/oracle-service/src/utils/general.js +0 -65
- package/dist/shared/oracle-service/src/utils/index.d.ts +0 -1
- package/dist/shared/oracle-service/src/utils/index.js +0 -17
- package/dist/shared/perena-helpers/src/accounts.d.ts +0 -7
- package/dist/shared/perena-helpers/src/accounts.js +0 -12
- package/dist/shared/perena-helpers/src/client.d.ts +0 -299
- package/dist/shared/perena-helpers/src/client.js +0 -680
- package/dist/shared/perena-helpers/src/constants.d.ts +0 -5
- package/dist/shared/perena-helpers/src/constants.js +0 -8
- package/dist/shared/perena-helpers/src/cpi/burn.d.ts +0 -27
- package/dist/shared/perena-helpers/src/cpi/burn.js +0 -22
- package/dist/shared/perena-helpers/src/cpi/index.d.ts +0 -3
- package/dist/shared/perena-helpers/src/cpi/index.js +0 -19
- package/dist/shared/perena-helpers/src/cpi/mint.d.ts +0 -27
- package/dist/shared/perena-helpers/src/cpi/mint.js +0 -22
- package/dist/shared/perena-helpers/src/cpi/requestUnstake.d.ts +0 -19
- package/dist/shared/perena-helpers/src/cpi/requestUnstake.js +0 -16
- package/dist/shared/perena-helpers/src/index.d.ts +0 -5
- package/dist/shared/perena-helpers/src/index.js +0 -21
- package/dist/shared/perena-helpers/src/utils.d.ts +0 -9
- package/dist/shared/perena-helpers/src/utils.js +0 -54
- package/dist/shared/swap-aggregator/src/aggSwapClient.d.ts +0 -71
- package/dist/shared/swap-aggregator/src/aggSwapClient.js +0 -103
- package/dist/shared/swap-aggregator/src/index.d.ts +0 -1
- package/dist/shared/swap-aggregator/src/index.js +0 -17
- package/docs/launchingToken.md +0 -57
- package/scripts/asyncBurn.ts +0 -155
- package/scripts/burnToken.ts +0 -120
- package/scripts/claimIncentives.ts +0 -125
- package/scripts/closeCpiPlans.ts +0 -113
- package/scripts/collectInterest.ts +0 -194
- package/scripts/collectProtocolFees.ts +0 -144
- package/scripts/computeOptimalAllocations.ts +0 -117
- package/scripts/createToken.ts +0 -100
- package/scripts/createTokenLendingPosition.ts +0 -204
- package/scripts/createYieldingBank.ts +0 -91
- package/scripts/decreaseCarryPositions.ts +0 -359
- package/scripts/depositUnlentCollateral.ts +0 -106
- package/scripts/emergency/deleverageAll.ts +0 -287
- package/scripts/emergency/triggerCircuitBreaker.ts +0 -87
- package/scripts/env.ts +0 -4
- package/scripts/findTxs.ts +0 -169
- package/scripts/increaseCarryPositions.ts +0 -134
- package/scripts/inspect/format.ts +0 -576
- package/scripts/inspect.ts +0 -147
- package/scripts/localUtils.ts +0 -249
- package/scripts/mintToken.ts +0 -126
- package/scripts/processAsyncBurns.ts +0 -89
- package/scripts/rebalanceToken.ts +0 -269
- package/scripts/rebalanceYieldingBank.ts +0 -183
- package/scripts/recollateralizeLoss.ts +0 -79
- package/scripts/refresh.ts +0 -156
- package/scripts/updateFees.ts +0 -486
- package/scripts/updateGeneralLut.ts +0 -36
- package/scripts/updateLendingPositionConfig.ts +0 -172
- package/scripts/updateTokenLuts.ts +0 -36
- package/scripts/updateTokenMetadata.ts +0 -199
- package/scripts/updateYieldingBankConfig.ts +0 -100
- package/scripts/withdrawUnlentCollateral.ts +0 -178
- package/src/client/account.ts +0 -503
- package/src/client/builders/args.ts +0 -381
- package/src/client/builders/asyncBurnBuilder.ts +0 -305
- package/src/client/builders/base.ts +0 -303
- package/src/client/builders/burnTokenBuilder.ts +0 -258
- package/src/client/builders/claimIncentivesBuilder.ts +0 -211
- package/src/client/builders/collectFeesBuilder.ts +0 -52
- package/src/client/builders/collectInterestBuilder.ts +0 -165
- package/src/client/builders/createCpiPlanBuilder.ts +0 -21
- package/src/client/builders/createTokenBuilder.ts +0 -73
- package/src/client/builders/createTokenLendingPositionBuilder.ts +0 -219
- package/src/client/builders/createYieldingBankAllocationBuilder.ts +0 -32
- package/src/client/builders/createYieldingBankBuilder.ts +0 -39
- package/src/client/builders/decreaseCarryPositionBuilder.ts +0 -162
- package/src/client/builders/depositUnlentCollateralBuilder.ts +0 -95
- package/src/client/builders/increaseCarryPositionBuilder.ts +0 -105
- package/src/client/builders/index.ts +0 -37
- package/src/client/builders/mintTokenBuilder.ts +0 -137
- package/src/client/builders/rebalanceTokenBuilder.ts +0 -356
- package/src/client/builders/rebalanceYieldingBankBuilder.ts +0 -109
- package/src/client/builders/recollateralizeLossBuilder.ts +0 -367
- package/src/client/builders/refreshTokenStateBuilder.ts +0 -153
- package/src/client/builders/refreshTokensBuilder.ts +0 -82
- package/src/client/builders/refreshYieldingBankBuilder.ts +0 -42
- package/src/client/builders/resetTokenBurnRateLimitBuilder.ts +0 -21
- package/src/client/builders/setTokenCircuitBreakerBuilder.ts +0 -40
- package/src/client/builders/setYieldingBankCircuitBreakerBuilder.ts +0 -37
- package/src/client/builders/updateLendingPositionConfigBuilder.ts +0 -33
- package/src/client/builders/updateTokenConfigurationBuilder.ts +0 -50
- package/src/client/builders/updateTokenMetadataBuilder.ts +0 -24
- package/src/client/builders/updateYieldingBankConfigBuilder.ts +0 -32
- package/src/client/builders/utils.ts +0 -26
- package/src/client/client.ts +0 -264
- package/src/client/externalLiquidityResolver.ts +0 -54
- package/src/client/index.ts +0 -20
- package/src/client/lendingPlatformClients.ts +0 -50
- package/src/client/pda.ts +0 -102
- package/src/client/plans/collectInterest.ts +0 -207
- package/src/client/plans/decreaseCarryPosition.ts +0 -226
- package/src/client/routes/collectInterest.ts +0 -56
- package/src/client/transaction.ts +0 -106
- package/src/client/types/builders.ts +0 -19
- package/src/client/types/enums.ts +0 -47
- package/src/client/types/general.ts +0 -117
- package/src/client/types/index.ts +0 -6
- package/src/client/types/ix.ts +0 -452
- package/src/client/types/planTypes/collectInterest.ts +0 -97
- package/src/client/types/planTypes/common.ts +0 -31
- package/src/client/types/planTypes/decreaseCarryPosition.ts +0 -134
- package/src/client/types/planTypes/index.ts +0 -3
- package/src/client/types/tx.ts +0 -409
- package/src/constants/configs/allocations.ts +0 -30
- package/src/constants/configs/carryTradePresets.ts +0 -164
- package/src/constants/configs/index.ts +0 -2
- package/src/constants/general.ts +0 -141
- package/src/constants/index.ts +0 -3
- package/src/constants/lycTokenMetadata.ts +0 -52
- package/src/decoders/decodeTransaction.ts +0 -319
- package/src/decoders/discriminators.ts +0 -10
- package/src/decoders/idlAccounts.ts +0 -75
- package/src/decoders/index.ts +0 -15
- package/src/decoders/innerCpis.ts +0 -262
- package/src/decoders/lycInstructionNames.ts +0 -73
- package/src/decoders/programIds.ts +0 -12
- package/src/decoders/solana.ts +0 -25
- package/src/decoders/transactionPayload.ts +0 -41
- package/src/decoders/types.ts +0 -60
- package/src/errors.ts +0 -195
- package/src/idl/long_yield_carry.ts +0 -14648
- package/src/index.ts +0 -10
- package/src/metrics/index.ts +0 -1
- package/src/metrics/protocolMetrics.ts +0 -976
- package/src/models/index.ts +0 -9
- package/src/models/lycToken.ts +0 -380
- package/src/models/yieldingBank.ts +0 -127
- package/src/services/allocation/allocationService.ts +0 -823
- package/src/services/allocation/index.ts +0 -2
- package/src/services/allocation/types.ts +0 -27
- package/src/services/carry/carryAllocationConfig.ts +0 -266
- package/src/services/carry/index.ts +0 -2
- package/src/services/carry/lycLendingPositionManager.ts +0 -167
- package/src/services/index.ts +0 -5
- package/src/services/lendingPosition/index.ts +0 -5
- package/src/services/lendingPosition/lendingPositionService.ts +0 -328
- package/src/services/rebalance/index.ts +0 -2
- package/src/services/rebalance/token/index.ts +0 -1
- package/src/services/rebalance/token/tokenRebalanceService.ts +0 -142
- package/src/services/rebalance/yieldingBank/index.ts +0 -3
- package/src/services/rebalance/yieldingBank/planner.ts +0 -215
- package/src/services/rebalance/yieldingBank/strategy.ts +0 -41
- package/src/services/rebalance/yieldingBank/types.ts +0 -41
- package/src/services/redemption/index.ts +0 -9
- package/src/services/redemption/redemptionService.ts +0 -758
- package/src/types/enriched.ts +0 -187
- package/src/types/index.ts +0 -1
- package/src/utils/cache.ts +0 -12
- package/src/utils/data.ts +0 -65
- package/src/utils/enrichment.ts +0 -330
- package/src/utils/feeDripMetrics.ts +0 -146
- package/src/utils/general.ts +0 -54
- package/src/utils/index.ts +0 -13
- package/src/utils/ix.ts +0 -227
- package/src/utils/lendingPosition.ts +0 -221
- package/src/utils/lookupTables.ts +0 -309
- package/src/utils/lycData.ts +0 -321
- package/src/utils/timelock.ts +0 -63
- package/src/utils/tokenFeeMath.ts +0 -25
- package/src/utils/transactions.ts +0 -109
- package/src/utils/yieldingBank.ts +0 -38
- package/tsconfig.json +0 -11
|
@@ -1,35 +0,0 @@
|
|
|
1
|
-
import { type Address, type Rpc, type SolanaRpcApi } from "@solana/kit";
|
|
2
|
-
import { ReserveBase, UserPositionBase } from "..";
|
|
3
|
-
import { DataCache, CacheTtlConfig } from "common";
|
|
4
|
-
import { LendingPlatform } from "../../types";
|
|
5
|
-
/**
|
|
6
|
-
* Abstract base class for fetching and caching lending platform data.
|
|
7
|
-
* Provides a unified interface for accessing markets, reserves, and user positions
|
|
8
|
-
* across different lending protocols with built-in TTL-based caching.
|
|
9
|
-
*/
|
|
10
|
-
export declare abstract class LendingPlatformData {
|
|
11
|
-
protected rpc: Rpc<SolanaRpcApi>;
|
|
12
|
-
protected cache: DataCache;
|
|
13
|
-
poolCatKey: string;
|
|
14
|
-
reserveCatKey: string;
|
|
15
|
-
userAccountCatKey: string;
|
|
16
|
-
constructor(rpcUrl: string, cacheTtlConfig?: CacheTtlConfig, rpcUrls?: string[]);
|
|
17
|
-
/** Returns the platform identifier for this data provider */
|
|
18
|
-
abstract platform(): LendingPlatform;
|
|
19
|
-
/** Loads and caches data for the specified lending pools/markets */
|
|
20
|
-
abstract load(pools: Address[]): Promise<void>;
|
|
21
|
-
clearCache(): void;
|
|
22
|
-
clearCacheEntry(category: string, id: string): void;
|
|
23
|
-
/** Returns the current slot, cached to reduce RPC calls */
|
|
24
|
-
getSlot(): Promise<bigint>;
|
|
25
|
-
/** Fetches a single user position by address if it exists */
|
|
26
|
-
abstract maybeFetchUserPositionInPool(pool: Address, userPosition: Address): Promise<UserPositionBase | null>;
|
|
27
|
-
/** Fetches multiple user positions by their addresses */
|
|
28
|
-
abstract fetchUserPositionsInPool(pool: Address, userPositions: Address[]): Promise<UserPositionBase[]>;
|
|
29
|
-
/** Fetches all positions owned by a user in a specific pool */
|
|
30
|
-
abstract fetchAllUserPositionsForUserInPool(pool: Address, user: Address): Promise<UserPositionBase[]>;
|
|
31
|
-
/** Fetches reserve data by reserve address */
|
|
32
|
-
abstract fetchReserve(pool: Address, reserve: Address): Promise<ReserveBase | null>;
|
|
33
|
-
/** Fetches reserve data by the underlying token mint */
|
|
34
|
-
abstract fetchReserveByMint(pool: Address, mint: Address): Promise<ReserveBase | null>;
|
|
35
|
-
}
|
|
@@ -1,31 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.LendingPlatformData = void 0;
|
|
4
|
-
const common_1 = require("common");
|
|
5
|
-
const cache_1 = require("../../constants/cache");
|
|
6
|
-
/**
|
|
7
|
-
* Abstract base class for fetching and caching lending platform data.
|
|
8
|
-
* Provides a unified interface for accessing markets, reserves, and user positions
|
|
9
|
-
* across different lending protocols with built-in TTL-based caching.
|
|
10
|
-
*/
|
|
11
|
-
class LendingPlatformData {
|
|
12
|
-
constructor(rpcUrl, cacheTtlConfig, rpcUrls = [rpcUrl]) {
|
|
13
|
-
this.poolCatKey = cache_1.LENDING_PLATFORM_DATA_CACHE_CATEGORY_POOL;
|
|
14
|
-
this.reserveCatKey = cache_1.LENDING_PLATFORM_DATA_CACHE_CATEGORY_RESERVE;
|
|
15
|
-
this.userAccountCatKey = cache_1.LENDING_PLATFORM_DATA_CACHE_CATEGORY_USER_ACCOUNT;
|
|
16
|
-
this.rpc = (0, common_1.createRpcWithFailover)(rpcUrls);
|
|
17
|
-
this.cache = new common_1.DataCache(cacheTtlConfig);
|
|
18
|
-
}
|
|
19
|
-
clearCache() {
|
|
20
|
-
this.cache.clearAllCache();
|
|
21
|
-
}
|
|
22
|
-
clearCacheEntry(category, id) {
|
|
23
|
-
this.cache.clearCacheEntry(category, id);
|
|
24
|
-
}
|
|
25
|
-
/** Returns the current slot, cached to reduce RPC calls */
|
|
26
|
-
async getSlot() {
|
|
27
|
-
const { data } = await this.cache.getDataOrThrow(async () => await (0, common_1.getSlot)(this.rpc), "slot", "slot");
|
|
28
|
-
return data;
|
|
29
|
-
}
|
|
30
|
-
}
|
|
31
|
-
exports.LendingPlatformData = LendingPlatformData;
|
|
@@ -1,18 +0,0 @@
|
|
|
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("./reserveBase"), exports);
|
|
@@ -1,45 +0,0 @@
|
|
|
1
|
-
import { Address } from "@solana/kit";
|
|
2
|
-
import { KaminoMarket, KaminoReserve, KlendPrices } from "@kamino-finance/klend-sdk";
|
|
3
|
-
import { ReserveBase } from "./reserveBase";
|
|
4
|
-
import { KaminoIncentiveDataArgs } from "../incentive";
|
|
5
|
-
import { PositionBalanceChange } from "../../types";
|
|
6
|
-
/** Supported oracle types for Kamino price feeds */
|
|
7
|
-
export type OracleType = "pythPrice" | "switchboardPrice" | "switchboardTwap" | "scope";
|
|
8
|
-
export type ReserveOracleAccounts = Record<OracleType, Address | undefined>;
|
|
9
|
-
/**
|
|
10
|
-
* Kamino-specific reserve data implementation.
|
|
11
|
-
* Wraps KaminoReserve with normalized accessors and oracle account resolution.
|
|
12
|
-
*/
|
|
13
|
-
export declare class KaminoReserveData extends ReserveBase {
|
|
14
|
-
rawData: KaminoReserve;
|
|
15
|
-
slot: bigint;
|
|
16
|
-
/**
|
|
17
|
-
* Creates a KaminoReserveData instance from raw SDK types.
|
|
18
|
-
* Extracts and normalizes configuration, rates, limits, and incentives.
|
|
19
|
-
*/
|
|
20
|
-
static loadData(market: KaminoMarket, reserve: KaminoReserve, reserveFarms: KaminoIncentiveDataArgs[], prices: KlendPrices, slot: bigint): KaminoReserveData;
|
|
21
|
-
/** Checks if TWAP price validation is enabled for this reserve */
|
|
22
|
-
protected isTwapEnabled(): boolean;
|
|
23
|
-
/**
|
|
24
|
-
* Determines if the reserve's on-chain price data is stale and needs refreshing.
|
|
25
|
-
*/
|
|
26
|
-
requiresRefresh(): boolean;
|
|
27
|
-
/**
|
|
28
|
-
* Returns all configured oracle account addresses for this reserve.
|
|
29
|
-
* Only includes accounts that are actually enabled.
|
|
30
|
-
*/
|
|
31
|
-
getOracleAccounts(): ReserveOracleAccounts;
|
|
32
|
-
/**
|
|
33
|
-
* Simulates the supply APY after a position balance change.
|
|
34
|
-
* Uses the SDK's calcSimulatedSupplyAPR which accounts for utilization changes.
|
|
35
|
-
*/
|
|
36
|
-
simulateNewSupplyAPY(args: PositionBalanceChange, usingDebtReserve?: Address): number;
|
|
37
|
-
/**
|
|
38
|
-
* Simulates the borrow APY after a position balance change.
|
|
39
|
-
* Uses the SDK's calcSimulatedBorrowAPR which accounts for utilization changes.
|
|
40
|
-
*/
|
|
41
|
-
simulateNewBorrowAPY(args: PositionBalanceChange, usingSupplyReserve?: Address): number;
|
|
42
|
-
canWithdraw(amount: number): boolean;
|
|
43
|
-
canBorrow(amount: number): boolean;
|
|
44
|
-
private hasCapacity;
|
|
45
|
-
}
|
|
@@ -1,141 +0,0 @@
|
|
|
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.KaminoReserveData = void 0;
|
|
7
|
-
const klend_sdk_1 = require("@kamino-finance/klend-sdk");
|
|
8
|
-
const decimal_js_1 = __importDefault(require("decimal.js"));
|
|
9
|
-
const common_1 = require("common");
|
|
10
|
-
const reserveBase_1 = require("./reserveBase");
|
|
11
|
-
const incentive_1 = require("../incentive");
|
|
12
|
-
/**
|
|
13
|
-
* Kamino-specific reserve data implementation.
|
|
14
|
-
* Wraps KaminoReserve with normalized accessors and oracle account resolution.
|
|
15
|
-
*/
|
|
16
|
-
class KaminoReserveData extends reserveBase_1.ReserveBase {
|
|
17
|
-
/**
|
|
18
|
-
* Creates a KaminoReserveData instance from raw SDK types.
|
|
19
|
-
* Extracts and normalizes configuration, rates, limits, and incentives.
|
|
20
|
-
*/
|
|
21
|
-
static loadData(market, reserve, reserveFarms, prices, slot) {
|
|
22
|
-
const stats = reserve.stats;
|
|
23
|
-
const state = reserve.state;
|
|
24
|
-
const config = state.config;
|
|
25
|
-
const mintDecimals = reserve.getMintDecimals();
|
|
26
|
-
const price = reserve.getOracleMarketPrice().toNumber();
|
|
27
|
-
const allElevationGroups = config.elevationGroups
|
|
28
|
-
.map((id) => market.getElevationGroup(id))
|
|
29
|
-
.filter((group) => group !== undefined &&
|
|
30
|
-
group.debtReserve !== reserve.address &&
|
|
31
|
-
group.maxReservesAsCollateral === 1);
|
|
32
|
-
const data = new KaminoReserveData(reserve.address, {
|
|
33
|
-
mint: reserve.getLiquidityMint(),
|
|
34
|
-
mintDecimals,
|
|
35
|
-
mintTokenProgram: reserve.getLiquidityTokenProgram(),
|
|
36
|
-
price,
|
|
37
|
-
}, {
|
|
38
|
-
ltvPct: stats.loanToValue,
|
|
39
|
-
liquidationThresholdPct: stats.liquidationThreshold,
|
|
40
|
-
borrowFeePct: reserve.getBorrowFee().toNumber(),
|
|
41
|
-
flashLoanFeePct: reserve.getFlashLoanFee().toNumber(),
|
|
42
|
-
emodes: allElevationGroups.map((x) => ({
|
|
43
|
-
id: x.id,
|
|
44
|
-
debtReserve: x.debtReserve,
|
|
45
|
-
ltvPct: x.ltvPct,
|
|
46
|
-
liquidationThresholdPct: x.liquidationThresholdPct,
|
|
47
|
-
})),
|
|
48
|
-
}, {
|
|
49
|
-
totalAmount: reserve.getDepositTvl().toNumber() / price,
|
|
50
|
-
limit: (0, common_1.toUiAmount)(config.depositLimit, mintDecimals),
|
|
51
|
-
apy: reserve.totalSupplyAPY(slot),
|
|
52
|
-
}, {
|
|
53
|
-
totalAmount: reserve.getBorrowTvl().toNumber() / price,
|
|
54
|
-
limit: (0, common_1.toUiAmount)(config.borrowLimit, mintDecimals),
|
|
55
|
-
apy: reserve.totalBorrowAPY(slot),
|
|
56
|
-
}, {
|
|
57
|
-
utilizationRatePct: reserve.calculateUtilizationRatio(),
|
|
58
|
-
availableLiquidity: (0, common_1.toUiAmount)(BigInt(reserve.getLiquidityAvailableAmount().toFixed(0)), mintDecimals),
|
|
59
|
-
}, reserveFarms
|
|
60
|
-
.map((x) => incentive_1.KaminoIncentiveData.loadData(x, reserve, prices, slot))
|
|
61
|
-
.filter((x) => x.active() || [state.farmCollateral, state.farmDebt].includes(x.address)));
|
|
62
|
-
data.rawData = reserve;
|
|
63
|
-
data.slot = slot;
|
|
64
|
-
return data;
|
|
65
|
-
}
|
|
66
|
-
/** Checks if TWAP price validation is enabled for this reserve */
|
|
67
|
-
isTwapEnabled() {
|
|
68
|
-
return this.rawData.state.config.tokenInfo.maxTwapDivergenceBps.toNumber() > 0;
|
|
69
|
-
}
|
|
70
|
-
/**
|
|
71
|
-
* Determines if the reserve's on-chain price data is stale and needs refreshing.
|
|
72
|
-
*/
|
|
73
|
-
requiresRefresh() {
|
|
74
|
-
return true;
|
|
75
|
-
}
|
|
76
|
-
/**
|
|
77
|
-
* Returns all configured oracle account addresses for this reserve.
|
|
78
|
-
* Only includes accounts that are actually enabled.
|
|
79
|
-
*/
|
|
80
|
-
getOracleAccounts() {
|
|
81
|
-
const tokenInfo = this.rawData.state.config.tokenInfo;
|
|
82
|
-
const pythAccount = tokenInfo.pythConfiguration.price;
|
|
83
|
-
const switchboardPrice = tokenInfo.switchboardConfiguration.priceAggregator;
|
|
84
|
-
const switchboardTwap = tokenInfo.switchboardConfiguration.twapAggregator;
|
|
85
|
-
const scope = tokenInfo.scopeConfiguration.priceFeed;
|
|
86
|
-
const pythEnabled = (0, klend_sdk_1.isNotNullPubkey)(pythAccount);
|
|
87
|
-
const switchboardEnabled = (0, klend_sdk_1.isNotNullPubkey)(switchboardPrice);
|
|
88
|
-
const switchboardTwapEnabled = switchboardEnabled && this.isTwapEnabled() && (0, klend_sdk_1.isNotNullPubkey)(switchboardTwap);
|
|
89
|
-
const scopeEnabled = (0, klend_sdk_1.isNotNullPubkey)(scope);
|
|
90
|
-
return {
|
|
91
|
-
pythPrice: pythEnabled ? pythAccount : undefined,
|
|
92
|
-
switchboardPrice: switchboardEnabled ? switchboardPrice : undefined,
|
|
93
|
-
switchboardTwap: switchboardTwapEnabled ? switchboardTwap : undefined,
|
|
94
|
-
scope: scopeEnabled ? scope : undefined,
|
|
95
|
-
};
|
|
96
|
-
}
|
|
97
|
-
/**
|
|
98
|
-
* Simulates the supply APY after a position balance change.
|
|
99
|
-
* Uses the SDK's calcSimulatedSupplyAPR which accounts for utilization changes.
|
|
100
|
-
*/
|
|
101
|
-
simulateNewSupplyAPY(args, usingDebtReserve) {
|
|
102
|
-
const collateralChange = args.collateralChange ?? 0;
|
|
103
|
-
if (!collateralChange) {
|
|
104
|
-
return this.supplyAPY(usingDebtReserve);
|
|
105
|
-
}
|
|
106
|
-
const simulatedAPR = this.rawData.calcSimulatedSupplyAPR(new decimal_js_1.default((0, common_1.fromUiAmount)(collateralChange, this.mint.mintDecimals).toNumber()), collateralChange > 0 ? "deposit" : "withdraw", this.slot, 0);
|
|
107
|
-
return simulatedAPR + this.simulateNewEligbleIncentivesAPY(args, "supply", usingDebtReserve);
|
|
108
|
-
}
|
|
109
|
-
/**
|
|
110
|
-
* Simulates the borrow APY after a position balance change.
|
|
111
|
-
* Uses the SDK's calcSimulatedBorrowAPR which accounts for utilization changes.
|
|
112
|
-
*/
|
|
113
|
-
simulateNewBorrowAPY(args, usingSupplyReserve) {
|
|
114
|
-
const debtChange = args.debtChange ?? 0;
|
|
115
|
-
if (!debtChange) {
|
|
116
|
-
return this.borrowAPY(usingSupplyReserve);
|
|
117
|
-
}
|
|
118
|
-
const simulatedAPR = this.rawData.calcSimulatedBorrowAPR(new decimal_js_1.default((0, common_1.fromUiAmount)(debtChange, this.mint.mintDecimals).toNumber()), debtChange > 0 ? "borrow" : "repay", this.slot, 0);
|
|
119
|
-
return simulatedAPR - this.simulateNewEligbleIncentivesAPY(args, "borrow", usingSupplyReserve);
|
|
120
|
-
}
|
|
121
|
-
canWithdraw(amount) {
|
|
122
|
-
const capCapacity = this.rawData.getDepositWithdrawalCapCapacity();
|
|
123
|
-
const capCurrent = this.rawData.getDepositWithdrawalCapCurrent(this.slot);
|
|
124
|
-
return this.hasCapacity(amount, capCapacity, capCurrent);
|
|
125
|
-
}
|
|
126
|
-
canBorrow(amount) {
|
|
127
|
-
const capCapacity = this.rawData.getDebtWithdrawalCapCapacity();
|
|
128
|
-
const capCurrent = this.rawData.getDebtWithdrawalCapCurrent(this.slot);
|
|
129
|
-
return amount <= this.borrows.limit && this.hasCapacity(amount, capCapacity, capCurrent);
|
|
130
|
-
}
|
|
131
|
-
hasCapacity(amount, capCapacity, capCurrent) {
|
|
132
|
-
if (!capCapacity.isZero()) {
|
|
133
|
-
const remainingCap = (0, common_1.toUiAmount)(BigInt(capCapacity.minus(capCurrent).toFixed(0)), this.mint.mintDecimals);
|
|
134
|
-
if (amount > remainingCap) {
|
|
135
|
-
return false;
|
|
136
|
-
}
|
|
137
|
-
}
|
|
138
|
-
return true;
|
|
139
|
-
}
|
|
140
|
-
}
|
|
141
|
-
exports.KaminoReserveData = KaminoReserveData;
|
|
@@ -1,114 +0,0 @@
|
|
|
1
|
-
import type { Address } from "@solana/kit";
|
|
2
|
-
import { TokenIncentiveBase } from "../incentive";
|
|
3
|
-
import { PositionBalanceChange } from "../../types";
|
|
4
|
-
type IncentiveSide = "supply" | "borrow";
|
|
5
|
-
/** Token mint information for a reserve's underlying asset */
|
|
6
|
-
interface ReserveMint {
|
|
7
|
-
mint: Address;
|
|
8
|
-
mintDecimals: number;
|
|
9
|
-
mintTokenProgram: Address;
|
|
10
|
-
price?: number;
|
|
11
|
-
emaPrice?: number;
|
|
12
|
-
}
|
|
13
|
-
/** Risk and fee parameters for a reserve */
|
|
14
|
-
interface ReserveConfig {
|
|
15
|
-
ltvPct: number;
|
|
16
|
-
liquidationThresholdPct: number;
|
|
17
|
-
borrowFeePct: number;
|
|
18
|
-
flashLoanFeePct: number;
|
|
19
|
-
/** E-mode configurations for enhanced LTV with specific debt reserves */
|
|
20
|
-
emodes?: EmodeConfig[];
|
|
21
|
-
}
|
|
22
|
-
/** Aggregated metrics for deposit/borrow activity */
|
|
23
|
-
interface ReserveInteractionInfo {
|
|
24
|
-
/** In UI amounts, e.g. 1.234 */
|
|
25
|
-
totalAmount: number;
|
|
26
|
-
/** In UI amounts, e.g. 1.234 */
|
|
27
|
-
limit: number;
|
|
28
|
-
apy: number;
|
|
29
|
-
}
|
|
30
|
-
interface ReserveState {
|
|
31
|
-
utilizationRatePct: number;
|
|
32
|
-
availableLiquidity: number;
|
|
33
|
-
}
|
|
34
|
-
/** E-mode (efficiency mode) configuration for enhanced collateral ratios */
|
|
35
|
-
interface EmodeConfig {
|
|
36
|
-
id?: number;
|
|
37
|
-
debtReserve?: Address;
|
|
38
|
-
ltvPct: number;
|
|
39
|
-
liquidationThresholdPct: number;
|
|
40
|
-
}
|
|
41
|
-
/**
|
|
42
|
-
* Abstract base class representing a lending reserve (asset pool).
|
|
43
|
-
* Contains normalized data about deposits, borrows, rates, and incentives.
|
|
44
|
-
*/
|
|
45
|
-
export declare abstract class ReserveBase {
|
|
46
|
-
address: Address;
|
|
47
|
-
mint: ReserveMint;
|
|
48
|
-
config: ReserveConfig;
|
|
49
|
-
deposits: ReserveInteractionInfo;
|
|
50
|
-
borrows: ReserveInteractionInfo;
|
|
51
|
-
private state;
|
|
52
|
-
incentives?: TokenIncentiveBase[] | undefined;
|
|
53
|
-
private createdAt;
|
|
54
|
-
constructor(address: Address, mint: ReserveMint, config: ReserveConfig, deposits: ReserveInteractionInfo, borrows: ReserveInteractionInfo, state: ReserveState, incentives?: TokenIncentiveBase[] | undefined);
|
|
55
|
-
private normalizeLtvPct;
|
|
56
|
-
/** Returns the cached price, or undefined if stale */
|
|
57
|
-
get mintPrice(): number | undefined;
|
|
58
|
-
/** Returns the cached EMA price, or undefined if stale/missing */
|
|
59
|
-
get mintEmaPrice(): number | undefined;
|
|
60
|
-
/** Returns oracle account addresses used for price feeds */
|
|
61
|
-
abstract getOracleAccounts(): Record<string, Address | undefined>;
|
|
62
|
-
/**
|
|
63
|
-
* Returns the reserve LTV in decimal form, where `0.5 = 50%`.
|
|
64
|
-
*/
|
|
65
|
-
get ltvPct(): number;
|
|
66
|
-
/**
|
|
67
|
-
* Returns e-mode configs with `ltvPct` normalized to decimal form, where
|
|
68
|
-
* `0.5 = 50%`.
|
|
69
|
-
*/
|
|
70
|
-
get emodes(): EmodeConfig[] | undefined;
|
|
71
|
-
utilizationRatePct(): number;
|
|
72
|
-
/** Returns borrowable liquidity, accounting for both available balance and borrow limits, in UI amount (e.g. 1.234) */
|
|
73
|
-
liquidityAvailable(): number;
|
|
74
|
-
/**
|
|
75
|
-
* Returns the total supply APY including base rate and eligible supply-side
|
|
76
|
-
* incentives (types `LendingOnly` and `Pair`). Borrow-side incentives are
|
|
77
|
-
* excluded here — they reward borrowers, not lenders.
|
|
78
|
-
* @param usingDebtReserve - When specified, includes paired incentives requiring this debt reserve
|
|
79
|
-
*/
|
|
80
|
-
supplyAPY(usingDebtReserve?: Address): number;
|
|
81
|
-
/** Simulates supply APY after a position change */
|
|
82
|
-
abstract simulateNewSupplyAPY(args: PositionBalanceChange, usingDebtReserve?: Address): number;
|
|
83
|
-
/**
|
|
84
|
-
* Returns the effective borrow APY (base rate minus eligible borrow-side
|
|
85
|
-
* incentive rebates, i.e. `BorrowingOnly`). Lender-side incentives are
|
|
86
|
-
* excluded — they are paid to lenders and do not offset borrower cost.
|
|
87
|
-
* @param usingSupplyReserve - When specified, includes paired incentives requiring this collateral
|
|
88
|
-
*/
|
|
89
|
-
borrowAPY(usingSupplyReserve?: Address): number;
|
|
90
|
-
/** Simulates borrow APY after a position change */
|
|
91
|
-
abstract simulateNewBorrowAPY(args: PositionBalanceChange, usingSupplyReserve?: Address): number;
|
|
92
|
-
/** Sums APY from incentives eligible for the given side and paired reserve */
|
|
93
|
-
protected sumEligibleIncentivesAPY(side: IncentiveSide, usingPairReserve?: Address): number;
|
|
94
|
-
/** Sums the new simulated APY from incentives eligible for the given side and paired reserve */
|
|
95
|
-
protected simulateNewEligbleIncentivesAPY(args: PositionBalanceChange, side: IncentiveSide, usingPairReserve?: Address): number;
|
|
96
|
-
/**
|
|
97
|
-
* Filters incentives eligible for the given side (supply vs borrow) and
|
|
98
|
-
* paired reserve.
|
|
99
|
-
*
|
|
100
|
-
* Side filter:
|
|
101
|
-
* - `supply`: `LendingOnly` and `Pair` (collateral-farm incentives,
|
|
102
|
-
* optionally gated on a specific debt reserve).
|
|
103
|
-
* - `borrow`: `BorrowingOnly` (debt-farm incentives, optionally gated on a
|
|
104
|
-
* specific collateral reserve via `requiresPairReserve`).
|
|
105
|
-
*
|
|
106
|
-
* Pair filter: incentives with `requiresPairReserve` only apply when that
|
|
107
|
-
* reserve matches the caller's pair.
|
|
108
|
-
*/
|
|
109
|
-
protected getEligibleIncentives(side: IncentiveSide, usingPairReserve?: Address): TokenIncentiveBase[];
|
|
110
|
-
canDeposit(amount: number): boolean;
|
|
111
|
-
abstract canWithdraw(amount: number): boolean;
|
|
112
|
-
canBorrow(amount: number): boolean;
|
|
113
|
-
}
|
|
114
|
-
export {};
|
|
@@ -1,125 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.ReserveBase = void 0;
|
|
4
|
-
const common_1 = require("common");
|
|
5
|
-
const incentive_1 = require("../incentive");
|
|
6
|
-
/**
|
|
7
|
-
* Abstract base class representing a lending reserve (asset pool).
|
|
8
|
-
* Contains normalized data about deposits, borrows, rates, and incentives.
|
|
9
|
-
*/
|
|
10
|
-
class ReserveBase {
|
|
11
|
-
constructor(address, mint, config, deposits, borrows, state, incentives) {
|
|
12
|
-
this.address = address;
|
|
13
|
-
this.mint = mint;
|
|
14
|
-
this.config = config;
|
|
15
|
-
this.deposits = deposits;
|
|
16
|
-
this.borrows = borrows;
|
|
17
|
-
this.state = state;
|
|
18
|
-
this.incentives = incentives;
|
|
19
|
-
this.createdAt = Date.now();
|
|
20
|
-
}
|
|
21
|
-
normalizeLtvPct(ltvPct) {
|
|
22
|
-
return ltvPct <= 1 ? ltvPct : ltvPct / 100;
|
|
23
|
-
}
|
|
24
|
-
/** Returns the cached price, or undefined if stale */
|
|
25
|
-
get mintPrice() {
|
|
26
|
-
if (this.mint.price === undefined) {
|
|
27
|
-
return undefined;
|
|
28
|
-
}
|
|
29
|
-
const ageMs = Date.now() - this.createdAt;
|
|
30
|
-
if (ageMs > common_1.PRICE_STALENESS_SECONDS * 1000) {
|
|
31
|
-
return undefined;
|
|
32
|
-
}
|
|
33
|
-
return this.mint.price;
|
|
34
|
-
}
|
|
35
|
-
/** Returns the cached EMA price, or undefined if stale/missing */
|
|
36
|
-
get mintEmaPrice() {
|
|
37
|
-
if (this.mint.emaPrice === undefined) {
|
|
38
|
-
return undefined;
|
|
39
|
-
}
|
|
40
|
-
const ageMs = Date.now() - this.createdAt;
|
|
41
|
-
if (ageMs > common_1.PRICE_STALENESS_SECONDS * 1000) {
|
|
42
|
-
return undefined;
|
|
43
|
-
}
|
|
44
|
-
return this.mint.emaPrice;
|
|
45
|
-
}
|
|
46
|
-
/**
|
|
47
|
-
* Returns the reserve LTV in decimal form, where `0.5 = 50%`.
|
|
48
|
-
*/
|
|
49
|
-
get ltvPct() {
|
|
50
|
-
return this.normalizeLtvPct(this.config.ltvPct);
|
|
51
|
-
}
|
|
52
|
-
/**
|
|
53
|
-
* Returns e-mode configs with `ltvPct` normalized to decimal form, where
|
|
54
|
-
* `0.5 = 50%`.
|
|
55
|
-
*/
|
|
56
|
-
get emodes() {
|
|
57
|
-
return this.config.emodes?.map((emode) => ({
|
|
58
|
-
...emode,
|
|
59
|
-
ltvPct: this.normalizeLtvPct(emode.ltvPct),
|
|
60
|
-
}));
|
|
61
|
-
}
|
|
62
|
-
utilizationRatePct() {
|
|
63
|
-
return this.state.utilizationRatePct;
|
|
64
|
-
}
|
|
65
|
-
/** Returns borrowable liquidity, accounting for both available balance and borrow limits, in UI amount (e.g. 1.234) */
|
|
66
|
-
liquidityAvailable() {
|
|
67
|
-
return Math.min(this.state.availableLiquidity, this.borrows.limit - this.borrows.totalAmount);
|
|
68
|
-
}
|
|
69
|
-
/**
|
|
70
|
-
* Returns the total supply APY including base rate and eligible supply-side
|
|
71
|
-
* incentives (types `LendingOnly` and `Pair`). Borrow-side incentives are
|
|
72
|
-
* excluded here — they reward borrowers, not lenders.
|
|
73
|
-
* @param usingDebtReserve - When specified, includes paired incentives requiring this debt reserve
|
|
74
|
-
*/
|
|
75
|
-
supplyAPY(usingDebtReserve) {
|
|
76
|
-
return this.deposits.apy + this.sumEligibleIncentivesAPY("supply", usingDebtReserve);
|
|
77
|
-
}
|
|
78
|
-
/**
|
|
79
|
-
* Returns the effective borrow APY (base rate minus eligible borrow-side
|
|
80
|
-
* incentive rebates, i.e. `BorrowingOnly`). Lender-side incentives are
|
|
81
|
-
* excluded — they are paid to lenders and do not offset borrower cost.
|
|
82
|
-
* @param usingSupplyReserve - When specified, includes paired incentives requiring this collateral
|
|
83
|
-
*/
|
|
84
|
-
borrowAPY(usingSupplyReserve) {
|
|
85
|
-
return this.borrows.apy - this.sumEligibleIncentivesAPY("borrow", usingSupplyReserve);
|
|
86
|
-
}
|
|
87
|
-
/** Sums APY from incentives eligible for the given side and paired reserve */
|
|
88
|
-
sumEligibleIncentivesAPY(side, usingPairReserve) {
|
|
89
|
-
return (0, common_1.sum)(this.getEligibleIncentives(side, usingPairReserve).map((x) => x.apy()));
|
|
90
|
-
}
|
|
91
|
-
/** Sums the new simulated APY from incentives eligible for the given side and paired reserve */
|
|
92
|
-
simulateNewEligbleIncentivesAPY(args, side, usingPairReserve) {
|
|
93
|
-
return (0, common_1.sum)(this.getEligibleIncentives(side, usingPairReserve).map((x) => x.simulateNewAPY(args)));
|
|
94
|
-
}
|
|
95
|
-
/**
|
|
96
|
-
* Filters incentives eligible for the given side (supply vs borrow) and
|
|
97
|
-
* paired reserve.
|
|
98
|
-
*
|
|
99
|
-
* Side filter:
|
|
100
|
-
* - `supply`: `LendingOnly` and `Pair` (collateral-farm incentives,
|
|
101
|
-
* optionally gated on a specific debt reserve).
|
|
102
|
-
* - `borrow`: `BorrowingOnly` (debt-farm incentives, optionally gated on a
|
|
103
|
-
* specific collateral reserve via `requiresPairReserve`).
|
|
104
|
-
*
|
|
105
|
-
* Pair filter: incentives with `requiresPairReserve` only apply when that
|
|
106
|
-
* reserve matches the caller's pair.
|
|
107
|
-
*/
|
|
108
|
-
getEligibleIncentives(side, usingPairReserve) {
|
|
109
|
-
return (this.incentives ?? []).filter((x) => {
|
|
110
|
-
const sideMatches = side === "borrow"
|
|
111
|
-
? x.config.incentiveType === incentive_1.IncentiveType.BorrowingOnly
|
|
112
|
-
: x.config.incentiveType !== incentive_1.IncentiveType.BorrowingOnly;
|
|
113
|
-
if (!sideMatches)
|
|
114
|
-
return false;
|
|
115
|
-
return !x.config.requiresPairReserve || x.config.requiresPairReserve === usingPairReserve;
|
|
116
|
-
});
|
|
117
|
-
}
|
|
118
|
-
canDeposit(amount) {
|
|
119
|
-
return amount <= this.deposits.limit;
|
|
120
|
-
}
|
|
121
|
-
canBorrow(amount) {
|
|
122
|
-
return amount <= this.borrows.limit;
|
|
123
|
-
}
|
|
124
|
-
}
|
|
125
|
-
exports.ReserveBase = ReserveBase;
|
|
@@ -1,18 +0,0 @@
|
|
|
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("./userPositionBase"), exports);
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
import { KaminoObligation } from "@kamino-finance/klend-sdk";
|
|
2
|
-
import { UserPositionBase } from "./userPositionBase";
|
|
3
|
-
/**
|
|
4
|
-
* Kamino-specific user position data.
|
|
5
|
-
* Extracts deposit/borrow positions and health metrics from a KaminoObligation.
|
|
6
|
-
*/
|
|
7
|
-
export declare class KaminoUserPositionData extends UserPositionBase {
|
|
8
|
-
rawData: KaminoObligation;
|
|
9
|
-
/** Creates a KaminoUserPositionData from a raw KaminoObligation */
|
|
10
|
-
static loadData(obligation: KaminoObligation): KaminoUserPositionData;
|
|
11
|
-
/**
|
|
12
|
-
* Determines if the obligation needs a refresh_obligation instruction.
|
|
13
|
-
*/
|
|
14
|
-
requiresRefresh(): boolean;
|
|
15
|
-
}
|
|
@@ -1,45 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.KaminoUserPositionData = void 0;
|
|
4
|
-
const core_1 = require("@anchor-lang/core");
|
|
5
|
-
const userPositionBase_1 = require("./userPositionBase");
|
|
6
|
-
/**
|
|
7
|
-
* Kamino-specific user position data.
|
|
8
|
-
* Extracts deposit/borrow positions and health metrics from a KaminoObligation.
|
|
9
|
-
*/
|
|
10
|
-
class KaminoUserPositionData extends userPositionBase_1.UserPositionBase {
|
|
11
|
-
/** Creates a KaminoUserPositionData from a raw KaminoObligation */
|
|
12
|
-
static loadData(obligation) {
|
|
13
|
-
const deposits = [];
|
|
14
|
-
obligation.deposits.forEach((deposit, mint) => {
|
|
15
|
-
deposits.push({
|
|
16
|
-
reserve: deposit.reserveAddress,
|
|
17
|
-
mint,
|
|
18
|
-
amount: new core_1.BN(deposit.amount.toFixed(0)),
|
|
19
|
-
valueUsd: deposit.marketValueRefreshed.toNumber(),
|
|
20
|
-
});
|
|
21
|
-
});
|
|
22
|
-
const borrows = [];
|
|
23
|
-
obligation.borrows.forEach((borrow, mint) => {
|
|
24
|
-
borrows.push({
|
|
25
|
-
reserve: borrow.reserveAddress,
|
|
26
|
-
mint,
|
|
27
|
-
amount: new core_1.BN(borrow.amount.toFixed(0)),
|
|
28
|
-
valueUsd: borrow.marketValueRefreshed.toNumber(),
|
|
29
|
-
});
|
|
30
|
-
});
|
|
31
|
-
const borrowedValueUsd = obligation.refreshedStats.userTotalBorrow.toNumber();
|
|
32
|
-
const borrowLimitUsd = obligation.refreshedStats.borrowLimit.toNumber();
|
|
33
|
-
const utilizationRate = borrowLimitUsd > 0 ? borrowedValueUsd / borrowLimitUsd : 0;
|
|
34
|
-
const data = new KaminoUserPositionData(obligation.obligationAddress, utilizationRate, deposits, borrows, undefined, undefined, borrowLimitUsd);
|
|
35
|
-
data.rawData = obligation;
|
|
36
|
-
return data;
|
|
37
|
-
}
|
|
38
|
-
/**
|
|
39
|
-
* Determines if the obligation needs a refresh_obligation instruction.
|
|
40
|
-
*/
|
|
41
|
-
requiresRefresh() {
|
|
42
|
-
return true;
|
|
43
|
-
}
|
|
44
|
-
}
|
|
45
|
-
exports.KaminoUserPositionData = KaminoUserPositionData;
|
|
@@ -1,50 +0,0 @@
|
|
|
1
|
-
import type { Address } from "@solana/kit";
|
|
2
|
-
import { BN } from "@anchor-lang/core";
|
|
3
|
-
/** Represents a single asset position (deposit or borrow) within an obligation */
|
|
4
|
-
export interface PositionInfo {
|
|
5
|
-
reserve: Address;
|
|
6
|
-
mint: Address;
|
|
7
|
-
amount: BN;
|
|
8
|
-
valueUsd: number;
|
|
9
|
-
}
|
|
10
|
-
/**
|
|
11
|
-
* Base class representing a user's lending position.
|
|
12
|
-
* Contains aggregated data about deposits, borrows, and health metrics.
|
|
13
|
-
*/
|
|
14
|
-
export declare class UserPositionBase {
|
|
15
|
-
address: Address;
|
|
16
|
-
/** Current utilization as a ratio of borrowed value to borrow limit (0-1) */
|
|
17
|
-
utilizationRate: number;
|
|
18
|
-
deposits: PositionInfo[];
|
|
19
|
-
borrows: PositionInfo[];
|
|
20
|
-
/** Loan-to-value ratio (if applicable based on elevation group) */
|
|
21
|
-
ltv?: number | undefined;
|
|
22
|
-
/** Liquidation threshold percentage (if applicable) */
|
|
23
|
-
liquidationThreshold?: number | undefined;
|
|
24
|
-
/**
|
|
25
|
-
* Obligation-level max borrow capacity in USD (`borrowedUsd / utilizationRate`).
|
|
26
|
-
* Each platform loader must set this from that protocol's position health model.
|
|
27
|
-
*/
|
|
28
|
-
borrowLimitUsd?: number | undefined;
|
|
29
|
-
constructor(address: Address,
|
|
30
|
-
/** Current utilization as a ratio of borrowed value to borrow limit (0-1) */
|
|
31
|
-
utilizationRate: number, deposits: PositionInfo[], borrows: PositionInfo[],
|
|
32
|
-
/** Loan-to-value ratio (if applicable based on elevation group) */
|
|
33
|
-
ltv?: number | undefined,
|
|
34
|
-
/** Liquidation threshold percentage (if applicable) */
|
|
35
|
-
liquidationThreshold?: number | undefined,
|
|
36
|
-
/**
|
|
37
|
-
* Obligation-level max borrow capacity in USD (`borrowedUsd / utilizationRate`).
|
|
38
|
-
* Each platform loader must set this from that protocol's position health model.
|
|
39
|
-
*/
|
|
40
|
-
borrowLimitUsd?: number | undefined);
|
|
41
|
-
/** Aggregate borrowed USD for headroom; prefers per-borrow breakdown when present. */
|
|
42
|
-
private userPositionBorrowedValueUsd;
|
|
43
|
-
/**
|
|
44
|
-
* Max additional debt UI amount before the platform rejects the borrow.
|
|
45
|
-
* Uses obligation `borrowLimitUsd − borrowedUsd`, floored to base units with a
|
|
46
|
-
* one-unit buffer so simulation-time refresh cannot overshoot. Returns `undefined`
|
|
47
|
-
* when `borrowLimitUsd` was not set by the platform loader.
|
|
48
|
-
*/
|
|
49
|
-
getMaxAdditionalBorrowUiAmount(debtPriceUsd: number, debtDecimals: number): number | undefined;
|
|
50
|
-
}
|