@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.
Files changed (717) hide show
  1. package/.env.example +11 -0
  2. package/README.md +207 -0
  3. package/dist/sdks/long-yield-carry/scripts/asyncBurn.d.ts +1 -0
  4. package/dist/sdks/long-yield-carry/scripts/asyncBurn.js +117 -0
  5. package/dist/sdks/long-yield-carry/scripts/burnToken.d.ts +1 -0
  6. package/dist/sdks/long-yield-carry/scripts/burnToken.js +98 -0
  7. package/dist/sdks/long-yield-carry/scripts/claimIncentives.d.ts +1 -0
  8. package/dist/sdks/long-yield-carry/scripts/claimIncentives.js +108 -0
  9. package/dist/sdks/long-yield-carry/scripts/closeCpiPlans.d.ts +1 -0
  10. package/dist/sdks/long-yield-carry/scripts/closeCpiPlans.js +93 -0
  11. package/dist/sdks/long-yield-carry/scripts/collectInterest.d.ts +1 -0
  12. package/dist/sdks/long-yield-carry/scripts/collectInterest.js +164 -0
  13. package/dist/sdks/long-yield-carry/scripts/collectProtocolFees.d.ts +1 -0
  14. package/dist/sdks/long-yield-carry/scripts/collectProtocolFees.js +120 -0
  15. package/dist/sdks/long-yield-carry/scripts/computeOptimalAllocations.d.ts +1 -0
  16. package/dist/sdks/long-yield-carry/scripts/computeOptimalAllocations.js +84 -0
  17. package/dist/sdks/long-yield-carry/scripts/createToken.d.ts +1 -0
  18. package/dist/sdks/long-yield-carry/scripts/createToken.js +76 -0
  19. package/dist/sdks/long-yield-carry/scripts/createTokenLendingPosition.d.ts +1 -0
  20. package/dist/sdks/long-yield-carry/scripts/createTokenLendingPosition.js +157 -0
  21. package/dist/sdks/long-yield-carry/scripts/createYieldingBank.d.ts +1 -0
  22. package/dist/sdks/long-yield-carry/scripts/createYieldingBank.js +69 -0
  23. package/dist/sdks/long-yield-carry/scripts/decreaseCarryPositions.d.ts +1 -0
  24. package/dist/sdks/long-yield-carry/scripts/decreaseCarryPositions.js +247 -0
  25. package/dist/sdks/long-yield-carry/scripts/depositUnlentCollateral.d.ts +1 -0
  26. package/dist/sdks/long-yield-carry/scripts/depositUnlentCollateral.js +90 -0
  27. package/dist/sdks/long-yield-carry/scripts/emergency/deleverageAll.d.ts +1 -0
  28. package/dist/sdks/long-yield-carry/scripts/emergency/deleverageAll.js +202 -0
  29. package/dist/sdks/long-yield-carry/scripts/emergency/triggerCircuitBreaker.d.ts +1 -0
  30. package/dist/sdks/long-yield-carry/scripts/emergency/triggerCircuitBreaker.js +68 -0
  31. package/dist/sdks/long-yield-carry/scripts/env.d.ts +1 -0
  32. package/dist/sdks/long-yield-carry/scripts/env.js +8 -0
  33. package/dist/sdks/long-yield-carry/scripts/findTxs.d.ts +1 -0
  34. package/dist/sdks/long-yield-carry/scripts/findTxs.js +143 -0
  35. package/dist/sdks/long-yield-carry/scripts/increaseCarryPositions.d.ts +1 -0
  36. package/dist/sdks/long-yield-carry/scripts/increaseCarryPositions.js +112 -0
  37. package/dist/sdks/long-yield-carry/scripts/inspect/format.d.ts +13 -0
  38. package/dist/sdks/long-yield-carry/scripts/inspect/format.js +363 -0
  39. package/dist/sdks/long-yield-carry/scripts/inspect.d.ts +1 -0
  40. package/dist/sdks/long-yield-carry/scripts/inspect.js +108 -0
  41. package/dist/sdks/long-yield-carry/scripts/localUtils.d.ts +53 -0
  42. package/dist/sdks/long-yield-carry/scripts/localUtils.js +191 -0
  43. package/dist/sdks/long-yield-carry/scripts/mintToken.d.ts +1 -0
  44. package/dist/sdks/long-yield-carry/scripts/mintToken.js +103 -0
  45. package/dist/sdks/long-yield-carry/scripts/processAsyncBurns.d.ts +1 -0
  46. package/dist/sdks/long-yield-carry/scripts/processAsyncBurns.js +76 -0
  47. package/dist/sdks/long-yield-carry/scripts/rebalanceToken.d.ts +1 -0
  48. package/dist/sdks/long-yield-carry/scripts/rebalanceToken.js +210 -0
  49. package/dist/sdks/long-yield-carry/scripts/rebalanceYieldingBank.d.ts +1 -0
  50. package/dist/sdks/long-yield-carry/scripts/rebalanceYieldingBank.js +149 -0
  51. package/dist/sdks/long-yield-carry/scripts/recollateralizeLoss.d.ts +1 -0
  52. package/dist/sdks/long-yield-carry/scripts/recollateralizeLoss.js +64 -0
  53. package/dist/sdks/long-yield-carry/scripts/refresh.d.ts +1 -0
  54. package/dist/sdks/long-yield-carry/scripts/refresh.js +101 -0
  55. package/dist/sdks/long-yield-carry/scripts/updateFees.d.ts +1 -0
  56. package/dist/sdks/long-yield-carry/scripts/updateFees.js +369 -0
  57. package/dist/sdks/long-yield-carry/scripts/updateGeneralLut.d.ts +1 -0
  58. package/dist/sdks/long-yield-carry/scripts/updateGeneralLut.js +27 -0
  59. package/dist/sdks/long-yield-carry/scripts/updateLendingPositionConfig.d.ts +1 -0
  60. package/dist/sdks/long-yield-carry/scripts/updateLendingPositionConfig.js +127 -0
  61. package/dist/sdks/long-yield-carry/scripts/updateTokenLuts.d.ts +1 -0
  62. package/dist/sdks/long-yield-carry/scripts/updateTokenLuts.js +27 -0
  63. package/dist/sdks/long-yield-carry/scripts/updateTokenMetadata.d.ts +1 -0
  64. package/dist/sdks/long-yield-carry/scripts/updateTokenMetadata.js +194 -0
  65. package/dist/sdks/long-yield-carry/scripts/updateYieldingBankConfig.d.ts +1 -0
  66. package/dist/sdks/long-yield-carry/scripts/updateYieldingBankConfig.js +84 -0
  67. package/dist/sdks/long-yield-carry/scripts/withdrawUnlentCollateral.d.ts +1 -0
  68. package/dist/sdks/long-yield-carry/scripts/withdrawUnlentCollateral.js +140 -0
  69. package/dist/sdks/long-yield-carry/src/client/account.d.ts +152 -0
  70. package/dist/sdks/long-yield-carry/src/client/account.js +349 -0
  71. package/dist/sdks/long-yield-carry/src/client/builders/args.d.ts +299 -0
  72. package/dist/sdks/long-yield-carry/src/client/builders/args.js +2 -0
  73. package/dist/sdks/long-yield-carry/src/client/builders/asyncBurnBuilder.d.ts +20 -0
  74. package/dist/sdks/long-yield-carry/src/client/builders/asyncBurnBuilder.js +212 -0
  75. package/dist/sdks/long-yield-carry/src/client/builders/base.d.ts +77 -0
  76. package/dist/sdks/long-yield-carry/src/client/builders/base.js +191 -0
  77. package/dist/sdks/long-yield-carry/src/client/builders/burnTokenBuilder.d.ts +18 -0
  78. package/dist/sdks/long-yield-carry/src/client/builders/burnTokenBuilder.js +165 -0
  79. package/dist/sdks/long-yield-carry/src/client/builders/claimIncentivesBuilder.d.ts +9 -0
  80. package/dist/sdks/long-yield-carry/src/client/builders/claimIncentivesBuilder.js +135 -0
  81. package/dist/sdks/long-yield-carry/src/client/builders/collectFeesBuilder.d.ts +14 -0
  82. package/dist/sdks/long-yield-carry/src/client/builders/collectFeesBuilder.js +50 -0
  83. package/dist/sdks/long-yield-carry/src/client/builders/collectInterestBuilder.d.ts +8 -0
  84. package/dist/sdks/long-yield-carry/src/client/builders/collectInterestBuilder.js +86 -0
  85. package/dist/sdks/long-yield-carry/src/client/builders/createCpiPlanBuilder.d.ts +6 -0
  86. package/dist/sdks/long-yield-carry/src/client/builders/createCpiPlanBuilder.js +22 -0
  87. package/dist/sdks/long-yield-carry/src/client/builders/createTokenBuilder.d.ts +7 -0
  88. package/dist/sdks/long-yield-carry/src/client/builders/createTokenBuilder.js +64 -0
  89. package/dist/sdks/long-yield-carry/src/client/builders/createTokenLendingPositionBuilder.d.ts +10 -0
  90. package/dist/sdks/long-yield-carry/src/client/builders/createTokenLendingPositionBuilder.js +138 -0
  91. package/dist/sdks/long-yield-carry/src/client/builders/createYieldingBankAllocationBuilder.d.ts +7 -0
  92. package/dist/sdks/long-yield-carry/src/client/builders/createYieldingBankAllocationBuilder.js +29 -0
  93. package/dist/sdks/long-yield-carry/src/client/builders/createYieldingBankBuilder.d.ts +7 -0
  94. package/dist/sdks/long-yield-carry/src/client/builders/createYieldingBankBuilder.js +39 -0
  95. package/dist/sdks/long-yield-carry/src/client/builders/decreaseCarryPositionBuilder.d.ts +30 -0
  96. package/dist/sdks/long-yield-carry/src/client/builders/decreaseCarryPositionBuilder.js +99 -0
  97. package/dist/sdks/long-yield-carry/src/client/builders/depositUnlentCollateralBuilder.d.ts +8 -0
  98. package/dist/sdks/long-yield-carry/src/client/builders/depositUnlentCollateralBuilder.js +64 -0
  99. package/dist/sdks/long-yield-carry/src/client/builders/increaseCarryPositionBuilder.d.ts +8 -0
  100. package/dist/sdks/long-yield-carry/src/client/builders/increaseCarryPositionBuilder.js +73 -0
  101. package/dist/sdks/long-yield-carry/src/client/builders/index.d.ts +28 -0
  102. package/dist/sdks/long-yield-carry/src/client/builders/index.js +62 -0
  103. package/dist/sdks/long-yield-carry/src/client/builders/mintTokenBuilder.d.ts +8 -0
  104. package/dist/sdks/long-yield-carry/src/client/builders/mintTokenBuilder.js +95 -0
  105. package/dist/sdks/long-yield-carry/src/client/builders/rebalanceTokenBuilder.d.ts +11 -0
  106. package/dist/sdks/long-yield-carry/src/client/builders/rebalanceTokenBuilder.js +255 -0
  107. package/dist/sdks/long-yield-carry/src/client/builders/rebalanceYieldingBankBuilder.d.ts +8 -0
  108. package/dist/sdks/long-yield-carry/src/client/builders/rebalanceYieldingBankBuilder.js +75 -0
  109. package/dist/sdks/long-yield-carry/src/client/builders/recollateralizeLossBuilder.d.ts +12 -0
  110. package/dist/sdks/long-yield-carry/src/client/builders/recollateralizeLossBuilder.js +220 -0
  111. package/dist/sdks/long-yield-carry/src/client/builders/refreshTokenStateBuilder.d.ts +9 -0
  112. package/dist/sdks/long-yield-carry/src/client/builders/refreshTokenStateBuilder.js +112 -0
  113. package/dist/sdks/long-yield-carry/src/client/builders/refreshTokensBuilder.d.ts +9 -0
  114. package/dist/sdks/long-yield-carry/src/client/builders/refreshTokensBuilder.js +59 -0
  115. package/dist/sdks/long-yield-carry/src/client/builders/refreshYieldingBankBuilder.d.ts +8 -0
  116. package/dist/sdks/long-yield-carry/src/client/builders/refreshYieldingBankBuilder.js +29 -0
  117. package/dist/sdks/long-yield-carry/src/client/builders/resetTokenBurnRateLimitBuilder.d.ts +7 -0
  118. package/dist/sdks/long-yield-carry/src/client/builders/resetTokenBurnRateLimitBuilder.js +19 -0
  119. package/dist/sdks/long-yield-carry/src/client/builders/setTokenCircuitBreakerBuilder.d.ts +11 -0
  120. package/dist/sdks/long-yield-carry/src/client/builders/setTokenCircuitBreakerBuilder.js +31 -0
  121. package/dist/sdks/long-yield-carry/src/client/builders/setYieldingBankCircuitBreakerBuilder.d.ts +8 -0
  122. package/dist/sdks/long-yield-carry/src/client/builders/setYieldingBankCircuitBreakerBuilder.js +28 -0
  123. package/dist/sdks/long-yield-carry/src/client/builders/updateLendingPositionConfigBuilder.d.ts +10 -0
  124. package/dist/sdks/long-yield-carry/src/client/builders/updateLendingPositionConfigBuilder.js +30 -0
  125. package/dist/sdks/long-yield-carry/src/client/builders/updateTokenConfigurationBuilder.d.ts +11 -0
  126. package/dist/sdks/long-yield-carry/src/client/builders/updateTokenConfigurationBuilder.js +47 -0
  127. package/dist/sdks/long-yield-carry/src/client/builders/updateTokenMetadataBuilder.d.ts +7 -0
  128. package/dist/sdks/long-yield-carry/src/client/builders/updateTokenMetadataBuilder.js +24 -0
  129. package/dist/sdks/long-yield-carry/src/client/builders/updateYieldingBankConfigBuilder.d.ts +10 -0
  130. package/dist/sdks/long-yield-carry/src/client/builders/updateYieldingBankConfigBuilder.js +31 -0
  131. package/dist/sdks/long-yield-carry/src/client/builders/utils.d.ts +4 -0
  132. package/dist/sdks/long-yield-carry/src/client/builders/utils.js +20 -0
  133. package/dist/sdks/long-yield-carry/src/client/client.d.ts +115 -0
  134. package/dist/sdks/long-yield-carry/src/client/client.js +166 -0
  135. package/dist/sdks/long-yield-carry/src/client/externalLiquidityResolver.d.ts +13 -0
  136. package/dist/sdks/long-yield-carry/src/client/externalLiquidityResolver.js +34 -0
  137. package/dist/sdks/long-yield-carry/src/client/index.d.ts +10 -0
  138. package/dist/sdks/long-yield-carry/src/client/index.js +33 -0
  139. package/dist/sdks/long-yield-carry/src/client/lendingPlatformClients.d.ts +19 -0
  140. package/dist/sdks/long-yield-carry/src/client/lendingPlatformClients.js +33 -0
  141. package/dist/sdks/long-yield-carry/src/client/pda.d.ts +33 -0
  142. package/dist/sdks/long-yield-carry/src/client/pda.js +79 -0
  143. package/dist/sdks/long-yield-carry/src/client/plans/collectInterest.d.ts +24 -0
  144. package/dist/sdks/long-yield-carry/src/client/plans/collectInterest.js +150 -0
  145. package/dist/sdks/long-yield-carry/src/client/plans/decreaseCarryPosition.d.ts +12 -0
  146. package/dist/sdks/long-yield-carry/src/client/plans/decreaseCarryPosition.js +140 -0
  147. package/dist/sdks/long-yield-carry/src/client/routes/collectInterest.d.ts +13 -0
  148. package/dist/sdks/long-yield-carry/src/client/routes/collectInterest.js +39 -0
  149. package/dist/sdks/long-yield-carry/src/client/transaction.d.ts +41 -0
  150. package/dist/sdks/long-yield-carry/src/client/transaction.js +55 -0
  151. package/dist/sdks/long-yield-carry/src/client/types/builders.d.ts +18 -0
  152. package/dist/sdks/long-yield-carry/src/client/types/builders.js +2 -0
  153. package/dist/sdks/long-yield-carry/src/client/types/enums.d.ts +22 -0
  154. package/dist/sdks/long-yield-carry/src/client/types/enums.js +48 -0
  155. package/dist/sdks/long-yield-carry/src/client/types/general.d.ts +98 -0
  156. package/dist/sdks/long-yield-carry/src/client/types/general.js +2 -0
  157. package/dist/sdks/long-yield-carry/src/client/types/index.d.ts +6 -0
  158. package/dist/sdks/long-yield-carry/src/client/types/index.js +22 -0
  159. package/dist/sdks/long-yield-carry/src/client/types/ix.d.ts +352 -0
  160. package/dist/sdks/long-yield-carry/src/client/types/ix.js +2 -0
  161. package/dist/sdks/long-yield-carry/src/client/types/planTypes/collectInterest.d.ts +91 -0
  162. package/dist/sdks/long-yield-carry/src/client/types/planTypes/collectInterest.js +2 -0
  163. package/dist/sdks/long-yield-carry/src/client/types/planTypes/common.d.ts +28 -0
  164. package/dist/sdks/long-yield-carry/src/client/types/planTypes/common.js +2 -0
  165. package/dist/sdks/long-yield-carry/src/client/types/planTypes/decreaseCarryPosition.d.ts +128 -0
  166. package/dist/sdks/long-yield-carry/src/client/types/planTypes/decreaseCarryPosition.js +2 -0
  167. package/dist/sdks/long-yield-carry/src/client/types/planTypes/index.d.ts +3 -0
  168. package/dist/sdks/long-yield-carry/src/client/types/planTypes/index.js +19 -0
  169. package/dist/sdks/long-yield-carry/src/client/types/tx.d.ts +339 -0
  170. package/dist/sdks/long-yield-carry/src/client/types/tx.js +2 -0
  171. package/dist/sdks/long-yield-carry/src/constants/configs/allocations.d.ts +3 -0
  172. package/dist/sdks/long-yield-carry/src/constants/configs/allocations.js +23 -0
  173. package/dist/sdks/long-yield-carry/src/constants/configs/carryTradePresets.d.ts +58 -0
  174. package/dist/sdks/long-yield-carry/src/constants/configs/carryTradePresets.js +116 -0
  175. package/dist/sdks/long-yield-carry/src/constants/configs/index.d.ts +2 -0
  176. package/dist/sdks/long-yield-carry/src/constants/configs/index.js +18 -0
  177. package/dist/sdks/long-yield-carry/src/constants/general.d.ts +70 -0
  178. package/dist/sdks/long-yield-carry/src/constants/general.js +107 -0
  179. package/dist/sdks/long-yield-carry/src/constants/index.d.ts +3 -0
  180. package/dist/sdks/long-yield-carry/src/constants/index.js +19 -0
  181. package/dist/sdks/long-yield-carry/src/constants/lycTokenMetadata.d.ts +36 -0
  182. package/dist/sdks/long-yield-carry/src/constants/lycTokenMetadata.js +41 -0
  183. package/dist/sdks/long-yield-carry/src/decoders/decodeTransaction.d.ts +86 -0
  184. package/dist/sdks/long-yield-carry/src/decoders/decodeTransaction.js +230 -0
  185. package/dist/sdks/long-yield-carry/src/decoders/discriminators.d.ts +8 -0
  186. package/dist/sdks/long-yield-carry/src/decoders/discriminators.js +11 -0
  187. package/dist/sdks/long-yield-carry/src/decoders/idlAccounts.d.ts +29 -0
  188. package/dist/sdks/long-yield-carry/src/decoders/idlAccounts.js +57 -0
  189. package/dist/sdks/long-yield-carry/src/decoders/index.d.ts +6 -0
  190. package/dist/sdks/long-yield-carry/src/decoders/index.js +14 -0
  191. package/dist/sdks/long-yield-carry/src/decoders/innerCpis.d.ts +68 -0
  192. package/dist/sdks/long-yield-carry/src/decoders/innerCpis.js +225 -0
  193. package/dist/sdks/long-yield-carry/src/decoders/lycInstructionNames.d.ts +6 -0
  194. package/dist/sdks/long-yield-carry/src/decoders/lycInstructionNames.js +73 -0
  195. package/dist/sdks/long-yield-carry/src/decoders/programIds.d.ts +4 -0
  196. package/dist/sdks/long-yield-carry/src/decoders/programIds.js +11 -0
  197. package/dist/sdks/long-yield-carry/src/decoders/solana.d.ts +7 -0
  198. package/dist/sdks/long-yield-carry/src/decoders/solana.js +30 -0
  199. package/dist/sdks/long-yield-carry/src/decoders/transactionPayload.d.ts +41 -0
  200. package/dist/sdks/long-yield-carry/src/decoders/transactionPayload.js +6 -0
  201. package/dist/sdks/long-yield-carry/src/decoders/types.d.ts +58 -0
  202. package/dist/sdks/long-yield-carry/src/decoders/types.js +2 -0
  203. package/dist/sdks/long-yield-carry/src/errors.d.ts +69 -0
  204. package/dist/sdks/long-yield-carry/src/errors.js +183 -0
  205. package/dist/sdks/long-yield-carry/src/idl/long_yield_carry.d.ts +7327 -0
  206. package/dist/sdks/long-yield-carry/src/idl/long_yield_carry.js +7323 -0
  207. package/dist/sdks/long-yield-carry/src/index.d.ts +10 -0
  208. package/dist/sdks/long-yield-carry/src/index.js +25 -0
  209. package/dist/sdks/long-yield-carry/src/metrics/index.d.ts +1 -0
  210. package/dist/sdks/long-yield-carry/src/metrics/index.js +17 -0
  211. package/dist/sdks/long-yield-carry/src/metrics/protocolMetrics.d.ts +276 -0
  212. package/dist/sdks/long-yield-carry/src/metrics/protocolMetrics.js +547 -0
  213. package/dist/sdks/long-yield-carry/src/models/index.d.ts +3 -0
  214. package/dist/sdks/long-yield-carry/src/models/index.js +7 -0
  215. package/dist/sdks/long-yield-carry/src/models/lycToken.d.ts +156 -0
  216. package/dist/sdks/long-yield-carry/src/models/lycToken.js +288 -0
  217. package/dist/sdks/long-yield-carry/src/models/yieldingBank.d.ts +52 -0
  218. package/dist/sdks/long-yield-carry/src/models/yieldingBank.js +109 -0
  219. package/dist/sdks/long-yield-carry/src/services/allocation/allocationService.d.ts +106 -0
  220. package/dist/sdks/long-yield-carry/src/services/allocation/allocationService.js +589 -0
  221. package/dist/sdks/long-yield-carry/src/services/allocation/index.d.ts +2 -0
  222. package/dist/sdks/long-yield-carry/src/services/allocation/index.js +18 -0
  223. package/dist/sdks/long-yield-carry/src/services/allocation/types.d.ts +25 -0
  224. package/dist/sdks/long-yield-carry/src/services/allocation/types.js +2 -0
  225. package/dist/sdks/long-yield-carry/src/services/carry/carryAllocationConfig.d.ts +103 -0
  226. package/dist/sdks/long-yield-carry/src/services/carry/carryAllocationConfig.js +146 -0
  227. package/dist/sdks/long-yield-carry/src/services/carry/index.d.ts +2 -0
  228. package/dist/sdks/long-yield-carry/src/services/carry/index.js +18 -0
  229. package/dist/sdks/long-yield-carry/src/services/carry/lycLendingPositionManager.d.ts +39 -0
  230. package/dist/sdks/long-yield-carry/src/services/carry/lycLendingPositionManager.js +100 -0
  231. package/dist/sdks/long-yield-carry/src/services/index.d.ts +5 -0
  232. package/dist/sdks/long-yield-carry/src/services/index.js +21 -0
  233. package/dist/sdks/long-yield-carry/src/services/lendingPosition/index.d.ts +2 -0
  234. package/dist/sdks/long-yield-carry/src/services/lendingPosition/index.js +5 -0
  235. package/dist/sdks/long-yield-carry/src/services/lendingPosition/lendingPositionService.d.ts +88 -0
  236. package/dist/sdks/long-yield-carry/src/services/lendingPosition/lendingPositionService.js +229 -0
  237. package/dist/sdks/long-yield-carry/src/services/rebalance/index.d.ts +2 -0
  238. package/dist/sdks/long-yield-carry/src/services/rebalance/index.js +18 -0
  239. package/dist/sdks/long-yield-carry/src/services/rebalance/token/index.d.ts +1 -0
  240. package/dist/sdks/long-yield-carry/src/services/rebalance/token/index.js +17 -0
  241. package/dist/sdks/long-yield-carry/src/services/rebalance/token/tokenRebalanceService.d.ts +51 -0
  242. package/dist/sdks/long-yield-carry/src/services/rebalance/token/tokenRebalanceService.js +99 -0
  243. package/dist/sdks/long-yield-carry/src/services/rebalance/yieldingBank/index.d.ts +3 -0
  244. package/dist/sdks/long-yield-carry/src/services/rebalance/yieldingBank/index.js +21 -0
  245. package/dist/sdks/long-yield-carry/src/services/rebalance/yieldingBank/planner.d.ts +68 -0
  246. package/dist/sdks/long-yield-carry/src/services/rebalance/yieldingBank/planner.js +181 -0
  247. package/dist/sdks/long-yield-carry/src/services/rebalance/yieldingBank/strategy.d.ts +26 -0
  248. package/dist/sdks/long-yield-carry/src/services/rebalance/yieldingBank/strategy.js +26 -0
  249. package/dist/sdks/long-yield-carry/src/services/rebalance/yieldingBank/types.d.ts +40 -0
  250. package/dist/sdks/long-yield-carry/src/services/rebalance/yieldingBank/types.js +2 -0
  251. package/dist/sdks/long-yield-carry/src/services/redemption/index.d.ts +2 -0
  252. package/dist/sdks/long-yield-carry/src/services/redemption/index.js +5 -0
  253. package/dist/sdks/long-yield-carry/src/services/redemption/redemptionService.d.ts +139 -0
  254. package/dist/sdks/long-yield-carry/src/services/redemption/redemptionService.js +532 -0
  255. package/dist/sdks/long-yield-carry/src/types/enriched.d.ts +168 -0
  256. package/dist/sdks/long-yield-carry/src/types/enriched.js +2 -0
  257. package/dist/sdks/long-yield-carry/src/types/index.d.ts +1 -0
  258. package/dist/sdks/long-yield-carry/src/types/index.js +17 -0
  259. package/dist/sdks/long-yield-carry/src/utils/cache.d.ts +4 -0
  260. package/dist/sdks/long-yield-carry/src/utils/cache.js +10 -0
  261. package/dist/sdks/long-yield-carry/src/utils/data.d.ts +12 -0
  262. package/dist/sdks/long-yield-carry/src/utils/data.js +59 -0
  263. package/dist/sdks/long-yield-carry/src/utils/enrichment.d.ts +5 -0
  264. package/dist/sdks/long-yield-carry/src/utils/enrichment.js +244 -0
  265. package/dist/sdks/long-yield-carry/src/utils/feeDripMetrics.d.ts +36 -0
  266. package/dist/sdks/long-yield-carry/src/utils/feeDripMetrics.js +93 -0
  267. package/dist/sdks/long-yield-carry/src/utils/general.d.ts +28 -0
  268. package/dist/sdks/long-yield-carry/src/utils/general.js +47 -0
  269. package/dist/sdks/long-yield-carry/src/utils/index.d.ts +13 -0
  270. package/dist/sdks/long-yield-carry/src/utils/index.js +29 -0
  271. package/dist/sdks/long-yield-carry/src/utils/ix.d.ts +83 -0
  272. package/dist/sdks/long-yield-carry/src/utils/ix.js +165 -0
  273. package/dist/sdks/long-yield-carry/src/utils/lendingPosition.d.ts +68 -0
  274. package/dist/sdks/long-yield-carry/src/utils/lendingPosition.js +105 -0
  275. package/dist/sdks/long-yield-carry/src/utils/lookupTables.d.ts +55 -0
  276. package/dist/sdks/long-yield-carry/src/utils/lookupTables.js +216 -0
  277. package/dist/sdks/long-yield-carry/src/utils/lycData.d.ts +66 -0
  278. package/dist/sdks/long-yield-carry/src/utils/lycData.js +211 -0
  279. package/dist/sdks/long-yield-carry/src/utils/timelock.d.ts +19 -0
  280. package/dist/sdks/long-yield-carry/src/utils/timelock.js +37 -0
  281. package/dist/sdks/long-yield-carry/src/utils/tokenFeeMath.d.ts +11 -0
  282. package/dist/sdks/long-yield-carry/src/utils/tokenFeeMath.js +24 -0
  283. package/dist/sdks/long-yield-carry/src/utils/transactions.d.ts +20 -0
  284. package/dist/sdks/long-yield-carry/src/utils/transactions.js +72 -0
  285. package/dist/sdks/long-yield-carry/src/utils/yieldingBank.d.ts +24 -0
  286. package/dist/sdks/long-yield-carry/src/utils/yieldingBank.js +36 -0
  287. package/dist/shared/common/src/constants/accountMetas.d.ts +3 -0
  288. package/dist/shared/common/src/constants/accountMetas.js +9 -0
  289. package/dist/shared/common/src/constants/general.d.ts +21 -0
  290. package/dist/shared/common/src/constants/general.js +30 -0
  291. package/dist/shared/common/src/constants/generated/cpi.d.ts +23 -0
  292. package/dist/shared/common/src/constants/generated/cpi.js +28 -0
  293. package/dist/shared/common/src/constants/generated/index.d.ts +1 -0
  294. package/dist/shared/common/src/constants/generated/index.js +17 -0
  295. package/dist/shared/common/src/constants/index.d.ts +3 -0
  296. package/dist/shared/common/src/constants/index.js +19 -0
  297. package/dist/shared/common/src/index.d.ts +4 -0
  298. package/dist/shared/common/src/index.js +20 -0
  299. package/dist/shared/common/src/services/baseAccountClient.d.ts +22 -0
  300. package/dist/shared/common/src/services/baseAccountClient.js +38 -0
  301. package/dist/shared/common/src/services/baseIxBuilderService.d.ts +27 -0
  302. package/dist/shared/common/src/services/baseIxBuilderService.js +48 -0
  303. package/dist/shared/common/src/services/dataCache.d.ts +41 -0
  304. package/dist/shared/common/src/services/dataCache.js +130 -0
  305. package/dist/shared/common/src/services/index.d.ts +8 -0
  306. package/dist/shared/common/src/services/index.js +24 -0
  307. package/dist/shared/common/src/services/lutManager.d.ts +31 -0
  308. package/dist/shared/common/src/services/lutManager.js +133 -0
  309. package/dist/shared/common/src/services/mints/defaults.d.ts +2 -0
  310. package/dist/shared/common/src/services/mints/defaults.js +152 -0
  311. package/dist/shared/common/src/services/mints/index.d.ts +4 -0
  312. package/dist/shared/common/src/services/mints/index.js +20 -0
  313. package/dist/shared/common/src/services/mints/registry.d.ts +70 -0
  314. package/dist/shared/common/src/services/mints/registry.js +117 -0
  315. package/dist/shared/common/src/services/mints/symbols.d.ts +6 -0
  316. package/dist/shared/common/src/services/mints/symbols.js +13 -0
  317. package/dist/shared/common/src/services/mints/types.d.ts +30 -0
  318. package/dist/shared/common/src/services/mints/types.js +2 -0
  319. package/dist/shared/common/src/services/swap/index.d.ts +4 -0
  320. package/dist/shared/common/src/services/swap/index.js +20 -0
  321. package/dist/shared/common/src/services/swap/routableSwapClient.d.ts +36 -0
  322. package/dist/shared/common/src/services/swap/routableSwapClient.js +2 -0
  323. package/dist/shared/common/src/services/swap/swapClientBase.d.ts +45 -0
  324. package/dist/shared/common/src/services/swap/swapClientBase.js +2 -0
  325. package/dist/shared/common/src/services/swap/swapRouting.d.ts +13 -0
  326. package/dist/shared/common/src/services/swap/swapRouting.js +28 -0
  327. package/dist/shared/common/src/services/swap/types.d.ts +77 -0
  328. package/dist/shared/common/src/services/swap/types.js +2 -0
  329. package/dist/shared/common/src/services/token/index.d.ts +2 -0
  330. package/dist/shared/common/src/services/token/index.js +18 -0
  331. package/dist/shared/common/src/services/token/tokenProtocolClientBase.d.ts +51 -0
  332. package/dist/shared/common/src/services/token/tokenProtocolClientBase.js +2 -0
  333. package/dist/shared/common/src/services/token/types.d.ts +19 -0
  334. package/dist/shared/common/src/services/token/types.js +2 -0
  335. package/dist/shared/common/src/services/transactionSender.d.ts +24 -0
  336. package/dist/shared/common/src/services/transactionSender.js +30 -0
  337. package/dist/shared/common/src/types/cpi.d.ts +34 -0
  338. package/dist/shared/common/src/types/cpi.js +8 -0
  339. package/dist/shared/common/src/types/enums.d.ts +59 -0
  340. package/dist/shared/common/src/types/enums.js +122 -0
  341. package/dist/shared/common/src/types/general.d.ts +38 -0
  342. package/dist/shared/common/src/types/general.js +2 -0
  343. package/dist/shared/common/src/types/index.d.ts +4 -0
  344. package/dist/shared/common/src/types/index.js +20 -0
  345. package/dist/shared/common/src/types/solana.d.ts +24 -0
  346. package/dist/shared/common/src/types/solana.js +2 -0
  347. package/dist/shared/common/src/utils/accounts/index.d.ts +5 -0
  348. package/dist/shared/common/src/utils/accounts/index.js +21 -0
  349. package/dist/shared/common/src/utils/accounts/meta.d.ts +21 -0
  350. package/dist/shared/common/src/utils/accounts/meta.js +27 -0
  351. package/dist/shared/common/src/utils/accounts/pda.d.ts +2 -0
  352. package/dist/shared/common/src/utils/accounts/pda.js +17 -0
  353. package/dist/shared/common/src/utils/accounts/roles.d.ts +26 -0
  354. package/dist/shared/common/src/utils/accounts/roles.js +54 -0
  355. package/dist/shared/common/src/utils/accounts/rpc.d.ts +8 -0
  356. package/dist/shared/common/src/utils/accounts/rpc.js +30 -0
  357. package/dist/shared/common/src/utils/accounts/splBalances.d.ts +15 -0
  358. package/dist/shared/common/src/utils/accounts/splBalances.js +52 -0
  359. package/dist/shared/common/src/utils/anchor.d.ts +17 -0
  360. package/dist/shared/common/src/utils/anchor.js +29 -0
  361. package/dist/shared/common/src/utils/asyncConcurrency.d.ts +5 -0
  362. package/dist/shared/common/src/utils/asyncConcurrency.js +28 -0
  363. package/dist/shared/common/src/utils/compat.d.ts +46 -0
  364. package/dist/shared/common/src/utils/compat.js +72 -0
  365. package/dist/shared/common/src/utils/cpi/args.d.ts +69 -0
  366. package/dist/shared/common/src/utils/cpi/args.js +100 -0
  367. package/dist/shared/common/src/utils/cpi/index.d.ts +2 -0
  368. package/dist/shared/common/src/utils/cpi/index.js +18 -0
  369. package/dist/shared/common/src/utils/cpi/refs.d.ts +122 -0
  370. package/dist/shared/common/src/utils/cpi/refs.js +234 -0
  371. package/dist/shared/common/src/utils/data.d.ts +20 -0
  372. package/dist/shared/common/src/utils/data.js +27 -0
  373. package/dist/shared/common/src/utils/general.d.ts +24 -0
  374. package/dist/shared/common/src/utils/general.js +95 -0
  375. package/dist/shared/common/src/utils/index.d.ts +22 -0
  376. package/dist/shared/common/src/utils/index.js +38 -0
  377. package/dist/shared/common/src/utils/instruction.d.ts +74 -0
  378. package/dist/shared/common/src/utils/instruction.js +147 -0
  379. package/dist/shared/common/src/utils/jito.d.ts +113 -0
  380. package/dist/shared/common/src/utils/jito.js +178 -0
  381. package/dist/shared/common/src/utils/json.d.ts +5 -0
  382. package/dist/shared/common/src/utils/json.js +25 -0
  383. package/dist/shared/common/src/utils/jsonRpcFetch.d.ts +21 -0
  384. package/dist/shared/common/src/utils/jsonRpcFetch.js +134 -0
  385. package/dist/shared/common/src/utils/metadata.d.ts +107 -0
  386. package/dist/shared/common/src/utils/metadata.js +194 -0
  387. package/dist/shared/common/src/utils/numbers.d.ts +72 -0
  388. package/dist/shared/common/src/utils/numbers.js +193 -0
  389. package/dist/shared/common/src/utils/priorityFee.d.ts +18 -0
  390. package/dist/shared/common/src/utils/priorityFee.js +63 -0
  391. package/dist/shared/common/src/utils/retry.d.ts +20 -0
  392. package/dist/shared/common/src/utils/retry.js +69 -0
  393. package/dist/shared/common/src/utils/rpc.d.ts +40 -0
  394. package/dist/shared/common/src/utils/rpc.js +130 -0
  395. package/dist/shared/common/src/utils/solana.d.ts +23 -0
  396. package/dist/shared/common/src/utils/solana.js +61 -0
  397. package/dist/shared/common/src/utils/timeSeries.d.ts +18 -0
  398. package/dist/shared/common/src/utils/timeSeries.js +40 -0
  399. package/dist/shared/common/src/utils/token.d.ts +33 -0
  400. package/dist/shared/common/src/utils/token.js +82 -0
  401. package/dist/shared/common/src/utils/transaction.d.ts +154 -0
  402. package/dist/shared/common/src/utils/transaction.js +585 -0
  403. package/dist/shared/common/src/utils/transactionSplitter.d.ts +85 -0
  404. package/dist/shared/common/src/utils/transactionSplitter.js +127 -0
  405. package/dist/shared/common/src/utils/txAccountCoverage.d.ts +49 -0
  406. package/dist/shared/common/src/utils/txAccountCoverage.js +122 -0
  407. package/dist/shared/jupiter-helpers/src/api.d.ts +59 -0
  408. package/dist/shared/jupiter-helpers/src/api.js +130 -0
  409. package/dist/shared/jupiter-helpers/src/client.d.ts +79 -0
  410. package/dist/shared/jupiter-helpers/src/client.js +173 -0
  411. package/dist/shared/jupiter-helpers/src/constants.d.ts +35 -0
  412. package/dist/shared/jupiter-helpers/src/constants.js +38 -0
  413. package/dist/shared/jupiter-helpers/src/extract.d.ts +30 -0
  414. package/dist/shared/jupiter-helpers/src/extract.js +57 -0
  415. package/dist/shared/jupiter-helpers/src/index.d.ts +5 -0
  416. package/dist/shared/jupiter-helpers/src/index.js +21 -0
  417. package/dist/shared/jupiter-helpers/src/routePreInstructions.d.ts +19 -0
  418. package/dist/shared/jupiter-helpers/src/routePreInstructions.js +61 -0
  419. package/dist/shared/jupiter-helpers/src/sizeExactInForMinOutput.d.ts +70 -0
  420. package/dist/shared/jupiter-helpers/src/sizeExactInForMinOutput.js +95 -0
  421. package/dist/shared/jupiter-helpers/src/types.d.ts +66 -0
  422. package/dist/shared/jupiter-helpers/src/types.js +2 -0
  423. package/dist/shared/lending-platforms/src/constants/cache.d.ts +8 -0
  424. package/dist/shared/lending-platforms/src/constants/cache.js +11 -0
  425. package/dist/shared/lending-platforms/src/constants/index.d.ts +3 -0
  426. package/dist/shared/lending-platforms/src/constants/index.js +19 -0
  427. package/dist/shared/lending-platforms/src/constants/kamino.d.ts +7 -0
  428. package/dist/shared/lending-platforms/src/constants/kamino.js +83 -0
  429. package/dist/shared/lending-platforms/src/constants/lendingPosition.d.ts +7 -0
  430. package/dist/shared/lending-platforms/src/constants/lendingPosition.js +10 -0
  431. package/dist/shared/lending-platforms/src/data/accounts/index.d.ts +2 -0
  432. package/dist/shared/lending-platforms/src/data/accounts/index.js +18 -0
  433. package/dist/shared/lending-platforms/src/data/accounts/kamino.d.ts +42 -0
  434. package/dist/shared/lending-platforms/src/data/accounts/kamino.js +104 -0
  435. package/dist/shared/lending-platforms/src/data/accounts/lpAccountsBase.d.ts +7 -0
  436. package/dist/shared/lending-platforms/src/data/accounts/lpAccountsBase.js +9 -0
  437. package/dist/shared/lending-platforms/src/data/incentive/incentiveBase.d.ts +35 -0
  438. package/dist/shared/lending-platforms/src/data/incentive/incentiveBase.js +26 -0
  439. package/dist/shared/lending-platforms/src/data/incentive/index.d.ts +2 -0
  440. package/dist/shared/lending-platforms/src/data/incentive/index.js +18 -0
  441. package/dist/shared/lending-platforms/src/data/incentive/kamino.d.ts +55 -0
  442. package/dist/shared/lending-platforms/src/data/incentive/kamino.js +101 -0
  443. package/dist/shared/lending-platforms/src/data/index.d.ts +6 -0
  444. package/dist/shared/lending-platforms/src/data/index.js +22 -0
  445. package/dist/shared/lending-platforms/src/data/instructions/index.d.ts +3 -0
  446. package/dist/shared/lending-platforms/src/data/instructions/index.js +19 -0
  447. package/dist/shared/lending-platforms/src/data/instructions/kamino.d.ts +55 -0
  448. package/dist/shared/lending-platforms/src/data/instructions/kamino.js +630 -0
  449. package/dist/shared/lending-platforms/src/data/instructions/lpInstructionsBase.d.ts +175 -0
  450. package/dist/shared/lending-platforms/src/data/instructions/lpInstructionsBase.js +192 -0
  451. package/dist/shared/lending-platforms/src/data/instructions/types.d.ts +7 -0
  452. package/dist/shared/lending-platforms/src/data/instructions/types.js +2 -0
  453. package/dist/shared/lending-platforms/src/data/platform/index.d.ts +2 -0
  454. package/dist/shared/lending-platforms/src/data/platform/index.js +18 -0
  455. package/dist/shared/lending-platforms/src/data/platform/kamino.d.ts +59 -0
  456. package/dist/shared/lending-platforms/src/data/platform/kamino.js +206 -0
  457. package/dist/shared/lending-platforms/src/data/platform/lpDataBase.d.ts +35 -0
  458. package/dist/shared/lending-platforms/src/data/platform/lpDataBase.js +31 -0
  459. package/dist/shared/lending-platforms/src/data/reserve/index.d.ts +2 -0
  460. package/dist/shared/lending-platforms/src/data/reserve/index.js +18 -0
  461. package/dist/shared/lending-platforms/src/data/reserve/kamino.d.ts +45 -0
  462. package/dist/shared/lending-platforms/src/data/reserve/kamino.js +141 -0
  463. package/dist/shared/lending-platforms/src/data/reserve/reserveBase.d.ts +114 -0
  464. package/dist/shared/lending-platforms/src/data/reserve/reserveBase.js +125 -0
  465. package/dist/shared/lending-platforms/src/data/userPosition/index.d.ts +2 -0
  466. package/dist/shared/lending-platforms/src/data/userPosition/index.js +18 -0
  467. package/dist/shared/lending-platforms/src/data/userPosition/kamino.d.ts +15 -0
  468. package/dist/shared/lending-platforms/src/data/userPosition/kamino.js +45 -0
  469. package/dist/shared/lending-platforms/src/data/userPosition/userPositionBase.d.ts +50 -0
  470. package/dist/shared/lending-platforms/src/data/userPosition/userPositionBase.js +63 -0
  471. package/dist/shared/lending-platforms/src/index.d.ts +5 -0
  472. package/dist/shared/lending-platforms/src/index.js +21 -0
  473. package/dist/shared/lending-platforms/src/services/client/index.d.ts +2 -0
  474. package/dist/shared/lending-platforms/src/services/client/index.js +18 -0
  475. package/dist/shared/lending-platforms/src/services/client/kamino.d.ts +53 -0
  476. package/dist/shared/lending-platforms/src/services/client/kamino.js +142 -0
  477. package/dist/shared/lending-platforms/src/services/client/lpClientBase.d.ts +66 -0
  478. package/dist/shared/lending-platforms/src/services/client/lpClientBase.js +19 -0
  479. package/dist/shared/lending-platforms/src/services/flashLoan/flashLoanBase.d.ts +49 -0
  480. package/dist/shared/lending-platforms/src/services/flashLoan/flashLoanBase.js +16 -0
  481. package/dist/shared/lending-platforms/src/services/flashLoan/index.d.ts +2 -0
  482. package/dist/shared/lending-platforms/src/services/flashLoan/index.js +18 -0
  483. package/dist/shared/lending-platforms/src/services/flashLoan/kamino.d.ts +11 -0
  484. package/dist/shared/lending-platforms/src/services/flashLoan/kamino.js +85 -0
  485. package/dist/shared/lending-platforms/src/services/index.d.ts +5 -0
  486. package/dist/shared/lending-platforms/src/services/index.js +21 -0
  487. package/dist/shared/lending-platforms/src/services/lendingPosition/index.d.ts +2 -0
  488. package/dist/shared/lending-platforms/src/services/lendingPosition/index.js +18 -0
  489. package/dist/shared/lending-platforms/src/services/lendingPosition/lendingPositionManager.d.ts +117 -0
  490. package/dist/shared/lending-platforms/src/services/lendingPosition/lendingPositionManager.js +342 -0
  491. package/dist/shared/lending-platforms/src/services/lendingPosition/types.d.ts +40 -0
  492. package/dist/shared/lending-platforms/src/services/lendingPosition/types.js +2 -0
  493. package/dist/shared/lending-platforms/src/services/leverage/index.d.ts +2 -0
  494. package/dist/shared/lending-platforms/src/services/leverage/index.js +18 -0
  495. package/dist/shared/lending-platforms/src/services/leverage/leverageService.d.ts +104 -0
  496. package/dist/shared/lending-platforms/src/services/leverage/leverageService.js +437 -0
  497. package/dist/shared/lending-platforms/src/services/leverage/types.d.ts +261 -0
  498. package/dist/shared/lending-platforms/src/services/leverage/types.js +2 -0
  499. package/dist/shared/lending-platforms/src/services/reservesManager.d.ts +53 -0
  500. package/dist/shared/lending-platforms/src/services/reservesManager.js +112 -0
  501. package/dist/shared/lending-platforms/src/types/general.d.ts +37 -0
  502. package/dist/shared/lending-platforms/src/types/general.js +8 -0
  503. package/dist/shared/lending-platforms/src/types/index.d.ts +2 -0
  504. package/dist/shared/lending-platforms/src/types/index.js +18 -0
  505. package/dist/shared/lending-platforms/src/types/kamino.d.ts +10 -0
  506. package/dist/shared/lending-platforms/src/types/kamino.js +2 -0
  507. package/dist/shared/lending-platforms/src/utils/accounts.d.ts +16 -0
  508. package/dist/shared/lending-platforms/src/utils/accounts.js +36 -0
  509. package/dist/shared/lending-platforms/src/utils/cache.d.ts +3 -0
  510. package/dist/shared/lending-platforms/src/utils/cache.js +11 -0
  511. package/dist/shared/lending-platforms/src/utils/index.d.ts +6 -0
  512. package/dist/shared/lending-platforms/src/utils/index.js +22 -0
  513. package/dist/shared/lending-platforms/src/utils/kamino.d.ts +87 -0
  514. package/dist/shared/lending-platforms/src/utils/kamino.js +190 -0
  515. package/dist/shared/lending-platforms/src/utils/lendingPlatform.d.ts +6 -0
  516. package/dist/shared/lending-platforms/src/utils/lendingPlatform.js +16 -0
  517. package/dist/shared/lending-platforms/src/utils/math.d.ts +47 -0
  518. package/dist/shared/lending-platforms/src/utils/math.js +123 -0
  519. package/dist/shared/lending-platforms/src/utils/scope.d.ts +38 -0
  520. package/dist/shared/lending-platforms/src/utils/scope.js +144 -0
  521. package/dist/shared/oracle-service/src/constants/index.d.ts +3 -0
  522. package/dist/shared/oracle-service/src/constants/index.js +19 -0
  523. package/dist/shared/oracle-service/src/constants/pyth.d.ts +7 -0
  524. package/dist/shared/oracle-service/src/constants/pyth.js +71 -0
  525. package/dist/shared/oracle-service/src/constants/splStake.d.ts +2 -0
  526. package/dist/shared/oracle-service/src/constants/splStake.js +6 -0
  527. package/dist/shared/oracle-service/src/constants/switchboard.d.ts +7 -0
  528. package/dist/shared/oracle-service/src/constants/switchboard.js +10 -0
  529. package/dist/shared/oracle-service/src/feeds/custom.d.ts +30 -0
  530. package/dist/shared/oracle-service/src/feeds/custom.js +56 -0
  531. package/dist/shared/oracle-service/src/feeds/jupiter.d.ts +7 -0
  532. package/dist/shared/oracle-service/src/feeds/jupiter.js +43 -0
  533. package/dist/shared/oracle-service/src/feeds/priceBase.d.ts +13 -0
  534. package/dist/shared/oracle-service/src/feeds/priceBase.js +25 -0
  535. package/dist/shared/oracle-service/src/feeds/pyth.d.ts +8 -0
  536. package/dist/shared/oracle-service/src/feeds/pyth.js +59 -0
  537. package/dist/shared/oracle-service/src/feeds/splStake.d.ts +26 -0
  538. package/dist/shared/oracle-service/src/feeds/splStake.js +99 -0
  539. package/dist/shared/oracle-service/src/feeds/switchboard.d.ts +6 -0
  540. package/dist/shared/oracle-service/src/feeds/switchboard.js +11 -0
  541. package/dist/shared/oracle-service/src/index.d.ts +5 -0
  542. package/dist/shared/oracle-service/src/index.js +26 -0
  543. package/dist/shared/oracle-service/src/oracle.d.ts +22 -0
  544. package/dist/shared/oracle-service/src/oracle.js +104 -0
  545. package/dist/shared/oracle-service/src/types.d.ts +4 -0
  546. package/dist/shared/oracle-service/src/types.js +2 -0
  547. package/dist/shared/oracle-service/src/utils/general.d.ts +20 -0
  548. package/dist/shared/oracle-service/src/utils/general.js +65 -0
  549. package/dist/shared/oracle-service/src/utils/index.d.ts +1 -0
  550. package/dist/shared/oracle-service/src/utils/index.js +17 -0
  551. package/dist/shared/perena-helpers/src/accounts.d.ts +7 -0
  552. package/dist/shared/perena-helpers/src/accounts.js +12 -0
  553. package/dist/shared/perena-helpers/src/client.d.ts +299 -0
  554. package/dist/shared/perena-helpers/src/client.js +680 -0
  555. package/dist/shared/perena-helpers/src/constants.d.ts +5 -0
  556. package/dist/shared/perena-helpers/src/constants.js +8 -0
  557. package/dist/shared/perena-helpers/src/cpi/burn.d.ts +27 -0
  558. package/dist/shared/perena-helpers/src/cpi/burn.js +22 -0
  559. package/dist/shared/perena-helpers/src/cpi/index.d.ts +3 -0
  560. package/dist/shared/perena-helpers/src/cpi/index.js +19 -0
  561. package/dist/shared/perena-helpers/src/cpi/mint.d.ts +27 -0
  562. package/dist/shared/perena-helpers/src/cpi/mint.js +22 -0
  563. package/dist/shared/perena-helpers/src/cpi/requestUnstake.d.ts +19 -0
  564. package/dist/shared/perena-helpers/src/cpi/requestUnstake.js +16 -0
  565. package/dist/shared/perena-helpers/src/index.d.ts +5 -0
  566. package/dist/shared/perena-helpers/src/index.js +21 -0
  567. package/dist/shared/perena-helpers/src/utils.d.ts +9 -0
  568. package/dist/shared/perena-helpers/src/utils.js +54 -0
  569. package/dist/shared/swap-aggregator/src/aggSwapClient.d.ts +71 -0
  570. package/dist/shared/swap-aggregator/src/aggSwapClient.js +103 -0
  571. package/dist/shared/swap-aggregator/src/index.d.ts +1 -0
  572. package/dist/shared/swap-aggregator/src/index.js +17 -0
  573. package/docs/launchingToken.md +57 -0
  574. package/package.json +75 -0
  575. package/scripts/asyncBurn.ts +155 -0
  576. package/scripts/burnToken.ts +120 -0
  577. package/scripts/claimIncentives.ts +125 -0
  578. package/scripts/closeCpiPlans.ts +113 -0
  579. package/scripts/collectInterest.ts +194 -0
  580. package/scripts/collectProtocolFees.ts +144 -0
  581. package/scripts/computeOptimalAllocations.ts +117 -0
  582. package/scripts/createToken.ts +100 -0
  583. package/scripts/createTokenLendingPosition.ts +204 -0
  584. package/scripts/createYieldingBank.ts +91 -0
  585. package/scripts/decreaseCarryPositions.ts +359 -0
  586. package/scripts/depositUnlentCollateral.ts +106 -0
  587. package/scripts/emergency/deleverageAll.ts +287 -0
  588. package/scripts/emergency/triggerCircuitBreaker.ts +87 -0
  589. package/scripts/env.ts +4 -0
  590. package/scripts/findTxs.ts +169 -0
  591. package/scripts/increaseCarryPositions.ts +134 -0
  592. package/scripts/inspect/format.ts +576 -0
  593. package/scripts/inspect.ts +147 -0
  594. package/scripts/localUtils.ts +249 -0
  595. package/scripts/mintToken.ts +126 -0
  596. package/scripts/processAsyncBurns.ts +89 -0
  597. package/scripts/rebalanceToken.ts +269 -0
  598. package/scripts/rebalanceYieldingBank.ts +183 -0
  599. package/scripts/recollateralizeLoss.ts +79 -0
  600. package/scripts/refresh.ts +156 -0
  601. package/scripts/updateFees.ts +486 -0
  602. package/scripts/updateGeneralLut.ts +36 -0
  603. package/scripts/updateLendingPositionConfig.ts +172 -0
  604. package/scripts/updateTokenLuts.ts +36 -0
  605. package/scripts/updateTokenMetadata.ts +199 -0
  606. package/scripts/updateYieldingBankConfig.ts +100 -0
  607. package/scripts/withdrawUnlentCollateral.ts +178 -0
  608. package/src/client/account.ts +503 -0
  609. package/src/client/builders/args.ts +381 -0
  610. package/src/client/builders/asyncBurnBuilder.ts +305 -0
  611. package/src/client/builders/base.ts +303 -0
  612. package/src/client/builders/burnTokenBuilder.ts +258 -0
  613. package/src/client/builders/claimIncentivesBuilder.ts +211 -0
  614. package/src/client/builders/collectFeesBuilder.ts +52 -0
  615. package/src/client/builders/collectInterestBuilder.ts +165 -0
  616. package/src/client/builders/createCpiPlanBuilder.ts +21 -0
  617. package/src/client/builders/createTokenBuilder.ts +73 -0
  618. package/src/client/builders/createTokenLendingPositionBuilder.ts +219 -0
  619. package/src/client/builders/createYieldingBankAllocationBuilder.ts +32 -0
  620. package/src/client/builders/createYieldingBankBuilder.ts +39 -0
  621. package/src/client/builders/decreaseCarryPositionBuilder.ts +162 -0
  622. package/src/client/builders/depositUnlentCollateralBuilder.ts +95 -0
  623. package/src/client/builders/increaseCarryPositionBuilder.ts +105 -0
  624. package/src/client/builders/index.ts +37 -0
  625. package/src/client/builders/mintTokenBuilder.ts +137 -0
  626. package/src/client/builders/rebalanceTokenBuilder.ts +356 -0
  627. package/src/client/builders/rebalanceYieldingBankBuilder.ts +109 -0
  628. package/src/client/builders/recollateralizeLossBuilder.ts +367 -0
  629. package/src/client/builders/refreshTokenStateBuilder.ts +153 -0
  630. package/src/client/builders/refreshTokensBuilder.ts +82 -0
  631. package/src/client/builders/refreshYieldingBankBuilder.ts +42 -0
  632. package/src/client/builders/resetTokenBurnRateLimitBuilder.ts +21 -0
  633. package/src/client/builders/setTokenCircuitBreakerBuilder.ts +40 -0
  634. package/src/client/builders/setYieldingBankCircuitBreakerBuilder.ts +37 -0
  635. package/src/client/builders/updateLendingPositionConfigBuilder.ts +33 -0
  636. package/src/client/builders/updateTokenConfigurationBuilder.ts +50 -0
  637. package/src/client/builders/updateTokenMetadataBuilder.ts +24 -0
  638. package/src/client/builders/updateYieldingBankConfigBuilder.ts +32 -0
  639. package/src/client/builders/utils.ts +26 -0
  640. package/src/client/client.ts +264 -0
  641. package/src/client/externalLiquidityResolver.ts +54 -0
  642. package/src/client/index.ts +20 -0
  643. package/src/client/lendingPlatformClients.ts +50 -0
  644. package/src/client/pda.ts +102 -0
  645. package/src/client/plans/collectInterest.ts +207 -0
  646. package/src/client/plans/decreaseCarryPosition.ts +226 -0
  647. package/src/client/routes/collectInterest.ts +56 -0
  648. package/src/client/transaction.ts +106 -0
  649. package/src/client/types/builders.ts +19 -0
  650. package/src/client/types/enums.ts +47 -0
  651. package/src/client/types/general.ts +117 -0
  652. package/src/client/types/index.ts +6 -0
  653. package/src/client/types/ix.ts +452 -0
  654. package/src/client/types/planTypes/collectInterest.ts +97 -0
  655. package/src/client/types/planTypes/common.ts +31 -0
  656. package/src/client/types/planTypes/decreaseCarryPosition.ts +134 -0
  657. package/src/client/types/planTypes/index.ts +3 -0
  658. package/src/client/types/tx.ts +409 -0
  659. package/src/constants/configs/allocations.ts +30 -0
  660. package/src/constants/configs/carryTradePresets.ts +164 -0
  661. package/src/constants/configs/index.ts +2 -0
  662. package/src/constants/general.ts +141 -0
  663. package/src/constants/index.ts +3 -0
  664. package/src/constants/lycTokenMetadata.ts +52 -0
  665. package/src/decoders/decodeTransaction.ts +319 -0
  666. package/src/decoders/discriminators.ts +10 -0
  667. package/src/decoders/idlAccounts.ts +75 -0
  668. package/src/decoders/index.ts +15 -0
  669. package/src/decoders/innerCpis.ts +262 -0
  670. package/src/decoders/lycInstructionNames.ts +73 -0
  671. package/src/decoders/programIds.ts +12 -0
  672. package/src/decoders/solana.ts +25 -0
  673. package/src/decoders/transactionPayload.ts +41 -0
  674. package/src/decoders/types.ts +60 -0
  675. package/src/errors.ts +195 -0
  676. package/src/idl/long_yield_carry.ts +14648 -0
  677. package/src/index.ts +10 -0
  678. package/src/metrics/index.ts +1 -0
  679. package/src/metrics/protocolMetrics.ts +976 -0
  680. package/src/models/index.ts +9 -0
  681. package/src/models/lycToken.ts +380 -0
  682. package/src/models/yieldingBank.ts +127 -0
  683. package/src/services/allocation/allocationService.ts +823 -0
  684. package/src/services/allocation/index.ts +2 -0
  685. package/src/services/allocation/types.ts +27 -0
  686. package/src/services/carry/carryAllocationConfig.ts +266 -0
  687. package/src/services/carry/index.ts +2 -0
  688. package/src/services/carry/lycLendingPositionManager.ts +167 -0
  689. package/src/services/index.ts +5 -0
  690. package/src/services/lendingPosition/index.ts +5 -0
  691. package/src/services/lendingPosition/lendingPositionService.ts +328 -0
  692. package/src/services/rebalance/index.ts +2 -0
  693. package/src/services/rebalance/token/index.ts +1 -0
  694. package/src/services/rebalance/token/tokenRebalanceService.ts +142 -0
  695. package/src/services/rebalance/yieldingBank/index.ts +3 -0
  696. package/src/services/rebalance/yieldingBank/planner.ts +215 -0
  697. package/src/services/rebalance/yieldingBank/strategy.ts +41 -0
  698. package/src/services/rebalance/yieldingBank/types.ts +41 -0
  699. package/src/services/redemption/index.ts +9 -0
  700. package/src/services/redemption/redemptionService.ts +758 -0
  701. package/src/types/enriched.ts +187 -0
  702. package/src/types/index.ts +1 -0
  703. package/src/utils/cache.ts +12 -0
  704. package/src/utils/data.ts +65 -0
  705. package/src/utils/enrichment.ts +330 -0
  706. package/src/utils/feeDripMetrics.ts +146 -0
  707. package/src/utils/general.ts +54 -0
  708. package/src/utils/index.ts +13 -0
  709. package/src/utils/ix.ts +227 -0
  710. package/src/utils/lendingPosition.ts +221 -0
  711. package/src/utils/lookupTables.ts +309 -0
  712. package/src/utils/lycData.ts +321 -0
  713. package/src/utils/timelock.ts +63 -0
  714. package/src/utils/tokenFeeMath.ts +25 -0
  715. package/src/utils/transactions.ts +109 -0
  716. package/src/utils/yieldingBank.ts +38 -0
  717. package/tsconfig.json +11 -0
@@ -0,0 +1,339 @@
1
+ import type { BN } from "@anchor-lang/core";
2
+ import type { Address } from "@solana/kit";
3
+ import type { AnchorOracleType, CpiData, SwapClient, TransactionCacheInvalidation, TransactionPlan as BaseTransactionPlan } from "common";
4
+ import { YieldingBankAllocationConfig } from "./ix";
5
+ import type { DecreaseCarryPositionTxPlanParams, DecreaseCarryRepaySteering } from "./planTypes/decreaseCarryPosition";
6
+ import type { TokenLpPositionAccountOverrides } from "./ix";
7
+ /**
8
+ * Fully composed transaction output ready to pass to `sendTransaction`.
9
+ */
10
+ export interface LongYieldCarryTransactionPlan extends BaseTransactionPlan {
11
+ /**
12
+ * Cache entries that should be cleared only after the transaction confirms.
13
+ *
14
+ * This keeps transaction builders pure while still letting callers invalidate
15
+ * stale off-chain snapshots when a successful on-chain write changes account
16
+ * topology (for example first-time lending account setup).
17
+ */
18
+ postSuccessCacheInvalidations?: TransactionCacheInvalidation[];
19
+ /** Optional lending-client transaction id reused across composed plans. */
20
+ txId?: string;
21
+ /** Optional diagnostics for operator-facing scripts and services. */
22
+ debug?: LongYieldCarryTransactionPlanDebug;
23
+ }
24
+ export interface LongYieldCarryTransactionPlanDebug {
25
+ processAsyncBurn?: {
26
+ epochId: bigint;
27
+ sequence: bigint;
28
+ request: Address;
29
+ user: Address;
30
+ /** How collateral is delivered when the request is processed. */
31
+ collateralDelivery: "nativeSol" | "tokenAta";
32
+ /** Populated for non-native collateral mints. */
33
+ userCollateralAccount?: Address;
34
+ /** Populated for wrapped SOL collateral (request-scoped WSOL escrow). */
35
+ requestCollateralAccount?: Address;
36
+ };
37
+ }
38
+ export interface MintTokenTxParams {
39
+ /**
40
+ * Collateral amount to deposit in base units (e.g. lamports).
41
+ *
42
+ * Pass `"all"` to deposit the entire collateral ATA balance. The on-chain
43
+ * instruction resolves `u64::MAX` to the ATA's live balance at execution time.
44
+ */
45
+ depositAmount: BN | "all";
46
+ }
47
+ export interface BurnTokenTxParams {
48
+ /**
49
+ * yToken amount to burn in base units (e.g. lamports for a 9-decimal token).
50
+ *
51
+ * Pass `"all"` to burn every yToken in the user's ATA. The on-chain
52
+ * instruction resolves `u64::MAX` to the ATA's live balance at execution time.
53
+ */
54
+ burnAmount: BN | number | "all";
55
+ /**
56
+ * Override the auto-derived redemption epoch ID. Defaults to
57
+ * {@link currentEpochId} (floored to the nearest minute).
58
+ */
59
+ epochId?: BN | number;
60
+ /**
61
+ * Override the auto-derived request sequence within the epoch. Defaults to
62
+ * the next available sequence read from on-chain epoch state (or 0 for a
63
+ * fresh epoch).
64
+ */
65
+ requestSequence?: BN | number;
66
+ }
67
+ export interface RebalanceSwapSpec {
68
+ /**
69
+ * Swap client used to quote and build CPI data for this rebalance leg.
70
+ * When omitted, `getRebalanceYieldingBankTx` uses the transaction client's
71
+ * default aggregate swap client (Perena for USD* ↔ supported stables, Jupiter otherwise).
72
+ */
73
+ swapClient?: SwapClient;
74
+ /** Mint being sold. */
75
+ inputMint: Address;
76
+ /** Mint being bought. */
77
+ outputMint: Address;
78
+ /** Exact input or requested quote amount, depending on the swap client. */
79
+ amount: number;
80
+ /** Slippage tolerance in basis points. Defaults to the caller's chosen swap behavior. */
81
+ slippageBps?: number;
82
+ }
83
+ /**
84
+ * Extra account that backs an asset holding's off-ATA liquidity during refresh.
85
+ *
86
+ * Example: a Perena withdrawal queue that temporarily escrows USD*-J shares after
87
+ * `request_unstake_junior`, while the YieldingBank still economically owns them.
88
+ */
89
+ export interface YieldingBankExternalLiquiditySource {
90
+ /** Asset mint whose refresh should include this external source. */
91
+ mint: Address;
92
+ /** Account holding the pending balance for that mint. */
93
+ account: Address;
94
+ }
95
+ /**
96
+ * Inputs for `client.tx.rebalanceYieldingBank.getTx({...})`.
97
+ *
98
+ * The transaction must be signed by the program's manager; ATA setup in the plan uses the
99
+ * client's environment manager address.
100
+ */
101
+ export interface RebalanceYieldingBankTxParams {
102
+ /** Pre-built CPI descriptors (one per swap / deposit step). */
103
+ cpiData?: CpiData[];
104
+ /**
105
+ * High-level swap specifications. Each is resolved into CPI data by calling
106
+ * `getQuote` + `getSwapCpiData` on the leg's `swapClient`, or the SDK aggregate
107
+ * swap client when `swapClient` is omitted. Resolved CPI data is appended after
108
+ * any explicit `cpiData` entries.
109
+ */
110
+ swaps?: RebalanceSwapSpec[];
111
+ /**
112
+ * Optional new holding or external position to register before the
113
+ * rebalance executes.
114
+ */
115
+ newAllocation?: {
116
+ config: YieldingBankAllocationConfig;
117
+ };
118
+ }
119
+ export interface RefreshTokensTxParams {
120
+ /** Token PDA addresses to refresh. */
121
+ tokens: Address[];
122
+ /**
123
+ * When true, always prepend `refresh_yielding_bank` for each bank referenced
124
+ * by the token's active carry positions, even if the bank appears fresh
125
+ * client-side.
126
+ *
127
+ * When false (default), the builder skips yielding-bank refreshes whose
128
+ * cached `lastRefreshedTs` is still inside the normal freshness window.
129
+ */
130
+ alwaysRefreshYieldingBanks?: boolean;
131
+ }
132
+ export interface TopUpUnlentReservesTxParams {
133
+ /** Index into the token's lending_positions array for the source position. */
134
+ lendingPositionIndex: number;
135
+ /**
136
+ * Withdrawal amount in UI units (e.g. 1.5 for 1.5 SOL).
137
+ * Pass `"all"` to withdraw the entire lending position's collateral.
138
+ */
139
+ uiAmount: number | "all";
140
+ /** Optional redemption epoch PDA to credit with the withdrawn amount. */
141
+ redemptionEpoch?: Address;
142
+ /** Optional txId reused across composed plans in the same transaction. */
143
+ txId?: string;
144
+ }
145
+ export interface ProcessAsyncBurnTxParams {
146
+ /** Epoch ID (the minute-bucketed timestamp used when the epoch was created). */
147
+ epochId: bigint | number;
148
+ /** FIFO sequence number of the request to process within the epoch. */
149
+ sequence: bigint | number;
150
+ }
151
+ export interface DepositUnlentCollateralTxParams {
152
+ /** Index into the token's lending_positions array for the target position. */
153
+ lendingPositionIndex: number;
154
+ /**
155
+ * Deposit amount in UI units (e.g. 1.5 for 1.5 SOL).
156
+ * Required unless `depositAll` is true.
157
+ */
158
+ uiAmount?: number;
159
+ /**
160
+ * When true, deposits all remaining unlent collateral. The token account
161
+ * is fetched to determine the exact amount, so `uiAmount` can be omitted.
162
+ */
163
+ depositAll?: boolean;
164
+ /** Optional txId reused across composed plans in the same transaction. */
165
+ txId?: string;
166
+ }
167
+ export interface IncreaseCarryPositionTxParams {
168
+ /** Index into the token's lending_positions array for the position to borrow against. */
169
+ lendingPositionIndex: number;
170
+ /** The YieldingBank PDA receiving the borrow proceeds. */
171
+ yieldingBank: Address;
172
+ /** Borrow amount in UI units (e.g. 100 for 100 USDC). */
173
+ uiAmount: number;
174
+ /** Optional txId reused across composed plans in the same transaction. */
175
+ txId?: string;
176
+ }
177
+ /**
178
+ * Inputs for `client.tx.rebalanceToken.getTx({...})`.
179
+ *
180
+ * When the source lending position would exceed target utilization after the
181
+ * collateral withdrawal, the builder automatically constructs the flash-loan-
182
+ * wrapped variant: flash-borrow source debt mint → repay source → withdraw
183
+ * collateral → deposit to destination → borrow destination debt mint →
184
+ * exact-out swap back to source debt mint → flash-repay.
185
+ */
186
+ export interface RebalanceTokenTxParams {
187
+ /** Index into the token's lending_positions array for the position to rebalance in-place. */
188
+ lpIndex: number;
189
+ /**
190
+ * Target debt mint. The position's current debt is fully repaid via flash loan and this mint
191
+ * is borrowed instead on the same lending position. The builder resolves the corresponding
192
+ * reserve via `fetchReserveByMint` and the oracle via the oracle registry.
193
+ */
194
+ destinationDebtMint: Address;
195
+ /**
196
+ * Collateral amount used for destination borrow capacity sizing, in UI units. Pass `"all"` to
197
+ * size based on the full current source debt (uses the platform's repay-all sentinel so
198
+ * on-chain interest accrual between snapshot and landing cannot leave dust).
199
+ */
200
+ uiAmount: number | "all";
201
+ /** Slippage tolerance for the exact-out flash swap, in basis points. Defaults to 100. */
202
+ swapSlippageBps?: number;
203
+ /**
204
+ * Maximum acceptable execution cost (route fees + price impact) of the
205
+ * rebalance swap quote vs the oracle-fair cross rate, in bps (see
206
+ * `FlashRebalanceParams.maxSwapCostBps`). When breached, `getTx` throws
207
+ * `FlashRebalanceSwapCostExceededError` instead of returning a plan.
208
+ * Unset = no limit.
209
+ */
210
+ maxSwapCostBps?: number;
211
+ /**
212
+ * Maximum acceptable market basis between the two debt stables (oracle-fair
213
+ * cross rate vs 1:1), in bps, either direction (see
214
+ * `FlashRebalanceParams.maxMarketBasisBps`). Unset = no limit.
215
+ */
216
+ maxMarketBasisBps?: number;
217
+ /** Optional explicit overrides for the LP refresh accounts (user account, collateral reserve, debt oracle). */
218
+ lpPosition?: TokenLpPositionAccountOverrides;
219
+ /**
220
+ * Optional transaction identifier shared with lending clients so composed
221
+ * flows can hoist top-level pre-instructions.
222
+ */
223
+ txId?: string;
224
+ /**
225
+ * Yielding bank that absorbs the destination-debt slippage dust after the
226
+ * exact-out swap. Defaults to the first active yielding bank recorded in the
227
+ * token's `debtCarry` entries.
228
+ */
229
+ yieldingBank?: Address;
230
+ }
231
+ export interface DecreaseCarryPositionTxBuilderParams {
232
+ /** Index into the token's `lendingPositions` array for the position to repay. */
233
+ lendingPositionIndex: number;
234
+ /** Yielding bank PDA holding the funds that will be redeemed or swapped for repayment. */
235
+ yieldingBank: Address;
236
+ /** Slippage tolerance for any required DCP swap, in basis points. Defaults to `40`. */
237
+ swapSlippageBps?: number;
238
+ /** DEX labels to exclude from any required DCP swap (e.g. venues that failed a prior attempt). */
239
+ swapExcludeDexes?: string[];
240
+ /**
241
+ * Optional override for the asset redeemed from the yielding bank.
242
+ *
243
+ * Defaults to the bank's `defaultRedemptionMint`. On-chain permission checks
244
+ * may reject non-manager callers that override this away from the configured
245
+ * default redemption mint.
246
+ */
247
+ sourceMint?: Address;
248
+ /**
249
+ * Optional transaction identifier shared with the lending client.
250
+ *
251
+ * Reuse a parent transaction ID when composing this flow into a larger
252
+ * transaction so lending pre-instructions are not duplicated.
253
+ */
254
+ txId?: string;
255
+ /** See {@link DecreaseCarryRepaySteering}. */
256
+ repaySteering?: DecreaseCarryRepaySteering;
257
+ /**
258
+ * Same as {@link DecreaseCarryPositionBuilderParams.permissionlessOperation}: when true,
259
+ * non-manager callers may execute the resulting plan subject to post-repay validation.
260
+ */
261
+ permissionlessOperation?: boolean;
262
+ }
263
+ /**
264
+ * Inputs accepted by `client.tx.decreaseCarryPosition.getTx({...})`.
265
+ *
266
+ * Pass raw builder params to have the SDK plan the instruction for you, or
267
+ * pass `{ plan }` when you have pre-built a plan via `buildDecreaseCarryPositionPlan`.
268
+ */
269
+ export type DecreaseCarryPositionTxParams = DecreaseCarryPositionTxBuilderParams | DecreaseCarryPositionTxPlanParams;
270
+ /**
271
+ * Inputs for `client.tx.recollateralizeLoss.getTx({...})`.
272
+ *
273
+ * The transaction builder internally:
274
+ * 1. Computes the debt excess (total_debt − total_carry) from on-chain state.
275
+ * 2. Quotes a collateral → debt swap to cover that excess.
276
+ * 3. Checks whether withdrawing the required collateral would push the LP
277
+ * above its target utilization rate. If so, prepends a
278
+ * `decrease_carry_position` sized to free the needed headroom.
279
+ * 4. Builds the Withdraw → Swap → Repay CPI sequence for the main instruction.
280
+ */
281
+ export interface RecollateralizeLossTxParams {
282
+ /** Slippage tolerance for swaps (collateral → debt), in basis points. Defaults to 150. */
283
+ swapSlippageBps?: number;
284
+ /**
285
+ * Optional override for the asset redeemed from the yielding bank during DCP.
286
+ * Defaults to the bank's `defaultRedemptionMint`. Only used when a
287
+ * `decrease_carry_position` is needed to free collateral for the withdrawal.
288
+ */
289
+ sourceMint?: Address;
290
+ /** Optional txId shared with lending clients for pre-instruction deduplication. */
291
+ txId?: string;
292
+ /** Optional explicit overrides for LP refresh accounts. */
293
+ lpPosition?: TokenLpPositionAccountOverrides;
294
+ }
295
+ /**
296
+ * Inputs accepted by `client.tx.collectInterest.getTx({...})`.
297
+ */
298
+ export interface CollectInterestTxParams {
299
+ /** Yielding bank whose carry position should collect accrued interest. */
300
+ yieldingBank: Address;
301
+ /** Slippage tolerance applied to all swaps. Defaults to 100 bps. */
302
+ slippageBps?: number;
303
+ /** Final output mint. Defaults to the token's collateral mint. */
304
+ outputMint?: Address;
305
+ /**
306
+ * Minimum net yield (in USD) below which collection is skipped.
307
+ * Prevents wasteful swaps when accrued interest is negligible.
308
+ * Value is in human-readable USD (e.g. 0.5 = $0.50).
309
+ */
310
+ minYieldUsd?: number;
311
+ }
312
+ export interface ClaimIncentivesTxParams {
313
+ /** Index into the token's lending_positions array. */
314
+ lendingPositionIndex: number;
315
+ /** Incentive reward mint to harvest. */
316
+ incentiveMint: Address;
317
+ /**
318
+ * Pre-resolved farm and user-farm addresses for the claim CPI. When provided
319
+ * the builder skips the on-chain incentive lookup — required when the same
320
+ * incentive mint appears from multiple farms (obligation vs. direct).
321
+ */
322
+ claimAccounts?: {
323
+ farm: Address;
324
+ userFarm: Address;
325
+ };
326
+ /**
327
+ * Yielding bank that receives the claimed rewards. Defaults to the first
328
+ * active yielding bank recorded in the token's `debtCarry` entries.
329
+ */
330
+ yieldingBank?: Address;
331
+ /**
332
+ * Oracle pricing `incentiveMint`. Auto-resolved when the mint matches the
333
+ * debt of an active lending position or is in the shared mints registry;
334
+ * required otherwise.
335
+ */
336
+ incentiveOracle?: Address;
337
+ /** Oracle type for `incentiveOracle`. Auto-resolved when `incentiveOracle` is. */
338
+ incentiveOracleType?: AnchorOracleType;
339
+ }
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,3 @@
1
+ import { YieldingBankAllocationConfig } from "../../client";
2
+ export declare const usdStarAllocationConfig: YieldingBankAllocationConfig;
3
+ export declare const usdStarJuniorAllocationConfig: YieldingBankAllocationConfig;
@@ -0,0 +1,23 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.usdStarJuniorAllocationConfig = exports.usdStarAllocationConfig = void 0;
4
+ const common_1 = require("common");
5
+ const oracle_1 = require("oracle");
6
+ const USD_STAR = common_1.mints.get("USD*");
7
+ const USD_STAR_JUNIOR = common_1.mints.get("USD*-J");
8
+ exports.usdStarAllocationConfig = {
9
+ assetHolding: {
10
+ mint: USD_STAR.address,
11
+ oracle: oracle_1.oracle.getOracleData("USD*").oracle,
12
+ oracleType: (0, common_1.enumToOracleType)(common_1.OracleType.PerenaBank),
13
+ externalLiquidityType: (0, common_1.enumToExternalLiquidityType)(common_1.ExternalLiquidityType.None),
14
+ },
15
+ };
16
+ exports.usdStarJuniorAllocationConfig = {
17
+ assetHolding: {
18
+ mint: USD_STAR_JUNIOR.address,
19
+ oracle: oracle_1.oracle.getOracleData("USD*-J").oracle,
20
+ oracleType: (0, common_1.enumToOracleType)(common_1.OracleType.PerenaTranche),
21
+ externalLiquidityType: (0, common_1.enumToExternalLiquidityType)(common_1.ExternalLiquidityType.PerenaWithdrawalQueue),
22
+ },
23
+ };
@@ -0,0 +1,58 @@
1
+ /**
2
+ * Per-asset carry trade price-band presets, split by volatility regime.
3
+ *
4
+ * Each preset defines three drawdown / rally buffers that control how aggressively a
5
+ * lending position is utilized relative to its liquidation line:
6
+ *
7
+ * - `drawdownPctFromTargetToLiq` — collateral drawdown (%) that separates the **target**
8
+ * utilization from the liquidation line. Larger = more conservative target.
9
+ * - `drawdownPctFromUnwindToLiq` — collateral drawdown (%) that separates the **unwind
10
+ * trigger** from the liquidation line. Smaller than target (closer to liquidation).
11
+ * - `maxPriceChangeUpPercent` — max collateral **rally** (%) before the boost trigger fires,
12
+ * prompting the position to borrow more and return to target.
13
+ *
14
+ * ## Usage
15
+ *
16
+ * Select the appropriate asset preset and volatility regime, then pass it to
17
+ * `LycLendingPositionManager.getLendingAllocationConfigFromPriceBands(preset)`, which combines
18
+ * the price-band params with pair-specific `maxLtv` and `liquidationThreshold` to produce
19
+ * a `CarryLendingAllocationConfig` (target utilization + deviation bands in bps). The
20
+ * resulting config is used to update the on-chain `LendingPositionConfig`, adapting the
21
+ * position's risk envelope to the current market regime.
22
+ *
23
+ * ## Asset tiers (tightest → widest buffers)
24
+ *
25
+ * BTC → ETH → SOL → large-cap alts → small-cap alts
26
+ *
27
+ * Higher-volatility assets use wider buffers to avoid unnecessary unwinds during normal
28
+ * price swings, while lower-volatility assets can afford tighter bands for better capital
29
+ * efficiency.
30
+ */
31
+ import type { CarryPriceBandPreset } from "../../services/carry/carryAllocationConfig";
32
+ export declare const VOLATILITY_REGIMES: readonly ["lowVol", "highVol"];
33
+ export type VolatilityRegime = (typeof VOLATILITY_REGIMES)[number];
34
+ export declare function isVolatilityRegime(s: string): s is VolatilityRegime;
35
+ export type CarryVolatilityPresets = {
36
+ lowVol: CarryPriceBandPreset;
37
+ highVol: CarryPriceBandPreset;
38
+ };
39
+ export interface AssetPresetEntry {
40
+ presets: CarryVolatilityPresets;
41
+ defaultRegime: VolatilityRegime;
42
+ }
43
+ export declare const STOCK_INDEX_PRESETS: CarryVolatilityPresets;
44
+ export declare const BTC_CARRY_PRESETS: CarryVolatilityPresets;
45
+ export declare const ETH_CARRY_PRESETS: CarryVolatilityPresets;
46
+ export declare const SOL_CARRY_PRESETS: CarryVolatilityPresets;
47
+ export declare const LST_CARRY_PRESETS: CarryVolatilityPresets;
48
+ export declare const LARGE_CAP_ALT_CARRY_PRESETS: CarryVolatilityPresets;
49
+ export declare const SMALL_CAP_ALT_CARRY_PRESETS: CarryVolatilityPresets;
50
+ /**
51
+ * Maps collateral symbol (upper-cased) to its carry trade preset tier and
52
+ * default volatility regime. Used by scripts and backend services to resolve
53
+ * the correct price-band parameters when creating or reconfiguring lending
54
+ * positions.
55
+ */
56
+ export declare const ASSET_PRESETS: Record<string, AssetPresetEntry>;
57
+ /** Looks up the carry preset entry for a collateral symbol (case-insensitive). */
58
+ export declare function resolvePresets(collateralSymbol: string): AssetPresetEntry | undefined;
@@ -0,0 +1,116 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ASSET_PRESETS = exports.SMALL_CAP_ALT_CARRY_PRESETS = exports.LARGE_CAP_ALT_CARRY_PRESETS = exports.LST_CARRY_PRESETS = exports.SOL_CARRY_PRESETS = exports.ETH_CARRY_PRESETS = exports.BTC_CARRY_PRESETS = exports.STOCK_INDEX_PRESETS = exports.VOLATILITY_REGIMES = void 0;
4
+ exports.isVolatilityRegime = isVolatilityRegime;
5
+ exports.resolvePresets = resolvePresets;
6
+ exports.VOLATILITY_REGIMES = ["lowVol", "highVol"];
7
+ function isVolatilityRegime(s) {
8
+ return exports.VOLATILITY_REGIMES.includes(s);
9
+ }
10
+ exports.STOCK_INDEX_PRESETS = {
11
+ lowVol: {
12
+ drawdownPctFromTargetToLiq: 8,
13
+ drawdownPctFromUnwindToLiq: 5,
14
+ maxPriceChangeUpPercent: 2,
15
+ },
16
+ highVol: {
17
+ drawdownPctFromTargetToLiq: 11,
18
+ drawdownPctFromUnwindToLiq: 7,
19
+ maxPriceChangeUpPercent: 3,
20
+ },
21
+ };
22
+ exports.BTC_CARRY_PRESETS = {
23
+ lowVol: {
24
+ drawdownPctFromTargetToLiq: 12,
25
+ drawdownPctFromUnwindToLiq: 8,
26
+ maxPriceChangeUpPercent: 6,
27
+ },
28
+ highVol: {
29
+ drawdownPctFromTargetToLiq: 14,
30
+ drawdownPctFromUnwindToLiq: 10,
31
+ maxPriceChangeUpPercent: 8,
32
+ },
33
+ };
34
+ exports.ETH_CARRY_PRESETS = {
35
+ lowVol: {
36
+ drawdownPctFromTargetToLiq: 14,
37
+ drawdownPctFromUnwindToLiq: 10,
38
+ maxPriceChangeUpPercent: 7,
39
+ },
40
+ highVol: {
41
+ drawdownPctFromTargetToLiq: 17,
42
+ drawdownPctFromUnwindToLiq: 12,
43
+ maxPriceChangeUpPercent: 10,
44
+ },
45
+ };
46
+ exports.SOL_CARRY_PRESETS = {
47
+ lowVol: {
48
+ drawdownPctFromTargetToLiq: 16,
49
+ drawdownPctFromUnwindToLiq: 12,
50
+ maxPriceChangeUpPercent: 8,
51
+ },
52
+ highVol: {
53
+ drawdownPctFromTargetToLiq: 19,
54
+ drawdownPctFromUnwindToLiq: 14,
55
+ maxPriceChangeUpPercent: 11,
56
+ },
57
+ };
58
+ exports.LST_CARRY_PRESETS = {
59
+ lowVol: {
60
+ drawdownPctFromTargetToLiq: 19,
61
+ drawdownPctFromUnwindToLiq: 10,
62
+ maxPriceChangeUpPercent: 8,
63
+ },
64
+ highVol: {
65
+ drawdownPctFromTargetToLiq: 22,
66
+ drawdownPctFromUnwindToLiq: 12,
67
+ maxPriceChangeUpPercent: 11,
68
+ },
69
+ };
70
+ exports.LARGE_CAP_ALT_CARRY_PRESETS = {
71
+ lowVol: {
72
+ drawdownPctFromTargetToLiq: 22,
73
+ drawdownPctFromUnwindToLiq: 16,
74
+ maxPriceChangeUpPercent: 8,
75
+ },
76
+ highVol: {
77
+ drawdownPctFromTargetToLiq: 25,
78
+ drawdownPctFromUnwindToLiq: 18,
79
+ maxPriceChangeUpPercent: 10,
80
+ },
81
+ };
82
+ exports.SMALL_CAP_ALT_CARRY_PRESETS = {
83
+ lowVol: {
84
+ drawdownPctFromTargetToLiq: 26,
85
+ drawdownPctFromUnwindToLiq: 22,
86
+ maxPriceChangeUpPercent: 10,
87
+ },
88
+ highVol: {
89
+ drawdownPctFromTargetToLiq: 29,
90
+ drawdownPctFromUnwindToLiq: 24,
91
+ maxPriceChangeUpPercent: 12,
92
+ },
93
+ };
94
+ /**
95
+ * Maps collateral symbol (upper-cased) to its carry trade preset tier and
96
+ * default volatility regime. Used by scripts and backend services to resolve
97
+ * the correct price-band parameters when creating or reconfiguring lending
98
+ * positions.
99
+ */
100
+ exports.ASSET_PRESETS = {
101
+ WBTC: { presets: exports.BTC_CARRY_PRESETS, defaultRegime: "lowVol" },
102
+ CBBTC: { presets: exports.BTC_CARRY_PRESETS, defaultRegime: "lowVol" },
103
+ WETH: { presets: exports.ETH_CARRY_PRESETS, defaultRegime: "lowVol" },
104
+ SOL: { presets: exports.SOL_CARRY_PRESETS, defaultRegime: "lowVol" },
105
+ JUPSOL: { presets: exports.LST_CARRY_PRESETS, defaultRegime: "lowVol" },
106
+ JITOSOL: { presets: exports.LST_CARRY_PRESETS, defaultRegime: "lowVol" },
107
+ DFDVSOL: { presets: exports.LST_CARRY_PRESETS, defaultRegime: "lowVol" },
108
+ SPYX: { presets: exports.STOCK_INDEX_PRESETS, defaultRegime: "lowVol" },
109
+ QQQX: { presets: exports.STOCK_INDEX_PRESETS, defaultRegime: "lowVol" },
110
+ LARGE_CAP: { presets: exports.LARGE_CAP_ALT_CARRY_PRESETS, defaultRegime: "lowVol" },
111
+ SMALL_CAP: { presets: exports.SMALL_CAP_ALT_CARRY_PRESETS, defaultRegime: "highVol" },
112
+ };
113
+ /** Looks up the carry preset entry for a collateral symbol (case-insensitive). */
114
+ function resolvePresets(collateralSymbol) {
115
+ return exports.ASSET_PRESETS[collateralSymbol.toUpperCase()];
116
+ }
@@ -0,0 +1,2 @@
1
+ export * from "./allocations";
2
+ export * from "./carryTradePresets";
@@ -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("./allocations"), exports);
18
+ __exportStar(require("./carryTradePresets"), exports);
@@ -0,0 +1,70 @@
1
+ import { BN } from "@anchor-lang/core";
2
+ import { Address } from "@solana/kit";
3
+ import { PROTOCOL_ADMIN, type DeployedEnv, type Environment } from "common";
4
+ /** Program ID per environment */
5
+ export declare const PROGRAM_ID: Record<Environment, Address>;
6
+ /** Manager authority for manager-gated instruction accounts */
7
+ export declare const MANAGER: Record<Environment, Address>;
8
+ /** Circuit breaker controller for circuit-breaker-gated instruction accounts */
9
+ export declare const CIRCUIT_BREAKER_CONTROLLER: Record<Environment, Address>;
10
+ /** Re-exported from `common` — see {@link PROTOCOL_ADMIN} there. */
11
+ export { PROTOCOL_ADMIN };
12
+ /**
13
+ * Protocol fee wallet — receives the protocol share of mint/burn + perf fees
14
+ * and serves as the on-chain fallback for a token's `roles.fees` when unset
15
+ * (`TokenRoles::curator_fee_wallet()` delegates to `protocol_fee_wallet()`).
16
+ */
17
+ export declare const PROTOCOL_FEE_WALLET: Record<Environment, Address>;
18
+ /** Redemption epoch status: accepting new async burn requests. */
19
+ export declare const REDEMPTION_EPOCH_STATUS_OPEN = 0;
20
+ /** Redemption epoch status: closed to new requests, collateral being funded. */
21
+ export declare const REDEMPTION_EPOCH_STATUS_FUNDING = 1;
22
+ /** Redemption epoch status: funded, individual burn requests being processed. */
23
+ export declare const REDEMPTION_EPOCH_STATUS_PROCESSING = 2;
24
+ /**
25
+ * On-chain `TokenAccounting::MAX_FRESHNESS_SECS` = ONE_HOUR (3600s).
26
+ * We use a 120s buffer so the refresh lands before on-chain staleness kicks in.
27
+ */
28
+ export declare const TOKEN_STALENESS_THRESHOLD_SECS: number;
29
+ /** Maximum heap-frame size requested by composed multi-CPI transactions. */
30
+ export declare const MAX_HEAP_FRAME_BYTES: number;
31
+ /**
32
+ * Mirror of the on-chain `REBALANCE_TOKEN_RATE_LIMIT_SECS` (24 hours). The
33
+ * program rejects a `rebalance_token` on a lending position that was already
34
+ * rebalanced within this window (`RebalanceRateLimited`); the SDK skips such
35
+ * candidates client-side so we never build a transaction that would revert.
36
+ */
37
+ export declare const REBALANCE_TOKEN_RATE_LIMIT_SECS: number;
38
+ /** Default recollateralize-loss swap slippage, capped by the on-chain 150 bps check. */
39
+ export declare const DEFAULT_RECOLLATERALIZE_LOSS_SLIPPAGE_BPS = 150;
40
+ /**
41
+ * Minimum claimable reward (in the reward token's UI units) for an incentive to
42
+ * be worth harvesting. Below this, the on-chain `HarvestReward` moves only dust
43
+ * while still costing a transaction fee, so `getOutstandingIncentives` omits it.
44
+ */
45
+ export declare const DEFAULT_MIN_INCENTIVE_UI_AMOUNT = 0.01;
46
+ /**
47
+ * Sentinel value (u64::MAX) that callers can pass as an amount to `mint_token`
48
+ * or `burn_token` to indicate "use the entire balance".
49
+ * - mint_token: deposits the full collateral ATA balance.
50
+ * - burn_token: burns the full yToken ATA balance.
51
+ */
52
+ export declare const AMOUNT_ALL_SENTINEL: BN;
53
+ /** Re-exported from `common` — see {@link DEPLOYED_ADMIN_KEYPAIR_FP} there. */
54
+ export declare const LYC_ADMIN_KEYPAIR_FP: Record<DeployedEnv, string>;
55
+ /**
56
+ * Filesystem paths to the manager keypair for future manager CLI scripts,
57
+ * fixed per deployment tier (no env overrides).
58
+ */
59
+ export declare const LYC_MANAGER_KEYPAIR_FP: Record<DeployedEnv, string>;
60
+ /**
61
+ * Filesystem paths to the circuit breaker controller keypair.
62
+ * Used by emergency scripts (trigger circuit breaker, reset burn rate limit).
63
+ */
64
+ export declare const LYC_CB_KEYPAIR_FP: Record<DeployedEnv, string>;
65
+ /**
66
+ * Shared general LUT per remote deployment tier (`test` | `prod`), same split as
67
+ * {@link LYC_ADMIN_KEYPAIR_FP}. Populate via `pnpm run update-general-lut -- test|prod`.
68
+ */
69
+ export declare const GENERAL_LOOKUP_TABLES: Record<DeployedEnv, Address>;
70
+ export declare const TOKEN_LOOKUP_TABLES: Record<Address, Address>;