@mysten/deepbook-v3 0.28.2 → 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 (535) hide show
  1. package/CHANGELOG.md +86 -0
  2. package/dist/client.d.mts +897 -0
  3. package/dist/client.d.mts.map +1 -0
  4. package/dist/client.mjs +2067 -0
  5. package/dist/client.mjs.map +1 -0
  6. package/dist/contracts/deepbook/account.d.mts +38 -0
  7. package/dist/contracts/deepbook/account.d.mts.map +1 -0
  8. package/dist/contracts/deepbook/account.mjs +31 -0
  9. package/dist/contracts/deepbook/account.mjs.map +1 -0
  10. package/dist/contracts/deepbook/balances.d.mts +13 -0
  11. package/dist/contracts/deepbook/balances.d.mts.map +1 -0
  12. package/dist/contracts/deepbook/balances.mjs +24 -0
  13. package/dist/contracts/deepbook/balances.mjs.map +1 -0
  14. package/dist/contracts/deepbook/deep_price.d.mts +13 -0
  15. package/dist/contracts/deepbook/deep_price.d.mts.map +1 -0
  16. package/dist/contracts/deepbook/deep_price.mjs +49 -0
  17. package/dist/contracts/deepbook/deep_price.mjs.map +1 -0
  18. package/dist/contracts/deepbook/deps/sui/vec_set.d.mts +22 -0
  19. package/dist/contracts/deepbook/deps/sui/vec_set.d.mts.map +1 -0
  20. package/dist/contracts/deepbook/deps/sui/vec_set.mjs +26 -0
  21. package/dist/contracts/deepbook/deps/sui/vec_set.mjs.map +1 -0
  22. package/dist/contracts/deepbook/order.d.mts +24 -0
  23. package/dist/contracts/deepbook/order.d.mts.map +1 -0
  24. package/dist/contracts/deepbook/order.mjs +63 -0
  25. package/dist/contracts/deepbook/order.mjs.map +1 -0
  26. package/dist/contracts/pyth/data_source.mjs +20 -0
  27. package/dist/contracts/pyth/data_source.mjs.map +1 -0
  28. package/dist/contracts/pyth/deps/0x0000000000000000000000000000000000000000000000000000000000000002/package.mjs +21 -0
  29. package/dist/contracts/pyth/deps/0x0000000000000000000000000000000000000000000000000000000000000002/package.mjs.map +1 -0
  30. package/dist/contracts/pyth/deps/0x0000000000000000000000000000000000000000000000000000000000000002/table.mjs +19 -0
  31. package/dist/contracts/pyth/deps/0x0000000000000000000000000000000000000000000000000000000000000002/table.mjs.map +1 -0
  32. package/dist/contracts/pyth/deps/0xf47329f4344f3bf0f8e436e2f7b485466cff300f12a166563995d3888c296a94/bytes32.mjs +16 -0
  33. package/dist/contracts/pyth/deps/0xf47329f4344f3bf0f8e436e2f7b485466cff300f12a166563995d3888c296a94/bytes32.mjs.map +1 -0
  34. package/dist/contracts/pyth/deps/0xf47329f4344f3bf0f8e436e2f7b485466cff300f12a166563995d3888c296a94/consumed_vaas.mjs +16 -0
  35. package/dist/contracts/pyth/deps/0xf47329f4344f3bf0f8e436e2f7b485466cff300f12a166563995d3888c296a94/consumed_vaas.mjs.map +1 -0
  36. package/dist/contracts/pyth/deps/0xf47329f4344f3bf0f8e436e2f7b485466cff300f12a166563995d3888c296a94/external_address.mjs +16 -0
  37. package/dist/contracts/pyth/deps/0xf47329f4344f3bf0f8e436e2f7b485466cff300f12a166563995d3888c296a94/external_address.mjs.map +1 -0
  38. package/dist/contracts/pyth/deps/0xf47329f4344f3bf0f8e436e2f7b485466cff300f12a166563995d3888c296a94/set.mjs +16 -0
  39. package/dist/contracts/pyth/deps/0xf47329f4344f3bf0f8e436e2f7b485466cff300f12a166563995d3888c296a94/set.mjs.map +1 -0
  40. package/dist/contracts/pyth/i64.mjs +19 -0
  41. package/dist/contracts/pyth/i64.mjs.map +1 -0
  42. package/dist/contracts/pyth/price.mjs +22 -0
  43. package/dist/contracts/pyth/price.mjs.map +1 -0
  44. package/dist/contracts/pyth/price_feed.mjs +21 -0
  45. package/dist/contracts/pyth/price_feed.mjs.map +1 -0
  46. package/dist/contracts/pyth/price_identifier.mjs +16 -0
  47. package/dist/contracts/pyth/price_identifier.mjs.map +1 -0
  48. package/dist/contracts/pyth/price_info.mjs +28 -0
  49. package/dist/contracts/pyth/price_info.mjs.map +1 -0
  50. package/dist/contracts/pyth/state.mjs +36 -0
  51. package/dist/contracts/pyth/state.mjs.map +1 -0
  52. package/dist/contracts/utils/index.d.mts +34 -0
  53. package/dist/contracts/utils/index.d.mts.map +1 -0
  54. package/dist/contracts/utils/index.mjs +35 -0
  55. package/dist/contracts/utils/index.mjs.map +1 -0
  56. package/dist/index.d.mts +25 -0
  57. package/dist/index.mjs +26 -0
  58. package/dist/pyth/PriceServiceConnection.d.mts +26 -0
  59. package/dist/pyth/PriceServiceConnection.d.mts.map +1 -0
  60. package/dist/pyth/PriceServiceConnection.mjs +35 -0
  61. package/dist/pyth/PriceServiceConnection.mjs.map +1 -0
  62. package/dist/pyth/pyth-helpers.mjs +18 -0
  63. package/dist/pyth/pyth-helpers.mjs.map +1 -0
  64. package/dist/pyth/pyth.d.mts +69 -0
  65. package/dist/pyth/pyth.d.mts.map +1 -0
  66. package/dist/pyth/pyth.mjs +223 -0
  67. package/dist/pyth/pyth.mjs.map +1 -0
  68. package/dist/transactions/balanceManager.d.mts +174 -0
  69. package/dist/transactions/balanceManager.d.mts.map +1 -0
  70. package/dist/transactions/balanceManager.mjs +233 -0
  71. package/dist/transactions/balanceManager.mjs.map +1 -0
  72. package/dist/transactions/deepbook.d.mts +490 -0
  73. package/dist/transactions/deepbook.d.mts.map +1 -0
  74. package/dist/transactions/deepbook.mjs +978 -0
  75. package/dist/transactions/deepbook.mjs.map +1 -0
  76. package/dist/transactions/deepbookAdmin.d.mts +111 -0
  77. package/dist/transactions/deepbookAdmin.d.mts.map +1 -0
  78. package/dist/transactions/deepbookAdmin.mjs +221 -0
  79. package/dist/transactions/deepbookAdmin.mjs.map +1 -0
  80. package/dist/transactions/flashLoans.d.mts +62 -0
  81. package/dist/transactions/flashLoans.d.mts.map +1 -0
  82. package/dist/transactions/flashLoans.mjs +75 -0
  83. package/dist/transactions/flashLoans.mjs.map +1 -0
  84. package/dist/transactions/governance.d.mts +48 -0
  85. package/dist/transactions/governance.d.mts.map +1 -0
  86. package/dist/transactions/governance.mjs +90 -0
  87. package/dist/transactions/governance.mjs.map +1 -0
  88. package/dist/transactions/marginAdmin.d.mts +139 -0
  89. package/dist/transactions/marginAdmin.d.mts.map +1 -0
  90. package/dist/transactions/marginAdmin.mjs +249 -0
  91. package/dist/transactions/marginAdmin.mjs.map +1 -0
  92. package/dist/transactions/marginLiquidations.d.mts +67 -0
  93. package/dist/transactions/marginLiquidations.d.mts.map +1 -0
  94. package/dist/transactions/marginLiquidations.mjs +109 -0
  95. package/dist/transactions/marginLiquidations.mjs.map +1 -0
  96. package/dist/transactions/marginMaintainer.d.mts +86 -0
  97. package/dist/transactions/marginMaintainer.d.mts.map +1 -0
  98. package/dist/transactions/marginMaintainer.mjs +160 -0
  99. package/dist/transactions/marginMaintainer.mjs.map +1 -0
  100. package/dist/transactions/marginManager.d.mts +255 -0
  101. package/dist/transactions/marginManager.d.mts.map +1 -0
  102. package/dist/transactions/marginManager.mjs +558 -0
  103. package/dist/transactions/marginManager.mjs.map +1 -0
  104. package/dist/transactions/marginPool.d.mts +140 -0
  105. package/dist/transactions/marginPool.d.mts.map +1 -0
  106. package/dist/transactions/marginPool.mjs +206 -0
  107. package/dist/transactions/marginPool.mjs.map +1 -0
  108. package/dist/transactions/marginRegistry.d.mts +100 -0
  109. package/dist/transactions/marginRegistry.d.mts.map +1 -0
  110. package/dist/transactions/marginRegistry.mjs +128 -0
  111. package/dist/transactions/marginRegistry.mjs.map +1 -0
  112. package/dist/transactions/marginTPSL.d.mts +99 -0
  113. package/dist/transactions/marginTPSL.d.mts.map +1 -0
  114. package/dist/transactions/marginTPSL.mjs +176 -0
  115. package/dist/transactions/marginTPSL.mjs.map +1 -0
  116. package/dist/transactions/poolProxy.d.mts +117 -0
  117. package/dist/transactions/poolProxy.d.mts.map +1 -0
  118. package/dist/transactions/poolProxy.mjs +318 -0
  119. package/dist/transactions/poolProxy.mjs.map +1 -0
  120. package/dist/types/bcs.d.mts +5 -0
  121. package/dist/types/bcs.mjs +7 -0
  122. package/dist/types/index.d.mts +237 -0
  123. package/dist/types/index.d.mts.map +1 -0
  124. package/dist/types/index.mjs +18 -0
  125. package/dist/types/index.mjs.map +1 -0
  126. package/dist/utils/config.d.mts +82 -0
  127. package/dist/utils/config.d.mts.map +1 -0
  128. package/dist/utils/config.mjs +88 -0
  129. package/dist/utils/config.mjs.map +1 -0
  130. package/dist/utils/constants.d.mts +81 -0
  131. package/dist/utils/constants.d.mts.map +1 -0
  132. package/dist/utils/constants.mjs +362 -0
  133. package/dist/utils/constants.mjs.map +1 -0
  134. package/dist/utils/errors.d.mts +46 -0
  135. package/dist/utils/errors.d.mts.map +1 -0
  136. package/dist/utils/errors.mjs +59 -0
  137. package/dist/utils/errors.mjs.map +1 -0
  138. package/dist/{cjs/utils/validation.d.ts → utils/validation.d.mts} +11 -7
  139. package/dist/utils/validation.d.mts.map +1 -0
  140. package/dist/utils/validation.mjs +76 -0
  141. package/dist/utils/validation.mjs.map +1 -0
  142. package/package.json +23 -21
  143. package/src/client.ts +577 -549
  144. package/src/contracts/deepbook/account.ts +14 -14
  145. package/src/contracts/deepbook/balance_manager.ts +340 -54
  146. package/src/contracts/deepbook/balances.ts +3 -2
  147. package/src/contracts/deepbook/big_vector.ts +5 -6
  148. package/src/contracts/deepbook/book.ts +3 -2
  149. package/src/contracts/deepbook/constants.ts +95 -3
  150. package/src/contracts/deepbook/deep_price.ts +7 -7
  151. package/src/contracts/deepbook/deps/std/type_name.ts +3 -2
  152. package/src/contracts/deepbook/deps/sui/bag.ts +4 -4
  153. package/src/contracts/deepbook/deps/sui/balance.ts +3 -2
  154. package/src/contracts/deepbook/deps/sui/object.ts +3 -2
  155. package/src/contracts/deepbook/deps/sui/table.ts +4 -4
  156. package/src/contracts/deepbook/deps/sui/vec_map.ts +4 -4
  157. package/src/contracts/deepbook/deps/sui/vec_set.ts +4 -4
  158. package/src/contracts/deepbook/deps/sui/versioned.ts +4 -4
  159. package/src/contracts/deepbook/ewma.ts +14 -3
  160. package/src/contracts/deepbook/fill.ts +21 -21
  161. package/src/contracts/deepbook/governance.ts +3 -2
  162. package/src/contracts/deepbook/history.ts +3 -2
  163. package/src/contracts/deepbook/math.ts +15 -15
  164. package/src/contracts/deepbook/order.ts +16 -16
  165. package/src/contracts/deepbook/order_info.ts +39 -27
  166. package/src/contracts/deepbook/order_query.ts +12 -12
  167. package/src/contracts/deepbook/pool.ts +876 -519
  168. package/src/contracts/deepbook/registry.ts +146 -35
  169. package/src/contracts/deepbook/state.ts +13 -2
  170. package/src/contracts/deepbook/trade_params.ts +3 -2
  171. package/src/contracts/deepbook/vault.ts +3 -2
  172. package/src/contracts/pyth/batch_price_attestation.ts +92 -0
  173. package/src/contracts/pyth/contract_upgrade.ts +54 -0
  174. package/src/contracts/pyth/data_source.ts +64 -0
  175. package/src/contracts/pyth/deps/0x0000000000000000000000000000000000000000000000000000000000000002/object.ts +12 -0
  176. package/src/contracts/pyth/deps/0x0000000000000000000000000000000000000000000000000000000000000002/package.ts +15 -0
  177. package/src/contracts/pyth/deps/0x0000000000000000000000000000000000000000000000000000000000000002/table.ts +13 -0
  178. package/src/contracts/pyth/deps/0xf47329f4344f3bf0f8e436e2f7b485466cff300f12a166563995d3888c296a94/bytes32.ts +12 -0
  179. package/src/contracts/pyth/deps/0xf47329f4344f3bf0f8e436e2f7b485466cff300f12a166563995d3888c296a94/consumed_vaas.ts +13 -0
  180. package/src/contracts/pyth/deps/0xf47329f4344f3bf0f8e436e2f7b485466cff300f12a166563995d3888c296a94/external_address.ts +13 -0
  181. package/src/contracts/pyth/deps/0xf47329f4344f3bf0f8e436e2f7b485466cff300f12a166563995d3888c296a94/set.ts +12 -0
  182. package/src/contracts/pyth/deserialize.ts +117 -0
  183. package/src/contracts/pyth/event.ts +20 -0
  184. package/src/contracts/pyth/governance.ts +113 -0
  185. package/src/contracts/pyth/governance_action.ts +130 -0
  186. package/src/contracts/pyth/governance_instruction.ts +98 -0
  187. package/src/contracts/pyth/hot_potato_vector.ts +70 -0
  188. package/src/contracts/pyth/i64.ts +94 -0
  189. package/src/contracts/pyth/merkle_tree.ts +41 -0
  190. package/src/contracts/pyth/migrate.ts +29 -0
  191. package/src/contracts/pyth/price.ts +102 -0
  192. package/src/contracts/pyth/price_feed.ts +101 -0
  193. package/src/contracts/pyth/price_identifier.ts +46 -0
  194. package/src/contracts/pyth/price_info.ts +220 -0
  195. package/src/contracts/pyth/price_status.ts +74 -0
  196. package/src/contracts/pyth/pyth.ts +236 -0
  197. package/src/contracts/pyth/set.ts +93 -0
  198. package/src/contracts/pyth/set_data_sources.ts +14 -0
  199. package/src/contracts/pyth/set_fee_recipient.ts +13 -0
  200. package/src/contracts/pyth/set_governance_data_source.ts +16 -0
  201. package/src/contracts/pyth/set_stale_price_threshold.ts +13 -0
  202. package/src/contracts/pyth/set_update_fee.ts +14 -0
  203. package/src/contracts/pyth/setup.ts +12 -0
  204. package/src/contracts/pyth/state.ts +227 -0
  205. package/src/contracts/pyth/version_control.ts +25 -0
  206. package/src/contracts/utils/index.ts +99 -49
  207. package/src/index.ts +2 -2
  208. package/src/pyth/pyth.ts +39 -40
  209. package/src/transactions/deepbook.ts +19 -0
  210. package/src/transactions/marginAdmin.ts +1 -1
  211. package/src/transactions/poolProxy.ts +22 -0
  212. package/src/types/index.ts +0 -2
  213. package/src/utils/config.ts +11 -13
  214. package/src/utils/validation.ts +1 -1
  215. package/dist/cjs/client.d.ts +0 -882
  216. package/dist/cjs/client.js +0 -2003
  217. package/dist/cjs/client.js.map +0 -7
  218. package/dist/cjs/contracts/deepbook/account.d.ts +0 -105
  219. package/dist/cjs/contracts/deepbook/account.js +0 -163
  220. package/dist/cjs/contracts/deepbook/account.js.map +0 -7
  221. package/dist/cjs/contracts/deepbook/balance_manager.d.ts +0 -268
  222. package/dist/cjs/contracts/deepbook/balance_manager.js +0 -361
  223. package/dist/cjs/contracts/deepbook/balance_manager.js.map +0 -7
  224. package/dist/cjs/contracts/deepbook/balances.d.ts +0 -10
  225. package/dist/cjs/contracts/deepbook/balances.js +0 -35
  226. package/dist/cjs/contracts/deepbook/balances.js.map +0 -7
  227. package/dist/cjs/contracts/deepbook/big_vector.d.ts +0 -62
  228. package/dist/cjs/contracts/deepbook/big_vector.js +0 -80
  229. package/dist/cjs/contracts/deepbook/big_vector.js.map +0 -7
  230. package/dist/cjs/contracts/deepbook/book.d.ts +0 -34
  231. package/dist/cjs/contracts/deepbook/book.js +0 -50
  232. package/dist/cjs/contracts/deepbook/book.js.map +0 -7
  233. package/dist/cjs/contracts/deepbook/constants.d.ts +0 -176
  234. package/dist/cjs/contracts/deepbook/constants.js +0 -338
  235. package/dist/cjs/contracts/deepbook/constants.js.map +0 -7
  236. package/dist/cjs/contracts/deepbook/deep_price.d.ts +0 -60
  237. package/dist/cjs/contracts/deepbook/deep_price.js +0 -87
  238. package/dist/cjs/contracts/deepbook/deep_price.js.map +0 -7
  239. package/dist/cjs/contracts/deepbook/deps/std/type_name.d.ts +0 -14
  240. package/dist/cjs/contracts/deepbook/deps/std/type_name.js +0 -42
  241. package/dist/cjs/contracts/deepbook/deps/std/type_name.js.map +0 -7
  242. package/dist/cjs/contracts/deepbook/deps/sui/bag.d.ts +0 -33
  243. package/dist/cjs/contracts/deepbook/deps/sui/bag.js +0 -47
  244. package/dist/cjs/contracts/deepbook/deps/sui/bag.js.map +0 -7
  245. package/dist/cjs/contracts/deepbook/deps/sui/balance.d.ts +0 -9
  246. package/dist/cjs/contracts/deepbook/deps/sui/balance.js +0 -33
  247. package/dist/cjs/contracts/deepbook/deps/sui/balance.js.map +0 -7
  248. package/dist/cjs/contracts/deepbook/deps/sui/object.d.ts +0 -5
  249. package/dist/cjs/contracts/deepbook/deps/sui/object.js +0 -33
  250. package/dist/cjs/contracts/deepbook/deps/sui/object.js.map +0 -7
  251. package/dist/cjs/contracts/deepbook/deps/sui/table.d.ts +0 -28
  252. package/dist/cjs/contracts/deepbook/deps/sui/table.js +0 -47
  253. package/dist/cjs/contracts/deepbook/deps/sui/table.js.map +0 -7
  254. package/dist/cjs/contracts/deepbook/deps/sui/vec_map.d.ts +0 -27
  255. package/dist/cjs/contracts/deepbook/deps/sui/vec_map.js +0 -45
  256. package/dist/cjs/contracts/deepbook/deps/sui/vec_map.js.map +0 -7
  257. package/dist/cjs/contracts/deepbook/deps/sui/vec_set.d.ts +0 -15
  258. package/dist/cjs/contracts/deepbook/deps/sui/vec_set.js +0 -35
  259. package/dist/cjs/contracts/deepbook/deps/sui/vec_set.js.map +0 -7
  260. package/dist/cjs/contracts/deepbook/deps/sui/versioned.d.ts +0 -7
  261. package/dist/cjs/contracts/deepbook/deps/sui/versioned.js +0 -45
  262. package/dist/cjs/contracts/deepbook/deps/sui/versioned.js.map +0 -7
  263. package/dist/cjs/contracts/deepbook/ewma.d.ts +0 -17
  264. package/dist/cjs/contracts/deepbook/ewma.js +0 -39
  265. package/dist/cjs/contracts/deepbook/ewma.js.map +0 -7
  266. package/dist/cjs/contracts/deepbook/fill.d.ts +0 -153
  267. package/dist/cjs/contracts/deepbook/fill.js +0 -251
  268. package/dist/cjs/contracts/deepbook/fill.js.map +0 -7
  269. package/dist/cjs/contracts/deepbook/governance.d.ts +0 -63
  270. package/dist/cjs/contracts/deepbook/governance.js +0 -79
  271. package/dist/cjs/contracts/deepbook/governance.js.map +0 -7
  272. package/dist/cjs/contracts/deepbook/history.d.ts +0 -60
  273. package/dist/cjs/contracts/deepbook/history.js +0 -78
  274. package/dist/cjs/contracts/deepbook/history.js.map +0 -7
  275. package/dist/cjs/contracts/deepbook/math.d.ts +0 -94
  276. package/dist/cjs/contracts/deepbook/math.js +0 -132
  277. package/dist/cjs/contracts/deepbook/math.js.map +0 -7
  278. package/dist/cjs/contracts/deepbook/order.d.ts +0 -135
  279. package/dist/cjs/contracts/deepbook/order.js +0 -218
  280. package/dist/cjs/contracts/deepbook/order.js.map +0 -7
  281. package/dist/cjs/contracts/deepbook/order_info.d.ts +0 -296
  282. package/dist/cjs/contracts/deepbook/order_info.js +0 -386
  283. package/dist/cjs/contracts/deepbook/order_info.js.map +0 -7
  284. package/dist/cjs/contracts/deepbook/order_query.d.ts +0 -85
  285. package/dist/cjs/contracts/deepbook/order_query.js +0 -96
  286. package/dist/cjs/contracts/deepbook/order_query.js.map +0 -7
  287. package/dist/cjs/contracts/deepbook/pool.d.ts +0 -1218
  288. package/dist/cjs/contracts/deepbook/pool.js +0 -1236
  289. package/dist/cjs/contracts/deepbook/pool.js.map +0 -7
  290. package/dist/cjs/contracts/deepbook/registry.d.ts +0 -134
  291. package/dist/cjs/contracts/deepbook/registry.js +0 -182
  292. package/dist/cjs/contracts/deepbook/registry.js.map +0 -7
  293. package/dist/cjs/contracts/deepbook/state.d.ts +0 -117
  294. package/dist/cjs/contracts/deepbook/state.js +0 -104
  295. package/dist/cjs/contracts/deepbook/state.js.map +0 -7
  296. package/dist/cjs/contracts/deepbook/trade_params.d.ts +0 -7
  297. package/dist/cjs/contracts/deepbook/trade_params.js +0 -35
  298. package/dist/cjs/contracts/deepbook/trade_params.js.map +0 -7
  299. package/dist/cjs/contracts/deepbook/vault.d.ts +0 -30
  300. package/dist/cjs/contracts/deepbook/vault.js +0 -65
  301. package/dist/cjs/contracts/deepbook/vault.js.map +0 -7
  302. package/dist/cjs/contracts/utils/index.d.ts +0 -25
  303. package/dist/cjs/contracts/utils/index.js +0 -148
  304. package/dist/cjs/contracts/utils/index.js.map +0 -7
  305. package/dist/cjs/index.d.ts +0 -24
  306. package/dist/cjs/index.js +0 -92
  307. package/dist/cjs/index.js.map +0 -7
  308. package/dist/cjs/package.json +0 -4
  309. package/dist/cjs/pyth/PriceServiceConnection.d.ts +0 -26
  310. package/dist/cjs/pyth/PriceServiceConnection.js +0 -68
  311. package/dist/cjs/pyth/PriceServiceConnection.js.map +0 -7
  312. package/dist/cjs/pyth/pyth-helpers.d.ts +0 -7
  313. package/dist/cjs/pyth/pyth-helpers.js +0 -36
  314. package/dist/cjs/pyth/pyth-helpers.js.map +0 -7
  315. package/dist/cjs/pyth/pyth.d.ts +0 -65
  316. package/dist/cjs/pyth/pyth.js +0 -269
  317. package/dist/cjs/pyth/pyth.js.map +0 -7
  318. package/dist/cjs/transactions/balanceManager.d.ts +0 -168
  319. package/dist/cjs/transactions/balanceManager.js +0 -384
  320. package/dist/cjs/transactions/balanceManager.js.map +0 -7
  321. package/dist/cjs/transactions/deepbook.d.ts +0 -477
  322. package/dist/cjs/transactions/deepbook.js +0 -1335
  323. package/dist/cjs/transactions/deepbook.js.map +0 -7
  324. package/dist/cjs/transactions/deepbookAdmin.d.ts +0 -105
  325. package/dist/cjs/transactions/deepbookAdmin.js +0 -334
  326. package/dist/cjs/transactions/deepbookAdmin.js.map +0 -7
  327. package/dist/cjs/transactions/flashLoans.d.ts +0 -56
  328. package/dist/cjs/transactions/flashLoans.js +0 -124
  329. package/dist/cjs/transactions/flashLoans.js.map +0 -7
  330. package/dist/cjs/transactions/governance.d.ts +0 -42
  331. package/dist/cjs/transactions/governance.js +0 -135
  332. package/dist/cjs/transactions/governance.js.map +0 -7
  333. package/dist/cjs/transactions/marginAdmin.d.ts +0 -133
  334. package/dist/cjs/transactions/marginAdmin.js +0 -396
  335. package/dist/cjs/transactions/marginAdmin.js.map +0 -7
  336. package/dist/cjs/transactions/marginLiquidations.d.ts +0 -61
  337. package/dist/cjs/transactions/marginLiquidations.js +0 -173
  338. package/dist/cjs/transactions/marginLiquidations.js.map +0 -7
  339. package/dist/cjs/transactions/marginMaintainer.d.ts +0 -80
  340. package/dist/cjs/transactions/marginMaintainer.js +0 -257
  341. package/dist/cjs/transactions/marginMaintainer.js.map +0 -7
  342. package/dist/cjs/transactions/marginManager.d.ts +0 -249
  343. package/dist/cjs/transactions/marginManager.js +0 -739
  344. package/dist/cjs/transactions/marginManager.js.map +0 -7
  345. package/dist/cjs/transactions/marginPool.d.ts +0 -134
  346. package/dist/cjs/transactions/marginPool.js +0 -330
  347. package/dist/cjs/transactions/marginPool.js.map +0 -7
  348. package/dist/cjs/transactions/marginRegistry.d.ts +0 -94
  349. package/dist/cjs/transactions/marginRegistry.js +0 -221
  350. package/dist/cjs/transactions/marginRegistry.js.map +0 -7
  351. package/dist/cjs/transactions/marginTPSL.d.ts +0 -93
  352. package/dist/cjs/transactions/marginTPSL.js +0 -286
  353. package/dist/cjs/transactions/marginTPSL.js.map +0 -7
  354. package/dist/cjs/transactions/poolProxy.d.ts +0 -104
  355. package/dist/cjs/transactions/poolProxy.js +0 -435
  356. package/dist/cjs/transactions/poolProxy.js.map +0 -7
  357. package/dist/cjs/types/bcs.d.ts +0 -5
  358. package/dist/cjs/types/bcs.js +0 -33
  359. package/dist/cjs/types/bcs.js.map +0 -7
  360. package/dist/cjs/types/index.d.ts +0 -247
  361. package/dist/cjs/types/index.js +0 -38
  362. package/dist/cjs/types/index.js.map +0 -7
  363. package/dist/cjs/utils/config.d.ts +0 -65
  364. package/dist/cjs/utils/config.js +0 -144
  365. package/dist/cjs/utils/config.js.map +0 -7
  366. package/dist/cjs/utils/constants.d.ts +0 -76
  367. package/dist/cjs/utils/constants.js +0 -392
  368. package/dist/cjs/utils/constants.js.map +0 -7
  369. package/dist/cjs/utils/errors.d.ts +0 -42
  370. package/dist/cjs/utils/errors.js +0 -70
  371. package/dist/cjs/utils/errors.js.map +0 -7
  372. package/dist/cjs/utils/validation.js +0 -67
  373. package/dist/cjs/utils/validation.js.map +0 -7
  374. package/dist/esm/client.d.ts +0 -882
  375. package/dist/esm/client.js +0 -1988
  376. package/dist/esm/client.js.map +0 -7
  377. package/dist/esm/contracts/deepbook/account.d.ts +0 -105
  378. package/dist/esm/contracts/deepbook/account.js +0 -133
  379. package/dist/esm/contracts/deepbook/account.js.map +0 -7
  380. package/dist/esm/contracts/deepbook/balance_manager.d.ts +0 -268
  381. package/dist/esm/contracts/deepbook/balance_manager.js +0 -331
  382. package/dist/esm/contracts/deepbook/balance_manager.js.map +0 -7
  383. package/dist/esm/contracts/deepbook/balances.d.ts +0 -10
  384. package/dist/esm/contracts/deepbook/balances.js +0 -15
  385. package/dist/esm/contracts/deepbook/balances.js.map +0 -7
  386. package/dist/esm/contracts/deepbook/big_vector.d.ts +0 -62
  387. package/dist/esm/contracts/deepbook/big_vector.js +0 -50
  388. package/dist/esm/contracts/deepbook/big_vector.js.map +0 -7
  389. package/dist/esm/contracts/deepbook/book.d.ts +0 -34
  390. package/dist/esm/contracts/deepbook/book.js +0 -20
  391. package/dist/esm/contracts/deepbook/book.js.map +0 -7
  392. package/dist/esm/contracts/deepbook/constants.d.ts +0 -176
  393. package/dist/esm/contracts/deepbook/constants.js +0 -318
  394. package/dist/esm/contracts/deepbook/constants.js.map +0 -7
  395. package/dist/esm/contracts/deepbook/deep_price.d.ts +0 -60
  396. package/dist/esm/contracts/deepbook/deep_price.js +0 -67
  397. package/dist/esm/contracts/deepbook/deep_price.js.map +0 -7
  398. package/dist/esm/contracts/deepbook/deps/std/type_name.d.ts +0 -14
  399. package/dist/esm/contracts/deepbook/deps/std/type_name.js +0 -22
  400. package/dist/esm/contracts/deepbook/deps/std/type_name.js.map +0 -7
  401. package/dist/esm/contracts/deepbook/deps/sui/bag.d.ts +0 -33
  402. package/dist/esm/contracts/deepbook/deps/sui/bag.js +0 -17
  403. package/dist/esm/contracts/deepbook/deps/sui/bag.js.map +0 -7
  404. package/dist/esm/contracts/deepbook/deps/sui/balance.d.ts +0 -9
  405. package/dist/esm/contracts/deepbook/deps/sui/balance.js +0 -13
  406. package/dist/esm/contracts/deepbook/deps/sui/balance.js.map +0 -7
  407. package/dist/esm/contracts/deepbook/deps/sui/object.d.ts +0 -5
  408. package/dist/esm/contracts/deepbook/deps/sui/object.js +0 -13
  409. package/dist/esm/contracts/deepbook/deps/sui/object.js.map +0 -7
  410. package/dist/esm/contracts/deepbook/deps/sui/table.d.ts +0 -28
  411. package/dist/esm/contracts/deepbook/deps/sui/table.js +0 -17
  412. package/dist/esm/contracts/deepbook/deps/sui/table.js.map +0 -7
  413. package/dist/esm/contracts/deepbook/deps/sui/vec_map.d.ts +0 -27
  414. package/dist/esm/contracts/deepbook/deps/sui/vec_map.js +0 -25
  415. package/dist/esm/contracts/deepbook/deps/sui/vec_map.js.map +0 -7
  416. package/dist/esm/contracts/deepbook/deps/sui/vec_set.d.ts +0 -15
  417. package/dist/esm/contracts/deepbook/deps/sui/vec_set.js +0 -15
  418. package/dist/esm/contracts/deepbook/deps/sui/vec_set.js.map +0 -7
  419. package/dist/esm/contracts/deepbook/deps/sui/versioned.d.ts +0 -7
  420. package/dist/esm/contracts/deepbook/deps/sui/versioned.js +0 -15
  421. package/dist/esm/contracts/deepbook/deps/sui/versioned.js.map +0 -7
  422. package/dist/esm/contracts/deepbook/ewma.d.ts +0 -17
  423. package/dist/esm/contracts/deepbook/ewma.js +0 -19
  424. package/dist/esm/contracts/deepbook/ewma.js.map +0 -7
  425. package/dist/esm/contracts/deepbook/fill.d.ts +0 -153
  426. package/dist/esm/contracts/deepbook/fill.js +0 -221
  427. package/dist/esm/contracts/deepbook/fill.js.map +0 -7
  428. package/dist/esm/contracts/deepbook/governance.d.ts +0 -63
  429. package/dist/esm/contracts/deepbook/governance.js +0 -49
  430. package/dist/esm/contracts/deepbook/governance.js.map +0 -7
  431. package/dist/esm/contracts/deepbook/history.d.ts +0 -60
  432. package/dist/esm/contracts/deepbook/history.js +0 -48
  433. package/dist/esm/contracts/deepbook/history.js.map +0 -7
  434. package/dist/esm/contracts/deepbook/math.d.ts +0 -94
  435. package/dist/esm/contracts/deepbook/math.js +0 -112
  436. package/dist/esm/contracts/deepbook/math.js.map +0 -7
  437. package/dist/esm/contracts/deepbook/order.d.ts +0 -135
  438. package/dist/esm/contracts/deepbook/order.js +0 -188
  439. package/dist/esm/contracts/deepbook/order.js.map +0 -7
  440. package/dist/esm/contracts/deepbook/order_info.d.ts +0 -296
  441. package/dist/esm/contracts/deepbook/order_info.js +0 -356
  442. package/dist/esm/contracts/deepbook/order_info.js.map +0 -7
  443. package/dist/esm/contracts/deepbook/order_query.d.ts +0 -85
  444. package/dist/esm/contracts/deepbook/order_query.js +0 -66
  445. package/dist/esm/contracts/deepbook/order_query.js.map +0 -7
  446. package/dist/esm/contracts/deepbook/pool.d.ts +0 -1218
  447. package/dist/esm/contracts/deepbook/pool.js +0 -1206
  448. package/dist/esm/contracts/deepbook/pool.js.map +0 -7
  449. package/dist/esm/contracts/deepbook/registry.d.ts +0 -134
  450. package/dist/esm/contracts/deepbook/registry.js +0 -152
  451. package/dist/esm/contracts/deepbook/registry.js.map +0 -7
  452. package/dist/esm/contracts/deepbook/state.d.ts +0 -117
  453. package/dist/esm/contracts/deepbook/state.js +0 -74
  454. package/dist/esm/contracts/deepbook/state.js.map +0 -7
  455. package/dist/esm/contracts/deepbook/trade_params.d.ts +0 -7
  456. package/dist/esm/contracts/deepbook/trade_params.js +0 -15
  457. package/dist/esm/contracts/deepbook/trade_params.js.map +0 -7
  458. package/dist/esm/contracts/deepbook/vault.d.ts +0 -30
  459. package/dist/esm/contracts/deepbook/vault.js +0 -35
  460. package/dist/esm/contracts/deepbook/vault.js.map +0 -7
  461. package/dist/esm/contracts/utils/index.d.ts +0 -25
  462. package/dist/esm/contracts/utils/index.js +0 -128
  463. package/dist/esm/contracts/utils/index.js.map +0 -7
  464. package/dist/esm/index.d.ts +0 -24
  465. package/dist/esm/index.js +0 -103
  466. package/dist/esm/index.js.map +0 -7
  467. package/dist/esm/package.json +0 -4
  468. package/dist/esm/pyth/PriceServiceConnection.d.ts +0 -26
  469. package/dist/esm/pyth/PriceServiceConnection.js +0 -38
  470. package/dist/esm/pyth/PriceServiceConnection.js.map +0 -7
  471. package/dist/esm/pyth/pyth-helpers.d.ts +0 -7
  472. package/dist/esm/pyth/pyth-helpers.js +0 -16
  473. package/dist/esm/pyth/pyth-helpers.js.map +0 -7
  474. package/dist/esm/pyth/pyth.d.ts +0 -65
  475. package/dist/esm/pyth/pyth.js +0 -249
  476. package/dist/esm/pyth/pyth.js.map +0 -7
  477. package/dist/esm/transactions/balanceManager.d.ts +0 -168
  478. package/dist/esm/transactions/balanceManager.js +0 -364
  479. package/dist/esm/transactions/balanceManager.js.map +0 -7
  480. package/dist/esm/transactions/deepbook.d.ts +0 -477
  481. package/dist/esm/transactions/deepbook.js +0 -1321
  482. package/dist/esm/transactions/deepbook.js.map +0 -7
  483. package/dist/esm/transactions/deepbookAdmin.d.ts +0 -105
  484. package/dist/esm/transactions/deepbookAdmin.js +0 -314
  485. package/dist/esm/transactions/deepbookAdmin.js.map +0 -7
  486. package/dist/esm/transactions/flashLoans.d.ts +0 -56
  487. package/dist/esm/transactions/flashLoans.js +0 -104
  488. package/dist/esm/transactions/flashLoans.js.map +0 -7
  489. package/dist/esm/transactions/governance.d.ts +0 -42
  490. package/dist/esm/transactions/governance.js +0 -115
  491. package/dist/esm/transactions/governance.js.map +0 -7
  492. package/dist/esm/transactions/marginAdmin.d.ts +0 -133
  493. package/dist/esm/transactions/marginAdmin.js +0 -376
  494. package/dist/esm/transactions/marginAdmin.js.map +0 -7
  495. package/dist/esm/transactions/marginLiquidations.d.ts +0 -61
  496. package/dist/esm/transactions/marginLiquidations.js +0 -153
  497. package/dist/esm/transactions/marginLiquidations.js.map +0 -7
  498. package/dist/esm/transactions/marginMaintainer.d.ts +0 -80
  499. package/dist/esm/transactions/marginMaintainer.js +0 -237
  500. package/dist/esm/transactions/marginMaintainer.js.map +0 -7
  501. package/dist/esm/transactions/marginManager.d.ts +0 -249
  502. package/dist/esm/transactions/marginManager.js +0 -719
  503. package/dist/esm/transactions/marginManager.js.map +0 -7
  504. package/dist/esm/transactions/marginPool.d.ts +0 -134
  505. package/dist/esm/transactions/marginPool.js +0 -310
  506. package/dist/esm/transactions/marginPool.js.map +0 -7
  507. package/dist/esm/transactions/marginRegistry.d.ts +0 -94
  508. package/dist/esm/transactions/marginRegistry.js +0 -201
  509. package/dist/esm/transactions/marginRegistry.js.map +0 -7
  510. package/dist/esm/transactions/marginTPSL.d.ts +0 -93
  511. package/dist/esm/transactions/marginTPSL.js +0 -266
  512. package/dist/esm/transactions/marginTPSL.js.map +0 -7
  513. package/dist/esm/transactions/poolProxy.d.ts +0 -104
  514. package/dist/esm/transactions/poolProxy.js +0 -415
  515. package/dist/esm/transactions/poolProxy.js.map +0 -7
  516. package/dist/esm/types/bcs.d.ts +0 -5
  517. package/dist/esm/types/bcs.js +0 -13
  518. package/dist/esm/types/bcs.js.map +0 -7
  519. package/dist/esm/types/index.d.ts +0 -247
  520. package/dist/esm/types/index.js +0 -18
  521. package/dist/esm/types/index.js.map +0 -7
  522. package/dist/esm/utils/config.d.ts +0 -65
  523. package/dist/esm/utils/config.js +0 -135
  524. package/dist/esm/utils/config.js.map +0 -7
  525. package/dist/esm/utils/constants.d.ts +0 -76
  526. package/dist/esm/utils/constants.js +0 -372
  527. package/dist/esm/utils/constants.js.map +0 -7
  528. package/dist/esm/utils/errors.d.ts +0 -42
  529. package/dist/esm/utils/errors.js +0 -50
  530. package/dist/esm/utils/errors.js.map +0 -7
  531. package/dist/esm/utils/validation.d.ts +0 -50
  532. package/dist/esm/utils/validation.js +0 -47
  533. package/dist/esm/utils/validation.js.map +0 -7
  534. package/dist/tsconfig.esm.tsbuildinfo +0 -1
  535. package/dist/tsconfig.tsbuildinfo +0 -1
@@ -1,739 +0,0 @@
1
- "use strict";
2
- var __defProp = Object.defineProperty;
3
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
- var __getOwnPropNames = Object.getOwnPropertyNames;
5
- var __hasOwnProp = Object.prototype.hasOwnProperty;
6
- var __typeError = (msg) => {
7
- throw TypeError(msg);
8
- };
9
- var __export = (target, all) => {
10
- for (var name in all)
11
- __defProp(target, name, { get: all[name], enumerable: true });
12
- };
13
- var __copyProps = (to, from, except, desc) => {
14
- if (from && typeof from === "object" || typeof from === "function") {
15
- for (let key of __getOwnPropNames(from))
16
- if (!__hasOwnProp.call(to, key) && key !== except)
17
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
18
- }
19
- return to;
20
- };
21
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
22
- var __accessCheck = (obj, member, msg) => member.has(obj) || __typeError("Cannot " + msg);
23
- var __privateGet = (obj, member, getter) => (__accessCheck(obj, member, "read from private field"), getter ? getter.call(obj) : member.get(obj));
24
- var __privateAdd = (obj, member, value) => member.has(obj) ? __typeError("Cannot add the same private member more than once") : member instanceof WeakSet ? member.add(obj) : member.set(obj, value);
25
- var __privateSet = (obj, member, value, setter) => (__accessCheck(obj, member, "write to private field"), setter ? setter.call(obj, value) : member.set(obj, value), value);
26
- var marginManager_exports = {};
27
- __export(marginManager_exports, {
28
- MarginManagerContract: () => MarginManagerContract
29
- });
30
- module.exports = __toCommonJS(marginManager_exports);
31
- var import_transactions = require("@mysten/sui/transactions");
32
- var _config;
33
- class MarginManagerContract {
34
- /**
35
- * @param {DeepBookConfig} config Configuration for MarginManagerContract
36
- */
37
- constructor(config) {
38
- __privateAdd(this, _config);
39
- /**
40
- * @description Create a new margin manager
41
- * @param {string} poolKey The key to identify the pool
42
- * @returns A function that takes a Transaction object
43
- */
44
- this.newMarginManager = (poolKey) => (tx) => {
45
- const pool = __privateGet(this, _config).getPool(poolKey);
46
- const baseCoin = __privateGet(this, _config).getCoin(pool.baseCoin);
47
- const quoteCoin = __privateGet(this, _config).getCoin(pool.quoteCoin);
48
- tx.moveCall({
49
- target: `${__privateGet(this, _config).MARGIN_PACKAGE_ID}::margin_manager::new`,
50
- arguments: [
51
- tx.object(pool.address),
52
- tx.object(__privateGet(this, _config).REGISTRY_ID),
53
- tx.object(__privateGet(this, _config).MARGIN_REGISTRY_ID),
54
- tx.object.clock()
55
- ],
56
- typeArguments: [baseCoin.type, quoteCoin.type]
57
- });
58
- };
59
- /**
60
- * @description Create a new margin manager with an initializer
61
- * @param {string} poolKey The key to identify the pool
62
- * @returns A function that takes a Transaction object
63
- */
64
- this.newMarginManagerWithInitializer = (poolKey) => (tx) => {
65
- const pool = __privateGet(this, _config).getPool(poolKey);
66
- const baseCoin = __privateGet(this, _config).getCoin(pool.baseCoin);
67
- const quoteCoin = __privateGet(this, _config).getCoin(pool.quoteCoin);
68
- const [manager, initializer] = tx.moveCall({
69
- target: `${__privateGet(this, _config).MARGIN_PACKAGE_ID}::margin_manager::new_with_initializer`,
70
- arguments: [
71
- tx.object(pool.address),
72
- tx.object(__privateGet(this, _config).REGISTRY_ID),
73
- tx.object(__privateGet(this, _config).MARGIN_REGISTRY_ID),
74
- tx.object.clock()
75
- ],
76
- typeArguments: [baseCoin.type, quoteCoin.type]
77
- });
78
- return { manager, initializer };
79
- };
80
- /**
81
- * @description Share a margin manager
82
- * @param {string} poolKey The key to identify the pool
83
- * @param {TransactionArgument} manager The margin manager to share
84
- * @param {TransactionArgument} initializer The initializer for the manager
85
- * @returns A function that takes a Transaction object
86
- */
87
- this.shareMarginManager = (poolKey, manager, initializer) => (tx) => {
88
- const pool = __privateGet(this, _config).getPool(poolKey);
89
- const baseCoin = __privateGet(this, _config).getCoin(pool.baseCoin);
90
- const quoteCoin = __privateGet(this, _config).getCoin(pool.quoteCoin);
91
- tx.moveCall({
92
- target: `${__privateGet(this, _config).MARGIN_PACKAGE_ID}::margin_manager::share`,
93
- arguments: [manager, initializer],
94
- typeArguments: [baseCoin.type, quoteCoin.type]
95
- });
96
- };
97
- /**
98
- * @description Deposit into a margin manager during initialization (before sharing).
99
- * Use this when you need to deposit funds into a newly created manager in the same transaction.
100
- * @param {DepositDuringInitParams} params The deposit parameters
101
- * @returns A function that takes a Transaction object
102
- */
103
- this.depositDuringInitialization = (params) => (tx) => {
104
- const { manager, poolKey, coinType } = params;
105
- const pool = __privateGet(this, _config).getPool(poolKey);
106
- const baseCoin = __privateGet(this, _config).getCoin(pool.baseCoin);
107
- const quoteCoin = __privateGet(this, _config).getCoin(pool.quoteCoin);
108
- const depositCoin = __privateGet(this, _config).getCoin(coinType);
109
- const coin = "amount" in params && params.amount !== void 0 ? (0, import_transactions.coinWithBalance)({
110
- type: depositCoin.type,
111
- balance: Math.round(params.amount * depositCoin.scalar)
112
- }) : params.coin;
113
- tx.moveCall({
114
- target: `${__privateGet(this, _config).MARGIN_PACKAGE_ID}::margin_manager::deposit`,
115
- arguments: [
116
- manager,
117
- tx.object(__privateGet(this, _config).MARGIN_REGISTRY_ID),
118
- tx.object(baseCoin.priceInfoObjectId),
119
- tx.object(quoteCoin.priceInfoObjectId),
120
- coin,
121
- tx.object.clock()
122
- ],
123
- typeArguments: [baseCoin.type, quoteCoin.type, depositCoin.type]
124
- });
125
- };
126
- /**
127
- * @description Deposit base into a margin manager
128
- * @param {DepositParams} params The deposit parameters
129
- * @returns A function that takes a Transaction object
130
- */
131
- this.depositBase = (params) => (tx) => {
132
- const { managerKey } = params;
133
- const manager = __privateGet(this, _config).getMarginManager(managerKey);
134
- const pool = __privateGet(this, _config).getPool(manager.poolKey);
135
- const baseCoin = __privateGet(this, _config).getCoin(pool.baseCoin);
136
- const quoteCoin = __privateGet(this, _config).getCoin(pool.quoteCoin);
137
- const coin = "amount" in params && params.amount !== void 0 ? (0, import_transactions.coinWithBalance)({
138
- type: baseCoin.type,
139
- balance: Math.round(params.amount * baseCoin.scalar)
140
- }) : params.coin;
141
- tx.moveCall({
142
- target: `${__privateGet(this, _config).MARGIN_PACKAGE_ID}::margin_manager::deposit`,
143
- arguments: [
144
- tx.object(manager.address),
145
- tx.object(__privateGet(this, _config).MARGIN_REGISTRY_ID),
146
- tx.object(baseCoin.priceInfoObjectId),
147
- tx.object(quoteCoin.priceInfoObjectId),
148
- coin,
149
- tx.object.clock()
150
- ],
151
- typeArguments: [baseCoin.type, quoteCoin.type, baseCoin.type]
152
- });
153
- };
154
- /**
155
- * @description Deposit quote into a margin manager
156
- * @param {DepositParams} params The deposit parameters
157
- * @returns A function that takes a Transaction object
158
- */
159
- this.depositQuote = (params) => (tx) => {
160
- const { managerKey } = params;
161
- const manager = __privateGet(this, _config).getMarginManager(managerKey);
162
- const pool = __privateGet(this, _config).getPool(manager.poolKey);
163
- const baseCoin = __privateGet(this, _config).getCoin(pool.baseCoin);
164
- const quoteCoin = __privateGet(this, _config).getCoin(pool.quoteCoin);
165
- const coin = "amount" in params && params.amount !== void 0 ? (0, import_transactions.coinWithBalance)({
166
- type: quoteCoin.type,
167
- balance: Math.round(params.amount * quoteCoin.scalar)
168
- }) : params.coin;
169
- tx.moveCall({
170
- target: `${__privateGet(this, _config).MARGIN_PACKAGE_ID}::margin_manager::deposit`,
171
- arguments: [
172
- tx.object(manager.address),
173
- tx.object(__privateGet(this, _config).MARGIN_REGISTRY_ID),
174
- tx.object(baseCoin.priceInfoObjectId),
175
- tx.object(quoteCoin.priceInfoObjectId),
176
- coin,
177
- tx.object.clock()
178
- ],
179
- typeArguments: [baseCoin.type, quoteCoin.type, quoteCoin.type]
180
- });
181
- };
182
- /**
183
- * @description Deposit deep into a margin manager
184
- * @param {DepositParams} params The deposit parameters
185
- * @returns A function that takes a Transaction object
186
- */
187
- this.depositDeep = (params) => (tx) => {
188
- const { managerKey } = params;
189
- const manager = __privateGet(this, _config).getMarginManager(managerKey);
190
- const pool = __privateGet(this, _config).getPool(manager.poolKey);
191
- const baseCoin = __privateGet(this, _config).getCoin(pool.baseCoin);
192
- const quoteCoin = __privateGet(this, _config).getCoin(pool.quoteCoin);
193
- const deepCoin = __privateGet(this, _config).getCoin("DEEP");
194
- const coin = "amount" in params && params.amount !== void 0 ? (0, import_transactions.coinWithBalance)({
195
- type: deepCoin.type,
196
- balance: Math.round(params.amount * deepCoin.scalar)
197
- }) : params.coin;
198
- tx.moveCall({
199
- target: `${__privateGet(this, _config).MARGIN_PACKAGE_ID}::margin_manager::deposit`,
200
- arguments: [
201
- tx.object(manager.address),
202
- tx.object(__privateGet(this, _config).MARGIN_REGISTRY_ID),
203
- tx.object(baseCoin.priceInfoObjectId),
204
- tx.object(quoteCoin.priceInfoObjectId),
205
- coin,
206
- tx.object.clock()
207
- ],
208
- typeArguments: [baseCoin.type, quoteCoin.type, deepCoin.type]
209
- });
210
- };
211
- /**
212
- * @description Withdraw base from a margin manager
213
- * @param {string} managerKey The key to identify the manager
214
- * @param {number} amount The amount to withdraw
215
- * @returns A function that takes a Transaction object
216
- */
217
- this.withdrawBase = (managerKey, amount) => (tx) => {
218
- const manager = __privateGet(this, _config).getMarginManager(managerKey);
219
- const pool = __privateGet(this, _config).getPool(manager.poolKey);
220
- const baseCoin = __privateGet(this, _config).getCoin(pool.baseCoin);
221
- const quoteCoin = __privateGet(this, _config).getCoin(pool.quoteCoin);
222
- const baseMarginPool = __privateGet(this, _config).getMarginPool(pool.baseCoin);
223
- const quoteMarginPool = __privateGet(this, _config).getMarginPool(pool.quoteCoin);
224
- return tx.moveCall({
225
- target: `${__privateGet(this, _config).MARGIN_PACKAGE_ID}::margin_manager::withdraw`,
226
- arguments: [
227
- tx.object(manager.address),
228
- tx.object(__privateGet(this, _config).MARGIN_REGISTRY_ID),
229
- tx.object(baseMarginPool.address),
230
- tx.object(quoteMarginPool.address),
231
- tx.object(baseCoin.priceInfoObjectId),
232
- tx.object(quoteCoin.priceInfoObjectId),
233
- tx.object(pool.address),
234
- tx.pure.u64(Math.round(amount * baseCoin.scalar)),
235
- tx.object.clock()
236
- ],
237
- typeArguments: [baseCoin.type, quoteCoin.type, baseCoin.type]
238
- });
239
- };
240
- /**
241
- * @description Withdraw quote from a margin manager
242
- * @param {string} managerKey The key to identify the manager
243
- * @param {number} amount The amount to withdraw
244
- * @returns A function that takes a Transaction object
245
- */
246
- this.withdrawQuote = (managerKey, amount) => (tx) => {
247
- const manager = __privateGet(this, _config).getMarginManager(managerKey);
248
- const pool = __privateGet(this, _config).getPool(manager.poolKey);
249
- const baseCoin = __privateGet(this, _config).getCoin(pool.baseCoin);
250
- const quoteCoin = __privateGet(this, _config).getCoin(pool.quoteCoin);
251
- const baseMarginPool = __privateGet(this, _config).getMarginPool(pool.baseCoin);
252
- const quoteMarginPool = __privateGet(this, _config).getMarginPool(pool.quoteCoin);
253
- return tx.moveCall({
254
- target: `${__privateGet(this, _config).MARGIN_PACKAGE_ID}::margin_manager::withdraw`,
255
- arguments: [
256
- tx.object(manager.address),
257
- tx.object(__privateGet(this, _config).MARGIN_REGISTRY_ID),
258
- tx.object(baseMarginPool.address),
259
- tx.object(quoteMarginPool.address),
260
- tx.object(baseCoin.priceInfoObjectId),
261
- tx.object(quoteCoin.priceInfoObjectId),
262
- tx.object(pool.address),
263
- tx.pure.u64(Math.round(amount * quoteCoin.scalar)),
264
- tx.object.clock()
265
- ],
266
- typeArguments: [baseCoin.type, quoteCoin.type, quoteCoin.type]
267
- });
268
- };
269
- /**
270
- * @description Withdraw deep from a margin manager
271
- * @param {string} managerKey The key to identify the manager
272
- * @param {number} amount The amount to withdraw
273
- * @returns A function that takes a Transaction object
274
- */
275
- this.withdrawDeep = (managerKey, amount) => (tx) => {
276
- const manager = __privateGet(this, _config).getMarginManager(managerKey);
277
- const pool = __privateGet(this, _config).getPool(manager.poolKey);
278
- const baseCoin = __privateGet(this, _config).getCoin(pool.baseCoin);
279
- const quoteCoin = __privateGet(this, _config).getCoin(pool.quoteCoin);
280
- const deepCoin = __privateGet(this, _config).getCoin("DEEP");
281
- const baseMarginPool = __privateGet(this, _config).getMarginPool(pool.baseCoin);
282
- const quoteMarginPool = __privateGet(this, _config).getMarginPool(pool.quoteCoin);
283
- return tx.moveCall({
284
- target: `${__privateGet(this, _config).MARGIN_PACKAGE_ID}::margin_manager::withdraw`,
285
- arguments: [
286
- tx.object(manager.address),
287
- tx.object(__privateGet(this, _config).MARGIN_REGISTRY_ID),
288
- tx.object(baseMarginPool.address),
289
- tx.object(quoteMarginPool.address),
290
- tx.object(baseCoin.priceInfoObjectId),
291
- tx.object(quoteCoin.priceInfoObjectId),
292
- tx.object(pool.address),
293
- tx.pure.u64(Math.round(amount * deepCoin.scalar)),
294
- tx.object.clock()
295
- ],
296
- typeArguments: [baseCoin.type, quoteCoin.type, deepCoin.type]
297
- });
298
- };
299
- /**
300
- * @description Borrow base from a margin manager
301
- * @param {string} managerKey The key to identify the manager
302
- * @param {number} amount The amount to borrow
303
- * @returns A function that takes a Transaction object
304
- */
305
- this.borrowBase = (managerKey, amount) => (tx) => {
306
- const manager = __privateGet(this, _config).getMarginManager(managerKey);
307
- const pool = __privateGet(this, _config).getPool(manager.poolKey);
308
- const baseCoin = __privateGet(this, _config).getCoin(pool.baseCoin);
309
- const quoteCoin = __privateGet(this, _config).getCoin(pool.quoteCoin);
310
- const baseMarginPool = __privateGet(this, _config).getMarginPool(pool.baseCoin);
311
- return tx.moveCall({
312
- target: `${__privateGet(this, _config).MARGIN_PACKAGE_ID}::margin_manager::borrow_base`,
313
- arguments: [
314
- tx.object(manager.address),
315
- tx.object(__privateGet(this, _config).MARGIN_REGISTRY_ID),
316
- tx.object(baseMarginPool.address),
317
- tx.object(baseCoin.priceInfoObjectId),
318
- tx.object(quoteCoin.priceInfoObjectId),
319
- tx.object(pool.address),
320
- tx.pure.u64(Math.round(amount * baseCoin.scalar)),
321
- tx.object.clock()
322
- ],
323
- typeArguments: [baseCoin.type, quoteCoin.type]
324
- });
325
- };
326
- /**
327
- * @description Borrow quote from a margin manager
328
- * @param {string} managerKey The key to identify the manager
329
- * @param {number} amount The amount to borrow
330
- * @returns A function that takes a Transaction object
331
- */
332
- this.borrowQuote = (managerKey, amount) => (tx) => {
333
- const manager = __privateGet(this, _config).getMarginManager(managerKey);
334
- const pool = __privateGet(this, _config).getPool(manager.poolKey);
335
- const baseCoin = __privateGet(this, _config).getCoin(pool.baseCoin);
336
- const quoteCoin = __privateGet(this, _config).getCoin(pool.quoteCoin);
337
- const quoteMarginPool = __privateGet(this, _config).getMarginPool(pool.quoteCoin);
338
- return tx.moveCall({
339
- target: `${__privateGet(this, _config).MARGIN_PACKAGE_ID}::margin_manager::borrow_quote`,
340
- arguments: [
341
- tx.object(manager.address),
342
- tx.object(__privateGet(this, _config).MARGIN_REGISTRY_ID),
343
- tx.object(quoteMarginPool.address),
344
- tx.object(baseCoin.priceInfoObjectId),
345
- tx.object(quoteCoin.priceInfoObjectId),
346
- tx.object(pool.address),
347
- tx.pure.u64(Math.round(amount * quoteCoin.scalar)),
348
- tx.object.clock()
349
- ],
350
- typeArguments: [baseCoin.type, quoteCoin.type]
351
- });
352
- };
353
- /**
354
- * @description Repay base from a margin manager
355
- * @param {string} managerKey The key to identify the manager
356
- * @param {number} amount The amount to repay
357
- * @returns A function that takes a Transaction object
358
- */
359
- this.repayBase = (managerKey, amount) => (tx) => {
360
- const manager = __privateGet(this, _config).getMarginManager(managerKey);
361
- const pool = __privateGet(this, _config).getPool(manager.poolKey);
362
- const baseCoin = __privateGet(this, _config).getCoin(pool.baseCoin);
363
- const quoteCoin = __privateGet(this, _config).getCoin(pool.quoteCoin);
364
- const baseMarginPool = __privateGet(this, _config).getMarginPool(pool.baseCoin);
365
- return tx.moveCall({
366
- target: `${__privateGet(this, _config).MARGIN_PACKAGE_ID}::margin_manager::repay_base`,
367
- arguments: [
368
- tx.object(manager.address),
369
- tx.object(__privateGet(this, _config).MARGIN_REGISTRY_ID),
370
- tx.object(baseMarginPool.address),
371
- tx.object.option({
372
- type: "u64",
373
- value: amount ? tx.pure.u64(Math.round(amount * baseCoin.scalar)) : null
374
- }),
375
- tx.object.clock()
376
- ],
377
- typeArguments: [baseCoin.type, quoteCoin.type]
378
- });
379
- };
380
- /**
381
- * @description Repay quote from a margin manager
382
- * @param {string} managerKey The key to identify the manager
383
- * @param {number} amount The amount to repay
384
- * @returns A function that takes a Transaction object
385
- */
386
- this.repayQuote = (managerKey, amount) => (tx) => {
387
- const manager = __privateGet(this, _config).getMarginManager(managerKey);
388
- const pool = __privateGet(this, _config).getPool(manager.poolKey);
389
- const baseCoin = __privateGet(this, _config).getCoin(pool.baseCoin);
390
- const quoteCoin = __privateGet(this, _config).getCoin(pool.quoteCoin);
391
- const quoteMarginPool = __privateGet(this, _config).getMarginPool(pool.quoteCoin);
392
- return tx.moveCall({
393
- target: `${__privateGet(this, _config).MARGIN_PACKAGE_ID}::margin_manager::repay_quote`,
394
- arguments: [
395
- tx.object(manager.address),
396
- tx.object(__privateGet(this, _config).MARGIN_REGISTRY_ID),
397
- tx.object(quoteMarginPool.address),
398
- tx.object.option({
399
- type: "u64",
400
- value: amount ? tx.pure.u64(Math.round(amount * quoteCoin.scalar)) : null
401
- }),
402
- tx.object.clock()
403
- ],
404
- typeArguments: [baseCoin.type, quoteCoin.type]
405
- });
406
- };
407
- /**
408
- * @description Liquidate a margin manager
409
- * @param {string} managerAddress The address of the manager to liquidate
410
- * @param {string} poolKey The key to identify the pool
411
- * @param {boolean} debtIsBase Whether the debt is in base
412
- * @param {TransactionArgument} repayCoin The coin to repay
413
- * @returns A function that takes a Transaction object
414
- */
415
- this.liquidate = (managerAddress, poolKey, debtIsBase, repayCoin) => (tx) => {
416
- const pool = __privateGet(this, _config).getPool(poolKey);
417
- const baseCoin = __privateGet(this, _config).getCoin(pool.baseCoin);
418
- const quoteCoin = __privateGet(this, _config).getCoin(pool.quoteCoin);
419
- const baseMarginPool = __privateGet(this, _config).getMarginPool(pool.baseCoin);
420
- const quoteMarginPool = __privateGet(this, _config).getMarginPool(pool.quoteCoin);
421
- const marginPool = debtIsBase ? baseMarginPool : quoteMarginPool;
422
- return tx.moveCall({
423
- target: `${__privateGet(this, _config).MARGIN_PACKAGE_ID}::margin_manager::liquidate`,
424
- arguments: [
425
- tx.object(managerAddress),
426
- tx.object(__privateGet(this, _config).MARGIN_REGISTRY_ID),
427
- tx.object(baseCoin.priceInfoObjectId),
428
- tx.object(quoteCoin.priceInfoObjectId),
429
- tx.object(marginPool.address),
430
- tx.object(pool.address),
431
- repayCoin,
432
- tx.object.clock()
433
- ],
434
- typeArguments: [baseCoin.type, quoteCoin.type]
435
- });
436
- };
437
- /**
438
- * @description Set the referral for a margin manager (DeepBookPoolReferral)
439
- * @param {string} managerKey The key to identify the margin manager
440
- * @param {string} referral The referral (DeepBookPoolReferral) to set
441
- * @returns A function that takes a Transaction object
442
- */
443
- this.setMarginManagerReferral = (managerKey, referral) => (tx) => {
444
- const manager = __privateGet(this, _config).getMarginManager(managerKey);
445
- const pool = __privateGet(this, _config).getPool(manager.poolKey);
446
- const baseCoin = __privateGet(this, _config).getCoin(pool.baseCoin);
447
- const quoteCoin = __privateGet(this, _config).getCoin(pool.quoteCoin);
448
- tx.moveCall({
449
- target: `${__privateGet(this, _config).MARGIN_PACKAGE_ID}::margin_manager::set_margin_manager_referral`,
450
- arguments: [tx.object(manager.address), tx.object(referral)],
451
- typeArguments: [baseCoin.type, quoteCoin.type]
452
- });
453
- };
454
- /**
455
- * @description Unset the referral for a margin manager
456
- * @param {string} managerKey The key to identify the margin manager
457
- * @param {string} poolKey The key of the pool to unset the referral for
458
- * @returns A function that takes a Transaction object
459
- */
460
- this.unsetMarginManagerReferral = (managerKey, poolKey) => (tx) => {
461
- const manager = __privateGet(this, _config).getMarginManager(managerKey);
462
- const pool = __privateGet(this, _config).getPool(poolKey);
463
- const baseCoin = __privateGet(this, _config).getCoin(pool.baseCoin);
464
- const quoteCoin = __privateGet(this, _config).getCoin(pool.quoteCoin);
465
- tx.moveCall({
466
- target: `${__privateGet(this, _config).MARGIN_PACKAGE_ID}::margin_manager::unset_margin_manager_referral`,
467
- arguments: [tx.object(manager.address), tx.pure.id(pool.address)],
468
- typeArguments: [baseCoin.type, quoteCoin.type]
469
- });
470
- };
471
- // === Read-Only Functions ===
472
- /**
473
- * @description Get the owner address of a margin manager
474
- * @param {string} poolKey The key to identify the pool
475
- * @param {string} marginManagerId The ID of the margin manager
476
- * @returns A function that takes a Transaction object
477
- */
478
- this.ownerByPoolKey = (poolKey, marginManagerId) => (tx) => {
479
- const pool = __privateGet(this, _config).getPool(poolKey);
480
- const baseCoin = __privateGet(this, _config).getCoin(pool.baseCoin);
481
- const quoteCoin = __privateGet(this, _config).getCoin(pool.quoteCoin);
482
- return tx.moveCall({
483
- target: `${__privateGet(this, _config).MARGIN_PACKAGE_ID}::margin_manager::owner`,
484
- arguments: [tx.object(marginManagerId)],
485
- typeArguments: [baseCoin.type, quoteCoin.type]
486
- });
487
- };
488
- /**
489
- * @description Get the DeepBook pool ID associated with a margin manager
490
- * @param {string} poolKey The key to identify the pool
491
- * @param {string} marginManagerId The ID of the margin manager
492
- * @returns A function that takes a Transaction object
493
- */
494
- this.deepbookPool = (poolKey, marginManagerId) => (tx) => {
495
- const pool = __privateGet(this, _config).getPool(poolKey);
496
- const baseCoin = __privateGet(this, _config).getCoin(pool.baseCoin);
497
- const quoteCoin = __privateGet(this, _config).getCoin(pool.quoteCoin);
498
- return tx.moveCall({
499
- target: `${__privateGet(this, _config).MARGIN_PACKAGE_ID}::margin_manager::deepbook_pool`,
500
- arguments: [tx.object(marginManagerId)],
501
- typeArguments: [baseCoin.type, quoteCoin.type]
502
- });
503
- };
504
- /**
505
- * @description Get the margin pool ID (if any) associated with a margin manager
506
- * @param {string} poolKey The key to identify the pool
507
- * @param {string} marginManagerId The ID of the margin manager
508
- * @returns A function that takes a Transaction object
509
- */
510
- this.marginPoolId = (poolKey, marginManagerId) => (tx) => {
511
- const pool = __privateGet(this, _config).getPool(poolKey);
512
- const baseCoin = __privateGet(this, _config).getCoin(pool.baseCoin);
513
- const quoteCoin = __privateGet(this, _config).getCoin(pool.quoteCoin);
514
- return tx.moveCall({
515
- target: `${__privateGet(this, _config).MARGIN_PACKAGE_ID}::margin_manager::margin_pool_id`,
516
- arguments: [tx.object(marginManagerId)],
517
- typeArguments: [baseCoin.type, quoteCoin.type]
518
- });
519
- };
520
- /**
521
- * @description Get borrowed shares for both base and quote assets
522
- * @param {string} poolKey The key to identify the pool
523
- * @param {string} marginManagerId The ID of the margin manager
524
- * @returns A function that takes a Transaction object
525
- */
526
- this.borrowedShares = (poolKey, marginManagerId) => (tx) => {
527
- const pool = __privateGet(this, _config).getPool(poolKey);
528
- const baseCoin = __privateGet(this, _config).getCoin(pool.baseCoin);
529
- const quoteCoin = __privateGet(this, _config).getCoin(pool.quoteCoin);
530
- return tx.moveCall({
531
- target: `${__privateGet(this, _config).MARGIN_PACKAGE_ID}::margin_manager::borrowed_shares`,
532
- arguments: [tx.object(marginManagerId)],
533
- typeArguments: [baseCoin.type, quoteCoin.type]
534
- });
535
- };
536
- /**
537
- * @description Get borrowed base shares
538
- * @param {string} poolKey The key to identify the pool
539
- * @param {string} marginManagerId The ID of the margin manager
540
- * @returns A function that takes a Transaction object
541
- */
542
- this.borrowedBaseShares = (poolKey, marginManagerId) => (tx) => {
543
- const pool = __privateGet(this, _config).getPool(poolKey);
544
- const baseCoin = __privateGet(this, _config).getCoin(pool.baseCoin);
545
- const quoteCoin = __privateGet(this, _config).getCoin(pool.quoteCoin);
546
- return tx.moveCall({
547
- target: `${__privateGet(this, _config).MARGIN_PACKAGE_ID}::margin_manager::borrowed_base_shares`,
548
- arguments: [tx.object(marginManagerId)],
549
- typeArguments: [baseCoin.type, quoteCoin.type]
550
- });
551
- };
552
- /**
553
- * @description Get borrowed quote shares
554
- * @param {string} poolKey The key to identify the pool
555
- * @param {string} marginManagerId The ID of the margin manager
556
- * @returns A function that takes a Transaction object
557
- */
558
- this.borrowedQuoteShares = (poolKey, marginManagerId) => (tx) => {
559
- const pool = __privateGet(this, _config).getPool(poolKey);
560
- const baseCoin = __privateGet(this, _config).getCoin(pool.baseCoin);
561
- const quoteCoin = __privateGet(this, _config).getCoin(pool.quoteCoin);
562
- return tx.moveCall({
563
- target: `${__privateGet(this, _config).MARGIN_PACKAGE_ID}::margin_manager::borrowed_quote_shares`,
564
- arguments: [tx.object(marginManagerId)],
565
- typeArguments: [baseCoin.type, quoteCoin.type]
566
- });
567
- };
568
- /**
569
- * @description Check if margin manager has base asset debt
570
- * @param {string} poolKey The key to identify the pool
571
- * @param {string} marginManagerId The ID of the margin manager
572
- * @returns A function that takes a Transaction object
573
- */
574
- this.hasBaseDebt = (poolKey, marginManagerId) => (tx) => {
575
- const pool = __privateGet(this, _config).getPool(poolKey);
576
- const baseCoin = __privateGet(this, _config).getCoin(pool.baseCoin);
577
- const quoteCoin = __privateGet(this, _config).getCoin(pool.quoteCoin);
578
- return tx.moveCall({
579
- target: `${__privateGet(this, _config).MARGIN_PACKAGE_ID}::margin_manager::has_base_debt`,
580
- arguments: [tx.object(marginManagerId)],
581
- typeArguments: [baseCoin.type, quoteCoin.type]
582
- });
583
- };
584
- /**
585
- * @description Get the balance manager ID for a margin manager
586
- * @param {string} poolKey The key to identify the pool
587
- * @param {string} marginManagerId The ID of the margin manager
588
- * @returns A function that takes a Transaction object
589
- */
590
- this.balanceManager = (poolKey, marginManagerId) => (tx) => {
591
- const pool = __privateGet(this, _config).getPool(poolKey);
592
- const baseCoin = __privateGet(this, _config).getCoin(pool.baseCoin);
593
- const quoteCoin = __privateGet(this, _config).getCoin(pool.quoteCoin);
594
- return tx.moveCall({
595
- target: `${__privateGet(this, _config).MARGIN_PACKAGE_ID}::margin_manager::balance_manager`,
596
- arguments: [tx.object(marginManagerId)],
597
- typeArguments: [baseCoin.type, quoteCoin.type]
598
- });
599
- };
600
- /**
601
- * @description Calculate assets (base and quote) for a margin manager
602
- * @param {string} poolKey The key to identify the pool
603
- * @param {string} marginManagerId The ID of the margin manager
604
- * @returns A function that takes a Transaction object
605
- */
606
- this.calculateAssets = (poolKey, marginManagerId) => (tx) => {
607
- const pool = __privateGet(this, _config).getPool(poolKey);
608
- const baseCoin = __privateGet(this, _config).getCoin(pool.baseCoin);
609
- const quoteCoin = __privateGet(this, _config).getCoin(pool.quoteCoin);
610
- return tx.moveCall({
611
- target: `${__privateGet(this, _config).MARGIN_PACKAGE_ID}::margin_manager::calculate_assets`,
612
- arguments: [tx.object(marginManagerId), tx.object(pool.address)],
613
- typeArguments: [baseCoin.type, quoteCoin.type]
614
- });
615
- };
616
- /**
617
- * @description Calculate debts (base and quote) for a margin manager
618
- * @param {string} poolKey The key to identify the pool
619
- * @param {string} coinKey The key to identify the debt coin (base or quote)
620
- * @param {string} marginManagerId The ID of the margin manager
621
- * @returns A function that takes a Transaction object
622
- */
623
- this.calculateDebts = (poolKey, coinKey, marginManagerId) => (tx) => {
624
- const pool = __privateGet(this, _config).getPool(poolKey);
625
- const baseCoin = __privateGet(this, _config).getCoin(pool.baseCoin);
626
- const quoteCoin = __privateGet(this, _config).getCoin(pool.quoteCoin);
627
- const debtCoin = __privateGet(this, _config).getCoin(coinKey);
628
- const marginPool = __privateGet(this, _config).getMarginPool(coinKey);
629
- return tx.moveCall({
630
- target: `${__privateGet(this, _config).MARGIN_PACKAGE_ID}::margin_manager::calculate_debts`,
631
- arguments: [tx.object(marginManagerId), tx.object(marginPool.address), tx.object.clock()],
632
- typeArguments: [baseCoin.type, quoteCoin.type, debtCoin.type]
633
- });
634
- };
635
- /**
636
- * @description Get comprehensive state information for a margin manager
637
- * @param {string} poolKey The key to identify the pool
638
- * @param {string} marginManagerId The ID of the margin manager
639
- * @returns A function that takes a Transaction object
640
- * @returns Returns (manager_id, deepbook_pool_id, risk_ratio, base_asset, quote_asset,
641
- * base_debt, quote_debt, base_pyth_price, base_pyth_decimals,
642
- * quote_pyth_price, quote_pyth_decimals)
643
- */
644
- this.managerState = (poolKey, marginManagerId) => (tx) => {
645
- const pool = __privateGet(this, _config).getPool(poolKey);
646
- const baseCoin = __privateGet(this, _config).getCoin(pool.baseCoin);
647
- const quoteCoin = __privateGet(this, _config).getCoin(pool.quoteCoin);
648
- const baseMarginPool = __privateGet(this, _config).getMarginPool(pool.baseCoin);
649
- const quoteMarginPool = __privateGet(this, _config).getMarginPool(pool.quoteCoin);
650
- return tx.moveCall({
651
- target: `${__privateGet(this, _config).MARGIN_PACKAGE_ID}::margin_manager::manager_state`,
652
- arguments: [
653
- tx.object(marginManagerId),
654
- tx.object(__privateGet(this, _config).MARGIN_REGISTRY_ID),
655
- tx.object(baseCoin.priceInfoObjectId),
656
- tx.object(quoteCoin.priceInfoObjectId),
657
- tx.object(pool.address),
658
- tx.object(baseMarginPool.address),
659
- tx.object(quoteMarginPool.address),
660
- tx.object.clock()
661
- ],
662
- typeArguments: [baseCoin.type, quoteCoin.type]
663
- });
664
- };
665
- /**
666
- * @description Get the base asset balance of a margin manager
667
- * @param {string} poolKey The key to identify the pool
668
- * @param {string} marginManagerId The ID of the margin manager
669
- * @returns A function that takes a Transaction object
670
- */
671
- this.baseBalance = (poolKey, marginManagerId) => (tx) => {
672
- const pool = __privateGet(this, _config).getPool(poolKey);
673
- const baseCoin = __privateGet(this, _config).getCoin(pool.baseCoin);
674
- const quoteCoin = __privateGet(this, _config).getCoin(pool.quoteCoin);
675
- return tx.moveCall({
676
- target: `${__privateGet(this, _config).MARGIN_PACKAGE_ID}::margin_manager::base_balance`,
677
- arguments: [tx.object(marginManagerId)],
678
- typeArguments: [baseCoin.type, quoteCoin.type]
679
- });
680
- };
681
- /**
682
- * @description Get the quote asset balance of a margin manager
683
- * @param {string} poolKey The key to identify the pool
684
- * @param {string} marginManagerId The ID of the margin manager
685
- * @returns A function that takes a Transaction object
686
- */
687
- this.quoteBalance = (poolKey, marginManagerId) => (tx) => {
688
- const pool = __privateGet(this, _config).getPool(poolKey);
689
- const baseCoin = __privateGet(this, _config).getCoin(pool.baseCoin);
690
- const quoteCoin = __privateGet(this, _config).getCoin(pool.quoteCoin);
691
- return tx.moveCall({
692
- target: `${__privateGet(this, _config).MARGIN_PACKAGE_ID}::margin_manager::quote_balance`,
693
- arguments: [tx.object(marginManagerId)],
694
- typeArguments: [baseCoin.type, quoteCoin.type]
695
- });
696
- };
697
- /**
698
- * @description Get the DEEP token balance of a margin manager
699
- * @param {string} poolKey The key to identify the pool
700
- * @param {string} marginManagerId The ID of the margin manager
701
- * @returns A function that takes a Transaction object
702
- */
703
- this.deepBalance = (poolKey, marginManagerId) => (tx) => {
704
- const pool = __privateGet(this, _config).getPool(poolKey);
705
- const baseCoin = __privateGet(this, _config).getCoin(pool.baseCoin);
706
- const quoteCoin = __privateGet(this, _config).getCoin(pool.quoteCoin);
707
- return tx.moveCall({
708
- target: `${__privateGet(this, _config).MARGIN_PACKAGE_ID}::margin_manager::deep_balance`,
709
- arguments: [tx.object(marginManagerId)],
710
- typeArguments: [baseCoin.type, quoteCoin.type]
711
- });
712
- };
713
- /**
714
- * @description Get account order details for a margin manager.
715
- * This retrieves the balance manager from the margin manager and calls get_account_order_details.
716
- * @param {string} poolKey The key to identify the pool
717
- * @param {string} marginManagerId The ID of the margin manager
718
- * @returns A function that takes a Transaction object
719
- */
720
- this.getMarginAccountOrderDetails = (poolKey, marginManagerId) => (tx) => {
721
- const pool = __privateGet(this, _config).getPool(poolKey);
722
- const baseCoin = __privateGet(this, _config).getCoin(pool.baseCoin);
723
- const quoteCoin = __privateGet(this, _config).getCoin(pool.quoteCoin);
724
- const balanceManager = tx.moveCall({
725
- target: `${__privateGet(this, _config).MARGIN_PACKAGE_ID}::margin_manager::balance_manager`,
726
- arguments: [tx.object(marginManagerId)],
727
- typeArguments: [baseCoin.type, quoteCoin.type]
728
- });
729
- return tx.moveCall({
730
- target: `${__privateGet(this, _config).DEEPBOOK_PACKAGE_ID}::pool::get_account_order_details`,
731
- arguments: [tx.object(pool.address), balanceManager],
732
- typeArguments: [baseCoin.type, quoteCoin.type]
733
- });
734
- };
735
- __privateSet(this, _config, config);
736
- }
737
- }
738
- _config = new WeakMap();
739
- //# sourceMappingURL=marginManager.js.map