@reflectmoney/stable.ts 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 (311) hide show
  1. package/README.md +108 -84
  2. package/dist/classes/ReflectKeeper.d.ts +104 -0
  3. package/dist/classes/ReflectKeeper.js +219 -0
  4. package/dist/classes/Stablecoin.d.ts +3 -1
  5. package/dist/classes/Stablecoin.js +2 -1
  6. package/dist/classes/index.d.ts +1 -1
  7. package/dist/classes/index.js +1 -1
  8. package/dist/constants/index.d.ts +1 -0
  9. package/dist/constants/index.js +1 -0
  10. package/dist/constants/lookupTables.d.ts +4 -0
  11. package/dist/constants/lookupTables.js +7 -0
  12. package/dist/stablecoins/LstStablecoin.js +1 -1
  13. package/dist/stablecoins/UsdcPlusStablecoin.d.ts +66 -0
  14. package/dist/stablecoins/UsdcPlusStablecoin.js +197 -0
  15. package/dist/stablecoins/UsdjStablecoin.d.ts +1 -0
  16. package/dist/stablecoins/UsdjStablecoin.js +44 -0
  17. package/dist/stablecoins/index.d.ts +2 -2
  18. package/dist/stablecoins/index.js +2 -2
  19. package/package.json +1 -1
  20. package/dist/classes/Strategy.d.ts +0 -30
  21. package/dist/classes/Strategy.js +0 -196
  22. package/dist/generated/accounts/DriftJlpController.d.ts +0 -114
  23. package/dist/generated/accounts/DriftJlpController.js +0 -169
  24. package/dist/generated/accounts/DriftLstController.d.ts +0 -108
  25. package/dist/generated/accounts/DriftLstController.js +0 -165
  26. package/dist/generated/accounts/DriftUsdcController.d.ts +0 -102
  27. package/dist/generated/accounts/DriftUsdcController.js +0 -158
  28. package/dist/generated/accounts/Main.d.ts +0 -110
  29. package/dist/generated/accounts/Main.js +0 -165
  30. package/dist/generated/accounts/PerpMarket.d.ts +0 -226
  31. package/dist/generated/accounts/PerpMarket.js +0 -307
  32. package/dist/generated/accounts/PrelaunchOracle.d.ts +0 -130
  33. package/dist/generated/accounts/PrelaunchOracle.js +0 -224
  34. package/dist/generated/accounts/PythLazerOracle.d.ts +0 -124
  35. package/dist/generated/accounts/PythLazerOracle.js +0 -210
  36. package/dist/generated/accounts/RebalanceLst.d.ts +0 -111
  37. package/dist/generated/accounts/RebalanceLst.js +0 -175
  38. package/dist/generated/accounts/SpotMarket.d.ts +0 -377
  39. package/dist/generated/accounts/SpotMarket.js +0 -601
  40. package/dist/generated/accounts/User.d.ts +0 -221
  41. package/dist/generated/accounts/User.js +0 -331
  42. package/dist/generated/accounts/UserPermissions.d.ts +0 -106
  43. package/dist/generated/accounts/UserPermissions.js +0 -161
  44. package/dist/generated/accounts/UserStats.d.ts +0 -211
  45. package/dist/generated/accounts/UserStats.js +0 -323
  46. package/dist/generated/accounts/index.d.ts +0 -38
  47. package/dist/generated/accounts/index.js +0 -55
  48. package/dist/generated/errors/index.d.ts +0 -1024
  49. package/dist/generated/errors/index.js +0 -1761
  50. package/dist/generated/index.d.ts +0 -19
  51. package/dist/generated/index.js +0 -36
  52. package/dist/generated/instructions/addLstDrift.d.ts +0 -49
  53. package/dist/generated/instructions/addLstDrift.js +0 -106
  54. package/dist/generated/instructions/addSubAccount.d.ts +0 -54
  55. package/dist/generated/instructions/addSubAccount.js +0 -121
  56. package/dist/generated/instructions/adjustHedgeS2.d.ts +0 -69
  57. package/dist/generated/instructions/adjustHedgeS2.js +0 -157
  58. package/dist/generated/instructions/captureSpreadDrift.d.ts +0 -56
  59. package/dist/generated/instructions/captureSpreadDrift.js +0 -120
  60. package/dist/generated/instructions/createAdminAccount.d.ts +0 -53
  61. package/dist/generated/instructions/createAdminAccount.js +0 -95
  62. package/dist/generated/instructions/createUserStatsAccount.d.ts +0 -54
  63. package/dist/generated/instructions/createUserStatsAccount.js +0 -121
  64. package/dist/generated/instructions/depositDrift.d.ts +0 -73
  65. package/dist/generated/instructions/depositDrift.js +0 -142
  66. package/dist/generated/instructions/freezeProgram.d.ts +0 -54
  67. package/dist/generated/instructions/freezeProgram.js +0 -95
  68. package/dist/generated/instructions/freezeProtocolAction.d.ts +0 -55
  69. package/dist/generated/instructions/freezeProtocolAction.js +0 -96
  70. package/dist/generated/instructions/freezeStrategyAction.d.ts +0 -58
  71. package/dist/generated/instructions/freezeStrategyAction.js +0 -102
  72. package/dist/generated/instructions/index.d.ts +0 -41
  73. package/dist/generated/instructions/index.js +0 -57
  74. package/dist/generated/instructions/initDriftAccountsS1.d.ts +0 -56
  75. package/dist/generated/instructions/initDriftAccountsS1.js +0 -126
  76. package/dist/generated/instructions/initDriftControllerS1.d.ts +0 -60
  77. package/dist/generated/instructions/initDriftControllerS1.js +0 -108
  78. package/dist/generated/instructions/initDriftControllerS2.d.ts +0 -66
  79. package/dist/generated/instructions/initDriftControllerS2.js +0 -125
  80. package/dist/generated/instructions/initDriftControllerS3.d.ts +0 -58
  81. package/dist/generated/instructions/initDriftControllerS3.js +0 -103
  82. package/dist/generated/instructions/initMain.d.ts +0 -43
  83. package/dist/generated/instructions/initMain.js +0 -91
  84. package/dist/generated/instructions/mintDriftS1.d.ts +0 -90
  85. package/dist/generated/instructions/mintDriftS1.js +0 -184
  86. package/dist/generated/instructions/mintDriftS2.d.ts +0 -80
  87. package/dist/generated/instructions/mintDriftS2.js +0 -161
  88. package/dist/generated/instructions/mintDriftS3.d.ts +0 -86
  89. package/dist/generated/instructions/mintDriftS3.js +0 -174
  90. package/dist/generated/instructions/processSwapDeposit.d.ts +0 -79
  91. package/dist/generated/instructions/processSwapDeposit.js +0 -161
  92. package/dist/generated/instructions/processSwapDepositIntrospection.d.ts +0 -79
  93. package/dist/generated/instructions/processSwapDepositIntrospection.js +0 -161
  94. package/dist/generated/instructions/processSwapWithdraw.d.ts +0 -68
  95. package/dist/generated/instructions/processSwapWithdraw.js +0 -157
  96. package/dist/generated/instructions/processSwapWithdrawIntrospection.d.ts +0 -68
  97. package/dist/generated/instructions/processSwapWithdrawIntrospection.js +0 -157
  98. package/dist/generated/instructions/rebalanceJlp.d.ts +0 -81
  99. package/dist/generated/instructions/rebalanceJlp.js +0 -187
  100. package/dist/generated/instructions/redeem2DriftS2.d.ts +0 -80
  101. package/dist/generated/instructions/redeem2DriftS2.js +0 -161
  102. package/dist/generated/instructions/redeemDriftS1.d.ts +0 -91
  103. package/dist/generated/instructions/redeemDriftS1.js +0 -185
  104. package/dist/generated/instructions/redeemDriftS2.d.ts +0 -80
  105. package/dist/generated/instructions/redeemDriftS2.js +0 -161
  106. package/dist/generated/instructions/redeemDriftS3.d.ts +0 -87
  107. package/dist/generated/instructions/redeemDriftS3.js +0 -175
  108. package/dist/generated/instructions/settlePnl.d.ts +0 -55
  109. package/dist/generated/instructions/settlePnl.js +0 -114
  110. package/dist/generated/instructions/settlePnlMulti.d.ts +0 -65
  111. package/dist/generated/instructions/settlePnlMulti.js +0 -117
  112. package/dist/generated/instructions/suspendLstProtocol.d.ts +0 -54
  113. package/dist/generated/instructions/suspendLstProtocol.js +0 -96
  114. package/dist/generated/instructions/suspendLstStrategy.d.ts +0 -56
  115. package/dist/generated/instructions/suspendLstStrategy.js +0 -101
  116. package/dist/generated/instructions/swapOrca.d.ts +0 -78
  117. package/dist/generated/instructions/swapOrca.js +0 -153
  118. package/dist/generated/instructions/swapOrcaTwoHop.d.ts +0 -98
  119. package/dist/generated/instructions/swapOrcaTwoHop.js +0 -200
  120. package/dist/generated/instructions/updateActionRoleProtocol.d.ts +0 -58
  121. package/dist/generated/instructions/updateActionRoleProtocol.js +0 -99
  122. package/dist/generated/instructions/updateActionRoleStrategy.d.ts +0 -61
  123. package/dist/generated/instructions/updateActionRoleStrategy.js +0 -105
  124. package/dist/generated/instructions/updateAttenuation.d.ts +0 -56
  125. package/dist/generated/instructions/updateAttenuation.js +0 -100
  126. package/dist/generated/instructions/updateCap.d.ts +0 -55
  127. package/dist/generated/instructions/updateCap.js +0 -99
  128. package/dist/generated/instructions/updateRebalanceSlippage.d.ts +0 -55
  129. package/dist/generated/instructions/updateRebalanceSlippage.js +0 -99
  130. package/dist/generated/instructions/updateRecipients.d.ts +0 -56
  131. package/dist/generated/instructions/updateRecipients.js +0 -101
  132. package/dist/generated/instructions/updateRoleHolderProtocol.d.ts +0 -61
  133. package/dist/generated/instructions/updateRoleHolderProtocol.js +0 -109
  134. package/dist/generated/instructions/updateRoleHolderStrategy.d.ts +0 -62
  135. package/dist/generated/instructions/updateRoleHolderStrategy.js +0 -110
  136. package/dist/generated/types/AMM.d.ts +0 -102
  137. package/dist/generated/types/AMM.js +0 -127
  138. package/dist/generated/types/AccKey.d.ts +0 -15
  139. package/dist/generated/types/AccKey.js +0 -38
  140. package/dist/generated/types/AccessControl.d.ts +0 -18
  141. package/dist/generated/types/AccessControl.js +0 -43
  142. package/dist/generated/types/AccessMap.d.ts +0 -17
  143. package/dist/generated/types/AccessMap.js +0 -42
  144. package/dist/generated/types/Action.d.ts +0 -36
  145. package/dist/generated/types/Action.js +0 -63
  146. package/dist/generated/types/ActionMapping.d.ts +0 -19
  147. package/dist/generated/types/ActionMapping.js +0 -44
  148. package/dist/generated/types/AssetTier.d.ts +0 -23
  149. package/dist/generated/types/AssetTier.js +0 -50
  150. package/dist/generated/types/Attenuation.d.ts +0 -16
  151. package/dist/generated/types/Attenuation.js +0 -41
  152. package/dist/generated/types/BalanceType.d.ts +0 -20
  153. package/dist/generated/types/BalanceType.js +0 -47
  154. package/dist/generated/types/ContractTier.d.ts +0 -24
  155. package/dist/generated/types/ContractTier.js +0 -51
  156. package/dist/generated/types/ContractType.d.ts +0 -20
  157. package/dist/generated/types/ContractType.js +0 -47
  158. package/dist/generated/types/CorpAction.d.ts +0 -19
  159. package/dist/generated/types/CorpAction.js +0 -46
  160. package/dist/generated/types/CustodyInfo.d.ts +0 -20
  161. package/dist/generated/types/CustodyInfo.js +0 -45
  162. package/dist/generated/types/DirectionCollateral.d.ts +0 -20
  163. package/dist/generated/types/DirectionCollateral.js +0 -47
  164. package/dist/generated/types/DirectionPosition.d.ts +0 -20
  165. package/dist/generated/types/DirectionPosition.js +0 -47
  166. package/dist/generated/types/DriftControllerBase.d.ts +0 -15
  167. package/dist/generated/types/DriftControllerBase.js +0 -38
  168. package/dist/generated/types/DriftJlpControllerFixedAccounts.d.ts +0 -18
  169. package/dist/generated/types/DriftJlpControllerFixedAccounts.js +0 -43
  170. package/dist/generated/types/DriftLstData.d.ts +0 -17
  171. package/dist/generated/types/DriftLstData.js +0 -42
  172. package/dist/generated/types/Ema.d.ts +0 -17
  173. package/dist/generated/types/Ema.js +0 -42
  174. package/dist/generated/types/Externals.d.ts +0 -16
  175. package/dist/generated/types/Externals.js +0 -39
  176. package/dist/generated/types/HistoricalIndexData.d.ts +0 -19
  177. package/dist/generated/types/HistoricalIndexData.js +0 -44
  178. package/dist/generated/types/HistoricalOracleData.d.ts +0 -20
  179. package/dist/generated/types/HistoricalOracleData.js +0 -45
  180. package/dist/generated/types/Holding.d.ts +0 -21
  181. package/dist/generated/types/Holding.js +0 -46
  182. package/dist/generated/types/Holdings.d.ts +0 -17
  183. package/dist/generated/types/Holdings.js +0 -42
  184. package/dist/generated/types/InitControllerS2Args.d.ts +0 -23
  185. package/dist/generated/types/InitControllerS2Args.js +0 -48
  186. package/dist/generated/types/InsuranceClaim.d.ts +0 -19
  187. package/dist/generated/types/InsuranceClaim.js +0 -44
  188. package/dist/generated/types/InsuranceFund.d.ts +0 -24
  189. package/dist/generated/types/InsuranceFund.js +0 -49
  190. package/dist/generated/types/JlpRebalanceSettings.d.ts +0 -15
  191. package/dist/generated/types/JlpRebalanceSettings.js +0 -38
  192. package/dist/generated/types/KillSwitch.d.ts +0 -15
  193. package/dist/generated/types/KillSwitch.js +0 -38
  194. package/dist/generated/types/LevelRoles.d.ts +0 -16
  195. package/dist/generated/types/LevelRoles.js +0 -39
  196. package/dist/generated/types/MarketStatus.d.ts +0 -27
  197. package/dist/generated/types/MarketStatus.js +0 -54
  198. package/dist/generated/types/MarketType.d.ts +0 -20
  199. package/dist/generated/types/MarketType.js +0 -47
  200. package/dist/generated/types/MintJlpArgs.d.ts +0 -15
  201. package/dist/generated/types/MintJlpArgs.js +0 -38
  202. package/dist/generated/types/ModifyOrderParams.d.ts +0 -32
  203. package/dist/generated/types/ModifyOrderParams.js +0 -57
  204. package/dist/generated/types/ModifyOrderPolicy.d.ts +0 -20
  205. package/dist/generated/types/ModifyOrderPolicy.js +0 -47
  206. package/dist/generated/types/Movements.d.ts +0 -19
  207. package/dist/generated/types/Movements.js +0 -44
  208. package/dist/generated/types/OracleGuardRails.d.ts +0 -18
  209. package/dist/generated/types/OracleGuardRails.js +0 -43
  210. package/dist/generated/types/OracleSource.d.ts +0 -34
  211. package/dist/generated/types/OracleSource.js +0 -61
  212. package/dist/generated/types/OracleValidity.d.ts +0 -25
  213. package/dist/generated/types/OracleValidity.js +0 -52
  214. package/dist/generated/types/Order.d.ts +0 -43
  215. package/dist/generated/types/Order.js +0 -68
  216. package/dist/generated/types/OrderDirection.d.ts +0 -20
  217. package/dist/generated/types/OrderDirection.js +0 -47
  218. package/dist/generated/types/OrderParams.d.ts +0 -36
  219. package/dist/generated/types/OrderParams.js +0 -61
  220. package/dist/generated/types/OrderStatus.d.ts +0 -22
  221. package/dist/generated/types/OrderStatus.js +0 -49
  222. package/dist/generated/types/OrderTriggerCondition.d.ts +0 -22
  223. package/dist/generated/types/OrderTriggerCondition.js +0 -49
  224. package/dist/generated/types/OrderType.d.ts +0 -23
  225. package/dist/generated/types/OrderType.js +0 -50
  226. package/dist/generated/types/PermissionLevel.d.ts +0 -45
  227. package/dist/generated/types/PermissionLevel.js +0 -48
  228. package/dist/generated/types/PerpHedge.d.ts +0 -17
  229. package/dist/generated/types/PerpHedge.js +0 -42
  230. package/dist/generated/types/PerpPosition.d.ts +0 -29
  231. package/dist/generated/types/PerpPosition.js +0 -54
  232. package/dist/generated/types/PoolBalance.d.ts +0 -17
  233. package/dist/generated/types/PoolBalance.js +0 -42
  234. package/dist/generated/types/Position.d.ts +0 -20
  235. package/dist/generated/types/Position.js +0 -45
  236. package/dist/generated/types/PositionDirection.d.ts +0 -20
  237. package/dist/generated/types/PositionDirection.js +0 -47
  238. package/dist/generated/types/PositionDrift.d.ts +0 -18
  239. package/dist/generated/types/PositionDrift.js +0 -43
  240. package/dist/generated/types/PostOnlyParam.d.ts +0 -22
  241. package/dist/generated/types/PostOnlyParam.js +0 -49
  242. package/dist/generated/types/Price.d.ts +0 -41
  243. package/dist/generated/types/Price.js +0 -66
  244. package/dist/generated/types/PriceComp.d.ts +0 -19
  245. package/dist/generated/types/PriceComp.js +0 -44
  246. package/dist/generated/types/PriceDivergenceGuardRails.d.ts +0 -16
  247. package/dist/generated/types/PriceDivergenceGuardRails.js +0 -41
  248. package/dist/generated/types/PriceInfo.d.ts +0 -21
  249. package/dist/generated/types/PriceInfo.js +0 -46
  250. package/dist/generated/types/PriceStatus.d.ts +0 -22
  251. package/dist/generated/types/PriceStatus.js +0 -49
  252. package/dist/generated/types/PriceType.d.ts +0 -20
  253. package/dist/generated/types/PriceType.js +0 -47
  254. package/dist/generated/types/ProcessSwapDepositArgs.d.ts +0 -15
  255. package/dist/generated/types/ProcessSwapDepositArgs.js +0 -38
  256. package/dist/generated/types/ProcessSwapDepositIntrospectionArgs.d.ts +0 -15
  257. package/dist/generated/types/ProcessSwapDepositIntrospectionArgs.js +0 -38
  258. package/dist/generated/types/Program.d.ts +0 -19
  259. package/dist/generated/types/Program.js +0 -44
  260. package/dist/generated/types/ProgramStatus.d.ts +0 -20
  261. package/dist/generated/types/ProgramStatus.js +0 -47
  262. package/dist/generated/types/RebalanceConfig.d.ts +0 -15
  263. package/dist/generated/types/RebalanceConfig.js +0 -38
  264. package/dist/generated/types/Recipient.d.ts +0 -17
  265. package/dist/generated/types/Recipient.js +0 -42
  266. package/dist/generated/types/Recipients.d.ts +0 -17
  267. package/dist/generated/types/Recipients.js +0 -42
  268. package/dist/generated/types/RedeemJlpArgs.d.ts +0 -15
  269. package/dist/generated/types/RedeemJlpArgs.js +0 -38
  270. package/dist/generated/types/Role.d.ts +0 -25
  271. package/dist/generated/types/Role.js +0 -52
  272. package/dist/generated/types/ShiftCollateral.d.ts +0 -19
  273. package/dist/generated/types/ShiftCollateral.js +0 -44
  274. package/dist/generated/types/ShiftPosition.d.ts +0 -17
  275. package/dist/generated/types/ShiftPosition.js +0 -42
  276. package/dist/generated/types/ShortHolding.d.ts +0 -17
  277. package/dist/generated/types/ShortHolding.js +0 -42
  278. package/dist/generated/types/SplBase.d.ts +0 -17
  279. package/dist/generated/types/SplBase.js +0 -42
  280. package/dist/generated/types/SplMain.d.ts +0 -22
  281. package/dist/generated/types/SplMain.js +0 -47
  282. package/dist/generated/types/Spls.d.ts +0 -17
  283. package/dist/generated/types/Spls.js +0 -42
  284. package/dist/generated/types/SpotBalanceType.d.ts +0 -20
  285. package/dist/generated/types/SpotBalanceType.js +0 -47
  286. package/dist/generated/types/SpotPosition.d.ts +0 -23
  287. package/dist/generated/types/SpotPosition.js +0 -48
  288. package/dist/generated/types/Status.d.ts +0 -20
  289. package/dist/generated/types/Status.js +0 -47
  290. package/dist/generated/types/Strategy.d.ts +0 -31
  291. package/dist/generated/types/Strategy.js +0 -56
  292. package/dist/generated/types/StrategyRoleEntry.d.ts +0 -17
  293. package/dist/generated/types/StrategyRoleEntry.js +0 -42
  294. package/dist/generated/types/SubAccount.d.ts +0 -17
  295. package/dist/generated/types/SubAccount.js +0 -42
  296. package/dist/generated/types/Update.d.ts +0 -20
  297. package/dist/generated/types/Update.js +0 -47
  298. package/dist/generated/types/UserFees.d.ts +0 -20
  299. package/dist/generated/types/UserFees.js +0 -45
  300. package/dist/generated/types/ValidityGuardRails.d.ts +0 -18
  301. package/dist/generated/types/ValidityGuardRails.js +0 -43
  302. package/dist/generated/types/index.d.ts +0 -83
  303. package/dist/generated/types/index.js +0 -99
  304. package/dist/strategies/JlpStrategy.d.ts +0 -17
  305. package/dist/strategies/JlpStrategy.js +0 -337
  306. package/dist/strategies/LstStrategy.d.ts +0 -19
  307. package/dist/strategies/LstStrategy.js +0 -169
  308. package/dist/strategies/UsdcStrategy.d.ts +0 -12
  309. package/dist/strategies/UsdcStrategy.js +0 -89
  310. package/dist/strategies/index.d.ts +0 -3
  311. package/dist/strategies/index.js +0 -19
@@ -1,601 +0,0 @@
1
- "use strict";
2
- /**
3
- * This code was GENERATED using the solita package.
4
- * Please DO NOT EDIT THIS FILE, instead rerun solita to update it or write a wrapper to add functionality.
5
- *
6
- * See: https://github.com/metaplex-foundation/solita
7
- */
8
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
9
- if (k2 === undefined) k2 = k;
10
- var desc = Object.getOwnPropertyDescriptor(m, k);
11
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
12
- desc = { enumerable: true, get: function() { return m[k]; } };
13
- }
14
- Object.defineProperty(o, k2, desc);
15
- }) : (function(o, m, k, k2) {
16
- if (k2 === undefined) k2 = k;
17
- o[k2] = m[k];
18
- }));
19
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
20
- Object.defineProperty(o, "default", { enumerable: true, value: v });
21
- }) : function(o, v) {
22
- o["default"] = v;
23
- });
24
- var __importStar = (this && this.__importStar) || function (mod) {
25
- if (mod && mod.__esModule) return mod;
26
- var result = {};
27
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
28
- __setModuleDefault(result, mod);
29
- return result;
30
- };
31
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
32
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
33
- return new (P || (P = Promise))(function (resolve, reject) {
34
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
35
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
36
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
37
- step((generator = generator.apply(thisArg, _arguments || [])).next());
38
- });
39
- };
40
- Object.defineProperty(exports, "__esModule", { value: true });
41
- exports.spotMarketBeet = exports.SpotMarket = exports.spotMarketDiscriminator = void 0;
42
- const web3 = __importStar(require("@solana/web3.js"));
43
- const beet = __importStar(require("@metaplex-foundation/beet"));
44
- const beetSolana = __importStar(require("@metaplex-foundation/beet-solana"));
45
- const HistoricalOracleData_1 = require("../types/HistoricalOracleData");
46
- const HistoricalIndexData_1 = require("../types/HistoricalIndexData");
47
- const PoolBalance_1 = require("../types/PoolBalance");
48
- const InsuranceFund_1 = require("../types/InsuranceFund");
49
- const OracleSource_1 = require("../types/OracleSource");
50
- const MarketStatus_1 = require("../types/MarketStatus");
51
- const AssetTier_1 = require("../types/AssetTier");
52
- exports.spotMarketDiscriminator = [100, 177, 8, 107, 168, 65, 65, 39];
53
- /**
54
- * Holds the data for the {@link SpotMarket} Account and provides de/serialization
55
- * functionality for that data
56
- *
57
- * @category Accounts
58
- * @category generated
59
- */
60
- class SpotMarket {
61
- constructor(pubkey, oracle, mint, vault, name /* size: 32 */, historicalOracleData, historicalIndexData, revenuePool, spotFeePool, insuranceFund, totalSpotFee, depositBalance, borrowBalance, cumulativeDepositInterest, cumulativeBorrowInterest, totalSocialLoss, totalQuoteSocialLoss, withdrawGuardThreshold, maxTokenDeposits, depositTokenTwap, borrowTokenTwap, utilizationTwap, lastInterestTs, lastTwapTs, expiryTs, orderStepSize, orderTickSize, minOrderSize, maxPositionSize, nextFillRecordId, nextDepositRecordId, initialAssetWeight, maintenanceAssetWeight, initialLiabilityWeight, maintenanceLiabilityWeight, imfFactor, liquidatorFee, ifLiquidationFee, optimalUtilization, optimalBorrowRate, maxBorrowRate, decimals, marketIndex, ordersEnabled, oracleSource, status, assetTier, pausedOperations, ifPausedOperations, feeAdjustment, maxTokenBorrowsFraction, flashLoanAmount, flashLoanInitialTokenAmount, totalSwapFee, scaleInitialAssetWeightStart, minBorrowRate, padding /* size: 47 */) {
62
- this.pubkey = pubkey;
63
- this.oracle = oracle;
64
- this.mint = mint;
65
- this.vault = vault;
66
- this.name = name;
67
- this.historicalOracleData = historicalOracleData;
68
- this.historicalIndexData = historicalIndexData;
69
- this.revenuePool = revenuePool;
70
- this.spotFeePool = spotFeePool;
71
- this.insuranceFund = insuranceFund;
72
- this.totalSpotFee = totalSpotFee;
73
- this.depositBalance = depositBalance;
74
- this.borrowBalance = borrowBalance;
75
- this.cumulativeDepositInterest = cumulativeDepositInterest;
76
- this.cumulativeBorrowInterest = cumulativeBorrowInterest;
77
- this.totalSocialLoss = totalSocialLoss;
78
- this.totalQuoteSocialLoss = totalQuoteSocialLoss;
79
- this.withdrawGuardThreshold = withdrawGuardThreshold;
80
- this.maxTokenDeposits = maxTokenDeposits;
81
- this.depositTokenTwap = depositTokenTwap;
82
- this.borrowTokenTwap = borrowTokenTwap;
83
- this.utilizationTwap = utilizationTwap;
84
- this.lastInterestTs = lastInterestTs;
85
- this.lastTwapTs = lastTwapTs;
86
- this.expiryTs = expiryTs;
87
- this.orderStepSize = orderStepSize;
88
- this.orderTickSize = orderTickSize;
89
- this.minOrderSize = minOrderSize;
90
- this.maxPositionSize = maxPositionSize;
91
- this.nextFillRecordId = nextFillRecordId;
92
- this.nextDepositRecordId = nextDepositRecordId;
93
- this.initialAssetWeight = initialAssetWeight;
94
- this.maintenanceAssetWeight = maintenanceAssetWeight;
95
- this.initialLiabilityWeight = initialLiabilityWeight;
96
- this.maintenanceLiabilityWeight = maintenanceLiabilityWeight;
97
- this.imfFactor = imfFactor;
98
- this.liquidatorFee = liquidatorFee;
99
- this.ifLiquidationFee = ifLiquidationFee;
100
- this.optimalUtilization = optimalUtilization;
101
- this.optimalBorrowRate = optimalBorrowRate;
102
- this.maxBorrowRate = maxBorrowRate;
103
- this.decimals = decimals;
104
- this.marketIndex = marketIndex;
105
- this.ordersEnabled = ordersEnabled;
106
- this.oracleSource = oracleSource;
107
- this.status = status;
108
- this.assetTier = assetTier;
109
- this.pausedOperations = pausedOperations;
110
- this.ifPausedOperations = ifPausedOperations;
111
- this.feeAdjustment = feeAdjustment;
112
- this.maxTokenBorrowsFraction = maxTokenBorrowsFraction;
113
- this.flashLoanAmount = flashLoanAmount;
114
- this.flashLoanInitialTokenAmount = flashLoanInitialTokenAmount;
115
- this.totalSwapFee = totalSwapFee;
116
- this.scaleInitialAssetWeightStart = scaleInitialAssetWeightStart;
117
- this.minBorrowRate = minBorrowRate;
118
- this.padding = padding;
119
- }
120
- /**
121
- * Creates a {@link SpotMarket} instance from the provided args.
122
- */
123
- static fromArgs(args) {
124
- return new SpotMarket(args.pubkey, args.oracle, args.mint, args.vault, args.name, args.historicalOracleData, args.historicalIndexData, args.revenuePool, args.spotFeePool, args.insuranceFund, args.totalSpotFee, args.depositBalance, args.borrowBalance, args.cumulativeDepositInterest, args.cumulativeBorrowInterest, args.totalSocialLoss, args.totalQuoteSocialLoss, args.withdrawGuardThreshold, args.maxTokenDeposits, args.depositTokenTwap, args.borrowTokenTwap, args.utilizationTwap, args.lastInterestTs, args.lastTwapTs, args.expiryTs, args.orderStepSize, args.orderTickSize, args.minOrderSize, args.maxPositionSize, args.nextFillRecordId, args.nextDepositRecordId, args.initialAssetWeight, args.maintenanceAssetWeight, args.initialLiabilityWeight, args.maintenanceLiabilityWeight, args.imfFactor, args.liquidatorFee, args.ifLiquidationFee, args.optimalUtilization, args.optimalBorrowRate, args.maxBorrowRate, args.decimals, args.marketIndex, args.ordersEnabled, args.oracleSource, args.status, args.assetTier, args.pausedOperations, args.ifPausedOperations, args.feeAdjustment, args.maxTokenBorrowsFraction, args.flashLoanAmount, args.flashLoanInitialTokenAmount, args.totalSwapFee, args.scaleInitialAssetWeightStart, args.minBorrowRate, args.padding);
125
- }
126
- /**
127
- * Deserializes the {@link SpotMarket} from the data of the provided {@link web3.AccountInfo}.
128
- * @returns a tuple of the account data and the offset up to which the buffer was read to obtain it.
129
- */
130
- static fromAccountInfo(accountInfo, offset = 0) {
131
- return SpotMarket.deserialize(accountInfo.data, offset);
132
- }
133
- /**
134
- * Retrieves the account info from the provided address and deserializes
135
- * the {@link SpotMarket} from its data.
136
- *
137
- * @throws Error if no account info is found at the address or if deserialization fails
138
- */
139
- static fromAccountAddress(connection, address, commitmentOrConfig) {
140
- return __awaiter(this, void 0, void 0, function* () {
141
- const accountInfo = yield connection.getAccountInfo(address, commitmentOrConfig);
142
- if (accountInfo == null) {
143
- throw new Error(`Unable to find SpotMarket account at ${address}`);
144
- }
145
- return SpotMarket.fromAccountInfo(accountInfo, 0)[0];
146
- });
147
- }
148
- /**
149
- * Provides a {@link web3.Connection.getProgramAccounts} config builder,
150
- * to fetch accounts matching filters that can be specified via that builder.
151
- *
152
- * @param programId - the program that owns the accounts we are filtering
153
- */
154
- static gpaBuilder(programId = new web3.PublicKey('9CtYQNCz3LaQ9DnqXa83q6gdHGwMeN6aQ7KqqotBmeke')) {
155
- return beetSolana.GpaBuilder.fromStruct(programId, exports.spotMarketBeet);
156
- }
157
- /**
158
- * Deserializes the {@link SpotMarket} from the provided data Buffer.
159
- * @returns a tuple of the account data and the offset up to which the buffer was read to obtain it.
160
- */
161
- static deserialize(buf, offset = 0) {
162
- return exports.spotMarketBeet.deserialize(buf, offset);
163
- }
164
- /**
165
- * Serializes the {@link SpotMarket} into a Buffer.
166
- * @returns a tuple of the created Buffer and the offset up to which the buffer was written to store it.
167
- */
168
- serialize() {
169
- return exports.spotMarketBeet.serialize(Object.assign({ accountDiscriminator: exports.spotMarketDiscriminator }, this));
170
- }
171
- /**
172
- * Returns the byteSize of a {@link Buffer} holding the serialized data of
173
- * {@link SpotMarket}
174
- */
175
- static get byteSize() {
176
- return exports.spotMarketBeet.byteSize;
177
- }
178
- /**
179
- * Fetches the minimum balance needed to exempt an account holding
180
- * {@link SpotMarket} data from rent
181
- *
182
- * @param connection used to retrieve the rent exemption information
183
- */
184
- static getMinimumBalanceForRentExemption(connection, commitment) {
185
- return __awaiter(this, void 0, void 0, function* () {
186
- return connection.getMinimumBalanceForRentExemption(SpotMarket.byteSize, commitment);
187
- });
188
- }
189
- /**
190
- * Determines if the provided {@link Buffer} has the correct byte size to
191
- * hold {@link SpotMarket} data.
192
- */
193
- static hasCorrectByteSize(buf, offset = 0) {
194
- return buf.byteLength - offset === SpotMarket.byteSize;
195
- }
196
- /**
197
- * Returns a readable version of {@link SpotMarket} properties
198
- * and can be used to convert to JSON and/or logging
199
- */
200
- pretty() {
201
- return {
202
- pubkey: this.pubkey.toBase58(),
203
- oracle: this.oracle.toBase58(),
204
- mint: this.mint.toBase58(),
205
- vault: this.vault.toBase58(),
206
- name: this.name,
207
- historicalOracleData: this.historicalOracleData,
208
- historicalIndexData: this.historicalIndexData,
209
- revenuePool: this.revenuePool,
210
- spotFeePool: this.spotFeePool,
211
- insuranceFund: this.insuranceFund,
212
- totalSpotFee: (() => {
213
- const x = this.totalSpotFee;
214
- if (typeof x.toNumber === 'function') {
215
- try {
216
- return x.toNumber();
217
- }
218
- catch (_) {
219
- return x;
220
- }
221
- }
222
- return x;
223
- })(),
224
- depositBalance: (() => {
225
- const x = this.depositBalance;
226
- if (typeof x.toNumber === 'function') {
227
- try {
228
- return x.toNumber();
229
- }
230
- catch (_) {
231
- return x;
232
- }
233
- }
234
- return x;
235
- })(),
236
- borrowBalance: (() => {
237
- const x = this.borrowBalance;
238
- if (typeof x.toNumber === 'function') {
239
- try {
240
- return x.toNumber();
241
- }
242
- catch (_) {
243
- return x;
244
- }
245
- }
246
- return x;
247
- })(),
248
- cumulativeDepositInterest: (() => {
249
- const x = this.cumulativeDepositInterest;
250
- if (typeof x.toNumber === 'function') {
251
- try {
252
- return x.toNumber();
253
- }
254
- catch (_) {
255
- return x;
256
- }
257
- }
258
- return x;
259
- })(),
260
- cumulativeBorrowInterest: (() => {
261
- const x = this.cumulativeBorrowInterest;
262
- if (typeof x.toNumber === 'function') {
263
- try {
264
- return x.toNumber();
265
- }
266
- catch (_) {
267
- return x;
268
- }
269
- }
270
- return x;
271
- })(),
272
- totalSocialLoss: (() => {
273
- const x = this.totalSocialLoss;
274
- if (typeof x.toNumber === 'function') {
275
- try {
276
- return x.toNumber();
277
- }
278
- catch (_) {
279
- return x;
280
- }
281
- }
282
- return x;
283
- })(),
284
- totalQuoteSocialLoss: (() => {
285
- const x = this.totalQuoteSocialLoss;
286
- if (typeof x.toNumber === 'function') {
287
- try {
288
- return x.toNumber();
289
- }
290
- catch (_) {
291
- return x;
292
- }
293
- }
294
- return x;
295
- })(),
296
- withdrawGuardThreshold: (() => {
297
- const x = this.withdrawGuardThreshold;
298
- if (typeof x.toNumber === 'function') {
299
- try {
300
- return x.toNumber();
301
- }
302
- catch (_) {
303
- return x;
304
- }
305
- }
306
- return x;
307
- })(),
308
- maxTokenDeposits: (() => {
309
- const x = this.maxTokenDeposits;
310
- if (typeof x.toNumber === 'function') {
311
- try {
312
- return x.toNumber();
313
- }
314
- catch (_) {
315
- return x;
316
- }
317
- }
318
- return x;
319
- })(),
320
- depositTokenTwap: (() => {
321
- const x = this.depositTokenTwap;
322
- if (typeof x.toNumber === 'function') {
323
- try {
324
- return x.toNumber();
325
- }
326
- catch (_) {
327
- return x;
328
- }
329
- }
330
- return x;
331
- })(),
332
- borrowTokenTwap: (() => {
333
- const x = this.borrowTokenTwap;
334
- if (typeof x.toNumber === 'function') {
335
- try {
336
- return x.toNumber();
337
- }
338
- catch (_) {
339
- return x;
340
- }
341
- }
342
- return x;
343
- })(),
344
- utilizationTwap: (() => {
345
- const x = this.utilizationTwap;
346
- if (typeof x.toNumber === 'function') {
347
- try {
348
- return x.toNumber();
349
- }
350
- catch (_) {
351
- return x;
352
- }
353
- }
354
- return x;
355
- })(),
356
- lastInterestTs: (() => {
357
- const x = this.lastInterestTs;
358
- if (typeof x.toNumber === 'function') {
359
- try {
360
- return x.toNumber();
361
- }
362
- catch (_) {
363
- return x;
364
- }
365
- }
366
- return x;
367
- })(),
368
- lastTwapTs: (() => {
369
- const x = this.lastTwapTs;
370
- if (typeof x.toNumber === 'function') {
371
- try {
372
- return x.toNumber();
373
- }
374
- catch (_) {
375
- return x;
376
- }
377
- }
378
- return x;
379
- })(),
380
- expiryTs: (() => {
381
- const x = this.expiryTs;
382
- if (typeof x.toNumber === 'function') {
383
- try {
384
- return x.toNumber();
385
- }
386
- catch (_) {
387
- return x;
388
- }
389
- }
390
- return x;
391
- })(),
392
- orderStepSize: (() => {
393
- const x = this.orderStepSize;
394
- if (typeof x.toNumber === 'function') {
395
- try {
396
- return x.toNumber();
397
- }
398
- catch (_) {
399
- return x;
400
- }
401
- }
402
- return x;
403
- })(),
404
- orderTickSize: (() => {
405
- const x = this.orderTickSize;
406
- if (typeof x.toNumber === 'function') {
407
- try {
408
- return x.toNumber();
409
- }
410
- catch (_) {
411
- return x;
412
- }
413
- }
414
- return x;
415
- })(),
416
- minOrderSize: (() => {
417
- const x = this.minOrderSize;
418
- if (typeof x.toNumber === 'function') {
419
- try {
420
- return x.toNumber();
421
- }
422
- catch (_) {
423
- return x;
424
- }
425
- }
426
- return x;
427
- })(),
428
- maxPositionSize: (() => {
429
- const x = this.maxPositionSize;
430
- if (typeof x.toNumber === 'function') {
431
- try {
432
- return x.toNumber();
433
- }
434
- catch (_) {
435
- return x;
436
- }
437
- }
438
- return x;
439
- })(),
440
- nextFillRecordId: (() => {
441
- const x = this.nextFillRecordId;
442
- if (typeof x.toNumber === 'function') {
443
- try {
444
- return x.toNumber();
445
- }
446
- catch (_) {
447
- return x;
448
- }
449
- }
450
- return x;
451
- })(),
452
- nextDepositRecordId: (() => {
453
- const x = this.nextDepositRecordId;
454
- if (typeof x.toNumber === 'function') {
455
- try {
456
- return x.toNumber();
457
- }
458
- catch (_) {
459
- return x;
460
- }
461
- }
462
- return x;
463
- })(),
464
- initialAssetWeight: this.initialAssetWeight,
465
- maintenanceAssetWeight: this.maintenanceAssetWeight,
466
- initialLiabilityWeight: this.initialLiabilityWeight,
467
- maintenanceLiabilityWeight: this.maintenanceLiabilityWeight,
468
- imfFactor: this.imfFactor,
469
- liquidatorFee: this.liquidatorFee,
470
- ifLiquidationFee: this.ifLiquidationFee,
471
- optimalUtilization: this.optimalUtilization,
472
- optimalBorrowRate: this.optimalBorrowRate,
473
- maxBorrowRate: this.maxBorrowRate,
474
- decimals: this.decimals,
475
- marketIndex: this.marketIndex,
476
- ordersEnabled: this.ordersEnabled,
477
- oracleSource: 'OracleSource.' + OracleSource_1.OracleSource[this.oracleSource],
478
- status: 'MarketStatus.' + MarketStatus_1.MarketStatus[this.status],
479
- assetTier: 'AssetTier.' + AssetTier_1.AssetTier[this.assetTier],
480
- pausedOperations: this.pausedOperations,
481
- ifPausedOperations: this.ifPausedOperations,
482
- feeAdjustment: this.feeAdjustment,
483
- maxTokenBorrowsFraction: this.maxTokenBorrowsFraction,
484
- flashLoanAmount: (() => {
485
- const x = this.flashLoanAmount;
486
- if (typeof x.toNumber === 'function') {
487
- try {
488
- return x.toNumber();
489
- }
490
- catch (_) {
491
- return x;
492
- }
493
- }
494
- return x;
495
- })(),
496
- flashLoanInitialTokenAmount: (() => {
497
- const x = this.flashLoanInitialTokenAmount;
498
- if (typeof x.toNumber === 'function') {
499
- try {
500
- return x.toNumber();
501
- }
502
- catch (_) {
503
- return x;
504
- }
505
- }
506
- return x;
507
- })(),
508
- totalSwapFee: (() => {
509
- const x = this.totalSwapFee;
510
- if (typeof x.toNumber === 'function') {
511
- try {
512
- return x.toNumber();
513
- }
514
- catch (_) {
515
- return x;
516
- }
517
- }
518
- return x;
519
- })(),
520
- scaleInitialAssetWeightStart: (() => {
521
- const x = this.scaleInitialAssetWeightStart;
522
- if (typeof x.toNumber === 'function') {
523
- try {
524
- return x.toNumber();
525
- }
526
- catch (_) {
527
- return x;
528
- }
529
- }
530
- return x;
531
- })(),
532
- minBorrowRate: this.minBorrowRate,
533
- padding: this.padding,
534
- };
535
- }
536
- }
537
- exports.SpotMarket = SpotMarket;
538
- /**
539
- * @category Accounts
540
- * @category generated
541
- */
542
- exports.spotMarketBeet = new beet.BeetStruct([
543
- ['accountDiscriminator', beet.uniformFixedSizeArray(beet.u8, 8)],
544
- ['pubkey', beetSolana.publicKey],
545
- ['oracle', beetSolana.publicKey],
546
- ['mint', beetSolana.publicKey],
547
- ['vault', beetSolana.publicKey],
548
- ['name', beet.uniformFixedSizeArray(beet.u8, 32)],
549
- ['historicalOracleData', HistoricalOracleData_1.historicalOracleDataBeet],
550
- ['historicalIndexData', HistoricalIndexData_1.historicalIndexDataBeet],
551
- ['revenuePool', PoolBalance_1.poolBalanceBeet],
552
- ['spotFeePool', PoolBalance_1.poolBalanceBeet],
553
- ['insuranceFund', InsuranceFund_1.insuranceFundBeet],
554
- ['totalSpotFee', beet.u128],
555
- ['depositBalance', beet.u128],
556
- ['borrowBalance', beet.u128],
557
- ['cumulativeDepositInterest', beet.u128],
558
- ['cumulativeBorrowInterest', beet.u128],
559
- ['totalSocialLoss', beet.u128],
560
- ['totalQuoteSocialLoss', beet.u128],
561
- ['withdrawGuardThreshold', beet.u64],
562
- ['maxTokenDeposits', beet.u64],
563
- ['depositTokenTwap', beet.u64],
564
- ['borrowTokenTwap', beet.u64],
565
- ['utilizationTwap', beet.u64],
566
- ['lastInterestTs', beet.u64],
567
- ['lastTwapTs', beet.u64],
568
- ['expiryTs', beet.i64],
569
- ['orderStepSize', beet.u64],
570
- ['orderTickSize', beet.u64],
571
- ['minOrderSize', beet.u64],
572
- ['maxPositionSize', beet.u64],
573
- ['nextFillRecordId', beet.u64],
574
- ['nextDepositRecordId', beet.u64],
575
- ['initialAssetWeight', beet.u32],
576
- ['maintenanceAssetWeight', beet.u32],
577
- ['initialLiabilityWeight', beet.u32],
578
- ['maintenanceLiabilityWeight', beet.u32],
579
- ['imfFactor', beet.u32],
580
- ['liquidatorFee', beet.u32],
581
- ['ifLiquidationFee', beet.u32],
582
- ['optimalUtilization', beet.u32],
583
- ['optimalBorrowRate', beet.u32],
584
- ['maxBorrowRate', beet.u32],
585
- ['decimals', beet.u32],
586
- ['marketIndex', beet.u16],
587
- ['ordersEnabled', beet.bool],
588
- ['oracleSource', OracleSource_1.oracleSourceBeet],
589
- ['status', MarketStatus_1.marketStatusBeet],
590
- ['assetTier', AssetTier_1.assetTierBeet],
591
- ['pausedOperations', beet.u8],
592
- ['ifPausedOperations', beet.u8],
593
- ['feeAdjustment', beet.i16],
594
- ['maxTokenBorrowsFraction', beet.u16],
595
- ['flashLoanAmount', beet.u64],
596
- ['flashLoanInitialTokenAmount', beet.u64],
597
- ['totalSwapFee', beet.u64],
598
- ['scaleInitialAssetWeightStart', beet.u64],
599
- ['minBorrowRate', beet.u8],
600
- ['padding', beet.uniformFixedSizeArray(beet.u8, 47)],
601
- ], SpotMarket.fromArgs, 'SpotMarket');