@haven-fi/solauto-sdk 1.0.0

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 (519) hide show
  1. package/dist/clients/index.d.ts +2 -0
  2. package/dist/clients/index.d.ts.map +1 -0
  3. package/dist/clients/index.js +17 -0
  4. package/dist/clients/solautoClient.d.ts +73 -0
  5. package/dist/clients/solautoClient.d.ts.map +1 -0
  6. package/dist/clients/solautoClient.js +416 -0
  7. package/dist/clients/solautoMarginfiClient.d.ts +40 -0
  8. package/dist/clients/solautoMarginfiClient.d.ts.map +1 -0
  9. package/dist/clients/solautoMarginfiClient.js +313 -0
  10. package/dist/constants/generalAccounts.d.ts +5 -0
  11. package/dist/constants/generalAccounts.d.ts.map +1 -0
  12. package/dist/constants/generalAccounts.js +8 -0
  13. package/dist/constants/index.d.ts +6 -0
  14. package/dist/constants/index.d.ts.map +1 -0
  15. package/dist/constants/index.js +21 -0
  16. package/dist/constants/marginfiAccounts.d.ts +7 -0
  17. package/dist/constants/marginfiAccounts.d.ts.map +1 -0
  18. package/dist/constants/marginfiAccounts.js +23 -0
  19. package/dist/constants/pythConstants.d.ts +5 -0
  20. package/dist/constants/pythConstants.d.ts.map +1 -0
  21. package/dist/constants/pythConstants.js +10 -0
  22. package/dist/constants/solautoConstants.d.ts +19 -0
  23. package/dist/constants/solautoConstants.d.ts.map +1 -0
  24. package/dist/constants/solautoConstants.js +35 -0
  25. package/dist/constants/tokenConstants.d.ts +3 -0
  26. package/dist/constants/tokenConstants.d.ts.map +1 -0
  27. package/dist/constants/tokenConstants.js +10 -0
  28. package/dist/generated/accounts/index.d.ts +10 -0
  29. package/dist/generated/accounts/index.d.ts.map +1 -0
  30. package/dist/generated/accounts/index.js +25 -0
  31. package/dist/generated/accounts/referralState.d.ts +37 -0
  32. package/dist/generated/accounts/referralState.d.ts.map +1 -0
  33. package/dist/generated/accounts/referralState.js +73 -0
  34. package/dist/generated/accounts/solautoPosition.d.ts +58 -0
  35. package/dist/generated/accounts/solautoPosition.d.ts.map +1 -0
  36. package/dist/generated/accounts/solautoPosition.js +82 -0
  37. package/dist/generated/errors/index.d.ts +9 -0
  38. package/dist/generated/errors/index.d.ts.map +1 -0
  39. package/dist/generated/errors/index.js +24 -0
  40. package/dist/generated/errors/solauto.d.ts +91 -0
  41. package/dist/generated/errors/solauto.d.ts.map +1 -0
  42. package/dist/generated/errors/solauto.js +163 -0
  43. package/dist/generated/index.d.ts +14 -0
  44. package/dist/generated/index.d.ts.map +1 -0
  45. package/dist/generated/index.js +29 -0
  46. package/dist/generated/instructions/cancelDCA.d.ts +26 -0
  47. package/dist/generated/instructions/cancelDCA.d.ts.map +1 -0
  48. package/dist/generated/instructions/cancelDCA.js +92 -0
  49. package/dist/generated/instructions/claimReferralFees.d.ts +26 -0
  50. package/dist/generated/instructions/claimReferralFees.d.ts.map +1 -0
  51. package/dist/generated/instructions/claimReferralFees.js +87 -0
  52. package/dist/generated/instructions/closePosition.d.ts +28 -0
  53. package/dist/generated/instructions/closePosition.d.ts.map +1 -0
  54. package/dist/generated/instructions/closePosition.js +102 -0
  55. package/dist/generated/instructions/convertReferralFees.d.ts +27 -0
  56. package/dist/generated/instructions/convertReferralFees.d.ts.map +1 -0
  57. package/dist/generated/instructions/convertReferralFees.js +96 -0
  58. package/dist/generated/instructions/index.d.ts +18 -0
  59. package/dist/generated/instructions/index.d.ts.map +1 -0
  60. package/dist/generated/instructions/index.js +33 -0
  61. package/dist/generated/instructions/marginfiOpenPosition.d.ts +46 -0
  62. package/dist/generated/instructions/marginfiOpenPosition.d.ts.map +1 -0
  63. package/dist/generated/instructions/marginfiOpenPosition.js +161 -0
  64. package/dist/generated/instructions/marginfiProtocolInteraction.d.ts +42 -0
  65. package/dist/generated/instructions/marginfiProtocolInteraction.d.ts.map +1 -0
  66. package/dist/generated/instructions/marginfiProtocolInteraction.js +150 -0
  67. package/dist/generated/instructions/marginfiRebalance.d.ts +49 -0
  68. package/dist/generated/instructions/marginfiRebalance.d.ts.map +1 -0
  69. package/dist/generated/instructions/marginfiRebalance.js +164 -0
  70. package/dist/generated/instructions/marginfiRefreshData.d.ts +27 -0
  71. package/dist/generated/instructions/marginfiRefreshData.d.ts.map +1 -0
  72. package/dist/generated/instructions/marginfiRefreshData.js +84 -0
  73. package/dist/generated/instructions/updatePosition.d.ts +30 -0
  74. package/dist/generated/instructions/updatePosition.d.ts.map +1 -0
  75. package/dist/generated/instructions/updatePosition.js +87 -0
  76. package/dist/generated/instructions/updateReferralStates.d.ts +30 -0
  77. package/dist/generated/instructions/updateReferralStates.d.ts.map +1 -0
  78. package/dist/generated/instructions/updateReferralStates.js +77 -0
  79. package/dist/generated/programs/index.d.ts +9 -0
  80. package/dist/generated/programs/index.d.ts.map +1 -0
  81. package/dist/generated/programs/index.js +24 -0
  82. package/dist/generated/programs/solauto.d.ts +13 -0
  83. package/dist/generated/programs/solauto.d.ts.map +1 -0
  84. package/dist/generated/programs/solauto.js +36 -0
  85. package/dist/generated/shared/index.d.ts +54 -0
  86. package/dist/generated/shared/index.d.ts.map +1 -0
  87. package/dist/generated/shared/index.js +70 -0
  88. package/dist/generated/types/automationSettings.d.ts +26 -0
  89. package/dist/generated/types/automationSettings.d.ts.map +1 -0
  90. package/dist/generated/types/automationSettings.js +22 -0
  91. package/dist/generated/types/automationSettingsInp.d.ts +22 -0
  92. package/dist/generated/types/automationSettingsInp.d.ts.map +1 -0
  93. package/dist/generated/types/automationSettingsInp.js +20 -0
  94. package/dist/generated/types/dCASettings.d.ts +21 -0
  95. package/dist/generated/types/dCASettings.d.ts.map +1 -0
  96. package/dist/generated/types/dCASettings.js +20 -0
  97. package/dist/generated/types/dCASettingsInp.d.ts +19 -0
  98. package/dist/generated/types/dCASettingsInp.d.ts.map +1 -0
  99. package/dist/generated/types/dCASettingsInp.js +19 -0
  100. package/dist/generated/types/feeType.d.ts +15 -0
  101. package/dist/generated/types/feeType.d.ts.map +1 -0
  102. package/dist/generated/types/feeType.js +20 -0
  103. package/dist/generated/types/index.d.ts +26 -0
  104. package/dist/generated/types/index.d.ts.map +1 -0
  105. package/dist/generated/types/index.js +41 -0
  106. package/dist/generated/types/lendingPlatform.d.ts +16 -0
  107. package/dist/generated/types/lendingPlatform.d.ts.map +1 -0
  108. package/dist/generated/types/lendingPlatform.js +23 -0
  109. package/dist/generated/types/podBool.d.ts +14 -0
  110. package/dist/generated/types/podBool.d.ts.map +1 -0
  111. package/dist/generated/types/podBool.js +17 -0
  112. package/dist/generated/types/positionData.d.ts +32 -0
  113. package/dist/generated/types/positionData.d.ts.map +1 -0
  114. package/dist/generated/types/positionData.js +25 -0
  115. package/dist/generated/types/positionState.d.ts +35 -0
  116. package/dist/generated/types/positionState.d.ts.map +1 -0
  117. package/dist/generated/types/positionState.js +27 -0
  118. package/dist/generated/types/positionTokenUsage.d.ts +36 -0
  119. package/dist/generated/types/positionTokenUsage.d.ts.map +1 -0
  120. package/dist/generated/types/positionTokenUsage.js +27 -0
  121. package/dist/generated/types/rebalanceData.d.ts +29 -0
  122. package/dist/generated/types/rebalanceData.d.ts.map +1 -0
  123. package/dist/generated/types/rebalanceData.js +24 -0
  124. package/dist/generated/types/solautoAction.d.ts +44 -0
  125. package/dist/generated/types/solautoAction.d.ts.map +1 -0
  126. package/dist/generated/types/solautoAction.js +51 -0
  127. package/dist/generated/types/solautoRebalanceType.d.ts +17 -0
  128. package/dist/generated/types/solautoRebalanceType.d.ts.map +1 -0
  129. package/dist/generated/types/solautoRebalanceType.js +24 -0
  130. package/dist/generated/types/solautoSettingsParameters.d.ts +31 -0
  131. package/dist/generated/types/solautoSettingsParameters.d.ts.map +1 -0
  132. package/dist/generated/types/solautoSettingsParameters.js +25 -0
  133. package/dist/generated/types/solautoSettingsParametersInp.d.ts +28 -0
  134. package/dist/generated/types/solautoSettingsParametersInp.d.ts.map +1 -0
  135. package/dist/generated/types/solautoSettingsParametersInp.js +23 -0
  136. package/dist/generated/types/tokenAmount.d.ts +18 -0
  137. package/dist/generated/types/tokenAmount.d.ts.map +1 -0
  138. package/dist/generated/types/tokenAmount.js +18 -0
  139. package/dist/generated/types/tokenBalanceAmount.d.ts +27 -0
  140. package/dist/generated/types/tokenBalanceAmount.d.ts.map +1 -0
  141. package/dist/generated/types/tokenBalanceAmount.js +33 -0
  142. package/dist/generated/types/updatePositionData.d.ts +22 -0
  143. package/dist/generated/types/updatePositionData.d.ts.map +1 -0
  144. package/dist/generated/types/updatePositionData.js +20 -0
  145. package/dist/index.d.ts +7 -0
  146. package/dist/index.d.ts.map +1 -0
  147. package/dist/index.js +22 -0
  148. package/dist/marginfi-sdk/accounts/bank.d.ts +136 -0
  149. package/dist/marginfi-sdk/accounts/bank.d.ts.map +1 -0
  150. package/dist/marginfi-sdk/accounts/bank.js +124 -0
  151. package/dist/marginfi-sdk/accounts/index.d.ts +11 -0
  152. package/dist/marginfi-sdk/accounts/index.d.ts.map +1 -0
  153. package/dist/marginfi-sdk/accounts/index.js +26 -0
  154. package/dist/marginfi-sdk/accounts/marginfiAccount.d.ts +58 -0
  155. package/dist/marginfi-sdk/accounts/marginfiAccount.d.ts.map +1 -0
  156. package/dist/marginfi-sdk/accounts/marginfiAccount.js +76 -0
  157. package/dist/marginfi-sdk/accounts/marginfiGroup.d.ts +35 -0
  158. package/dist/marginfi-sdk/accounts/marginfiGroup.d.ts.map +1 -0
  159. package/dist/marginfi-sdk/accounts/marginfiGroup.js +71 -0
  160. package/dist/marginfi-sdk/errors/index.d.ts +9 -0
  161. package/dist/marginfi-sdk/errors/index.d.ts.map +1 -0
  162. package/dist/marginfi-sdk/errors/index.js +24 -0
  163. package/dist/marginfi-sdk/errors/marginfi.d.ts +283 -0
  164. package/dist/marginfi-sdk/errors/marginfi.d.ts.map +1 -0
  165. package/dist/marginfi-sdk/errors/marginfi.js +515 -0
  166. package/dist/marginfi-sdk/index.d.ts +14 -0
  167. package/dist/marginfi-sdk/index.d.ts.map +1 -0
  168. package/dist/marginfi-sdk/index.js +29 -0
  169. package/dist/marginfi-sdk/instructions/index.d.ts +32 -0
  170. package/dist/marginfi-sdk/instructions/index.d.ts.map +1 -0
  171. package/dist/marginfi-sdk/instructions/index.js +47 -0
  172. package/dist/marginfi-sdk/instructions/lendingAccountBorrow.d.ts +30 -0
  173. package/dist/marginfi-sdk/instructions/lendingAccountBorrow.d.ts.map +1 -0
  174. package/dist/marginfi-sdk/instructions/lendingAccountBorrow.js +83 -0
  175. package/dist/marginfi-sdk/instructions/lendingAccountCloseBalance.d.ts +22 -0
  176. package/dist/marginfi-sdk/instructions/lendingAccountCloseBalance.d.ts.map +1 -0
  177. package/dist/marginfi-sdk/instructions/lendingAccountCloseBalance.js +53 -0
  178. package/dist/marginfi-sdk/instructions/lendingAccountDeposit.d.ts +29 -0
  179. package/dist/marginfi-sdk/instructions/lendingAccountDeposit.d.ts.map +1 -0
  180. package/dist/marginfi-sdk/instructions/lendingAccountDeposit.js +81 -0
  181. package/dist/marginfi-sdk/instructions/lendingAccountEndFlashloan.d.ts +20 -0
  182. package/dist/marginfi-sdk/instructions/lendingAccountEndFlashloan.d.ts.map +1 -0
  183. package/dist/marginfi-sdk/instructions/lendingAccountEndFlashloan.js +50 -0
  184. package/dist/marginfi-sdk/instructions/lendingAccountLiquidate.d.ts +32 -0
  185. package/dist/marginfi-sdk/instructions/lendingAccountLiquidate.d.ts.map +1 -0
  186. package/dist/marginfi-sdk/instructions/lendingAccountLiquidate.js +100 -0
  187. package/dist/marginfi-sdk/instructions/lendingAccountRepay.d.ts +31 -0
  188. package/dist/marginfi-sdk/instructions/lendingAccountRepay.d.ts.map +1 -0
  189. package/dist/marginfi-sdk/instructions/lendingAccountRepay.js +82 -0
  190. package/dist/marginfi-sdk/instructions/lendingAccountSettleEmissions.d.ts +20 -0
  191. package/dist/marginfi-sdk/instructions/lendingAccountSettleEmissions.d.ts.map +1 -0
  192. package/dist/marginfi-sdk/instructions/lendingAccountSettleEmissions.js +46 -0
  193. package/dist/marginfi-sdk/instructions/lendingAccountStartFlashloan.d.ts +25 -0
  194. package/dist/marginfi-sdk/instructions/lendingAccountStartFlashloan.d.ts.map +1 -0
  195. package/dist/marginfi-sdk/instructions/lendingAccountStartFlashloan.js +62 -0
  196. package/dist/marginfi-sdk/instructions/lendingAccountWithdraw.d.ts +32 -0
  197. package/dist/marginfi-sdk/instructions/lendingAccountWithdraw.d.ts.map +1 -0
  198. package/dist/marginfi-sdk/instructions/lendingAccountWithdraw.js +87 -0
  199. package/dist/marginfi-sdk/instructions/lendingAccountWithdrawEmissions.d.ts +27 -0
  200. package/dist/marginfi-sdk/instructions/lendingAccountWithdrawEmissions.d.ts.map +1 -0
  201. package/dist/marginfi-sdk/instructions/lendingAccountWithdrawEmissions.js +86 -0
  202. package/dist/marginfi-sdk/instructions/lendingPoolAccrueBankInterest.d.ts +20 -0
  203. package/dist/marginfi-sdk/instructions/lendingPoolAccrueBankInterest.d.ts.map +1 -0
  204. package/dist/marginfi-sdk/instructions/lendingPoolAccrueBankInterest.js +46 -0
  205. package/dist/marginfi-sdk/instructions/lendingPoolAddBank.d.ts +37 -0
  206. package/dist/marginfi-sdk/instructions/lendingPoolAddBank.d.ts.map +1 -0
  207. package/dist/marginfi-sdk/instructions/lendingPoolAddBank.js +127 -0
  208. package/dist/marginfi-sdk/instructions/lendingPoolAddBankWithSeed.d.ts +39 -0
  209. package/dist/marginfi-sdk/instructions/lendingPoolAddBankWithSeed.d.ts.map +1 -0
  210. package/dist/marginfi-sdk/instructions/lendingPoolAddBankWithSeed.js +128 -0
  211. package/dist/marginfi-sdk/instructions/lendingPoolCollectBankFees.d.ts +25 -0
  212. package/dist/marginfi-sdk/instructions/lendingPoolCollectBankFees.d.ts.map +1 -0
  213. package/dist/marginfi-sdk/instructions/lendingPoolCollectBankFees.js +76 -0
  214. package/dist/marginfi-sdk/instructions/lendingPoolConfigureBank.d.ts +46 -0
  215. package/dist/marginfi-sdk/instructions/lendingPoolConfigureBank.d.ts.map +1 -0
  216. package/dist/marginfi-sdk/instructions/lendingPoolConfigureBank.js +67 -0
  217. package/dist/marginfi-sdk/instructions/lendingPoolHandleBankruptcy.d.ts +26 -0
  218. package/dist/marginfi-sdk/instructions/lendingPoolHandleBankruptcy.d.ts.map +1 -0
  219. package/dist/marginfi-sdk/instructions/lendingPoolHandleBankruptcy.js +81 -0
  220. package/dist/marginfi-sdk/instructions/lendingPoolSetupEmissions.d.ts +35 -0
  221. package/dist/marginfi-sdk/instructions/lendingPoolSetupEmissions.d.ts.map +1 -0
  222. package/dist/marginfi-sdk/instructions/lendingPoolSetupEmissions.js +97 -0
  223. package/dist/marginfi-sdk/instructions/lendingPoolUpdateEmissionsParameters.d.ts +33 -0
  224. package/dist/marginfi-sdk/instructions/lendingPoolUpdateEmissionsParameters.d.ts.map +1 -0
  225. package/dist/marginfi-sdk/instructions/lendingPoolUpdateEmissionsParameters.js +85 -0
  226. package/dist/marginfi-sdk/instructions/marginfiAccountInitialize.d.ts +23 -0
  227. package/dist/marginfi-sdk/instructions/marginfiAccountInitialize.d.ts.map +1 -0
  228. package/dist/marginfi-sdk/instructions/marginfiAccountInitialize.js +76 -0
  229. package/dist/marginfi-sdk/instructions/marginfiGroupConfigure.d.ts +24 -0
  230. package/dist/marginfi-sdk/instructions/marginfiGroupConfigure.d.ts.map +1 -0
  231. package/dist/marginfi-sdk/instructions/marginfiGroupConfigure.js +52 -0
  232. package/dist/marginfi-sdk/instructions/marginfiGroupInitialize.d.ts +21 -0
  233. package/dist/marginfi-sdk/instructions/marginfiGroupInitialize.d.ts.map +1 -0
  234. package/dist/marginfi-sdk/instructions/marginfiGroupInitialize.js +57 -0
  235. package/dist/marginfi-sdk/instructions/setAccountFlag.d.ts +26 -0
  236. package/dist/marginfi-sdk/instructions/setAccountFlag.d.ts.map +1 -0
  237. package/dist/marginfi-sdk/instructions/setAccountFlag.js +60 -0
  238. package/dist/marginfi-sdk/instructions/setNewAccountAuthority.d.ts +23 -0
  239. package/dist/marginfi-sdk/instructions/setNewAccountAuthority.d.ts.map +1 -0
  240. package/dist/marginfi-sdk/instructions/setNewAccountAuthority.js +69 -0
  241. package/dist/marginfi-sdk/instructions/unsetAccountFlag.d.ts +26 -0
  242. package/dist/marginfi-sdk/instructions/unsetAccountFlag.d.ts.map +1 -0
  243. package/dist/marginfi-sdk/instructions/unsetAccountFlag.js +57 -0
  244. package/dist/marginfi-sdk/programs/index.d.ts +9 -0
  245. package/dist/marginfi-sdk/programs/index.d.ts.map +1 -0
  246. package/dist/marginfi-sdk/programs/index.js +24 -0
  247. package/dist/marginfi-sdk/programs/marginfi.d.ts +13 -0
  248. package/dist/marginfi-sdk/programs/marginfi.d.ts.map +1 -0
  249. package/dist/marginfi-sdk/programs/marginfi.js +36 -0
  250. package/dist/marginfi-sdk/shared/index.d.ts +54 -0
  251. package/dist/marginfi-sdk/shared/index.d.ts.map +1 -0
  252. package/dist/marginfi-sdk/shared/index.js +70 -0
  253. package/dist/marginfi-sdk/types/accountEventHeader.d.ts +23 -0
  254. package/dist/marginfi-sdk/types/accountEventHeader.d.ts.map +1 -0
  255. package/dist/marginfi-sdk/types/accountEventHeader.js +20 -0
  256. package/dist/marginfi-sdk/types/balance.d.ts +32 -0
  257. package/dist/marginfi-sdk/types/balance.d.ts.map +1 -0
  258. package/dist/marginfi-sdk/types/balance.js +25 -0
  259. package/dist/marginfi-sdk/types/balanceDecreaseType.d.ts +17 -0
  260. package/dist/marginfi-sdk/types/balanceDecreaseType.d.ts.map +1 -0
  261. package/dist/marginfi-sdk/types/balanceDecreaseType.js +24 -0
  262. package/dist/marginfi-sdk/types/balanceIncreaseType.d.ts +17 -0
  263. package/dist/marginfi-sdk/types/balanceIncreaseType.d.ts.map +1 -0
  264. package/dist/marginfi-sdk/types/balanceIncreaseType.js +24 -0
  265. package/dist/marginfi-sdk/types/balanceSide.d.ts +15 -0
  266. package/dist/marginfi-sdk/types/balanceSide.d.ts.map +1 -0
  267. package/dist/marginfi-sdk/types/balanceSide.js +22 -0
  268. package/dist/marginfi-sdk/types/bankConfig.d.ts +67 -0
  269. package/dist/marginfi-sdk/types/bankConfig.d.ts.map +1 -0
  270. package/dist/marginfi-sdk/types/bankConfig.js +32 -0
  271. package/dist/marginfi-sdk/types/bankConfigCompact.d.ts +65 -0
  272. package/dist/marginfi-sdk/types/bankConfigCompact.d.ts.map +1 -0
  273. package/dist/marginfi-sdk/types/bankConfigCompact.js +31 -0
  274. package/dist/marginfi-sdk/types/bankOperationalState.d.ts +16 -0
  275. package/dist/marginfi-sdk/types/bankOperationalState.d.ts.map +1 -0
  276. package/dist/marginfi-sdk/types/bankOperationalState.js +23 -0
  277. package/dist/marginfi-sdk/types/bankVaultType.d.ts +16 -0
  278. package/dist/marginfi-sdk/types/bankVaultType.d.ts.map +1 -0
  279. package/dist/marginfi-sdk/types/bankVaultType.js +23 -0
  280. package/dist/marginfi-sdk/types/groupEventHeader.d.ts +19 -0
  281. package/dist/marginfi-sdk/types/groupEventHeader.d.ts.map +1 -0
  282. package/dist/marginfi-sdk/types/groupEventHeader.js +18 -0
  283. package/dist/marginfi-sdk/types/index.d.ts +31 -0
  284. package/dist/marginfi-sdk/types/index.d.ts.map +1 -0
  285. package/dist/marginfi-sdk/types/index.js +46 -0
  286. package/dist/marginfi-sdk/types/interestRateConfig.d.ts +31 -0
  287. package/dist/marginfi-sdk/types/interestRateConfig.d.ts.map +1 -0
  288. package/dist/marginfi-sdk/types/interestRateConfig.js +25 -0
  289. package/dist/marginfi-sdk/types/interestRateConfigCompact.d.ts +29 -0
  290. package/dist/marginfi-sdk/types/interestRateConfigCompact.d.ts.map +1 -0
  291. package/dist/marginfi-sdk/types/interestRateConfigCompact.js +24 -0
  292. package/dist/marginfi-sdk/types/interestRateConfigOpt.d.ts +30 -0
  293. package/dist/marginfi-sdk/types/interestRateConfigOpt.d.ts.map +1 -0
  294. package/dist/marginfi-sdk/types/interestRateConfigOpt.js +24 -0
  295. package/dist/marginfi-sdk/types/lendingAccount.d.ts +19 -0
  296. package/dist/marginfi-sdk/types/lendingAccount.d.ts.map +1 -0
  297. package/dist/marginfi-sdk/types/lendingAccount.js +19 -0
  298. package/dist/marginfi-sdk/types/liquidationBalances.d.ts +17 -0
  299. package/dist/marginfi-sdk/types/liquidationBalances.d.ts.map +1 -0
  300. package/dist/marginfi-sdk/types/liquidationBalances.js +20 -0
  301. package/dist/marginfi-sdk/types/oracleConfig.d.ts +20 -0
  302. package/dist/marginfi-sdk/types/oracleConfig.d.ts.map +1 -0
  303. package/dist/marginfi-sdk/types/oracleConfig.js +19 -0
  304. package/dist/marginfi-sdk/types/oraclePriceType.d.ts +15 -0
  305. package/dist/marginfi-sdk/types/oraclePriceType.d.ts.map +1 -0
  306. package/dist/marginfi-sdk/types/oraclePriceType.js +22 -0
  307. package/dist/marginfi-sdk/types/oracleSetup.d.ts +17 -0
  308. package/dist/marginfi-sdk/types/oracleSetup.d.ts.map +1 -0
  309. package/dist/marginfi-sdk/types/oracleSetup.js +24 -0
  310. package/dist/marginfi-sdk/types/priceBias.d.ts +15 -0
  311. package/dist/marginfi-sdk/types/priceBias.d.ts.map +1 -0
  312. package/dist/marginfi-sdk/types/priceBias.js +22 -0
  313. package/dist/marginfi-sdk/types/requirementType.d.ts +16 -0
  314. package/dist/marginfi-sdk/types/requirementType.d.ts.map +1 -0
  315. package/dist/marginfi-sdk/types/requirementType.js +23 -0
  316. package/dist/marginfi-sdk/types/riskRequirementType.d.ts +16 -0
  317. package/dist/marginfi-sdk/types/riskRequirementType.d.ts.map +1 -0
  318. package/dist/marginfi-sdk/types/riskRequirementType.js +23 -0
  319. package/dist/marginfi-sdk/types/riskTier.d.ts +15 -0
  320. package/dist/marginfi-sdk/types/riskTier.d.ts.map +1 -0
  321. package/dist/marginfi-sdk/types/riskTier.js +22 -0
  322. package/dist/marginfi-sdk/types/wrappedI80F48.d.ts +16 -0
  323. package/dist/marginfi-sdk/types/wrappedI80F48.d.ts.map +1 -0
  324. package/dist/marginfi-sdk/types/wrappedI80F48.js +17 -0
  325. package/dist/transactions/index.d.ts +3 -0
  326. package/dist/transactions/index.d.ts.map +1 -0
  327. package/dist/transactions/index.js +18 -0
  328. package/dist/transactions/transactionUtils.d.ts +12 -0
  329. package/dist/transactions/transactionUtils.d.ts.map +1 -0
  330. package/dist/transactions/transactionUtils.js +262 -0
  331. package/dist/transactions/transactionsManager.d.ts +42 -0
  332. package/dist/transactions/transactionsManager.d.ts.map +1 -0
  333. package/dist/transactions/transactionsManager.js +246 -0
  334. package/dist/types/accounts.d.ts +8 -0
  335. package/dist/types/accounts.d.ts.map +1 -0
  336. package/dist/types/accounts.js +2 -0
  337. package/dist/types/index.d.ts +2 -0
  338. package/dist/types/index.d.ts.map +1 -0
  339. package/dist/types/index.js +17 -0
  340. package/dist/utils/accountUtils.d.ts +11 -0
  341. package/dist/utils/accountUtils.d.ts.map +1 -0
  342. package/dist/utils/accountUtils.js +60 -0
  343. package/dist/utils/deleteme.d.ts +2 -0
  344. package/dist/utils/deleteme.d.ts.map +1 -0
  345. package/dist/utils/deleteme.js +21 -0
  346. package/dist/utils/generalUtils.d.ts +11 -0
  347. package/dist/utils/generalUtils.d.ts.map +1 -0
  348. package/dist/utils/generalUtils.js +107 -0
  349. package/dist/utils/index.d.ts +9 -0
  350. package/dist/utils/index.d.ts.map +1 -0
  351. package/dist/utils/index.js +24 -0
  352. package/dist/utils/jitoUtils.d.ts +15 -0
  353. package/dist/utils/jitoUtils.d.ts.map +1 -0
  354. package/dist/utils/jitoUtils.js +108 -0
  355. package/dist/utils/jupiterUtils.d.ts +21 -0
  356. package/dist/utils/jupiterUtils.d.ts.map +1 -0
  357. package/dist/utils/jupiterUtils.js +61 -0
  358. package/dist/utils/local/shared.d.ts +3 -0
  359. package/dist/utils/local/shared.d.ts.map +1 -0
  360. package/dist/utils/local/shared.js +63 -0
  361. package/dist/utils/local/updateMarginfiLUT.d.ts +2 -0
  362. package/dist/utils/local/updateMarginfiLUT.d.ts.map +1 -0
  363. package/dist/utils/local/updateMarginfiLUT.js +22 -0
  364. package/dist/utils/local/updateSolautoLUT.d.ts +2 -0
  365. package/dist/utils/local/updateSolautoLUT.d.ts.map +1 -0
  366. package/dist/utils/local/updateSolautoLUT.js +13 -0
  367. package/dist/utils/marginfiUtils.d.ts +14 -0
  368. package/dist/utils/marginfiUtils.d.ts.map +1 -0
  369. package/dist/utils/marginfiUtils.js +201 -0
  370. package/dist/utils/numberUtils.d.ts +9 -0
  371. package/dist/utils/numberUtils.d.ts.map +1 -0
  372. package/dist/utils/numberUtils.js +62 -0
  373. package/dist/utils/solanaUtils.d.ts +18 -0
  374. package/dist/utils/solanaUtils.d.ts.map +1 -0
  375. package/dist/utils/solanaUtils.js +183 -0
  376. package/dist/utils/solauto/generalUtils.d.ts +51 -0
  377. package/dist/utils/solauto/generalUtils.d.ts.map +1 -0
  378. package/dist/utils/solauto/generalUtils.js +271 -0
  379. package/dist/utils/solauto/index.d.ts +3 -0
  380. package/dist/utils/solauto/index.d.ts.map +1 -0
  381. package/dist/utils/solauto/index.js +18 -0
  382. package/dist/utils/solauto/rebalanceUtils.d.ts +17 -0
  383. package/dist/utils/solauto/rebalanceUtils.d.ts.map +1 -0
  384. package/dist/utils/solauto/rebalanceUtils.js +199 -0
  385. package/package.json +37 -0
  386. package/src/clients/index.ts +1 -0
  387. package/src/clients/solautoClient.ts +684 -0
  388. package/src/clients/solautoMarginfiClient.ts +496 -0
  389. package/src/constants/README.md +9 -0
  390. package/src/constants/generalAccounts.ts +8 -0
  391. package/src/constants/index.ts +5 -0
  392. package/src/constants/marginfiAccounts.ts +24 -0
  393. package/src/constants/pythConstants.ts +10 -0
  394. package/src/constants/solautoConstants.ts +54 -0
  395. package/src/constants/tokenConstants.ts +9 -0
  396. package/src/generated/accounts/index.ts +10 -0
  397. package/src/generated/accounts/referralState.ts +159 -0
  398. package/src/generated/accounts/solautoPosition.ts +205 -0
  399. package/src/generated/errors/index.ts +9 -0
  400. package/src/generated/errors/solauto.ts +228 -0
  401. package/src/generated/index.ts +14 -0
  402. package/src/generated/instructions/cancelDCA.ts +161 -0
  403. package/src/generated/instructions/claimReferralFees.ts +159 -0
  404. package/src/generated/instructions/closePosition.ts +176 -0
  405. package/src/generated/instructions/convertReferralFees.ts +172 -0
  406. package/src/generated/instructions/index.ts +18 -0
  407. package/src/generated/instructions/marginfiOpenPosition.ts +275 -0
  408. package/src/generated/instructions/marginfiProtocolInteraction.ts +257 -0
  409. package/src/generated/instructions/marginfiRebalance.ts +274 -0
  410. package/src/generated/instructions/marginfiRefreshData.ts +147 -0
  411. package/src/generated/instructions/updatePosition.ts +173 -0
  412. package/src/generated/instructions/updateReferralStates.ts +166 -0
  413. package/src/generated/programs/index.ts +9 -0
  414. package/src/generated/programs/solauto.ts +52 -0
  415. package/src/generated/shared/index.ts +117 -0
  416. package/src/generated/types/automationSettings.ts +52 -0
  417. package/src/generated/types/automationSettingsInp.ts +43 -0
  418. package/src/generated/types/dCASettings.ts +45 -0
  419. package/src/generated/types/dCASettingsInp.ts +37 -0
  420. package/src/generated/types/feeType.ts +23 -0
  421. package/src/generated/types/index.ts +26 -0
  422. package/src/generated/types/lendingPlatform.ts +26 -0
  423. package/src/generated/types/podBool.ts +19 -0
  424. package/src/generated/types/positionData.ts +69 -0
  425. package/src/generated/types/positionState.ts +72 -0
  426. package/src/generated/types/positionTokenUsage.ts +67 -0
  427. package/src/generated/types/rebalanceData.ts +60 -0
  428. package/src/generated/types/solautoAction.ts +101 -0
  429. package/src/generated/types/solautoRebalanceType.ts +27 -0
  430. package/src/generated/types/solautoSettingsParameters.ts +62 -0
  431. package/src/generated/types/solautoSettingsParametersInp.ts +58 -0
  432. package/src/generated/types/tokenAmount.ts +29 -0
  433. package/src/generated/types/tokenBalanceAmount.ts +67 -0
  434. package/src/generated/types/updatePositionData.ts +49 -0
  435. package/src/index.ts +6 -0
  436. package/src/marginfi-sdk/accounts/bank.ts +311 -0
  437. package/src/marginfi-sdk/accounts/index.ts +11 -0
  438. package/src/marginfi-sdk/accounts/marginfiAccount.ts +195 -0
  439. package/src/marginfi-sdk/accounts/marginfiGroup.ts +164 -0
  440. package/src/marginfi-sdk/errors/index.ts +9 -0
  441. package/src/marginfi-sdk/errors/marginfi.ts +650 -0
  442. package/src/marginfi-sdk/index.ts +14 -0
  443. package/src/marginfi-sdk/instructions/index.ts +32 -0
  444. package/src/marginfi-sdk/instructions/lendingAccountBorrow.ts +167 -0
  445. package/src/marginfi-sdk/instructions/lendingAccountCloseBalance.ts +118 -0
  446. package/src/marginfi-sdk/instructions/lendingAccountDeposit.ts +164 -0
  447. package/src/marginfi-sdk/instructions/lendingAccountEndFlashloan.ts +113 -0
  448. package/src/marginfi-sdk/instructions/lendingAccountLiquidate.ts +186 -0
  449. package/src/marginfi-sdk/instructions/lendingAccountRepay.ts +171 -0
  450. package/src/marginfi-sdk/instructions/lendingAccountSettleEmissions.ts +108 -0
  451. package/src/marginfi-sdk/instructions/lendingAccountStartFlashloan.ts +138 -0
  452. package/src/marginfi-sdk/instructions/lendingAccountWithdraw.ts +177 -0
  453. package/src/marginfi-sdk/instructions/lendingAccountWithdrawEmissions.ts +160 -0
  454. package/src/marginfi-sdk/instructions/lendingPoolAccrueBankInterest.ts +108 -0
  455. package/src/marginfi-sdk/instructions/lendingPoolAddBank.ts +226 -0
  456. package/src/marginfi-sdk/instructions/lendingPoolAddBankWithSeed.ts +231 -0
  457. package/src/marginfi-sdk/instructions/lendingPoolCollectBankFees.ts +147 -0
  458. package/src/marginfi-sdk/instructions/lendingPoolConfigureBank.ts +181 -0
  459. package/src/marginfi-sdk/instructions/lendingPoolHandleBankruptcy.ts +154 -0
  460. package/src/marginfi-sdk/instructions/lendingPoolSetupEmissions.ts +190 -0
  461. package/src/marginfi-sdk/instructions/lendingPoolUpdateEmissionsParameters.ts +176 -0
  462. package/src/marginfi-sdk/instructions/marginfiAccountInitialize.ts +146 -0
  463. package/src/marginfi-sdk/instructions/marginfiGroupConfigure.ts +129 -0
  464. package/src/marginfi-sdk/instructions/marginfiGroupInitialize.ts +126 -0
  465. package/src/marginfi-sdk/instructions/setAccountFlag.ts +132 -0
  466. package/src/marginfi-sdk/instructions/setNewAccountAuthority.ts +137 -0
  467. package/src/marginfi-sdk/instructions/unsetAccountFlag.ts +130 -0
  468. package/src/marginfi-sdk/programs/index.ts +9 -0
  469. package/src/marginfi-sdk/programs/marginfi.ts +52 -0
  470. package/src/marginfi-sdk/shared/index.ts +117 -0
  471. package/src/marginfi-sdk/types/accountEventHeader.ts +44 -0
  472. package/src/marginfi-sdk/types/balance.ts +61 -0
  473. package/src/marginfi-sdk/types/balanceDecreaseType.ts +27 -0
  474. package/src/marginfi-sdk/types/balanceIncreaseType.ts +27 -0
  475. package/src/marginfi-sdk/types/balanceSide.ts +25 -0
  476. package/src/marginfi-sdk/types/bankConfig.ts +117 -0
  477. package/src/marginfi-sdk/types/bankConfigCompact.ts +114 -0
  478. package/src/marginfi-sdk/types/bankOperationalState.ts +26 -0
  479. package/src/marginfi-sdk/types/bankVaultType.ts +26 -0
  480. package/src/marginfi-sdk/types/groupEventHeader.ts +38 -0
  481. package/src/marginfi-sdk/types/index.ts +31 -0
  482. package/src/marginfi-sdk/types/interestRateConfig.ts +60 -0
  483. package/src/marginfi-sdk/types/interestRateConfigCompact.ts +52 -0
  484. package/src/marginfi-sdk/types/interestRateConfigOpt.ts +57 -0
  485. package/src/marginfi-sdk/types/lendingAccount.ts +38 -0
  486. package/src/marginfi-sdk/types/liquidationBalances.ts +33 -0
  487. package/src/marginfi-sdk/types/oracleConfig.ts +36 -0
  488. package/src/marginfi-sdk/types/oraclePriceType.ts +25 -0
  489. package/src/marginfi-sdk/types/oracleSetup.ts +27 -0
  490. package/src/marginfi-sdk/types/priceBias.ts +22 -0
  491. package/src/marginfi-sdk/types/requirementType.ts +26 -0
  492. package/src/marginfi-sdk/types/riskRequirementType.ts +26 -0
  493. package/src/marginfi-sdk/types/riskTier.ts +22 -0
  494. package/src/marginfi-sdk/types/wrappedI80F48.ts +22 -0
  495. package/src/transactions/index.ts +2 -0
  496. package/src/transactions/transactionUtils.ts +518 -0
  497. package/src/transactions/transactionsManager.ts +344 -0
  498. package/src/types/accounts.ts +7 -0
  499. package/src/types/index.ts +1 -0
  500. package/src/utils/accountUtils.ts +92 -0
  501. package/src/utils/deleteme.ts +40 -0
  502. package/src/utils/generalUtils.ts +123 -0
  503. package/src/utils/index.ts +8 -0
  504. package/src/utils/jitoUtils.ts +192 -0
  505. package/src/utils/jupiterUtils.ts +114 -0
  506. package/src/utils/local/shared.ts +85 -0
  507. package/src/utils/local/updateMarginfiLUT.ts +33 -0
  508. package/src/utils/local/updateSolautoLUT.ts +15 -0
  509. package/src/utils/marginfiUtils.ts +383 -0
  510. package/src/utils/numberUtils.ts +77 -0
  511. package/src/utils/solanaUtils.ts +333 -0
  512. package/src/utils/solauto/generalUtils.ts +371 -0
  513. package/src/utils/solauto/index.ts +2 -0
  514. package/src/utils/solauto/rebalanceUtils.ts +359 -0
  515. package/tests/shared.ts +15 -0
  516. package/tests/transactions/solautoMarginfi.ts +144 -0
  517. package/tests/unit/lookupTables.ts +40 -0
  518. package/tests/unit/rebalanceCalculations.ts +432 -0
  519. package/tsconfig.json +22 -0
@@ -0,0 +1,44 @@
1
+ /**
2
+ * This code was AUTOGENERATED using the kinobi library.
3
+ * Please DO NOT EDIT THIS FILE, instead use visitors
4
+ * to add features, then rerun kinobi to update it.
5
+ *
6
+ * @see https://github.com/metaplex-foundation/kinobi
7
+ */
8
+
9
+ import { Option, OptionOrNullable, PublicKey } from '@metaplex-foundation/umi';
10
+ import {
11
+ Serializer,
12
+ option,
13
+ publicKey as publicKeySerializer,
14
+ struct,
15
+ } from '@metaplex-foundation/umi/serializers';
16
+
17
+ export type AccountEventHeader = {
18
+ signer: Option<PublicKey>;
19
+ marginfiAccount: PublicKey;
20
+ marginfiAccountAuthority: PublicKey;
21
+ marginfiGroup: PublicKey;
22
+ };
23
+
24
+ export type AccountEventHeaderArgs = {
25
+ signer: OptionOrNullable<PublicKey>;
26
+ marginfiAccount: PublicKey;
27
+ marginfiAccountAuthority: PublicKey;
28
+ marginfiGroup: PublicKey;
29
+ };
30
+
31
+ export function getAccountEventHeaderSerializer(): Serializer<
32
+ AccountEventHeaderArgs,
33
+ AccountEventHeader
34
+ > {
35
+ return struct<AccountEventHeader>(
36
+ [
37
+ ['signer', option(publicKeySerializer())],
38
+ ['marginfiAccount', publicKeySerializer()],
39
+ ['marginfiAccountAuthority', publicKeySerializer()],
40
+ ['marginfiGroup', publicKeySerializer()],
41
+ ],
42
+ { description: 'AccountEventHeader' }
43
+ ) as Serializer<AccountEventHeaderArgs, AccountEventHeader>;
44
+ }
@@ -0,0 +1,61 @@
1
+ /**
2
+ * This code was AUTOGENERATED using the kinobi library.
3
+ * Please DO NOT EDIT THIS FILE, instead use visitors
4
+ * to add features, then rerun kinobi to update it.
5
+ *
6
+ * @see https://github.com/metaplex-foundation/kinobi
7
+ */
8
+
9
+ import { PublicKey } from '@metaplex-foundation/umi';
10
+ import {
11
+ Serializer,
12
+ array,
13
+ bool,
14
+ publicKey as publicKeySerializer,
15
+ struct,
16
+ u64,
17
+ u8,
18
+ } from '@metaplex-foundation/umi/serializers';
19
+ import {
20
+ WrappedI80F48,
21
+ WrappedI80F48Args,
22
+ getWrappedI80F48Serializer,
23
+ } from '.';
24
+
25
+ export type Balance = {
26
+ active: boolean;
27
+ bankPk: PublicKey;
28
+ autoPadding0: Array<number>;
29
+ assetShares: WrappedI80F48;
30
+ liabilityShares: WrappedI80F48;
31
+ emissionsOutstanding: WrappedI80F48;
32
+ lastUpdate: bigint;
33
+ padding: Array<bigint>;
34
+ };
35
+
36
+ export type BalanceArgs = {
37
+ active: boolean;
38
+ bankPk: PublicKey;
39
+ autoPadding0: Array<number>;
40
+ assetShares: WrappedI80F48Args;
41
+ liabilityShares: WrappedI80F48Args;
42
+ emissionsOutstanding: WrappedI80F48Args;
43
+ lastUpdate: number | bigint;
44
+ padding: Array<number | bigint>;
45
+ };
46
+
47
+ export function getBalanceSerializer(): Serializer<BalanceArgs, Balance> {
48
+ return struct<Balance>(
49
+ [
50
+ ['active', bool()],
51
+ ['bankPk', publicKeySerializer()],
52
+ ['autoPadding0', array(u8(), { size: 7 })],
53
+ ['assetShares', getWrappedI80F48Serializer()],
54
+ ['liabilityShares', getWrappedI80F48Serializer()],
55
+ ['emissionsOutstanding', getWrappedI80F48Serializer()],
56
+ ['lastUpdate', u64()],
57
+ ['padding', array(u64(), { size: 1 })],
58
+ ],
59
+ { description: 'Balance' }
60
+ ) as Serializer<BalanceArgs, Balance>;
61
+ }
@@ -0,0 +1,27 @@
1
+ /**
2
+ * This code was AUTOGENERATED using the kinobi library.
3
+ * Please DO NOT EDIT THIS FILE, instead use visitors
4
+ * to add features, then rerun kinobi to update it.
5
+ *
6
+ * @see https://github.com/metaplex-foundation/kinobi
7
+ */
8
+
9
+ import { Serializer, scalarEnum } from '@metaplex-foundation/umi/serializers';
10
+
11
+ export enum BalanceDecreaseType {
12
+ Any,
13
+ WithdrawOnly,
14
+ BorrowOnly,
15
+ BypassBorrowLimit,
16
+ }
17
+
18
+ export type BalanceDecreaseTypeArgs = BalanceDecreaseType;
19
+
20
+ export function getBalanceDecreaseTypeSerializer(): Serializer<
21
+ BalanceDecreaseTypeArgs,
22
+ BalanceDecreaseType
23
+ > {
24
+ return scalarEnum<BalanceDecreaseType>(BalanceDecreaseType, {
25
+ description: 'BalanceDecreaseType',
26
+ }) as Serializer<BalanceDecreaseTypeArgs, BalanceDecreaseType>;
27
+ }
@@ -0,0 +1,27 @@
1
+ /**
2
+ * This code was AUTOGENERATED using the kinobi library.
3
+ * Please DO NOT EDIT THIS FILE, instead use visitors
4
+ * to add features, then rerun kinobi to update it.
5
+ *
6
+ * @see https://github.com/metaplex-foundation/kinobi
7
+ */
8
+
9
+ import { Serializer, scalarEnum } from '@metaplex-foundation/umi/serializers';
10
+
11
+ export enum BalanceIncreaseType {
12
+ Any,
13
+ RepayOnly,
14
+ DepositOnly,
15
+ BypassDepositLimit,
16
+ }
17
+
18
+ export type BalanceIncreaseTypeArgs = BalanceIncreaseType;
19
+
20
+ export function getBalanceIncreaseTypeSerializer(): Serializer<
21
+ BalanceIncreaseTypeArgs,
22
+ BalanceIncreaseType
23
+ > {
24
+ return scalarEnum<BalanceIncreaseType>(BalanceIncreaseType, {
25
+ description: 'BalanceIncreaseType',
26
+ }) as Serializer<BalanceIncreaseTypeArgs, BalanceIncreaseType>;
27
+ }
@@ -0,0 +1,25 @@
1
+ /**
2
+ * This code was AUTOGENERATED using the kinobi library.
3
+ * Please DO NOT EDIT THIS FILE, instead use visitors
4
+ * to add features, then rerun kinobi to update it.
5
+ *
6
+ * @see https://github.com/metaplex-foundation/kinobi
7
+ */
8
+
9
+ import { Serializer, scalarEnum } from '@metaplex-foundation/umi/serializers';
10
+
11
+ export enum BalanceSide {
12
+ Assets,
13
+ Liabilities,
14
+ }
15
+
16
+ export type BalanceSideArgs = BalanceSide;
17
+
18
+ export function getBalanceSideSerializer(): Serializer<
19
+ BalanceSideArgs,
20
+ BalanceSide
21
+ > {
22
+ return scalarEnum<BalanceSide>(BalanceSide, {
23
+ description: 'BalanceSide',
24
+ }) as Serializer<BalanceSideArgs, BalanceSide>;
25
+ }
@@ -0,0 +1,117 @@
1
+ /**
2
+ * This code was AUTOGENERATED using the kinobi library.
3
+ * Please DO NOT EDIT THIS FILE, instead use visitors
4
+ * to add features, then rerun kinobi to update it.
5
+ *
6
+ * @see https://github.com/metaplex-foundation/kinobi
7
+ */
8
+
9
+ import { PublicKey } from '@metaplex-foundation/umi';
10
+ import {
11
+ Serializer,
12
+ array,
13
+ publicKey as publicKeySerializer,
14
+ struct,
15
+ u64,
16
+ u8,
17
+ } from '@metaplex-foundation/umi/serializers';
18
+ import {
19
+ BankOperationalState,
20
+ BankOperationalStateArgs,
21
+ InterestRateConfig,
22
+ InterestRateConfigArgs,
23
+ OracleSetup,
24
+ OracleSetupArgs,
25
+ RiskTier,
26
+ RiskTierArgs,
27
+ WrappedI80F48,
28
+ WrappedI80F48Args,
29
+ getBankOperationalStateSerializer,
30
+ getInterestRateConfigSerializer,
31
+ getOracleSetupSerializer,
32
+ getRiskTierSerializer,
33
+ getWrappedI80F48Serializer,
34
+ } from '.';
35
+
36
+ /** TODO: Convert weights to (u64, u64) to avoid precision loss (maybe?) */
37
+ export type BankConfig = {
38
+ assetWeightInit: WrappedI80F48;
39
+ assetWeightMaint: WrappedI80F48;
40
+ liabilityWeightInit: WrappedI80F48;
41
+ liabilityWeightMaint: WrappedI80F48;
42
+ depositLimit: bigint;
43
+ interestRateConfig: InterestRateConfig;
44
+ operationalState: BankOperationalState;
45
+ oracleSetup: OracleSetup;
46
+ oracleKeys: Array<PublicKey>;
47
+ autoPadding0: Array<number>;
48
+ borrowLimit: bigint;
49
+ riskTier: RiskTier;
50
+ autoPadding1: Array<number>;
51
+ /**
52
+ * USD denominated limit for calculating asset value for initialization margin requirements.
53
+ * Example, if total SOL deposits are equal to $1M and the limit it set to $500K,
54
+ * then SOL assets will be discounted by 50%.
55
+ *
56
+ * In other words the max value of liabilities that can be backed by the asset is $500K.
57
+ * This is useful for limiting the damage of orcale attacks.
58
+ *
59
+ * Value is UI USD value, for example value 100 -> $100
60
+ */
61
+ totalAssetValueInitLimit: bigint;
62
+ padding: Array<bigint>;
63
+ };
64
+
65
+ export type BankConfigArgs = {
66
+ assetWeightInit: WrappedI80F48Args;
67
+ assetWeightMaint: WrappedI80F48Args;
68
+ liabilityWeightInit: WrappedI80F48Args;
69
+ liabilityWeightMaint: WrappedI80F48Args;
70
+ depositLimit: number | bigint;
71
+ interestRateConfig: InterestRateConfigArgs;
72
+ operationalState: BankOperationalStateArgs;
73
+ oracleSetup: OracleSetupArgs;
74
+ oracleKeys: Array<PublicKey>;
75
+ autoPadding0: Array<number>;
76
+ borrowLimit: number | bigint;
77
+ riskTier: RiskTierArgs;
78
+ autoPadding1: Array<number>;
79
+ /**
80
+ * USD denominated limit for calculating asset value for initialization margin requirements.
81
+ * Example, if total SOL deposits are equal to $1M and the limit it set to $500K,
82
+ * then SOL assets will be discounted by 50%.
83
+ *
84
+ * In other words the max value of liabilities that can be backed by the asset is $500K.
85
+ * This is useful for limiting the damage of orcale attacks.
86
+ *
87
+ * Value is UI USD value, for example value 100 -> $100
88
+ */
89
+ totalAssetValueInitLimit: number | bigint;
90
+ padding: Array<number | bigint>;
91
+ };
92
+
93
+ export function getBankConfigSerializer(): Serializer<
94
+ BankConfigArgs,
95
+ BankConfig
96
+ > {
97
+ return struct<BankConfig>(
98
+ [
99
+ ['assetWeightInit', getWrappedI80F48Serializer()],
100
+ ['assetWeightMaint', getWrappedI80F48Serializer()],
101
+ ['liabilityWeightInit', getWrappedI80F48Serializer()],
102
+ ['liabilityWeightMaint', getWrappedI80F48Serializer()],
103
+ ['depositLimit', u64()],
104
+ ['interestRateConfig', getInterestRateConfigSerializer()],
105
+ ['operationalState', getBankOperationalStateSerializer()],
106
+ ['oracleSetup', getOracleSetupSerializer()],
107
+ ['oracleKeys', array(publicKeySerializer(), { size: 5 })],
108
+ ['autoPadding0', array(u8(), { size: 6 })],
109
+ ['borrowLimit', u64()],
110
+ ['riskTier', getRiskTierSerializer()],
111
+ ['autoPadding1', array(u8(), { size: 7 })],
112
+ ['totalAssetValueInitLimit', u64()],
113
+ ['padding', array(u64(), { size: 5 })],
114
+ ],
115
+ { description: 'BankConfig' }
116
+ ) as Serializer<BankConfigArgs, BankConfig>;
117
+ }
@@ -0,0 +1,114 @@
1
+ /**
2
+ * This code was AUTOGENERATED using the kinobi library.
3
+ * Please DO NOT EDIT THIS FILE, instead use visitors
4
+ * to add features, then rerun kinobi to update it.
5
+ *
6
+ * @see https://github.com/metaplex-foundation/kinobi
7
+ */
8
+
9
+ import { PublicKey } from '@metaplex-foundation/umi';
10
+ import {
11
+ Serializer,
12
+ array,
13
+ publicKey as publicKeySerializer,
14
+ struct,
15
+ u64,
16
+ u8,
17
+ } from '@metaplex-foundation/umi/serializers';
18
+ import {
19
+ BankOperationalState,
20
+ BankOperationalStateArgs,
21
+ InterestRateConfigCompact,
22
+ InterestRateConfigCompactArgs,
23
+ OracleSetup,
24
+ OracleSetupArgs,
25
+ RiskTier,
26
+ RiskTierArgs,
27
+ WrappedI80F48,
28
+ WrappedI80F48Args,
29
+ getBankOperationalStateSerializer,
30
+ getInterestRateConfigCompactSerializer,
31
+ getOracleSetupSerializer,
32
+ getRiskTierSerializer,
33
+ getWrappedI80F48Serializer,
34
+ } from '.';
35
+
36
+ /** TODO: Convert weights to (u64, u64) to avoid precision loss (maybe?) */
37
+ export type BankConfigCompact = {
38
+ assetWeightInit: WrappedI80F48;
39
+ assetWeightMaint: WrappedI80F48;
40
+ liabilityWeightInit: WrappedI80F48;
41
+ liabilityWeightMaint: WrappedI80F48;
42
+ depositLimit: bigint;
43
+ interestRateConfig: InterestRateConfigCompact;
44
+ operationalState: BankOperationalState;
45
+ oracleSetup: OracleSetup;
46
+ oracleKey: PublicKey;
47
+ autoPadding0: Array<number>;
48
+ borrowLimit: bigint;
49
+ riskTier: RiskTier;
50
+ autoPadding1: Array<number>;
51
+ /**
52
+ * USD denominated limit for calculating asset value for initialization margin requirements.
53
+ * Example, if total SOL deposits are equal to $1M and the limit it set to $500K,
54
+ * then SOL assets will be discounted by 50%.
55
+ *
56
+ * In other words the max value of liabilities that can be backed by the asset is $500K.
57
+ * This is useful for limiting the damage of orcale attacks.
58
+ *
59
+ * Value is UI USD value, for example value 100 -> $100
60
+ */
61
+ totalAssetValueInitLimit: bigint;
62
+ };
63
+
64
+ export type BankConfigCompactArgs = {
65
+ assetWeightInit: WrappedI80F48Args;
66
+ assetWeightMaint: WrappedI80F48Args;
67
+ liabilityWeightInit: WrappedI80F48Args;
68
+ liabilityWeightMaint: WrappedI80F48Args;
69
+ depositLimit: number | bigint;
70
+ interestRateConfig: InterestRateConfigCompactArgs;
71
+ operationalState: BankOperationalStateArgs;
72
+ oracleSetup: OracleSetupArgs;
73
+ oracleKey: PublicKey;
74
+ autoPadding0: Array<number>;
75
+ borrowLimit: number | bigint;
76
+ riskTier: RiskTierArgs;
77
+ autoPadding1: Array<number>;
78
+ /**
79
+ * USD denominated limit for calculating asset value for initialization margin requirements.
80
+ * Example, if total SOL deposits are equal to $1M and the limit it set to $500K,
81
+ * then SOL assets will be discounted by 50%.
82
+ *
83
+ * In other words the max value of liabilities that can be backed by the asset is $500K.
84
+ * This is useful for limiting the damage of orcale attacks.
85
+ *
86
+ * Value is UI USD value, for example value 100 -> $100
87
+ */
88
+ totalAssetValueInitLimit: number | bigint;
89
+ };
90
+
91
+ export function getBankConfigCompactSerializer(): Serializer<
92
+ BankConfigCompactArgs,
93
+ BankConfigCompact
94
+ > {
95
+ return struct<BankConfigCompact>(
96
+ [
97
+ ['assetWeightInit', getWrappedI80F48Serializer()],
98
+ ['assetWeightMaint', getWrappedI80F48Serializer()],
99
+ ['liabilityWeightInit', getWrappedI80F48Serializer()],
100
+ ['liabilityWeightMaint', getWrappedI80F48Serializer()],
101
+ ['depositLimit', u64()],
102
+ ['interestRateConfig', getInterestRateConfigCompactSerializer()],
103
+ ['operationalState', getBankOperationalStateSerializer()],
104
+ ['oracleSetup', getOracleSetupSerializer()],
105
+ ['oracleKey', publicKeySerializer()],
106
+ ['autoPadding0', array(u8(), { size: 6 })],
107
+ ['borrowLimit', u64()],
108
+ ['riskTier', getRiskTierSerializer()],
109
+ ['autoPadding1', array(u8(), { size: 7 })],
110
+ ['totalAssetValueInitLimit', u64()],
111
+ ],
112
+ { description: 'BankConfigCompact' }
113
+ ) as Serializer<BankConfigCompactArgs, BankConfigCompact>;
114
+ }
@@ -0,0 +1,26 @@
1
+ /**
2
+ * This code was AUTOGENERATED using the kinobi library.
3
+ * Please DO NOT EDIT THIS FILE, instead use visitors
4
+ * to add features, then rerun kinobi to update it.
5
+ *
6
+ * @see https://github.com/metaplex-foundation/kinobi
7
+ */
8
+
9
+ import { Serializer, scalarEnum } from '@metaplex-foundation/umi/serializers';
10
+
11
+ export enum BankOperationalState {
12
+ Paused,
13
+ Operational,
14
+ ReduceOnly,
15
+ }
16
+
17
+ export type BankOperationalStateArgs = BankOperationalState;
18
+
19
+ export function getBankOperationalStateSerializer(): Serializer<
20
+ BankOperationalStateArgs,
21
+ BankOperationalState
22
+ > {
23
+ return scalarEnum<BankOperationalState>(BankOperationalState, {
24
+ description: 'BankOperationalState',
25
+ }) as Serializer<BankOperationalStateArgs, BankOperationalState>;
26
+ }
@@ -0,0 +1,26 @@
1
+ /**
2
+ * This code was AUTOGENERATED using the kinobi library.
3
+ * Please DO NOT EDIT THIS FILE, instead use visitors
4
+ * to add features, then rerun kinobi to update it.
5
+ *
6
+ * @see https://github.com/metaplex-foundation/kinobi
7
+ */
8
+
9
+ import { Serializer, scalarEnum } from '@metaplex-foundation/umi/serializers';
10
+
11
+ export enum BankVaultType {
12
+ Liquidity,
13
+ Insurance,
14
+ Fee,
15
+ }
16
+
17
+ export type BankVaultTypeArgs = BankVaultType;
18
+
19
+ export function getBankVaultTypeSerializer(): Serializer<
20
+ BankVaultTypeArgs,
21
+ BankVaultType
22
+ > {
23
+ return scalarEnum<BankVaultType>(BankVaultType, {
24
+ description: 'BankVaultType',
25
+ }) as Serializer<BankVaultTypeArgs, BankVaultType>;
26
+ }
@@ -0,0 +1,38 @@
1
+ /**
2
+ * This code was AUTOGENERATED using the kinobi library.
3
+ * Please DO NOT EDIT THIS FILE, instead use visitors
4
+ * to add features, then rerun kinobi to update it.
5
+ *
6
+ * @see https://github.com/metaplex-foundation/kinobi
7
+ */
8
+
9
+ import { Option, OptionOrNullable, PublicKey } from '@metaplex-foundation/umi';
10
+ import {
11
+ Serializer,
12
+ option,
13
+ publicKey as publicKeySerializer,
14
+ struct,
15
+ } from '@metaplex-foundation/umi/serializers';
16
+
17
+ export type GroupEventHeader = {
18
+ signer: Option<PublicKey>;
19
+ marginfiGroup: PublicKey;
20
+ };
21
+
22
+ export type GroupEventHeaderArgs = {
23
+ signer: OptionOrNullable<PublicKey>;
24
+ marginfiGroup: PublicKey;
25
+ };
26
+
27
+ export function getGroupEventHeaderSerializer(): Serializer<
28
+ GroupEventHeaderArgs,
29
+ GroupEventHeader
30
+ > {
31
+ return struct<GroupEventHeader>(
32
+ [
33
+ ['signer', option(publicKeySerializer())],
34
+ ['marginfiGroup', publicKeySerializer()],
35
+ ],
36
+ { description: 'GroupEventHeader' }
37
+ ) as Serializer<GroupEventHeaderArgs, GroupEventHeader>;
38
+ }
@@ -0,0 +1,31 @@
1
+ /**
2
+ * This code was AUTOGENERATED using the kinobi library.
3
+ * Please DO NOT EDIT THIS FILE, instead use visitors
4
+ * to add features, then rerun kinobi to update it.
5
+ *
6
+ * @see https://github.com/metaplex-foundation/kinobi
7
+ */
8
+
9
+ export * from './accountEventHeader';
10
+ export * from './balance';
11
+ export * from './balanceDecreaseType';
12
+ export * from './balanceIncreaseType';
13
+ export * from './balanceSide';
14
+ export * from './bankConfig';
15
+ export * from './bankConfigCompact';
16
+ export * from './bankOperationalState';
17
+ export * from './bankVaultType';
18
+ export * from './groupEventHeader';
19
+ export * from './interestRateConfig';
20
+ export * from './interestRateConfigCompact';
21
+ export * from './interestRateConfigOpt';
22
+ export * from './lendingAccount';
23
+ export * from './liquidationBalances';
24
+ export * from './oracleConfig';
25
+ export * from './oraclePriceType';
26
+ export * from './oracleSetup';
27
+ export * from './priceBias';
28
+ export * from './requirementType';
29
+ export * from './riskRequirementType';
30
+ export * from './riskTier';
31
+ export * from './wrappedI80F48';
@@ -0,0 +1,60 @@
1
+ /**
2
+ * This code was AUTOGENERATED using the kinobi library.
3
+ * Please DO NOT EDIT THIS FILE, instead use visitors
4
+ * to add features, then rerun kinobi to update it.
5
+ *
6
+ * @see https://github.com/metaplex-foundation/kinobi
7
+ */
8
+
9
+ import {
10
+ Serializer,
11
+ array,
12
+ struct,
13
+ u128,
14
+ } from '@metaplex-foundation/umi/serializers';
15
+ import {
16
+ WrappedI80F48,
17
+ WrappedI80F48Args,
18
+ getWrappedI80F48Serializer,
19
+ } from '.';
20
+
21
+ export type InterestRateConfig = {
22
+ optimalUtilizationRate: WrappedI80F48;
23
+ plateauInterestRate: WrappedI80F48;
24
+ maxInterestRate: WrappedI80F48;
25
+ insuranceFeeFixedApr: WrappedI80F48;
26
+ insuranceIrFee: WrappedI80F48;
27
+ protocolFixedFeeApr: WrappedI80F48;
28
+ protocolIrFee: WrappedI80F48;
29
+ padding: Array<bigint>;
30
+ };
31
+
32
+ export type InterestRateConfigArgs = {
33
+ optimalUtilizationRate: WrappedI80F48Args;
34
+ plateauInterestRate: WrappedI80F48Args;
35
+ maxInterestRate: WrappedI80F48Args;
36
+ insuranceFeeFixedApr: WrappedI80F48Args;
37
+ insuranceIrFee: WrappedI80F48Args;
38
+ protocolFixedFeeApr: WrappedI80F48Args;
39
+ protocolIrFee: WrappedI80F48Args;
40
+ padding: Array<number | bigint>;
41
+ };
42
+
43
+ export function getInterestRateConfigSerializer(): Serializer<
44
+ InterestRateConfigArgs,
45
+ InterestRateConfig
46
+ > {
47
+ return struct<InterestRateConfig>(
48
+ [
49
+ ['optimalUtilizationRate', getWrappedI80F48Serializer()],
50
+ ['plateauInterestRate', getWrappedI80F48Serializer()],
51
+ ['maxInterestRate', getWrappedI80F48Serializer()],
52
+ ['insuranceFeeFixedApr', getWrappedI80F48Serializer()],
53
+ ['insuranceIrFee', getWrappedI80F48Serializer()],
54
+ ['protocolFixedFeeApr', getWrappedI80F48Serializer()],
55
+ ['protocolIrFee', getWrappedI80F48Serializer()],
56
+ ['padding', array(u128(), { size: 8 })],
57
+ ],
58
+ { description: 'InterestRateConfig' }
59
+ ) as Serializer<InterestRateConfigArgs, InterestRateConfig>;
60
+ }
@@ -0,0 +1,52 @@
1
+ /**
2
+ * This code was AUTOGENERATED using the kinobi library.
3
+ * Please DO NOT EDIT THIS FILE, instead use visitors
4
+ * to add features, then rerun kinobi to update it.
5
+ *
6
+ * @see https://github.com/metaplex-foundation/kinobi
7
+ */
8
+
9
+ import { Serializer, struct } from '@metaplex-foundation/umi/serializers';
10
+ import {
11
+ WrappedI80F48,
12
+ WrappedI80F48Args,
13
+ getWrappedI80F48Serializer,
14
+ } from '.';
15
+
16
+ export type InterestRateConfigCompact = {
17
+ optimalUtilizationRate: WrappedI80F48;
18
+ plateauInterestRate: WrappedI80F48;
19
+ maxInterestRate: WrappedI80F48;
20
+ insuranceFeeFixedApr: WrappedI80F48;
21
+ insuranceIrFee: WrappedI80F48;
22
+ protocolFixedFeeApr: WrappedI80F48;
23
+ protocolIrFee: WrappedI80F48;
24
+ };
25
+
26
+ export type InterestRateConfigCompactArgs = {
27
+ optimalUtilizationRate: WrappedI80F48Args;
28
+ plateauInterestRate: WrappedI80F48Args;
29
+ maxInterestRate: WrappedI80F48Args;
30
+ insuranceFeeFixedApr: WrappedI80F48Args;
31
+ insuranceIrFee: WrappedI80F48Args;
32
+ protocolFixedFeeApr: WrappedI80F48Args;
33
+ protocolIrFee: WrappedI80F48Args;
34
+ };
35
+
36
+ export function getInterestRateConfigCompactSerializer(): Serializer<
37
+ InterestRateConfigCompactArgs,
38
+ InterestRateConfigCompact
39
+ > {
40
+ return struct<InterestRateConfigCompact>(
41
+ [
42
+ ['optimalUtilizationRate', getWrappedI80F48Serializer()],
43
+ ['plateauInterestRate', getWrappedI80F48Serializer()],
44
+ ['maxInterestRate', getWrappedI80F48Serializer()],
45
+ ['insuranceFeeFixedApr', getWrappedI80F48Serializer()],
46
+ ['insuranceIrFee', getWrappedI80F48Serializer()],
47
+ ['protocolFixedFeeApr', getWrappedI80F48Serializer()],
48
+ ['protocolIrFee', getWrappedI80F48Serializer()],
49
+ ],
50
+ { description: 'InterestRateConfigCompact' }
51
+ ) as Serializer<InterestRateConfigCompactArgs, InterestRateConfigCompact>;
52
+ }