@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.
Files changed (738) hide show
  1. package/README.md +32 -0
  2. package/dist/carry-XU3WUD22.mjs +20 -0
  3. package/dist/carry-XU3WUD22.mjs.map +1 -0
  4. package/dist/chunk-2T23QQCX.mjs +3707 -0
  5. package/dist/chunk-2T23QQCX.mjs.map +1 -0
  6. package/dist/chunk-GOW6CARW.mjs +3969 -0
  7. package/dist/chunk-GOW6CARW.mjs.map +1 -0
  8. package/dist/chunk-ZPXXY3QV.mjs +9330 -0
  9. package/dist/chunk-ZPXXY3QV.mjs.map +1 -0
  10. package/dist/{sdks/long-yield-carry/src/idl/long_yield_carry.d.ts → core-DP6wfpME.d.mts} +3242 -84
  11. package/dist/core-DP6wfpME.d.ts +10485 -0
  12. package/dist/core.d.mts +8 -0
  13. package/dist/core.d.ts +8 -0
  14. package/dist/core.js +12348 -0
  15. package/dist/core.js.map +1 -0
  16. package/dist/core.mjs +72 -0
  17. package/dist/core.mjs.map +1 -0
  18. package/dist/index.d.mts +2537 -0
  19. package/dist/index.d.ts +2537 -0
  20. package/dist/index.js +23884 -0
  21. package/dist/index.js.map +1 -0
  22. package/dist/index.mjs +5898 -0
  23. package/dist/index.mjs.map +1 -0
  24. package/package.json +56 -10
  25. package/.env.example +0 -11
  26. package/dist/sdks/long-yield-carry/scripts/asyncBurn.d.ts +0 -1
  27. package/dist/sdks/long-yield-carry/scripts/asyncBurn.js +0 -117
  28. package/dist/sdks/long-yield-carry/scripts/burnToken.d.ts +0 -1
  29. package/dist/sdks/long-yield-carry/scripts/burnToken.js +0 -98
  30. package/dist/sdks/long-yield-carry/scripts/claimIncentives.d.ts +0 -1
  31. package/dist/sdks/long-yield-carry/scripts/claimIncentives.js +0 -108
  32. package/dist/sdks/long-yield-carry/scripts/closeCpiPlans.d.ts +0 -1
  33. package/dist/sdks/long-yield-carry/scripts/closeCpiPlans.js +0 -93
  34. package/dist/sdks/long-yield-carry/scripts/collectInterest.d.ts +0 -1
  35. package/dist/sdks/long-yield-carry/scripts/collectInterest.js +0 -164
  36. package/dist/sdks/long-yield-carry/scripts/collectProtocolFees.d.ts +0 -1
  37. package/dist/sdks/long-yield-carry/scripts/collectProtocolFees.js +0 -120
  38. package/dist/sdks/long-yield-carry/scripts/computeOptimalAllocations.d.ts +0 -1
  39. package/dist/sdks/long-yield-carry/scripts/computeOptimalAllocations.js +0 -84
  40. package/dist/sdks/long-yield-carry/scripts/createToken.d.ts +0 -1
  41. package/dist/sdks/long-yield-carry/scripts/createToken.js +0 -76
  42. package/dist/sdks/long-yield-carry/scripts/createTokenLendingPosition.d.ts +0 -1
  43. package/dist/sdks/long-yield-carry/scripts/createTokenLendingPosition.js +0 -157
  44. package/dist/sdks/long-yield-carry/scripts/createYieldingBank.d.ts +0 -1
  45. package/dist/sdks/long-yield-carry/scripts/createYieldingBank.js +0 -69
  46. package/dist/sdks/long-yield-carry/scripts/decreaseCarryPositions.d.ts +0 -1
  47. package/dist/sdks/long-yield-carry/scripts/decreaseCarryPositions.js +0 -247
  48. package/dist/sdks/long-yield-carry/scripts/depositUnlentCollateral.d.ts +0 -1
  49. package/dist/sdks/long-yield-carry/scripts/depositUnlentCollateral.js +0 -90
  50. package/dist/sdks/long-yield-carry/scripts/emergency/deleverageAll.d.ts +0 -1
  51. package/dist/sdks/long-yield-carry/scripts/emergency/deleverageAll.js +0 -202
  52. package/dist/sdks/long-yield-carry/scripts/emergency/triggerCircuitBreaker.d.ts +0 -1
  53. package/dist/sdks/long-yield-carry/scripts/emergency/triggerCircuitBreaker.js +0 -68
  54. package/dist/sdks/long-yield-carry/scripts/env.d.ts +0 -1
  55. package/dist/sdks/long-yield-carry/scripts/env.js +0 -8
  56. package/dist/sdks/long-yield-carry/scripts/findTxs.d.ts +0 -1
  57. package/dist/sdks/long-yield-carry/scripts/findTxs.js +0 -143
  58. package/dist/sdks/long-yield-carry/scripts/increaseCarryPositions.d.ts +0 -1
  59. package/dist/sdks/long-yield-carry/scripts/increaseCarryPositions.js +0 -112
  60. package/dist/sdks/long-yield-carry/scripts/inspect/format.d.ts +0 -13
  61. package/dist/sdks/long-yield-carry/scripts/inspect/format.js +0 -363
  62. package/dist/sdks/long-yield-carry/scripts/inspect.d.ts +0 -1
  63. package/dist/sdks/long-yield-carry/scripts/inspect.js +0 -108
  64. package/dist/sdks/long-yield-carry/scripts/localUtils.d.ts +0 -53
  65. package/dist/sdks/long-yield-carry/scripts/localUtils.js +0 -191
  66. package/dist/sdks/long-yield-carry/scripts/mintToken.d.ts +0 -1
  67. package/dist/sdks/long-yield-carry/scripts/mintToken.js +0 -103
  68. package/dist/sdks/long-yield-carry/scripts/processAsyncBurns.d.ts +0 -1
  69. package/dist/sdks/long-yield-carry/scripts/processAsyncBurns.js +0 -76
  70. package/dist/sdks/long-yield-carry/scripts/rebalanceToken.d.ts +0 -1
  71. package/dist/sdks/long-yield-carry/scripts/rebalanceToken.js +0 -210
  72. package/dist/sdks/long-yield-carry/scripts/rebalanceYieldingBank.d.ts +0 -1
  73. package/dist/sdks/long-yield-carry/scripts/rebalanceYieldingBank.js +0 -149
  74. package/dist/sdks/long-yield-carry/scripts/recollateralizeLoss.d.ts +0 -1
  75. package/dist/sdks/long-yield-carry/scripts/recollateralizeLoss.js +0 -64
  76. package/dist/sdks/long-yield-carry/scripts/refresh.d.ts +0 -1
  77. package/dist/sdks/long-yield-carry/scripts/refresh.js +0 -101
  78. package/dist/sdks/long-yield-carry/scripts/updateFees.d.ts +0 -1
  79. package/dist/sdks/long-yield-carry/scripts/updateFees.js +0 -369
  80. package/dist/sdks/long-yield-carry/scripts/updateGeneralLut.d.ts +0 -1
  81. package/dist/sdks/long-yield-carry/scripts/updateGeneralLut.js +0 -27
  82. package/dist/sdks/long-yield-carry/scripts/updateLendingPositionConfig.d.ts +0 -1
  83. package/dist/sdks/long-yield-carry/scripts/updateLendingPositionConfig.js +0 -127
  84. package/dist/sdks/long-yield-carry/scripts/updateTokenLuts.d.ts +0 -1
  85. package/dist/sdks/long-yield-carry/scripts/updateTokenLuts.js +0 -27
  86. package/dist/sdks/long-yield-carry/scripts/updateTokenMetadata.d.ts +0 -1
  87. package/dist/sdks/long-yield-carry/scripts/updateTokenMetadata.js +0 -194
  88. package/dist/sdks/long-yield-carry/scripts/updateYieldingBankConfig.d.ts +0 -1
  89. package/dist/sdks/long-yield-carry/scripts/updateYieldingBankConfig.js +0 -84
  90. package/dist/sdks/long-yield-carry/scripts/withdrawUnlentCollateral.d.ts +0 -1
  91. package/dist/sdks/long-yield-carry/scripts/withdrawUnlentCollateral.js +0 -140
  92. package/dist/sdks/long-yield-carry/src/client/account.d.ts +0 -152
  93. package/dist/sdks/long-yield-carry/src/client/account.js +0 -349
  94. package/dist/sdks/long-yield-carry/src/client/builders/args.d.ts +0 -299
  95. package/dist/sdks/long-yield-carry/src/client/builders/args.js +0 -2
  96. package/dist/sdks/long-yield-carry/src/client/builders/asyncBurnBuilder.d.ts +0 -20
  97. package/dist/sdks/long-yield-carry/src/client/builders/asyncBurnBuilder.js +0 -212
  98. package/dist/sdks/long-yield-carry/src/client/builders/base.d.ts +0 -77
  99. package/dist/sdks/long-yield-carry/src/client/builders/base.js +0 -191
  100. package/dist/sdks/long-yield-carry/src/client/builders/burnTokenBuilder.d.ts +0 -18
  101. package/dist/sdks/long-yield-carry/src/client/builders/burnTokenBuilder.js +0 -165
  102. package/dist/sdks/long-yield-carry/src/client/builders/claimIncentivesBuilder.d.ts +0 -9
  103. package/dist/sdks/long-yield-carry/src/client/builders/claimIncentivesBuilder.js +0 -135
  104. package/dist/sdks/long-yield-carry/src/client/builders/collectFeesBuilder.d.ts +0 -14
  105. package/dist/sdks/long-yield-carry/src/client/builders/collectFeesBuilder.js +0 -50
  106. package/dist/sdks/long-yield-carry/src/client/builders/collectInterestBuilder.d.ts +0 -8
  107. package/dist/sdks/long-yield-carry/src/client/builders/collectInterestBuilder.js +0 -86
  108. package/dist/sdks/long-yield-carry/src/client/builders/createCpiPlanBuilder.d.ts +0 -6
  109. package/dist/sdks/long-yield-carry/src/client/builders/createCpiPlanBuilder.js +0 -22
  110. package/dist/sdks/long-yield-carry/src/client/builders/createTokenBuilder.d.ts +0 -7
  111. package/dist/sdks/long-yield-carry/src/client/builders/createTokenBuilder.js +0 -64
  112. package/dist/sdks/long-yield-carry/src/client/builders/createTokenLendingPositionBuilder.d.ts +0 -10
  113. package/dist/sdks/long-yield-carry/src/client/builders/createTokenLendingPositionBuilder.js +0 -138
  114. package/dist/sdks/long-yield-carry/src/client/builders/createYieldingBankAllocationBuilder.d.ts +0 -7
  115. package/dist/sdks/long-yield-carry/src/client/builders/createYieldingBankAllocationBuilder.js +0 -29
  116. package/dist/sdks/long-yield-carry/src/client/builders/createYieldingBankBuilder.d.ts +0 -7
  117. package/dist/sdks/long-yield-carry/src/client/builders/createYieldingBankBuilder.js +0 -39
  118. package/dist/sdks/long-yield-carry/src/client/builders/decreaseCarryPositionBuilder.d.ts +0 -30
  119. package/dist/sdks/long-yield-carry/src/client/builders/decreaseCarryPositionBuilder.js +0 -99
  120. package/dist/sdks/long-yield-carry/src/client/builders/depositUnlentCollateralBuilder.d.ts +0 -8
  121. package/dist/sdks/long-yield-carry/src/client/builders/depositUnlentCollateralBuilder.js +0 -64
  122. package/dist/sdks/long-yield-carry/src/client/builders/increaseCarryPositionBuilder.d.ts +0 -8
  123. package/dist/sdks/long-yield-carry/src/client/builders/increaseCarryPositionBuilder.js +0 -73
  124. package/dist/sdks/long-yield-carry/src/client/builders/index.d.ts +0 -28
  125. package/dist/sdks/long-yield-carry/src/client/builders/index.js +0 -62
  126. package/dist/sdks/long-yield-carry/src/client/builders/mintTokenBuilder.d.ts +0 -8
  127. package/dist/sdks/long-yield-carry/src/client/builders/mintTokenBuilder.js +0 -95
  128. package/dist/sdks/long-yield-carry/src/client/builders/rebalanceTokenBuilder.d.ts +0 -11
  129. package/dist/sdks/long-yield-carry/src/client/builders/rebalanceTokenBuilder.js +0 -255
  130. package/dist/sdks/long-yield-carry/src/client/builders/rebalanceYieldingBankBuilder.d.ts +0 -8
  131. package/dist/sdks/long-yield-carry/src/client/builders/rebalanceYieldingBankBuilder.js +0 -75
  132. package/dist/sdks/long-yield-carry/src/client/builders/recollateralizeLossBuilder.d.ts +0 -12
  133. package/dist/sdks/long-yield-carry/src/client/builders/recollateralizeLossBuilder.js +0 -220
  134. package/dist/sdks/long-yield-carry/src/client/builders/refreshTokenStateBuilder.d.ts +0 -9
  135. package/dist/sdks/long-yield-carry/src/client/builders/refreshTokenStateBuilder.js +0 -112
  136. package/dist/sdks/long-yield-carry/src/client/builders/refreshTokensBuilder.d.ts +0 -9
  137. package/dist/sdks/long-yield-carry/src/client/builders/refreshTokensBuilder.js +0 -59
  138. package/dist/sdks/long-yield-carry/src/client/builders/refreshYieldingBankBuilder.d.ts +0 -8
  139. package/dist/sdks/long-yield-carry/src/client/builders/refreshYieldingBankBuilder.js +0 -29
  140. package/dist/sdks/long-yield-carry/src/client/builders/resetTokenBurnRateLimitBuilder.d.ts +0 -7
  141. package/dist/sdks/long-yield-carry/src/client/builders/resetTokenBurnRateLimitBuilder.js +0 -19
  142. package/dist/sdks/long-yield-carry/src/client/builders/setTokenCircuitBreakerBuilder.d.ts +0 -11
  143. package/dist/sdks/long-yield-carry/src/client/builders/setTokenCircuitBreakerBuilder.js +0 -31
  144. package/dist/sdks/long-yield-carry/src/client/builders/setYieldingBankCircuitBreakerBuilder.d.ts +0 -8
  145. package/dist/sdks/long-yield-carry/src/client/builders/setYieldingBankCircuitBreakerBuilder.js +0 -28
  146. package/dist/sdks/long-yield-carry/src/client/builders/updateLendingPositionConfigBuilder.d.ts +0 -10
  147. package/dist/sdks/long-yield-carry/src/client/builders/updateLendingPositionConfigBuilder.js +0 -30
  148. package/dist/sdks/long-yield-carry/src/client/builders/updateTokenConfigurationBuilder.d.ts +0 -11
  149. package/dist/sdks/long-yield-carry/src/client/builders/updateTokenConfigurationBuilder.js +0 -47
  150. package/dist/sdks/long-yield-carry/src/client/builders/updateTokenMetadataBuilder.d.ts +0 -7
  151. package/dist/sdks/long-yield-carry/src/client/builders/updateTokenMetadataBuilder.js +0 -24
  152. package/dist/sdks/long-yield-carry/src/client/builders/updateYieldingBankConfigBuilder.d.ts +0 -10
  153. package/dist/sdks/long-yield-carry/src/client/builders/updateYieldingBankConfigBuilder.js +0 -31
  154. package/dist/sdks/long-yield-carry/src/client/builders/utils.d.ts +0 -4
  155. package/dist/sdks/long-yield-carry/src/client/builders/utils.js +0 -20
  156. package/dist/sdks/long-yield-carry/src/client/client.d.ts +0 -115
  157. package/dist/sdks/long-yield-carry/src/client/client.js +0 -166
  158. package/dist/sdks/long-yield-carry/src/client/externalLiquidityResolver.d.ts +0 -13
  159. package/dist/sdks/long-yield-carry/src/client/externalLiquidityResolver.js +0 -34
  160. package/dist/sdks/long-yield-carry/src/client/index.d.ts +0 -10
  161. package/dist/sdks/long-yield-carry/src/client/index.js +0 -33
  162. package/dist/sdks/long-yield-carry/src/client/lendingPlatformClients.d.ts +0 -19
  163. package/dist/sdks/long-yield-carry/src/client/lendingPlatformClients.js +0 -33
  164. package/dist/sdks/long-yield-carry/src/client/pda.d.ts +0 -33
  165. package/dist/sdks/long-yield-carry/src/client/pda.js +0 -79
  166. package/dist/sdks/long-yield-carry/src/client/plans/collectInterest.d.ts +0 -24
  167. package/dist/sdks/long-yield-carry/src/client/plans/collectInterest.js +0 -150
  168. package/dist/sdks/long-yield-carry/src/client/plans/decreaseCarryPosition.d.ts +0 -12
  169. package/dist/sdks/long-yield-carry/src/client/plans/decreaseCarryPosition.js +0 -140
  170. package/dist/sdks/long-yield-carry/src/client/routes/collectInterest.d.ts +0 -13
  171. package/dist/sdks/long-yield-carry/src/client/routes/collectInterest.js +0 -39
  172. package/dist/sdks/long-yield-carry/src/client/transaction.d.ts +0 -41
  173. package/dist/sdks/long-yield-carry/src/client/transaction.js +0 -55
  174. package/dist/sdks/long-yield-carry/src/client/types/builders.d.ts +0 -18
  175. package/dist/sdks/long-yield-carry/src/client/types/builders.js +0 -2
  176. package/dist/sdks/long-yield-carry/src/client/types/enums.d.ts +0 -22
  177. package/dist/sdks/long-yield-carry/src/client/types/enums.js +0 -48
  178. package/dist/sdks/long-yield-carry/src/client/types/general.d.ts +0 -98
  179. package/dist/sdks/long-yield-carry/src/client/types/general.js +0 -2
  180. package/dist/sdks/long-yield-carry/src/client/types/index.d.ts +0 -6
  181. package/dist/sdks/long-yield-carry/src/client/types/index.js +0 -22
  182. package/dist/sdks/long-yield-carry/src/client/types/ix.d.ts +0 -352
  183. package/dist/sdks/long-yield-carry/src/client/types/ix.js +0 -2
  184. package/dist/sdks/long-yield-carry/src/client/types/planTypes/collectInterest.d.ts +0 -91
  185. package/dist/sdks/long-yield-carry/src/client/types/planTypes/collectInterest.js +0 -2
  186. package/dist/sdks/long-yield-carry/src/client/types/planTypes/common.d.ts +0 -28
  187. package/dist/sdks/long-yield-carry/src/client/types/planTypes/common.js +0 -2
  188. package/dist/sdks/long-yield-carry/src/client/types/planTypes/decreaseCarryPosition.d.ts +0 -128
  189. package/dist/sdks/long-yield-carry/src/client/types/planTypes/decreaseCarryPosition.js +0 -2
  190. package/dist/sdks/long-yield-carry/src/client/types/planTypes/index.d.ts +0 -3
  191. package/dist/sdks/long-yield-carry/src/client/types/planTypes/index.js +0 -19
  192. package/dist/sdks/long-yield-carry/src/client/types/tx.d.ts +0 -339
  193. package/dist/sdks/long-yield-carry/src/client/types/tx.js +0 -2
  194. package/dist/sdks/long-yield-carry/src/constants/configs/allocations.d.ts +0 -3
  195. package/dist/sdks/long-yield-carry/src/constants/configs/allocations.js +0 -23
  196. package/dist/sdks/long-yield-carry/src/constants/configs/carryTradePresets.d.ts +0 -58
  197. package/dist/sdks/long-yield-carry/src/constants/configs/carryTradePresets.js +0 -116
  198. package/dist/sdks/long-yield-carry/src/constants/configs/index.d.ts +0 -2
  199. package/dist/sdks/long-yield-carry/src/constants/configs/index.js +0 -18
  200. package/dist/sdks/long-yield-carry/src/constants/general.d.ts +0 -70
  201. package/dist/sdks/long-yield-carry/src/constants/general.js +0 -107
  202. package/dist/sdks/long-yield-carry/src/constants/index.d.ts +0 -3
  203. package/dist/sdks/long-yield-carry/src/constants/index.js +0 -19
  204. package/dist/sdks/long-yield-carry/src/constants/lycTokenMetadata.d.ts +0 -36
  205. package/dist/sdks/long-yield-carry/src/constants/lycTokenMetadata.js +0 -41
  206. package/dist/sdks/long-yield-carry/src/decoders/decodeTransaction.d.ts +0 -86
  207. package/dist/sdks/long-yield-carry/src/decoders/decodeTransaction.js +0 -230
  208. package/dist/sdks/long-yield-carry/src/decoders/discriminators.d.ts +0 -8
  209. package/dist/sdks/long-yield-carry/src/decoders/discriminators.js +0 -11
  210. package/dist/sdks/long-yield-carry/src/decoders/idlAccounts.d.ts +0 -29
  211. package/dist/sdks/long-yield-carry/src/decoders/idlAccounts.js +0 -57
  212. package/dist/sdks/long-yield-carry/src/decoders/index.d.ts +0 -6
  213. package/dist/sdks/long-yield-carry/src/decoders/index.js +0 -14
  214. package/dist/sdks/long-yield-carry/src/decoders/innerCpis.d.ts +0 -68
  215. package/dist/sdks/long-yield-carry/src/decoders/innerCpis.js +0 -225
  216. package/dist/sdks/long-yield-carry/src/decoders/lycInstructionNames.d.ts +0 -6
  217. package/dist/sdks/long-yield-carry/src/decoders/lycInstructionNames.js +0 -73
  218. package/dist/sdks/long-yield-carry/src/decoders/programIds.d.ts +0 -4
  219. package/dist/sdks/long-yield-carry/src/decoders/programIds.js +0 -11
  220. package/dist/sdks/long-yield-carry/src/decoders/solana.d.ts +0 -7
  221. package/dist/sdks/long-yield-carry/src/decoders/solana.js +0 -30
  222. package/dist/sdks/long-yield-carry/src/decoders/transactionPayload.d.ts +0 -41
  223. package/dist/sdks/long-yield-carry/src/decoders/transactionPayload.js +0 -6
  224. package/dist/sdks/long-yield-carry/src/decoders/types.d.ts +0 -58
  225. package/dist/sdks/long-yield-carry/src/decoders/types.js +0 -2
  226. package/dist/sdks/long-yield-carry/src/errors.d.ts +0 -69
  227. package/dist/sdks/long-yield-carry/src/errors.js +0 -183
  228. package/dist/sdks/long-yield-carry/src/idl/long_yield_carry.js +0 -7323
  229. package/dist/sdks/long-yield-carry/src/index.d.ts +0 -10
  230. package/dist/sdks/long-yield-carry/src/index.js +0 -25
  231. package/dist/sdks/long-yield-carry/src/metrics/index.d.ts +0 -1
  232. package/dist/sdks/long-yield-carry/src/metrics/index.js +0 -17
  233. package/dist/sdks/long-yield-carry/src/metrics/protocolMetrics.d.ts +0 -276
  234. package/dist/sdks/long-yield-carry/src/metrics/protocolMetrics.js +0 -547
  235. package/dist/sdks/long-yield-carry/src/models/index.d.ts +0 -3
  236. package/dist/sdks/long-yield-carry/src/models/index.js +0 -7
  237. package/dist/sdks/long-yield-carry/src/models/lycToken.d.ts +0 -156
  238. package/dist/sdks/long-yield-carry/src/models/lycToken.js +0 -288
  239. package/dist/sdks/long-yield-carry/src/models/yieldingBank.d.ts +0 -52
  240. package/dist/sdks/long-yield-carry/src/models/yieldingBank.js +0 -109
  241. package/dist/sdks/long-yield-carry/src/services/allocation/allocationService.d.ts +0 -106
  242. package/dist/sdks/long-yield-carry/src/services/allocation/allocationService.js +0 -589
  243. package/dist/sdks/long-yield-carry/src/services/allocation/index.d.ts +0 -2
  244. package/dist/sdks/long-yield-carry/src/services/allocation/index.js +0 -18
  245. package/dist/sdks/long-yield-carry/src/services/allocation/types.d.ts +0 -25
  246. package/dist/sdks/long-yield-carry/src/services/allocation/types.js +0 -2
  247. package/dist/sdks/long-yield-carry/src/services/carry/carryAllocationConfig.d.ts +0 -103
  248. package/dist/sdks/long-yield-carry/src/services/carry/carryAllocationConfig.js +0 -146
  249. package/dist/sdks/long-yield-carry/src/services/carry/index.d.ts +0 -2
  250. package/dist/sdks/long-yield-carry/src/services/carry/index.js +0 -18
  251. package/dist/sdks/long-yield-carry/src/services/carry/lycLendingPositionManager.d.ts +0 -39
  252. package/dist/sdks/long-yield-carry/src/services/carry/lycLendingPositionManager.js +0 -100
  253. package/dist/sdks/long-yield-carry/src/services/index.d.ts +0 -5
  254. package/dist/sdks/long-yield-carry/src/services/index.js +0 -21
  255. package/dist/sdks/long-yield-carry/src/services/lendingPosition/index.d.ts +0 -2
  256. package/dist/sdks/long-yield-carry/src/services/lendingPosition/index.js +0 -5
  257. package/dist/sdks/long-yield-carry/src/services/lendingPosition/lendingPositionService.d.ts +0 -88
  258. package/dist/sdks/long-yield-carry/src/services/lendingPosition/lendingPositionService.js +0 -229
  259. package/dist/sdks/long-yield-carry/src/services/rebalance/index.d.ts +0 -2
  260. package/dist/sdks/long-yield-carry/src/services/rebalance/index.js +0 -18
  261. package/dist/sdks/long-yield-carry/src/services/rebalance/token/index.d.ts +0 -1
  262. package/dist/sdks/long-yield-carry/src/services/rebalance/token/index.js +0 -17
  263. package/dist/sdks/long-yield-carry/src/services/rebalance/token/tokenRebalanceService.d.ts +0 -51
  264. package/dist/sdks/long-yield-carry/src/services/rebalance/token/tokenRebalanceService.js +0 -99
  265. package/dist/sdks/long-yield-carry/src/services/rebalance/yieldingBank/index.d.ts +0 -3
  266. package/dist/sdks/long-yield-carry/src/services/rebalance/yieldingBank/index.js +0 -21
  267. package/dist/sdks/long-yield-carry/src/services/rebalance/yieldingBank/planner.d.ts +0 -68
  268. package/dist/sdks/long-yield-carry/src/services/rebalance/yieldingBank/planner.js +0 -181
  269. package/dist/sdks/long-yield-carry/src/services/rebalance/yieldingBank/strategy.d.ts +0 -26
  270. package/dist/sdks/long-yield-carry/src/services/rebalance/yieldingBank/strategy.js +0 -26
  271. package/dist/sdks/long-yield-carry/src/services/rebalance/yieldingBank/types.d.ts +0 -40
  272. package/dist/sdks/long-yield-carry/src/services/rebalance/yieldingBank/types.js +0 -2
  273. package/dist/sdks/long-yield-carry/src/services/redemption/index.d.ts +0 -2
  274. package/dist/sdks/long-yield-carry/src/services/redemption/index.js +0 -5
  275. package/dist/sdks/long-yield-carry/src/services/redemption/redemptionService.d.ts +0 -139
  276. package/dist/sdks/long-yield-carry/src/services/redemption/redemptionService.js +0 -532
  277. package/dist/sdks/long-yield-carry/src/types/enriched.d.ts +0 -168
  278. package/dist/sdks/long-yield-carry/src/types/enriched.js +0 -2
  279. package/dist/sdks/long-yield-carry/src/types/index.d.ts +0 -1
  280. package/dist/sdks/long-yield-carry/src/types/index.js +0 -17
  281. package/dist/sdks/long-yield-carry/src/utils/cache.d.ts +0 -4
  282. package/dist/sdks/long-yield-carry/src/utils/cache.js +0 -10
  283. package/dist/sdks/long-yield-carry/src/utils/data.d.ts +0 -12
  284. package/dist/sdks/long-yield-carry/src/utils/data.js +0 -59
  285. package/dist/sdks/long-yield-carry/src/utils/enrichment.d.ts +0 -5
  286. package/dist/sdks/long-yield-carry/src/utils/enrichment.js +0 -244
  287. package/dist/sdks/long-yield-carry/src/utils/feeDripMetrics.d.ts +0 -36
  288. package/dist/sdks/long-yield-carry/src/utils/feeDripMetrics.js +0 -93
  289. package/dist/sdks/long-yield-carry/src/utils/general.d.ts +0 -28
  290. package/dist/sdks/long-yield-carry/src/utils/general.js +0 -47
  291. package/dist/sdks/long-yield-carry/src/utils/index.d.ts +0 -13
  292. package/dist/sdks/long-yield-carry/src/utils/index.js +0 -29
  293. package/dist/sdks/long-yield-carry/src/utils/ix.d.ts +0 -83
  294. package/dist/sdks/long-yield-carry/src/utils/ix.js +0 -165
  295. package/dist/sdks/long-yield-carry/src/utils/lendingPosition.d.ts +0 -68
  296. package/dist/sdks/long-yield-carry/src/utils/lendingPosition.js +0 -105
  297. package/dist/sdks/long-yield-carry/src/utils/lookupTables.d.ts +0 -55
  298. package/dist/sdks/long-yield-carry/src/utils/lookupTables.js +0 -216
  299. package/dist/sdks/long-yield-carry/src/utils/lycData.d.ts +0 -66
  300. package/dist/sdks/long-yield-carry/src/utils/lycData.js +0 -211
  301. package/dist/sdks/long-yield-carry/src/utils/timelock.d.ts +0 -19
  302. package/dist/sdks/long-yield-carry/src/utils/timelock.js +0 -37
  303. package/dist/sdks/long-yield-carry/src/utils/tokenFeeMath.d.ts +0 -11
  304. package/dist/sdks/long-yield-carry/src/utils/tokenFeeMath.js +0 -24
  305. package/dist/sdks/long-yield-carry/src/utils/transactions.d.ts +0 -20
  306. package/dist/sdks/long-yield-carry/src/utils/transactions.js +0 -72
  307. package/dist/sdks/long-yield-carry/src/utils/yieldingBank.d.ts +0 -24
  308. package/dist/sdks/long-yield-carry/src/utils/yieldingBank.js +0 -36
  309. package/dist/shared/common/src/constants/accountMetas.d.ts +0 -3
  310. package/dist/shared/common/src/constants/accountMetas.js +0 -9
  311. package/dist/shared/common/src/constants/general.d.ts +0 -21
  312. package/dist/shared/common/src/constants/general.js +0 -30
  313. package/dist/shared/common/src/constants/generated/cpi.d.ts +0 -23
  314. package/dist/shared/common/src/constants/generated/cpi.js +0 -28
  315. package/dist/shared/common/src/constants/generated/index.d.ts +0 -1
  316. package/dist/shared/common/src/constants/generated/index.js +0 -17
  317. package/dist/shared/common/src/constants/index.d.ts +0 -3
  318. package/dist/shared/common/src/constants/index.js +0 -19
  319. package/dist/shared/common/src/index.d.ts +0 -4
  320. package/dist/shared/common/src/index.js +0 -20
  321. package/dist/shared/common/src/services/baseAccountClient.d.ts +0 -22
  322. package/dist/shared/common/src/services/baseAccountClient.js +0 -38
  323. package/dist/shared/common/src/services/baseIxBuilderService.d.ts +0 -27
  324. package/dist/shared/common/src/services/baseIxBuilderService.js +0 -48
  325. package/dist/shared/common/src/services/dataCache.d.ts +0 -41
  326. package/dist/shared/common/src/services/dataCache.js +0 -130
  327. package/dist/shared/common/src/services/index.d.ts +0 -8
  328. package/dist/shared/common/src/services/index.js +0 -24
  329. package/dist/shared/common/src/services/lutManager.d.ts +0 -31
  330. package/dist/shared/common/src/services/lutManager.js +0 -133
  331. package/dist/shared/common/src/services/mints/defaults.d.ts +0 -2
  332. package/dist/shared/common/src/services/mints/defaults.js +0 -152
  333. package/dist/shared/common/src/services/mints/index.d.ts +0 -4
  334. package/dist/shared/common/src/services/mints/index.js +0 -20
  335. package/dist/shared/common/src/services/mints/registry.d.ts +0 -70
  336. package/dist/shared/common/src/services/mints/registry.js +0 -117
  337. package/dist/shared/common/src/services/mints/symbols.d.ts +0 -6
  338. package/dist/shared/common/src/services/mints/symbols.js +0 -13
  339. package/dist/shared/common/src/services/mints/types.d.ts +0 -30
  340. package/dist/shared/common/src/services/mints/types.js +0 -2
  341. package/dist/shared/common/src/services/swap/index.d.ts +0 -4
  342. package/dist/shared/common/src/services/swap/index.js +0 -20
  343. package/dist/shared/common/src/services/swap/routableSwapClient.d.ts +0 -36
  344. package/dist/shared/common/src/services/swap/routableSwapClient.js +0 -2
  345. package/dist/shared/common/src/services/swap/swapClientBase.d.ts +0 -45
  346. package/dist/shared/common/src/services/swap/swapClientBase.js +0 -2
  347. package/dist/shared/common/src/services/swap/swapRouting.d.ts +0 -13
  348. package/dist/shared/common/src/services/swap/swapRouting.js +0 -28
  349. package/dist/shared/common/src/services/swap/types.d.ts +0 -77
  350. package/dist/shared/common/src/services/swap/types.js +0 -2
  351. package/dist/shared/common/src/services/token/index.d.ts +0 -2
  352. package/dist/shared/common/src/services/token/index.js +0 -18
  353. package/dist/shared/common/src/services/token/tokenProtocolClientBase.d.ts +0 -51
  354. package/dist/shared/common/src/services/token/tokenProtocolClientBase.js +0 -2
  355. package/dist/shared/common/src/services/token/types.d.ts +0 -19
  356. package/dist/shared/common/src/services/token/types.js +0 -2
  357. package/dist/shared/common/src/services/transactionSender.d.ts +0 -24
  358. package/dist/shared/common/src/services/transactionSender.js +0 -30
  359. package/dist/shared/common/src/types/cpi.d.ts +0 -34
  360. package/dist/shared/common/src/types/cpi.js +0 -8
  361. package/dist/shared/common/src/types/enums.d.ts +0 -59
  362. package/dist/shared/common/src/types/enums.js +0 -122
  363. package/dist/shared/common/src/types/general.d.ts +0 -38
  364. package/dist/shared/common/src/types/general.js +0 -2
  365. package/dist/shared/common/src/types/index.d.ts +0 -4
  366. package/dist/shared/common/src/types/index.js +0 -20
  367. package/dist/shared/common/src/types/solana.d.ts +0 -24
  368. package/dist/shared/common/src/types/solana.js +0 -2
  369. package/dist/shared/common/src/utils/accounts/index.d.ts +0 -5
  370. package/dist/shared/common/src/utils/accounts/index.js +0 -21
  371. package/dist/shared/common/src/utils/accounts/meta.d.ts +0 -21
  372. package/dist/shared/common/src/utils/accounts/meta.js +0 -27
  373. package/dist/shared/common/src/utils/accounts/pda.d.ts +0 -2
  374. package/dist/shared/common/src/utils/accounts/pda.js +0 -17
  375. package/dist/shared/common/src/utils/accounts/roles.d.ts +0 -26
  376. package/dist/shared/common/src/utils/accounts/roles.js +0 -54
  377. package/dist/shared/common/src/utils/accounts/rpc.d.ts +0 -8
  378. package/dist/shared/common/src/utils/accounts/rpc.js +0 -30
  379. package/dist/shared/common/src/utils/accounts/splBalances.d.ts +0 -15
  380. package/dist/shared/common/src/utils/accounts/splBalances.js +0 -52
  381. package/dist/shared/common/src/utils/anchor.d.ts +0 -17
  382. package/dist/shared/common/src/utils/anchor.js +0 -29
  383. package/dist/shared/common/src/utils/asyncConcurrency.d.ts +0 -5
  384. package/dist/shared/common/src/utils/asyncConcurrency.js +0 -28
  385. package/dist/shared/common/src/utils/compat.d.ts +0 -46
  386. package/dist/shared/common/src/utils/compat.js +0 -72
  387. package/dist/shared/common/src/utils/cpi/args.d.ts +0 -69
  388. package/dist/shared/common/src/utils/cpi/args.js +0 -100
  389. package/dist/shared/common/src/utils/cpi/index.d.ts +0 -2
  390. package/dist/shared/common/src/utils/cpi/index.js +0 -18
  391. package/dist/shared/common/src/utils/cpi/refs.d.ts +0 -122
  392. package/dist/shared/common/src/utils/cpi/refs.js +0 -234
  393. package/dist/shared/common/src/utils/data.d.ts +0 -20
  394. package/dist/shared/common/src/utils/data.js +0 -27
  395. package/dist/shared/common/src/utils/general.d.ts +0 -24
  396. package/dist/shared/common/src/utils/general.js +0 -95
  397. package/dist/shared/common/src/utils/index.d.ts +0 -22
  398. package/dist/shared/common/src/utils/index.js +0 -38
  399. package/dist/shared/common/src/utils/instruction.d.ts +0 -74
  400. package/dist/shared/common/src/utils/instruction.js +0 -147
  401. package/dist/shared/common/src/utils/jito.d.ts +0 -113
  402. package/dist/shared/common/src/utils/jito.js +0 -178
  403. package/dist/shared/common/src/utils/json.d.ts +0 -5
  404. package/dist/shared/common/src/utils/json.js +0 -25
  405. package/dist/shared/common/src/utils/jsonRpcFetch.d.ts +0 -21
  406. package/dist/shared/common/src/utils/jsonRpcFetch.js +0 -134
  407. package/dist/shared/common/src/utils/metadata.d.ts +0 -107
  408. package/dist/shared/common/src/utils/metadata.js +0 -194
  409. package/dist/shared/common/src/utils/numbers.d.ts +0 -72
  410. package/dist/shared/common/src/utils/numbers.js +0 -193
  411. package/dist/shared/common/src/utils/priorityFee.d.ts +0 -18
  412. package/dist/shared/common/src/utils/priorityFee.js +0 -63
  413. package/dist/shared/common/src/utils/retry.d.ts +0 -20
  414. package/dist/shared/common/src/utils/retry.js +0 -69
  415. package/dist/shared/common/src/utils/rpc.d.ts +0 -40
  416. package/dist/shared/common/src/utils/rpc.js +0 -130
  417. package/dist/shared/common/src/utils/solana.d.ts +0 -23
  418. package/dist/shared/common/src/utils/solana.js +0 -61
  419. package/dist/shared/common/src/utils/timeSeries.d.ts +0 -18
  420. package/dist/shared/common/src/utils/timeSeries.js +0 -40
  421. package/dist/shared/common/src/utils/token.d.ts +0 -33
  422. package/dist/shared/common/src/utils/token.js +0 -82
  423. package/dist/shared/common/src/utils/transaction.d.ts +0 -154
  424. package/dist/shared/common/src/utils/transaction.js +0 -585
  425. package/dist/shared/common/src/utils/transactionSplitter.d.ts +0 -85
  426. package/dist/shared/common/src/utils/transactionSplitter.js +0 -127
  427. package/dist/shared/common/src/utils/txAccountCoverage.d.ts +0 -49
  428. package/dist/shared/common/src/utils/txAccountCoverage.js +0 -122
  429. package/dist/shared/jupiter-helpers/src/api.d.ts +0 -59
  430. package/dist/shared/jupiter-helpers/src/api.js +0 -130
  431. package/dist/shared/jupiter-helpers/src/client.d.ts +0 -79
  432. package/dist/shared/jupiter-helpers/src/client.js +0 -173
  433. package/dist/shared/jupiter-helpers/src/constants.d.ts +0 -35
  434. package/dist/shared/jupiter-helpers/src/constants.js +0 -38
  435. package/dist/shared/jupiter-helpers/src/extract.d.ts +0 -30
  436. package/dist/shared/jupiter-helpers/src/extract.js +0 -57
  437. package/dist/shared/jupiter-helpers/src/index.d.ts +0 -5
  438. package/dist/shared/jupiter-helpers/src/index.js +0 -21
  439. package/dist/shared/jupiter-helpers/src/routePreInstructions.d.ts +0 -19
  440. package/dist/shared/jupiter-helpers/src/routePreInstructions.js +0 -61
  441. package/dist/shared/jupiter-helpers/src/sizeExactInForMinOutput.d.ts +0 -70
  442. package/dist/shared/jupiter-helpers/src/sizeExactInForMinOutput.js +0 -95
  443. package/dist/shared/jupiter-helpers/src/types.d.ts +0 -66
  444. package/dist/shared/jupiter-helpers/src/types.js +0 -2
  445. package/dist/shared/lending-platforms/src/constants/cache.d.ts +0 -8
  446. package/dist/shared/lending-platforms/src/constants/cache.js +0 -11
  447. package/dist/shared/lending-platforms/src/constants/index.d.ts +0 -3
  448. package/dist/shared/lending-platforms/src/constants/index.js +0 -19
  449. package/dist/shared/lending-platforms/src/constants/kamino.d.ts +0 -7
  450. package/dist/shared/lending-platforms/src/constants/kamino.js +0 -83
  451. package/dist/shared/lending-platforms/src/constants/lendingPosition.d.ts +0 -7
  452. package/dist/shared/lending-platforms/src/constants/lendingPosition.js +0 -10
  453. package/dist/shared/lending-platforms/src/data/accounts/index.d.ts +0 -2
  454. package/dist/shared/lending-platforms/src/data/accounts/index.js +0 -18
  455. package/dist/shared/lending-platforms/src/data/accounts/kamino.d.ts +0 -42
  456. package/dist/shared/lending-platforms/src/data/accounts/kamino.js +0 -104
  457. package/dist/shared/lending-platforms/src/data/accounts/lpAccountsBase.d.ts +0 -7
  458. package/dist/shared/lending-platforms/src/data/accounts/lpAccountsBase.js +0 -9
  459. package/dist/shared/lending-platforms/src/data/incentive/incentiveBase.d.ts +0 -35
  460. package/dist/shared/lending-platforms/src/data/incentive/incentiveBase.js +0 -26
  461. package/dist/shared/lending-platforms/src/data/incentive/index.d.ts +0 -2
  462. package/dist/shared/lending-platforms/src/data/incentive/index.js +0 -18
  463. package/dist/shared/lending-platforms/src/data/incentive/kamino.d.ts +0 -55
  464. package/dist/shared/lending-platforms/src/data/incentive/kamino.js +0 -101
  465. package/dist/shared/lending-platforms/src/data/index.d.ts +0 -6
  466. package/dist/shared/lending-platforms/src/data/index.js +0 -22
  467. package/dist/shared/lending-platforms/src/data/instructions/index.d.ts +0 -3
  468. package/dist/shared/lending-platforms/src/data/instructions/index.js +0 -19
  469. package/dist/shared/lending-platforms/src/data/instructions/kamino.d.ts +0 -55
  470. package/dist/shared/lending-platforms/src/data/instructions/kamino.js +0 -630
  471. package/dist/shared/lending-platforms/src/data/instructions/lpInstructionsBase.d.ts +0 -175
  472. package/dist/shared/lending-platforms/src/data/instructions/lpInstructionsBase.js +0 -192
  473. package/dist/shared/lending-platforms/src/data/instructions/types.d.ts +0 -7
  474. package/dist/shared/lending-platforms/src/data/instructions/types.js +0 -2
  475. package/dist/shared/lending-platforms/src/data/platform/index.d.ts +0 -2
  476. package/dist/shared/lending-platforms/src/data/platform/index.js +0 -18
  477. package/dist/shared/lending-platforms/src/data/platform/kamino.d.ts +0 -59
  478. package/dist/shared/lending-platforms/src/data/platform/kamino.js +0 -206
  479. package/dist/shared/lending-platforms/src/data/platform/lpDataBase.d.ts +0 -35
  480. package/dist/shared/lending-platforms/src/data/platform/lpDataBase.js +0 -31
  481. package/dist/shared/lending-platforms/src/data/reserve/index.d.ts +0 -2
  482. package/dist/shared/lending-platforms/src/data/reserve/index.js +0 -18
  483. package/dist/shared/lending-platforms/src/data/reserve/kamino.d.ts +0 -45
  484. package/dist/shared/lending-platforms/src/data/reserve/kamino.js +0 -141
  485. package/dist/shared/lending-platforms/src/data/reserve/reserveBase.d.ts +0 -114
  486. package/dist/shared/lending-platforms/src/data/reserve/reserveBase.js +0 -125
  487. package/dist/shared/lending-platforms/src/data/userPosition/index.d.ts +0 -2
  488. package/dist/shared/lending-platforms/src/data/userPosition/index.js +0 -18
  489. package/dist/shared/lending-platforms/src/data/userPosition/kamino.d.ts +0 -15
  490. package/dist/shared/lending-platforms/src/data/userPosition/kamino.js +0 -45
  491. package/dist/shared/lending-platforms/src/data/userPosition/userPositionBase.d.ts +0 -50
  492. package/dist/shared/lending-platforms/src/data/userPosition/userPositionBase.js +0 -63
  493. package/dist/shared/lending-platforms/src/index.d.ts +0 -5
  494. package/dist/shared/lending-platforms/src/index.js +0 -21
  495. package/dist/shared/lending-platforms/src/services/client/index.d.ts +0 -2
  496. package/dist/shared/lending-platforms/src/services/client/index.js +0 -18
  497. package/dist/shared/lending-platforms/src/services/client/kamino.d.ts +0 -53
  498. package/dist/shared/lending-platforms/src/services/client/kamino.js +0 -142
  499. package/dist/shared/lending-platforms/src/services/client/lpClientBase.d.ts +0 -66
  500. package/dist/shared/lending-platforms/src/services/client/lpClientBase.js +0 -19
  501. package/dist/shared/lending-platforms/src/services/flashLoan/flashLoanBase.d.ts +0 -49
  502. package/dist/shared/lending-platforms/src/services/flashLoan/flashLoanBase.js +0 -16
  503. package/dist/shared/lending-platforms/src/services/flashLoan/index.d.ts +0 -2
  504. package/dist/shared/lending-platforms/src/services/flashLoan/index.js +0 -18
  505. package/dist/shared/lending-platforms/src/services/flashLoan/kamino.d.ts +0 -11
  506. package/dist/shared/lending-platforms/src/services/flashLoan/kamino.js +0 -85
  507. package/dist/shared/lending-platforms/src/services/index.d.ts +0 -5
  508. package/dist/shared/lending-platforms/src/services/index.js +0 -21
  509. package/dist/shared/lending-platforms/src/services/lendingPosition/index.d.ts +0 -2
  510. package/dist/shared/lending-platforms/src/services/lendingPosition/index.js +0 -18
  511. package/dist/shared/lending-platforms/src/services/lendingPosition/lendingPositionManager.d.ts +0 -117
  512. package/dist/shared/lending-platforms/src/services/lendingPosition/lendingPositionManager.js +0 -342
  513. package/dist/shared/lending-platforms/src/services/lendingPosition/types.d.ts +0 -40
  514. package/dist/shared/lending-platforms/src/services/lendingPosition/types.js +0 -2
  515. package/dist/shared/lending-platforms/src/services/leverage/index.d.ts +0 -2
  516. package/dist/shared/lending-platforms/src/services/leverage/index.js +0 -18
  517. package/dist/shared/lending-platforms/src/services/leverage/leverageService.d.ts +0 -104
  518. package/dist/shared/lending-platforms/src/services/leverage/leverageService.js +0 -437
  519. package/dist/shared/lending-platforms/src/services/leverage/types.d.ts +0 -261
  520. package/dist/shared/lending-platforms/src/services/leverage/types.js +0 -2
  521. package/dist/shared/lending-platforms/src/services/reservesManager.d.ts +0 -53
  522. package/dist/shared/lending-platforms/src/services/reservesManager.js +0 -112
  523. package/dist/shared/lending-platforms/src/types/general.d.ts +0 -37
  524. package/dist/shared/lending-platforms/src/types/general.js +0 -8
  525. package/dist/shared/lending-platforms/src/types/index.d.ts +0 -2
  526. package/dist/shared/lending-platforms/src/types/index.js +0 -18
  527. package/dist/shared/lending-platforms/src/types/kamino.d.ts +0 -10
  528. package/dist/shared/lending-platforms/src/types/kamino.js +0 -2
  529. package/dist/shared/lending-platforms/src/utils/accounts.d.ts +0 -16
  530. package/dist/shared/lending-platforms/src/utils/accounts.js +0 -36
  531. package/dist/shared/lending-platforms/src/utils/cache.d.ts +0 -3
  532. package/dist/shared/lending-platforms/src/utils/cache.js +0 -11
  533. package/dist/shared/lending-platforms/src/utils/index.d.ts +0 -6
  534. package/dist/shared/lending-platforms/src/utils/index.js +0 -22
  535. package/dist/shared/lending-platforms/src/utils/kamino.d.ts +0 -87
  536. package/dist/shared/lending-platforms/src/utils/kamino.js +0 -190
  537. package/dist/shared/lending-platforms/src/utils/lendingPlatform.d.ts +0 -6
  538. package/dist/shared/lending-platforms/src/utils/lendingPlatform.js +0 -16
  539. package/dist/shared/lending-platforms/src/utils/math.d.ts +0 -47
  540. package/dist/shared/lending-platforms/src/utils/math.js +0 -123
  541. package/dist/shared/lending-platforms/src/utils/scope.d.ts +0 -38
  542. package/dist/shared/lending-platforms/src/utils/scope.js +0 -144
  543. package/dist/shared/oracle-service/src/constants/index.d.ts +0 -3
  544. package/dist/shared/oracle-service/src/constants/index.js +0 -19
  545. package/dist/shared/oracle-service/src/constants/pyth.d.ts +0 -7
  546. package/dist/shared/oracle-service/src/constants/pyth.js +0 -71
  547. package/dist/shared/oracle-service/src/constants/splStake.d.ts +0 -2
  548. package/dist/shared/oracle-service/src/constants/splStake.js +0 -6
  549. package/dist/shared/oracle-service/src/constants/switchboard.d.ts +0 -7
  550. package/dist/shared/oracle-service/src/constants/switchboard.js +0 -10
  551. package/dist/shared/oracle-service/src/feeds/custom.d.ts +0 -30
  552. package/dist/shared/oracle-service/src/feeds/custom.js +0 -56
  553. package/dist/shared/oracle-service/src/feeds/jupiter.d.ts +0 -7
  554. package/dist/shared/oracle-service/src/feeds/jupiter.js +0 -43
  555. package/dist/shared/oracle-service/src/feeds/priceBase.d.ts +0 -13
  556. package/dist/shared/oracle-service/src/feeds/priceBase.js +0 -25
  557. package/dist/shared/oracle-service/src/feeds/pyth.d.ts +0 -8
  558. package/dist/shared/oracle-service/src/feeds/pyth.js +0 -59
  559. package/dist/shared/oracle-service/src/feeds/splStake.d.ts +0 -26
  560. package/dist/shared/oracle-service/src/feeds/splStake.js +0 -99
  561. package/dist/shared/oracle-service/src/feeds/switchboard.d.ts +0 -6
  562. package/dist/shared/oracle-service/src/feeds/switchboard.js +0 -11
  563. package/dist/shared/oracle-service/src/index.d.ts +0 -5
  564. package/dist/shared/oracle-service/src/index.js +0 -26
  565. package/dist/shared/oracle-service/src/oracle.d.ts +0 -22
  566. package/dist/shared/oracle-service/src/oracle.js +0 -104
  567. package/dist/shared/oracle-service/src/types.d.ts +0 -4
  568. package/dist/shared/oracle-service/src/types.js +0 -2
  569. package/dist/shared/oracle-service/src/utils/general.d.ts +0 -20
  570. package/dist/shared/oracle-service/src/utils/general.js +0 -65
  571. package/dist/shared/oracle-service/src/utils/index.d.ts +0 -1
  572. package/dist/shared/oracle-service/src/utils/index.js +0 -17
  573. package/dist/shared/perena-helpers/src/accounts.d.ts +0 -7
  574. package/dist/shared/perena-helpers/src/accounts.js +0 -12
  575. package/dist/shared/perena-helpers/src/client.d.ts +0 -299
  576. package/dist/shared/perena-helpers/src/client.js +0 -680
  577. package/dist/shared/perena-helpers/src/constants.d.ts +0 -5
  578. package/dist/shared/perena-helpers/src/constants.js +0 -8
  579. package/dist/shared/perena-helpers/src/cpi/burn.d.ts +0 -27
  580. package/dist/shared/perena-helpers/src/cpi/burn.js +0 -22
  581. package/dist/shared/perena-helpers/src/cpi/index.d.ts +0 -3
  582. package/dist/shared/perena-helpers/src/cpi/index.js +0 -19
  583. package/dist/shared/perena-helpers/src/cpi/mint.d.ts +0 -27
  584. package/dist/shared/perena-helpers/src/cpi/mint.js +0 -22
  585. package/dist/shared/perena-helpers/src/cpi/requestUnstake.d.ts +0 -19
  586. package/dist/shared/perena-helpers/src/cpi/requestUnstake.js +0 -16
  587. package/dist/shared/perena-helpers/src/index.d.ts +0 -5
  588. package/dist/shared/perena-helpers/src/index.js +0 -21
  589. package/dist/shared/perena-helpers/src/utils.d.ts +0 -9
  590. package/dist/shared/perena-helpers/src/utils.js +0 -54
  591. package/dist/shared/swap-aggregator/src/aggSwapClient.d.ts +0 -71
  592. package/dist/shared/swap-aggregator/src/aggSwapClient.js +0 -103
  593. package/dist/shared/swap-aggregator/src/index.d.ts +0 -1
  594. package/dist/shared/swap-aggregator/src/index.js +0 -17
  595. package/docs/launchingToken.md +0 -57
  596. package/scripts/asyncBurn.ts +0 -155
  597. package/scripts/burnToken.ts +0 -120
  598. package/scripts/claimIncentives.ts +0 -125
  599. package/scripts/closeCpiPlans.ts +0 -113
  600. package/scripts/collectInterest.ts +0 -194
  601. package/scripts/collectProtocolFees.ts +0 -144
  602. package/scripts/computeOptimalAllocations.ts +0 -117
  603. package/scripts/createToken.ts +0 -100
  604. package/scripts/createTokenLendingPosition.ts +0 -204
  605. package/scripts/createYieldingBank.ts +0 -91
  606. package/scripts/decreaseCarryPositions.ts +0 -359
  607. package/scripts/depositUnlentCollateral.ts +0 -106
  608. package/scripts/emergency/deleverageAll.ts +0 -287
  609. package/scripts/emergency/triggerCircuitBreaker.ts +0 -87
  610. package/scripts/env.ts +0 -4
  611. package/scripts/findTxs.ts +0 -169
  612. package/scripts/increaseCarryPositions.ts +0 -134
  613. package/scripts/inspect/format.ts +0 -576
  614. package/scripts/inspect.ts +0 -147
  615. package/scripts/localUtils.ts +0 -249
  616. package/scripts/mintToken.ts +0 -126
  617. package/scripts/processAsyncBurns.ts +0 -89
  618. package/scripts/rebalanceToken.ts +0 -269
  619. package/scripts/rebalanceYieldingBank.ts +0 -183
  620. package/scripts/recollateralizeLoss.ts +0 -79
  621. package/scripts/refresh.ts +0 -156
  622. package/scripts/updateFees.ts +0 -486
  623. package/scripts/updateGeneralLut.ts +0 -36
  624. package/scripts/updateLendingPositionConfig.ts +0 -172
  625. package/scripts/updateTokenLuts.ts +0 -36
  626. package/scripts/updateTokenMetadata.ts +0 -199
  627. package/scripts/updateYieldingBankConfig.ts +0 -100
  628. package/scripts/withdrawUnlentCollateral.ts +0 -178
  629. package/src/client/account.ts +0 -503
  630. package/src/client/builders/args.ts +0 -381
  631. package/src/client/builders/asyncBurnBuilder.ts +0 -305
  632. package/src/client/builders/base.ts +0 -303
  633. package/src/client/builders/burnTokenBuilder.ts +0 -258
  634. package/src/client/builders/claimIncentivesBuilder.ts +0 -211
  635. package/src/client/builders/collectFeesBuilder.ts +0 -52
  636. package/src/client/builders/collectInterestBuilder.ts +0 -165
  637. package/src/client/builders/createCpiPlanBuilder.ts +0 -21
  638. package/src/client/builders/createTokenBuilder.ts +0 -73
  639. package/src/client/builders/createTokenLendingPositionBuilder.ts +0 -219
  640. package/src/client/builders/createYieldingBankAllocationBuilder.ts +0 -32
  641. package/src/client/builders/createYieldingBankBuilder.ts +0 -39
  642. package/src/client/builders/decreaseCarryPositionBuilder.ts +0 -162
  643. package/src/client/builders/depositUnlentCollateralBuilder.ts +0 -95
  644. package/src/client/builders/increaseCarryPositionBuilder.ts +0 -105
  645. package/src/client/builders/index.ts +0 -37
  646. package/src/client/builders/mintTokenBuilder.ts +0 -137
  647. package/src/client/builders/rebalanceTokenBuilder.ts +0 -356
  648. package/src/client/builders/rebalanceYieldingBankBuilder.ts +0 -109
  649. package/src/client/builders/recollateralizeLossBuilder.ts +0 -367
  650. package/src/client/builders/refreshTokenStateBuilder.ts +0 -153
  651. package/src/client/builders/refreshTokensBuilder.ts +0 -82
  652. package/src/client/builders/refreshYieldingBankBuilder.ts +0 -42
  653. package/src/client/builders/resetTokenBurnRateLimitBuilder.ts +0 -21
  654. package/src/client/builders/setTokenCircuitBreakerBuilder.ts +0 -40
  655. package/src/client/builders/setYieldingBankCircuitBreakerBuilder.ts +0 -37
  656. package/src/client/builders/updateLendingPositionConfigBuilder.ts +0 -33
  657. package/src/client/builders/updateTokenConfigurationBuilder.ts +0 -50
  658. package/src/client/builders/updateTokenMetadataBuilder.ts +0 -24
  659. package/src/client/builders/updateYieldingBankConfigBuilder.ts +0 -32
  660. package/src/client/builders/utils.ts +0 -26
  661. package/src/client/client.ts +0 -264
  662. package/src/client/externalLiquidityResolver.ts +0 -54
  663. package/src/client/index.ts +0 -20
  664. package/src/client/lendingPlatformClients.ts +0 -50
  665. package/src/client/pda.ts +0 -102
  666. package/src/client/plans/collectInterest.ts +0 -207
  667. package/src/client/plans/decreaseCarryPosition.ts +0 -226
  668. package/src/client/routes/collectInterest.ts +0 -56
  669. package/src/client/transaction.ts +0 -106
  670. package/src/client/types/builders.ts +0 -19
  671. package/src/client/types/enums.ts +0 -47
  672. package/src/client/types/general.ts +0 -117
  673. package/src/client/types/index.ts +0 -6
  674. package/src/client/types/ix.ts +0 -452
  675. package/src/client/types/planTypes/collectInterest.ts +0 -97
  676. package/src/client/types/planTypes/common.ts +0 -31
  677. package/src/client/types/planTypes/decreaseCarryPosition.ts +0 -134
  678. package/src/client/types/planTypes/index.ts +0 -3
  679. package/src/client/types/tx.ts +0 -409
  680. package/src/constants/configs/allocations.ts +0 -30
  681. package/src/constants/configs/carryTradePresets.ts +0 -164
  682. package/src/constants/configs/index.ts +0 -2
  683. package/src/constants/general.ts +0 -141
  684. package/src/constants/index.ts +0 -3
  685. package/src/constants/lycTokenMetadata.ts +0 -52
  686. package/src/decoders/decodeTransaction.ts +0 -319
  687. package/src/decoders/discriminators.ts +0 -10
  688. package/src/decoders/idlAccounts.ts +0 -75
  689. package/src/decoders/index.ts +0 -15
  690. package/src/decoders/innerCpis.ts +0 -262
  691. package/src/decoders/lycInstructionNames.ts +0 -73
  692. package/src/decoders/programIds.ts +0 -12
  693. package/src/decoders/solana.ts +0 -25
  694. package/src/decoders/transactionPayload.ts +0 -41
  695. package/src/decoders/types.ts +0 -60
  696. package/src/errors.ts +0 -195
  697. package/src/idl/long_yield_carry.ts +0 -14648
  698. package/src/index.ts +0 -10
  699. package/src/metrics/index.ts +0 -1
  700. package/src/metrics/protocolMetrics.ts +0 -976
  701. package/src/models/index.ts +0 -9
  702. package/src/models/lycToken.ts +0 -380
  703. package/src/models/yieldingBank.ts +0 -127
  704. package/src/services/allocation/allocationService.ts +0 -823
  705. package/src/services/allocation/index.ts +0 -2
  706. package/src/services/allocation/types.ts +0 -27
  707. package/src/services/carry/carryAllocationConfig.ts +0 -266
  708. package/src/services/carry/index.ts +0 -2
  709. package/src/services/carry/lycLendingPositionManager.ts +0 -167
  710. package/src/services/index.ts +0 -5
  711. package/src/services/lendingPosition/index.ts +0 -5
  712. package/src/services/lendingPosition/lendingPositionService.ts +0 -328
  713. package/src/services/rebalance/index.ts +0 -2
  714. package/src/services/rebalance/token/index.ts +0 -1
  715. package/src/services/rebalance/token/tokenRebalanceService.ts +0 -142
  716. package/src/services/rebalance/yieldingBank/index.ts +0 -3
  717. package/src/services/rebalance/yieldingBank/planner.ts +0 -215
  718. package/src/services/rebalance/yieldingBank/strategy.ts +0 -41
  719. package/src/services/rebalance/yieldingBank/types.ts +0 -41
  720. package/src/services/redemption/index.ts +0 -9
  721. package/src/services/redemption/redemptionService.ts +0 -758
  722. package/src/types/enriched.ts +0 -187
  723. package/src/types/index.ts +0 -1
  724. package/src/utils/cache.ts +0 -12
  725. package/src/utils/data.ts +0 -65
  726. package/src/utils/enrichment.ts +0 -330
  727. package/src/utils/feeDripMetrics.ts +0 -146
  728. package/src/utils/general.ts +0 -54
  729. package/src/utils/index.ts +0 -13
  730. package/src/utils/ix.ts +0 -227
  731. package/src/utils/lendingPosition.ts +0 -221
  732. package/src/utils/lookupTables.ts +0 -309
  733. package/src/utils/lycData.ts +0 -321
  734. package/src/utils/timelock.ts +0 -63
  735. package/src/utils/tokenFeeMath.ts +0 -25
  736. package/src/utils/transactions.ts +0 -109
  737. package/src/utils/yieldingBank.ts +0 -38
  738. package/tsconfig.json +0 -11
@@ -1,319 +0,0 @@
1
- /**
2
- * Decoder: streamed Solana transaction payloads → normalized LYC user events.
3
- *
4
- * Wire shape is validator-style `getTransaction` data wrapped by the API into
5
- * {@link LycProgramTransactionRecord} when enqueued. Downstream consumers (the
6
- * indexer Lambda, backfill jobs) validate the envelope with
7
- * {@link parseLycProgramTransactionRecord} then call
8
- * {@link decodeLycProgramTransaction} to produce zero or more user-facing
9
- * {@link LycTransactionEvent}s.
10
- *
11
- * The set of indexed instructions is currently `mint_token` and `burn_token`.
12
- * Both are inlined in this module — if we ever add a third, promote back to a
13
- * registry/interface pattern.
14
- */
15
-
16
- import { BURN_TOKEN_DISCRIMINATOR, MINT_TOKEN_DISCRIMINATOR } from "./discriminators";
17
- import { BURN_TOKEN_ACCOUNTS, MINT_TOKEN_ACCOUNTS } from "./idlAccounts";
18
- import {
19
- aggregateCollateralTransfers,
20
- collectSplTransfersTo,
21
- findInnerInstructionBlock,
22
- splBurnAmountFromSource,
23
- splMintToAmountToDest,
24
- sumSplTransfersFromSource,
25
- } from "./innerCpis";
26
- import { LYC_PROGRAM_IDS } from "./programIds";
27
- import { buildAccountKeys, decodeInstructionData, discriminatorMatches } from "./solana";
28
- import type { TxMessage, TxMeta } from "./transactionPayload";
29
- import type { LycProgramTransactionRecord, LycTransactionEvent } from "./types";
30
-
31
- /**
32
- * Validate and narrow an arbitrary JSON body (SQS message body / API request)
33
- * to {@link LycProgramTransactionRecord}. Returns `null` on any shape mismatch.
34
- */
35
- export function parseLycProgramTransactionRecord(
36
- input: unknown
37
- ): LycProgramTransactionRecord | null {
38
- if (!input || typeof input !== "object") return null;
39
- const o = input as Record<string, unknown>;
40
- if (o.source !== "lyc-program-transaction") return null;
41
- if (typeof o.signature !== "string" || o.signature.length === 0) return null;
42
- if (!("payload" in o)) return null;
43
-
44
- return {
45
- source: "lyc-program-transaction",
46
- receivedAt: typeof o.receivedAt === "number" ? o.receivedAt : 0,
47
- signature: o.signature,
48
- slot: typeof o.slot === "number" ? o.slot : undefined,
49
- payload: o.payload,
50
- };
51
- }
52
-
53
- /**
54
- * Stable enum of why a matched-discriminator instruction produced no event.
55
- * All reasons are CPI-driven; none depend on balance deltas.
56
- */
57
- export type DecoderRejectionReason =
58
- | "accounts_too_short"
59
- | "missing_key"
60
- | "no_inner_instructions_block"
61
- | "no_token_burn_cpi"
62
- | "no_token_mint_to_cpi"
63
- | "no_collateral_out_delta"
64
- | "no_collateral_in_delta";
65
-
66
- /**
67
- * One reason a tx produced zero events despite looking like something we index.
68
- *
69
- * - `payload_unparseable`: the envelope `payload` lacked `meta` / `transaction.message` and
70
- * we couldn't even enumerate instructions.
71
- * - `instruction_data_invalid`: an LYC-program instruction's `data` field wasn't valid
72
- * base58 so we couldn't read its discriminator.
73
- * - `decoder_rejected`: the discriminator matched a user-facing decoder but a guard rail
74
- * returned null — `reason` identifies which guard.
75
- */
76
- export type DecodeRejection =
77
- | { kind: "payload_unparseable" }
78
- | { kind: "instruction_data_invalid"; instructionIndex: number }
79
- | {
80
- kind: "decoder_rejected";
81
- name: "mint_token" | "burn_token";
82
- reason: DecoderRejectionReason;
83
- };
84
-
85
- export interface DecodeResult {
86
- events: LycTransactionEvent[];
87
- /**
88
- * Non-empty only when something anomalous happened. Consumers that want to
89
- * distinguish "refresh-only tx, nothing to do" from "tried and bailed" check
90
- * `rejections.length === 0` for the former and `rejections.length > 0` for
91
- * the latter.
92
- */
93
- rejections: DecodeRejection[];
94
- }
95
-
96
- /**
97
- * Decode one queued tx into zero or more user-facing events, in top-level
98
- * instruction order. Silently skips instructions we don't index or whose data
99
- * cannot be base58-decoded.
100
- */
101
- export function decodeLycProgramTransaction(
102
- record: LycProgramTransactionRecord
103
- ): LycTransactionEvent[] {
104
- return decodeLycProgramTransactionWithDiagnostics(record).events;
105
- }
106
-
107
- /**
108
- * Same as {@link decodeLycProgramTransaction} but also returns structured
109
- * rejections for the indexer's CloudWatch log path. Use this when "zero events"
110
- * isn't enough information — e.g. you need to know whether a burn-shaped tx
111
- * bailed because its inner-instructions block was missing or because no
112
- * collateral transfer CPI landed in the user's ATA.
113
- */
114
- export function decodeLycProgramTransactionWithDiagnostics(
115
- record: LycProgramTransactionRecord
116
- ): DecodeResult {
117
- const tx = parseRecordPayload(record);
118
- if (!tx) {
119
- return { events: [], rejections: [{ kind: "payload_unparseable" }] };
120
- }
121
-
122
- const events: LycTransactionEvent[] = [];
123
- const rejections: DecodeRejection[] = [];
124
-
125
- for (let i = 0; i < tx.message.instructions.length; i++) {
126
- const ix = tx.message.instructions[i]!;
127
- const programId = tx.keys[ix.programIdIndex];
128
- if (!programId || !LYC_PROGRAM_IDS.has(programId)) continue;
129
-
130
- let data: Uint8Array;
131
- try {
132
- data = decodeInstructionData(ix.data);
133
- } catch {
134
- rejections.push({ kind: "instruction_data_invalid", instructionIndex: i });
135
- continue;
136
- }
137
-
138
- if (discriminatorMatches(data, MINT_TOKEN_DISCRIMINATOR)) {
139
- const outcome = decodeMintToken(tx, ix.accounts, i);
140
- if ("event" in outcome) events.push(outcome.event);
141
- else
142
- rejections.push({ kind: "decoder_rejected", name: "mint_token", reason: outcome.reason });
143
- } else if (discriminatorMatches(data, BURN_TOKEN_DISCRIMINATOR)) {
144
- const outcome = decodeBurnToken(tx, ix.accounts, i);
145
- if ("event" in outcome) events.push(outcome.event);
146
- else
147
- rejections.push({ kind: "decoder_rejected", name: "burn_token", reason: outcome.reason });
148
- }
149
- }
150
-
151
- return { events, rejections };
152
- }
153
-
154
- /**
155
- * Per-tx data shared by the mint/burn decoders and by
156
- * {@link listLycTopLevelInstructionNames} in the sibling module. Exported so
157
- * the names helper can reuse the parse work — not part of the public SDK.
158
- */
159
- export interface ParsedTx {
160
- message: TxMessage;
161
- meta: TxMeta;
162
- signature: string;
163
- slot: number;
164
- blockTime: number;
165
- fee: number;
166
- /** Static + ALT-loaded account keys, in the index order used by instructions. */
167
- keys: string[];
168
- }
169
-
170
- export function parseRecordPayload(record: LycProgramTransactionRecord): ParsedTx | null {
171
- const payload = record.payload;
172
- if (!payload || typeof payload !== "object") return null;
173
-
174
- const p = payload as Record<string, unknown>;
175
- const meta = p.meta as TxMeta | undefined;
176
- const transaction = p.transaction as { message?: TxMessage } | undefined;
177
- const message = transaction?.message;
178
- if (!meta || !message?.accountKeys || !Array.isArray(message.instructions)) {
179
- return null;
180
- }
181
-
182
- const slot =
183
- typeof record.slot === "number" ? record.slot : typeof p.slot === "number" ? p.slot : 0;
184
-
185
- return {
186
- message,
187
- meta,
188
- signature: record.signature,
189
- slot,
190
- blockTime: typeof p.blockTime === "number" ? p.blockTime : 0,
191
- fee: typeof meta.fee === "number" ? meta.fee : 0,
192
- keys: buildAccountKeys(message, meta),
193
- };
194
- }
195
-
196
- type DecoderOutcome = { event: LycTransactionEvent } | { reason: DecoderRejectionReason };
197
-
198
- /**
199
- * Authoritative reads: inner CPIs emitted by mint_token.
200
- * - Token amount: SPL Token `MintTo` CPI whose `accounts[1]` (dest ATA)
201
- * matches `user_token_account`. Amount is encoded in the ix data as a
202
- * little-endian u64.
203
- * - Collateral amount: sum of SPL Token `Transfer` / `TransferChecked`
204
- * CPIs whose source matches `user_collateral_account`. The collateral
205
- * mint is known structurally (`collateral_mint`), so we don't need to
206
- * derive it per-transfer.
207
- *
208
- * Account positions are resolved by name from the IDL via
209
- * {@link MINT_TOKEN_ACCOUNTS} — resilient to account-list reordering, and
210
- * fail-fast at module load if a required account is renamed or removed.
211
- */
212
- function decodeMintToken(tx: ParsedTx, accounts: number[], ixIndex: number): DecoderOutcome {
213
- const signerPos = MINT_TOKEN_ACCOUNTS.signer;
214
- const mintPos = MINT_TOKEN_ACCOUNTS.mint;
215
- const collateralMintPos = MINT_TOKEN_ACCOUNTS.collateral_mint;
216
- const userCollateralAtaPos = MINT_TOKEN_ACCOUNTS.user_collateral_account;
217
- const userTokenAtaPos = MINT_TOKEN_ACCOUNTS.user_token_account;
218
-
219
- const maxPos = Math.max(
220
- signerPos,
221
- mintPos,
222
- collateralMintPos,
223
- userCollateralAtaPos,
224
- userTokenAtaPos
225
- );
226
- if (accounts.length <= maxPos) return { reason: "accounts_too_short" };
227
-
228
- const wallet = tx.keys[accounts[signerPos]];
229
- const tokenMint = tx.keys[accounts[mintPos]];
230
- const collateralMint = tx.keys[accounts[collateralMintPos]];
231
- if (!wallet || !tokenMint || !collateralMint) return { reason: "missing_key" };
232
-
233
- const block = findInnerInstructionBlock(tx.meta, ixIndex);
234
- if (!block) return { reason: "no_inner_instructions_block" };
235
-
236
- const mintedAmount = splMintToAmountToDest(tx.keys, block, accounts[userTokenAtaPos]);
237
- if (mintedAmount === null) return { reason: "no_token_mint_to_cpi" };
238
-
239
- const collateralAmount = sumSplTransfersFromSource(
240
- tx.keys,
241
- block,
242
- accounts[userCollateralAtaPos]
243
- );
244
- if (collateralAmount <= 0n) return { reason: "no_collateral_in_delta" };
245
-
246
- return {
247
- event: {
248
- signature: tx.signature,
249
- slot: tx.slot,
250
- blockTime: tx.blockTime,
251
- type: "mint",
252
- wallet,
253
- tokenMint,
254
- tokenAmountBaseUnits: mintedAmount.toString(),
255
- collateralMint,
256
- collateralAmountBaseUnits: collateralAmount.toString(),
257
- fee: tx.fee,
258
- },
259
- };
260
- }
261
-
262
- /**
263
- * Authoritative reads: inner CPIs emitted by burn_token.
264
- * - Token amount: SPL Token `Burn` CPI whose `accounts[0]` (source ATA)
265
- * matches `user_token_account`. Amount is encoded in the ix data as a
266
- * little-endian u64, not derived from a balance delta.
267
- * - Collateral: SPL Token `Transfer` / `TransferChecked` CPIs whose
268
- * destination matches `user_collateral_account`. Amounts are summed per
269
- * mint; the dominant mint wins — in practice the Rust program emits a
270
- * single transfer with a single mint, so the aggregation step is defensive
271
- * (see `rust/.../burn_token.rs`).
272
- *
273
- * CPI-authoritative decoding does not depend on whether the user's collateral
274
- * ATA persists across the tx — created-and-closed-same-tx ATAs, pre-existing
275
- * ATAs closed at the end, and ATAs re-funded inside the same tx all decode
276
- * identically because the CPIs themselves never disappear.
277
- *
278
- * Account positions are resolved by name from the IDL via
279
- * {@link BURN_TOKEN_ACCOUNTS} — resilient to account-list reordering, and
280
- * fail-fast at module load if a required account is renamed or removed.
281
- */
282
- function decodeBurnToken(tx: ParsedTx, accounts: number[], ixIndex: number): DecoderOutcome {
283
- const signerPos = BURN_TOKEN_ACCOUNTS.signer;
284
- const mintPos = BURN_TOKEN_ACCOUNTS.mint;
285
- const userTokenAtaPos = BURN_TOKEN_ACCOUNTS.user_token_account;
286
- const userCollateralAtaPos = BURN_TOKEN_ACCOUNTS.user_collateral_account;
287
-
288
- const maxPos = Math.max(signerPos, mintPos, userTokenAtaPos, userCollateralAtaPos);
289
- if (accounts.length <= maxPos) return { reason: "accounts_too_short" };
290
-
291
- const wallet = tx.keys[accounts[signerPos]];
292
- const tokenMint = tx.keys[accounts[mintPos]];
293
- if (!wallet || !tokenMint) return { reason: "missing_key" };
294
-
295
- const block = findInnerInstructionBlock(tx.meta, ixIndex);
296
- if (!block) return { reason: "no_inner_instructions_block" };
297
-
298
- const burnedAmount = splBurnAmountFromSource(tx.keys, block, accounts[userTokenAtaPos]);
299
- if (burnedAmount === null) return { reason: "no_token_burn_cpi" };
300
-
301
- const transfers = collectSplTransfersTo(tx.keys, block, accounts[userCollateralAtaPos]);
302
- const collateral = aggregateCollateralTransfers(tx.meta, transfers);
303
- if (!collateral) return { reason: "no_collateral_out_delta" };
304
-
305
- return {
306
- event: {
307
- signature: tx.signature,
308
- slot: tx.slot,
309
- blockTime: tx.blockTime,
310
- type: "burn",
311
- wallet,
312
- tokenMint,
313
- tokenAmountBaseUnits: burnedAmount.toString(),
314
- collateralMint: collateral.collateralMint,
315
- collateralAmountBaseUnits: collateral.amount.toString(),
316
- fee: tx.fee,
317
- },
318
- };
319
- }
@@ -1,10 +0,0 @@
1
- /**
2
- * Anchor 8-byte instruction discriminators (see `idl/long_yield_carry.ts`).
3
- * Add new entries here when supporting additional indexed instructions.
4
- */
5
-
6
- /** `burn_token` */
7
- export const BURN_TOKEN_DISCRIMINATOR = Uint8Array.from([185, 165, 216, 246, 144, 31, 70, 74]);
8
-
9
- /** `mint_token` */
10
- export const MINT_TOKEN_DISCRIMINATOR = Uint8Array.from([172, 137, 183, 14, 207, 110, 234, 56]);
@@ -1,75 +0,0 @@
1
- /**
2
- * IDL-backed account resolution for the LYC decoder.
3
- *
4
- * The decoder reads specific accounts (wallet, mint, collateral mint, user
5
- * ATAs) out of each indexed instruction's account list. Rather than hardcoding
6
- * positional indices — which silently break if the on-chain
7
- * `#[derive(Accounts)]` struct is ever reordered — we resolve positions by
8
- * account name off the SDK's shipped IDL at module load.
9
- *
10
- * Guarantees:
11
- * - **Resilient to reordering.** If the Rust program reorders accounts, the
12
- * regenerated IDL updates the name→index map and the decoder follows.
13
- * - **Fail-fast on rename/removal.** If an account we depend on is renamed
14
- * or removed, this module throws at import time — the SDK fails to load
15
- * instead of producing mislabeled events.
16
- * - **Minimal surface.** Only pins the accounts the decoder actually reads
17
- * (`signer`, `mint`, `collateral_mint`, `user_token_account`,
18
- * `user_collateral_account`). Unused accounts can be renamed freely.
19
- */
20
-
21
- import { IDL } from "../idl/long_yield_carry";
22
-
23
- const MINT_TOKEN_REQUIRED_ACCOUNT_NAMES = [
24
- "signer",
25
- "mint",
26
- "collateral_mint",
27
- "user_collateral_account",
28
- "user_token_account",
29
- ] as const;
30
-
31
- const BURN_TOKEN_REQUIRED_ACCOUNT_NAMES = [
32
- "signer",
33
- "mint",
34
- "user_token_account",
35
- "user_collateral_account",
36
- ] as const;
37
-
38
- type MintTokenAccountName = (typeof MINT_TOKEN_REQUIRED_ACCOUNT_NAMES)[number];
39
- type BurnTokenAccountName = (typeof BURN_TOKEN_REQUIRED_ACCOUNT_NAMES)[number];
40
-
41
- function buildAccountIndexMap<const T extends readonly string[]>(
42
- instructionName: string,
43
- requiredNames: T
44
- ): Readonly<Record<T[number], number>> {
45
- const ix = IDL.instructions.find((entry) => entry.name === instructionName);
46
- if (!ix) {
47
- throw new Error(`IDL account resolver: instruction "${instructionName}" not found`);
48
- }
49
- const map: Record<string, number> = {};
50
- for (const name of requiredNames) {
51
- const idx = ix.accounts.findIndex((a) => a.name === name);
52
- if (idx < 0) {
53
- throw new Error(
54
- `IDL account resolver: instruction "${instructionName}" is missing account "${name}"`
55
- );
56
- }
57
- map[name] = idx;
58
- }
59
- return Object.freeze(map) as Readonly<Record<T[number], number>>;
60
- }
61
-
62
- /** Name→index map for the accounts list of `mint_token`. */
63
- export const MINT_TOKEN_ACCOUNTS = buildAccountIndexMap(
64
- "mint_token",
65
- MINT_TOKEN_REQUIRED_ACCOUNT_NAMES
66
- );
67
-
68
- /** Name→index map for the accounts list of `burn_token`. */
69
- export const BURN_TOKEN_ACCOUNTS = buildAccountIndexMap(
70
- "burn_token",
71
- BURN_TOKEN_REQUIRED_ACCOUNT_NAMES
72
- );
73
-
74
- export { MINT_TOKEN_REQUIRED_ACCOUNT_NAMES, BURN_TOKEN_REQUIRED_ACCOUNT_NAMES };
75
- export type { MintTokenAccountName, BurnTokenAccountName };
@@ -1,15 +0,0 @@
1
- export type { LycProgramTransactionRecord, LycTransactionEvent, LycTransactionType } from "./types";
2
- export {
3
- decodeLycProgramTransaction,
4
- decodeLycProgramTransactionWithDiagnostics,
5
- parseLycProgramTransactionRecord,
6
- } from "./decodeTransaction";
7
- export type { DecodeRejection, DecodeResult, DecoderRejectionReason } from "./decodeTransaction";
8
- export { listLycTopLevelInstructionNames } from "./lycInstructionNames";
9
- export {
10
- BURN_TOKEN_ACCOUNTS,
11
- BURN_TOKEN_REQUIRED_ACCOUNT_NAMES,
12
- MINT_TOKEN_ACCOUNTS,
13
- MINT_TOKEN_REQUIRED_ACCOUNT_NAMES,
14
- } from "./idlAccounts";
15
- export type { BurnTokenAccountName, MintTokenAccountName } from "./idlAccounts";
@@ -1,262 +0,0 @@
1
- import bs58 from "bs58";
2
- import { TOKEN_PROGRAM_ADDRESS, TokenInstruction } from "@solana-program/token";
3
- import { TOKEN_2022_PROGRAM_ADDRESS } from "@solana-program/token-2022";
4
-
5
- import type {
6
- CompiledInstruction,
7
- InnerInstructionBlock,
8
- TokenBalanceRow,
9
- TxMeta,
10
- } from "./transactionPayload";
11
-
12
- /**
13
- * Inner-instruction (CPI) scanning primitives for the decoder.
14
- *
15
- * The decoder reads LYC user events off the on-chain CPIs the program emits,
16
- * not off net balance deltas. A `burn_token` top-level ix is decoded by finding
17
- * the SPL Token `Burn` CPI (for the token amount) and the SPL Token
18
- * `Transfer` / `TransferChecked` CPIs to the user's collateral ATA (for the
19
- * collateral amount + mint) inside the burn ix's inner-instructions block.
20
- *
21
- * Reading CPIs is robust to ATA lifecycle quirks (created + closed in the same
22
- * tx, wrap + unwrap side effects, etc.) because the CPIs are the actions that
23
- * actually happened — balance rows are just their net effect and can be hidden
24
- * or confounded by other same-tx ixs.
25
- *
26
- * Program IDs come from {@link TOKEN_PROGRAM_ADDRESS} / {@link TOKEN_2022_PROGRAM_ADDRESS}
27
- * (kit-aligned `@solana-program/*` clients). Instruction tags use {@link TokenInstruction}
28
- * — Token-2022 shares the same numeric tags for Transfer / TransferChecked / MintTo / Burn.
29
- */
30
-
31
- const SPL_TOKEN_PROGRAM_IDS = new Set<string>([TOKEN_PROGRAM_ADDRESS, TOKEN_2022_PROGRAM_ADDRESS]);
32
-
33
- interface ParsedSplIx {
34
- tag: number;
35
- amount: bigint;
36
- }
37
-
38
- /**
39
- * Decode an SPL Token ix and extract its tag + u64 amount, if the tag is one
40
- * we care about (Transfer, TransferChecked, MintTo, Burn). Returns null for
41
- * any other variant (approve, close, sync native, etc.) or for malformed data.
42
- *
43
- * Layout (all little-endian):
44
- * - Transfer: `[3, amount:u64]` (9 bytes)
45
- * - MintTo: `[7, amount:u64]` (9 bytes)
46
- * - Burn: `[8, amount:u64]` (9 bytes)
47
- * - TransferChecked: `[12, amount:u64, decimals:u8]` (10 bytes)
48
- */
49
- function parseSplAmountIx(ix: CompiledInstruction): ParsedSplIx | null {
50
- let bytes: Uint8Array;
51
- try {
52
- bytes = bs58.decode(ix.data);
53
- } catch {
54
- return null;
55
- }
56
- if (bytes.length < 9) return null;
57
- const tag = bytes[0];
58
- if (
59
- tag !== TokenInstruction.Transfer &&
60
- tag !== TokenInstruction.TransferChecked &&
61
- tag !== TokenInstruction.MintTo &&
62
- tag !== TokenInstruction.Burn
63
- ) {
64
- return null;
65
- }
66
- let amount = 0n;
67
- for (let i = 0; i < 8; i++) {
68
- amount |= BigInt(bytes[1 + i]) << BigInt(i * 8);
69
- }
70
- return { tag, amount };
71
- }
72
-
73
- /** Resolve the inner-instructions block for a given top-level instruction. */
74
- export function findInnerInstructionBlock(
75
- meta: TxMeta,
76
- topLevelIndex: number
77
- ): InnerInstructionBlock | undefined {
78
- return meta.innerInstructions?.find((b) => b.index === topLevelIndex);
79
- }
80
-
81
- /**
82
- * Find the SPL Token `Burn` CPI whose source token account matches
83
- * `sourceAtaIndex` and return its amount. Tx-level account indexes are shared
84
- * between outer and inner instructions, so callers resolve the source by
85
- * outer IDL-named account (e.g. `burn_token.user_token_account`) and we match
86
- * against `burn.accounts[0]` here.
87
- *
88
- * `Burn` account layout: `[source_ata, mint, authority, ...signers]`.
89
- */
90
- export function splBurnAmountFromSource(
91
- keys: string[],
92
- block: InnerInstructionBlock,
93
- sourceAtaIndex: number
94
- ): bigint | null {
95
- for (const ix of block.instructions) {
96
- if (!SPL_TOKEN_PROGRAM_IDS.has(keys[ix.programIdIndex] ?? "")) continue;
97
- if (ix.accounts.length < 3 || ix.accounts[0] !== sourceAtaIndex) continue;
98
- const parsed = parseSplAmountIx(ix);
99
- if (parsed?.tag !== TokenInstruction.Burn) continue;
100
- if (parsed.amount <= 0n) continue;
101
- return parsed.amount;
102
- }
103
- return null;
104
- }
105
-
106
- /**
107
- * Find the SPL Token `MintTo` CPI whose destination ATA matches `destAtaIndex`
108
- * and return its amount. The mint slot (`MintTo.accounts[0]`) is not checked:
109
- * an ATA has a fixed mint, so a MintTo landing in the right ATA cannot be for
110
- * any other mint — the on-chain SPL program rejects mismatches.
111
- *
112
- * `MintTo` account layout: `[mint, dest_ata, authority, ...signers]`.
113
- */
114
- export function splMintToAmountToDest(
115
- keys: string[],
116
- block: InnerInstructionBlock,
117
- destAtaIndex: number
118
- ): bigint | null {
119
- for (const ix of block.instructions) {
120
- if (!SPL_TOKEN_PROGRAM_IDS.has(keys[ix.programIdIndex] ?? "")) continue;
121
- if (ix.accounts.length < 3 || ix.accounts[1] !== destAtaIndex) continue;
122
- const parsed = parseSplAmountIx(ix);
123
- if (parsed?.tag !== TokenInstruction.MintTo) continue;
124
- if (parsed.amount <= 0n) continue;
125
- return parsed.amount;
126
- }
127
- return null;
128
- }
129
-
130
- interface SplTransferSummary {
131
- sourceIndex: number;
132
- destIndex: number;
133
- amount: bigint;
134
- /**
135
- * For `TransferChecked` the mint sits in the ix's `accounts[1]`, so we can
136
- * pin it down without consulting the balance-row table. Plain `Transfer`
137
- * leaves this undefined — callers fall back to {@link mintForAccountIndex}.
138
- */
139
- explicitMint: string | undefined;
140
- }
141
-
142
- function extractTransfer(keys: string[], ix: CompiledInstruction): SplTransferSummary | null {
143
- if (!SPL_TOKEN_PROGRAM_IDS.has(keys[ix.programIdIndex] ?? "")) return null;
144
- const parsed = parseSplAmountIx(ix);
145
- if (!parsed) return null;
146
- if (parsed.amount <= 0n) return null;
147
-
148
- if (parsed.tag === TokenInstruction.Transfer && ix.accounts.length >= 3) {
149
- return {
150
- sourceIndex: ix.accounts[0],
151
- destIndex: ix.accounts[1],
152
- amount: parsed.amount,
153
- explicitMint: undefined,
154
- };
155
- }
156
- if (parsed.tag === TokenInstruction.TransferChecked && ix.accounts.length >= 4) {
157
- return {
158
- sourceIndex: ix.accounts[0],
159
- destIndex: ix.accounts[2],
160
- amount: parsed.amount,
161
- explicitMint: keys[ix.accounts[1]] ?? undefined,
162
- };
163
- }
164
- return null;
165
- }
166
-
167
- /**
168
- * Collect every SPL Token `Transfer` / `TransferChecked` CPI in the given inner
169
- * block whose destination matches `destAtaIndex`. Multiple transfers (e.g. fees
170
- * split across two CPIs, managed-unwind returning partial then final amounts)
171
- * are returned as-is so callers can aggregate per mint.
172
- */
173
- export function collectSplTransfersTo(
174
- keys: string[],
175
- block: InnerInstructionBlock,
176
- destAtaIndex: number
177
- ): SplTransferSummary[] {
178
- const out: SplTransferSummary[] = [];
179
- for (const ix of block.instructions) {
180
- const summary = extractTransfer(keys, ix);
181
- if (summary && summary.destIndex === destAtaIndex) {
182
- out.push(summary);
183
- }
184
- }
185
- return out;
186
- }
187
-
188
- /**
189
- * Sum the amounts of every SPL Token `Transfer` / `TransferChecked` CPI in the
190
- * given inner block whose source matches `sourceAtaIndex`. Returns 0n if none.
191
- *
192
- * Used by `decodeMintToken` to total the collateral moved out of the user's
193
- * collateral ATA. The collateral mint is known structurally from the IDL
194
- * (`mint_token.collateral_mint`), so we don't need to track per-transfer mints.
195
- */
196
- export function sumSplTransfersFromSource(
197
- keys: string[],
198
- block: InnerInstructionBlock,
199
- sourceAtaIndex: number
200
- ): bigint {
201
- let total = 0n;
202
- for (const ix of block.instructions) {
203
- const summary = extractTransfer(keys, ix);
204
- if (summary && summary.sourceIndex === sourceAtaIndex) {
205
- total += summary.amount;
206
- }
207
- }
208
- return total;
209
- }
210
-
211
- /**
212
- * Look up the mint a token account was holding by finding any row in pre/post
213
- * balances with the matching `accountIndex`. Used when a plain `Transfer` CPI
214
- * doesn't carry the mint in-line — we read it off the counterparty's row.
215
- */
216
- export function mintForAccountIndex(
217
- pre: TokenBalanceRow[] | undefined,
218
- post: TokenBalanceRow[] | undefined,
219
- accountIndex: number
220
- ): string | null {
221
- for (const row of pre ?? []) {
222
- if (row.accountIndex === accountIndex) return row.mint;
223
- }
224
- for (const row of post ?? []) {
225
- if (row.accountIndex === accountIndex) return row.mint;
226
- }
227
- return null;
228
- }
229
-
230
- /**
231
- * Given the inner-instruction transfers that delivered collateral to the user's
232
- * collateral ATA, resolve (mint, amount) per mint and return the largest.
233
- *
234
- * Multi-mint returns (dust + primary) are possible in managed-unwind paths; we
235
- * pick the dominant mint rather than summing across mints so the event's
236
- * `collateralMint` remains a single string that matches the user's intent.
237
- */
238
- export function aggregateCollateralTransfers(
239
- meta: TxMeta,
240
- transfers: SplTransferSummary[]
241
- ): { collateralMint: string; amount: bigint } | null {
242
- const totals = new Map<string, bigint>();
243
- for (const t of transfers) {
244
- const mint =
245
- t.explicitMint ??
246
- mintForAccountIndex(meta.preTokenBalances, meta.postTokenBalances, t.sourceIndex) ??
247
- mintForAccountIndex(meta.preTokenBalances, meta.postTokenBalances, t.destIndex);
248
- if (!mint) continue;
249
- totals.set(mint, (totals.get(mint) ?? 0n) + t.amount);
250
- }
251
-
252
- let bestMint: string | null = null;
253
- let bestAmt = 0n;
254
- for (const [mint, amt] of totals) {
255
- if (amt > bestAmt) {
256
- bestAmt = amt;
257
- bestMint = mint;
258
- }
259
- }
260
- if (bestMint === null || bestAmt <= 0n) return null;
261
- return { collateralMint: bestMint, amount: bestAmt };
262
- }