@haneullabs/deepbook-v3 0.1.0 → 1.2.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (612) hide show
  1. package/CHANGELOG.md +342 -81
  2. package/dist/client.d.mts +238 -0
  3. package/dist/client.d.mts.map +1 -0
  4. package/dist/client.mjs +397 -0
  5. package/dist/client.mjs.map +1 -0
  6. package/dist/contracts/deepbook/account.d.mts +37 -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 +12 -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 +12 -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/haneul/vec_set.d.mts +21 -0
  19. package/dist/contracts/deepbook/deps/haneul/vec_set.d.mts.map +1 -0
  20. package/dist/contracts/deepbook/deps/haneul/vec_set.mjs +26 -0
  21. package/dist/contracts/deepbook/deps/haneul/vec_set.mjs.map +1 -0
  22. package/dist/contracts/deepbook/order.d.mts +23 -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/contracts/wormhole/bytes32.mjs +16 -0
  57. package/dist/contracts/wormhole/bytes32.mjs.map +1 -0
  58. package/dist/contracts/wormhole/consumed_vaas.mjs +16 -0
  59. package/dist/contracts/wormhole/consumed_vaas.mjs.map +1 -0
  60. package/dist/contracts/wormhole/deps/0x0000000000000000000000000000000000000000000000000000000000000002/balance.mjs +16 -0
  61. package/dist/contracts/wormhole/deps/0x0000000000000000000000000000000000000000000000000000000000000002/balance.mjs.map +1 -0
  62. package/dist/contracts/wormhole/deps/0x0000000000000000000000000000000000000000000000000000000000000002/package.mjs +21 -0
  63. package/dist/contracts/wormhole/deps/0x0000000000000000000000000000000000000000000000000000000000000002/package.mjs.map +1 -0
  64. package/dist/contracts/wormhole/deps/0x0000000000000000000000000000000000000000000000000000000000000002/table.mjs +19 -0
  65. package/dist/contracts/wormhole/deps/0x0000000000000000000000000000000000000000000000000000000000000002/table.mjs.map +1 -0
  66. package/dist/contracts/wormhole/external_address.mjs +16 -0
  67. package/dist/contracts/wormhole/external_address.mjs.map +1 -0
  68. package/dist/contracts/wormhole/fee_collector.mjs +20 -0
  69. package/dist/contracts/wormhole/fee_collector.mjs.map +1 -0
  70. package/dist/contracts/wormhole/set.mjs +16 -0
  71. package/dist/contracts/wormhole/set.mjs.map +1 -0
  72. package/dist/contracts/wormhole/state.mjs +31 -0
  73. package/dist/contracts/wormhole/state.mjs.map +1 -0
  74. package/dist/index.d.mts +25 -0
  75. package/dist/index.mjs +26 -0
  76. package/dist/pyth/PriceServiceConnection.d.mts +26 -0
  77. package/dist/pyth/PriceServiceConnection.d.mts.map +1 -0
  78. package/dist/pyth/PriceServiceConnection.mjs +35 -0
  79. package/dist/pyth/PriceServiceConnection.mjs.map +1 -0
  80. package/dist/pyth/pyth-helpers.mjs +18 -0
  81. package/dist/pyth/pyth-helpers.mjs.map +1 -0
  82. package/dist/pyth/pyth.d.mts +69 -0
  83. package/dist/pyth/pyth.d.mts.map +1 -0
  84. package/dist/pyth/pyth.mjs +220 -0
  85. package/dist/pyth/pyth.mjs.map +1 -0
  86. package/dist/queries/accountQueries.mjs +104 -0
  87. package/dist/queries/accountQueries.mjs.map +1 -0
  88. package/dist/queries/balanceManagerQueries.mjs +113 -0
  89. package/dist/queries/balanceManagerQueries.mjs.map +1 -0
  90. package/dist/queries/context.mjs +15 -0
  91. package/dist/queries/context.mjs.map +1 -0
  92. package/dist/queries/marginManagerQueries.mjs +365 -0
  93. package/dist/queries/marginManagerQueries.mjs.map +1 -0
  94. package/dist/queries/marginPoolQueries.mjs +184 -0
  95. package/dist/queries/marginPoolQueries.mjs.map +1 -0
  96. package/dist/queries/orderQueries.mjs +165 -0
  97. package/dist/queries/orderQueries.mjs.map +1 -0
  98. package/dist/queries/poolQueries.mjs +234 -0
  99. package/dist/queries/poolQueries.mjs.map +1 -0
  100. package/dist/queries/priceFeedQueries.mjs +83 -0
  101. package/dist/queries/priceFeedQueries.mjs.map +1 -0
  102. package/dist/queries/quantityQueries.mjs +216 -0
  103. package/dist/queries/quantityQueries.mjs.map +1 -0
  104. package/dist/queries/referralQueries.mjs +96 -0
  105. package/dist/queries/referralQueries.mjs.map +1 -0
  106. package/dist/queries/registryQueries.mjs +162 -0
  107. package/dist/queries/registryQueries.mjs.map +1 -0
  108. package/dist/queries/tpslQueries.mjs +62 -0
  109. package/dist/queries/tpslQueries.mjs.map +1 -0
  110. package/dist/transactions/balanceManager.d.mts +174 -0
  111. package/dist/transactions/balanceManager.d.mts.map +1 -0
  112. package/dist/transactions/balanceManager.mjs +234 -0
  113. package/dist/transactions/balanceManager.mjs.map +1 -0
  114. package/dist/transactions/deepbook.d.mts +490 -0
  115. package/dist/transactions/deepbook.d.mts.map +1 -0
  116. package/dist/transactions/deepbook.mjs +979 -0
  117. package/dist/transactions/deepbook.mjs.map +1 -0
  118. package/dist/transactions/deepbookAdmin.d.mts +111 -0
  119. package/dist/transactions/deepbookAdmin.d.mts.map +1 -0
  120. package/dist/transactions/deepbookAdmin.mjs +222 -0
  121. package/dist/transactions/deepbookAdmin.mjs.map +1 -0
  122. package/dist/transactions/flashLoans.d.mts +61 -0
  123. package/dist/transactions/flashLoans.d.mts.map +1 -0
  124. package/dist/transactions/flashLoans.mjs +77 -0
  125. package/dist/transactions/flashLoans.mjs.map +1 -0
  126. package/dist/transactions/governance.d.mts +47 -0
  127. package/dist/transactions/governance.d.mts.map +1 -0
  128. package/dist/transactions/governance.mjs +91 -0
  129. package/dist/transactions/governance.mjs.map +1 -0
  130. package/dist/transactions/marginAdmin.d.mts +138 -0
  131. package/dist/transactions/marginAdmin.d.mts.map +1 -0
  132. package/dist/transactions/marginAdmin.mjs +250 -0
  133. package/dist/transactions/marginAdmin.mjs.map +1 -0
  134. package/dist/transactions/marginLiquidations.d.mts +67 -0
  135. package/dist/transactions/marginLiquidations.d.mts.map +1 -0
  136. package/dist/transactions/marginLiquidations.mjs +110 -0
  137. package/dist/transactions/marginLiquidations.mjs.map +1 -0
  138. package/dist/transactions/marginMaintainer.d.mts +86 -0
  139. package/dist/transactions/marginMaintainer.d.mts.map +1 -0
  140. package/dist/transactions/marginMaintainer.mjs +161 -0
  141. package/dist/transactions/marginMaintainer.mjs.map +1 -0
  142. package/dist/transactions/marginManager.d.mts +247 -0
  143. package/dist/transactions/marginManager.d.mts.map +1 -0
  144. package/dist/transactions/marginManager.mjs +548 -0
  145. package/dist/transactions/marginManager.mjs.map +1 -0
  146. package/dist/transactions/marginPool.d.mts +140 -0
  147. package/dist/transactions/marginPool.d.mts.map +1 -0
  148. package/dist/transactions/marginPool.mjs +207 -0
  149. package/dist/transactions/marginPool.mjs.map +1 -0
  150. package/dist/transactions/marginRegistry.d.mts +100 -0
  151. package/dist/transactions/marginRegistry.d.mts.map +1 -0
  152. package/dist/transactions/marginRegistry.mjs +128 -0
  153. package/dist/transactions/marginRegistry.mjs.map +1 -0
  154. package/dist/transactions/marginTPSL.d.mts +100 -0
  155. package/dist/transactions/marginTPSL.d.mts.map +1 -0
  156. package/dist/transactions/marginTPSL.mjs +173 -0
  157. package/dist/transactions/marginTPSL.mjs.map +1 -0
  158. package/dist/transactions/poolProxy.d.mts +123 -0
  159. package/dist/transactions/poolProxy.d.mts.map +1 -0
  160. package/dist/transactions/poolProxy.mjs +336 -0
  161. package/dist/transactions/poolProxy.mjs.map +1 -0
  162. package/dist/types/bcs.d.mts +5 -0
  163. package/dist/types/bcs.mjs +7 -0
  164. package/dist/types/index.d.mts +374 -0
  165. package/dist/types/index.d.mts.map +1 -0
  166. package/dist/types/index.mjs +18 -0
  167. package/dist/types/index.mjs.map +1 -0
  168. package/dist/utils/config.d.mts +90 -0
  169. package/dist/utils/config.d.mts.map +1 -0
  170. package/dist/utils/config.mjs +104 -0
  171. package/dist/utils/config.mjs.map +1 -0
  172. package/dist/utils/constants.d.mts +93 -0
  173. package/dist/utils/constants.d.mts.map +1 -0
  174. package/dist/utils/constants.mjs +408 -0
  175. package/dist/utils/constants.mjs.map +1 -0
  176. package/dist/utils/conversion.mjs +26 -0
  177. package/dist/utils/conversion.mjs.map +1 -0
  178. package/dist/utils/errors.d.mts +46 -0
  179. package/dist/utils/errors.d.mts.map +1 -0
  180. package/dist/utils/errors.mjs +59 -0
  181. package/dist/utils/errors.mjs.map +1 -0
  182. package/dist/{cjs/utils/validation.d.ts → utils/validation.d.mts} +11 -7
  183. package/dist/utils/validation.d.mts.map +1 -0
  184. package/dist/utils/validation.mjs +76 -0
  185. package/dist/utils/validation.mjs.map +1 -0
  186. package/package.json +30 -26
  187. package/src/client.ts +467 -2255
  188. package/src/contracts/deepbook/account.ts +15 -15
  189. package/src/contracts/deepbook/balance_manager.ts +343 -57
  190. package/src/contracts/deepbook/balances.ts +3 -2
  191. package/src/contracts/deepbook/big_vector.ts +6 -7
  192. package/src/contracts/deepbook/book.ts +3 -2
  193. package/src/contracts/deepbook/constants.ts +95 -3
  194. package/src/contracts/deepbook/deep_price.ts +7 -7
  195. package/src/contracts/deepbook/deps/{sui → haneul}/bag.ts +8 -8
  196. package/src/contracts/deepbook/deps/{sui → haneul}/balance.ts +4 -3
  197. package/src/contracts/deepbook/deps/{sui → haneul}/table.ts +6 -6
  198. package/src/contracts/deepbook/deps/{sui → haneul}/vec_map.ts +4 -4
  199. package/src/contracts/deepbook/deps/{sui → haneul}/vec_set.ts +4 -4
  200. package/src/contracts/deepbook/deps/{sui → haneul}/versioned.ts +4 -4
  201. package/src/contracts/deepbook/deps/std/type_name.ts +3 -2
  202. package/src/contracts/deepbook/ewma.ts +14 -3
  203. package/src/contracts/deepbook/fill.ts +21 -21
  204. package/src/contracts/deepbook/governance.ts +4 -3
  205. package/src/contracts/deepbook/history.ts +4 -3
  206. package/src/contracts/deepbook/math.ts +15 -15
  207. package/src/contracts/deepbook/order.ts +16 -16
  208. package/src/contracts/deepbook/order_info.ts +39 -27
  209. package/src/contracts/deepbook/order_query.ts +12 -12
  210. package/src/contracts/deepbook/pool.ts +883 -526
  211. package/src/contracts/deepbook/registry.ts +149 -38
  212. package/src/contracts/deepbook/state.ts +14 -3
  213. package/src/contracts/deepbook/trade_params.ts +3 -2
  214. package/src/contracts/deepbook/vault.ts +5 -4
  215. package/src/contracts/pyth/batch_price_attestation.ts +92 -0
  216. package/src/contracts/pyth/contract_upgrade.ts +54 -0
  217. package/src/contracts/pyth/data_source.ts +64 -0
  218. package/src/contracts/pyth/deps/0x0000000000000000000000000000000000000000000000000000000000000002/package.ts +15 -0
  219. package/src/contracts/pyth/deps/0x0000000000000000000000000000000000000000000000000000000000000002/table.ts +13 -0
  220. package/src/contracts/pyth/deps/0xf47329f4344f3bf0f8e436e2f7b485466cff300f12a166563995d3888c296a94/bytes32.ts +12 -0
  221. package/src/contracts/pyth/deps/0xf47329f4344f3bf0f8e436e2f7b485466cff300f12a166563995d3888c296a94/consumed_vaas.ts +13 -0
  222. package/src/contracts/pyth/deps/0xf47329f4344f3bf0f8e436e2f7b485466cff300f12a166563995d3888c296a94/external_address.ts +13 -0
  223. package/src/contracts/pyth/deps/0xf47329f4344f3bf0f8e436e2f7b485466cff300f12a166563995d3888c296a94/set.ts +12 -0
  224. package/src/contracts/pyth/deserialize.ts +117 -0
  225. package/src/contracts/pyth/event.ts +20 -0
  226. package/src/contracts/pyth/governance.ts +113 -0
  227. package/src/contracts/pyth/governance_action.ts +130 -0
  228. package/src/contracts/pyth/governance_instruction.ts +98 -0
  229. package/src/contracts/pyth/hot_potato_vector.ts +70 -0
  230. package/src/contracts/pyth/i64.ts +94 -0
  231. package/src/contracts/pyth/merkle_tree.ts +41 -0
  232. package/src/contracts/pyth/migrate.ts +29 -0
  233. package/src/contracts/pyth/price.ts +102 -0
  234. package/src/contracts/pyth/price_feed.ts +101 -0
  235. package/src/contracts/pyth/price_identifier.ts +46 -0
  236. package/src/contracts/pyth/price_info.ts +220 -0
  237. package/src/contracts/pyth/price_status.ts +74 -0
  238. package/src/contracts/pyth/pyth.ts +236 -0
  239. package/src/contracts/pyth/set.ts +93 -0
  240. package/src/contracts/pyth/set_data_sources.ts +14 -0
  241. package/src/contracts/pyth/set_fee_recipient.ts +13 -0
  242. package/src/contracts/pyth/set_governance_data_source.ts +16 -0
  243. package/src/contracts/pyth/set_stale_price_threshold.ts +13 -0
  244. package/src/contracts/pyth/set_update_fee.ts +14 -0
  245. package/src/contracts/pyth/setup.ts +12 -0
  246. package/src/contracts/pyth/state.ts +227 -0
  247. package/src/contracts/pyth/version_control.ts +25 -0
  248. package/src/contracts/utils/index.ts +100 -50
  249. package/src/contracts/wormhole/bytes32.ts +12 -0
  250. package/src/contracts/wormhole/consumed_vaas.ts +13 -0
  251. package/src/contracts/wormhole/deps/0x0000000000000000000000000000000000000000000000000000000000000002/balance.ts +12 -0
  252. package/src/contracts/wormhole/deps/0x0000000000000000000000000000000000000000000000000000000000000002/package.ts +15 -0
  253. package/src/contracts/wormhole/deps/0x0000000000000000000000000000000000000000000000000000000000000002/table.ts +13 -0
  254. package/src/contracts/wormhole/external_address.ts +13 -0
  255. package/src/contracts/wormhole/fee_collector.ts +15 -0
  256. package/src/contracts/wormhole/set.ts +12 -0
  257. package/src/contracts/wormhole/state.ts +25 -0
  258. package/src/index.ts +44 -3
  259. package/src/pyth/pyth.ts +51 -50
  260. package/src/queries/accountQueries.ts +117 -0
  261. package/src/queries/balanceManagerQueries.ts +156 -0
  262. package/src/queries/context.ts +44 -0
  263. package/src/queries/index.ts +16 -0
  264. package/src/queries/marginManagerQueries.ts +575 -0
  265. package/src/queries/marginPoolQueries.ts +226 -0
  266. package/src/queries/orderQueries.ts +202 -0
  267. package/src/queries/poolQueries.ts +266 -0
  268. package/src/queries/priceFeedQueries.ts +141 -0
  269. package/src/queries/quantityQueries.ts +266 -0
  270. package/src/queries/referralQueries.ts +112 -0
  271. package/src/queries/registryQueries.ts +185 -0
  272. package/src/queries/tpslQueries.ts +88 -0
  273. package/src/transactions/balanceManager.ts +5 -4
  274. package/src/transactions/deepbook.ts +117 -84
  275. package/src/transactions/deepbookAdmin.ts +10 -9
  276. package/src/transactions/flashLoans.ts +5 -4
  277. package/src/transactions/governance.ts +5 -4
  278. package/src/transactions/marginAdmin.ts +12 -8
  279. package/src/transactions/marginLiquidations.ts +5 -4
  280. package/src/transactions/marginMaintainer.ts +28 -16
  281. package/src/transactions/marginManager.ts +78 -29
  282. package/src/transactions/marginPool.ts +7 -7
  283. package/src/transactions/marginTPSL.ts +16 -11
  284. package/src/transactions/poolProxy.ts +62 -11
  285. package/src/types/bcs.ts +1 -1
  286. package/src/types/index.ts +217 -53
  287. package/src/utils/config.ts +38 -17
  288. package/src/utils/constants.ts +73 -18
  289. package/src/utils/conversion.ts +33 -0
  290. package/src/utils/validation.ts +1 -1
  291. package/dist/cjs/client.d.ts +0 -861
  292. package/dist/cjs/client.js +0 -1982
  293. package/dist/cjs/client.js.map +0 -7
  294. package/dist/cjs/contracts/deepbook/account.d.ts +0 -105
  295. package/dist/cjs/contracts/deepbook/account.js +0 -163
  296. package/dist/cjs/contracts/deepbook/account.js.map +0 -7
  297. package/dist/cjs/contracts/deepbook/balance_manager.d.ts +0 -268
  298. package/dist/cjs/contracts/deepbook/balance_manager.js +0 -361
  299. package/dist/cjs/contracts/deepbook/balance_manager.js.map +0 -7
  300. package/dist/cjs/contracts/deepbook/balances.d.ts +0 -10
  301. package/dist/cjs/contracts/deepbook/balances.js +0 -35
  302. package/dist/cjs/contracts/deepbook/balances.js.map +0 -7
  303. package/dist/cjs/contracts/deepbook/big_vector.d.ts +0 -62
  304. package/dist/cjs/contracts/deepbook/big_vector.js +0 -80
  305. package/dist/cjs/contracts/deepbook/big_vector.js.map +0 -7
  306. package/dist/cjs/contracts/deepbook/book.d.ts +0 -34
  307. package/dist/cjs/contracts/deepbook/book.js +0 -50
  308. package/dist/cjs/contracts/deepbook/book.js.map +0 -7
  309. package/dist/cjs/contracts/deepbook/constants.d.ts +0 -176
  310. package/dist/cjs/contracts/deepbook/constants.js +0 -338
  311. package/dist/cjs/contracts/deepbook/constants.js.map +0 -7
  312. package/dist/cjs/contracts/deepbook/deep_price.d.ts +0 -60
  313. package/dist/cjs/contracts/deepbook/deep_price.js +0 -87
  314. package/dist/cjs/contracts/deepbook/deep_price.js.map +0 -7
  315. package/dist/cjs/contracts/deepbook/deps/std/type_name.d.ts +0 -14
  316. package/dist/cjs/contracts/deepbook/deps/std/type_name.js +0 -42
  317. package/dist/cjs/contracts/deepbook/deps/std/type_name.js.map +0 -7
  318. package/dist/cjs/contracts/deepbook/deps/sui/bag.d.ts +0 -33
  319. package/dist/cjs/contracts/deepbook/deps/sui/bag.js +0 -47
  320. package/dist/cjs/contracts/deepbook/deps/sui/bag.js.map +0 -7
  321. package/dist/cjs/contracts/deepbook/deps/sui/balance.d.ts +0 -9
  322. package/dist/cjs/contracts/deepbook/deps/sui/balance.js +0 -33
  323. package/dist/cjs/contracts/deepbook/deps/sui/balance.js.map +0 -7
  324. package/dist/cjs/contracts/deepbook/deps/sui/object.d.ts +0 -5
  325. package/dist/cjs/contracts/deepbook/deps/sui/object.js +0 -33
  326. package/dist/cjs/contracts/deepbook/deps/sui/object.js.map +0 -7
  327. package/dist/cjs/contracts/deepbook/deps/sui/table.d.ts +0 -28
  328. package/dist/cjs/contracts/deepbook/deps/sui/table.js +0 -47
  329. package/dist/cjs/contracts/deepbook/deps/sui/table.js.map +0 -7
  330. package/dist/cjs/contracts/deepbook/deps/sui/vec_map.d.ts +0 -27
  331. package/dist/cjs/contracts/deepbook/deps/sui/vec_map.js +0 -45
  332. package/dist/cjs/contracts/deepbook/deps/sui/vec_map.js.map +0 -7
  333. package/dist/cjs/contracts/deepbook/deps/sui/vec_set.d.ts +0 -15
  334. package/dist/cjs/contracts/deepbook/deps/sui/vec_set.js +0 -35
  335. package/dist/cjs/contracts/deepbook/deps/sui/vec_set.js.map +0 -7
  336. package/dist/cjs/contracts/deepbook/deps/sui/versioned.d.ts +0 -7
  337. package/dist/cjs/contracts/deepbook/deps/sui/versioned.js +0 -45
  338. package/dist/cjs/contracts/deepbook/deps/sui/versioned.js.map +0 -7
  339. package/dist/cjs/contracts/deepbook/ewma.d.ts +0 -17
  340. package/dist/cjs/contracts/deepbook/ewma.js +0 -39
  341. package/dist/cjs/contracts/deepbook/ewma.js.map +0 -7
  342. package/dist/cjs/contracts/deepbook/fill.d.ts +0 -153
  343. package/dist/cjs/contracts/deepbook/fill.js +0 -251
  344. package/dist/cjs/contracts/deepbook/fill.js.map +0 -7
  345. package/dist/cjs/contracts/deepbook/governance.d.ts +0 -63
  346. package/dist/cjs/contracts/deepbook/governance.js +0 -79
  347. package/dist/cjs/contracts/deepbook/governance.js.map +0 -7
  348. package/dist/cjs/contracts/deepbook/history.d.ts +0 -60
  349. package/dist/cjs/contracts/deepbook/history.js +0 -78
  350. package/dist/cjs/contracts/deepbook/history.js.map +0 -7
  351. package/dist/cjs/contracts/deepbook/math.d.ts +0 -94
  352. package/dist/cjs/contracts/deepbook/math.js +0 -132
  353. package/dist/cjs/contracts/deepbook/math.js.map +0 -7
  354. package/dist/cjs/contracts/deepbook/order.d.ts +0 -135
  355. package/dist/cjs/contracts/deepbook/order.js +0 -218
  356. package/dist/cjs/contracts/deepbook/order.js.map +0 -7
  357. package/dist/cjs/contracts/deepbook/order_info.d.ts +0 -296
  358. package/dist/cjs/contracts/deepbook/order_info.js +0 -386
  359. package/dist/cjs/contracts/deepbook/order_info.js.map +0 -7
  360. package/dist/cjs/contracts/deepbook/order_query.d.ts +0 -85
  361. package/dist/cjs/contracts/deepbook/order_query.js +0 -96
  362. package/dist/cjs/contracts/deepbook/order_query.js.map +0 -7
  363. package/dist/cjs/contracts/deepbook/pool.d.ts +0 -1218
  364. package/dist/cjs/contracts/deepbook/pool.js +0 -1236
  365. package/dist/cjs/contracts/deepbook/pool.js.map +0 -7
  366. package/dist/cjs/contracts/deepbook/registry.d.ts +0 -134
  367. package/dist/cjs/contracts/deepbook/registry.js +0 -182
  368. package/dist/cjs/contracts/deepbook/registry.js.map +0 -7
  369. package/dist/cjs/contracts/deepbook/state.d.ts +0 -117
  370. package/dist/cjs/contracts/deepbook/state.js +0 -104
  371. package/dist/cjs/contracts/deepbook/state.js.map +0 -7
  372. package/dist/cjs/contracts/deepbook/trade_params.d.ts +0 -7
  373. package/dist/cjs/contracts/deepbook/trade_params.js +0 -35
  374. package/dist/cjs/contracts/deepbook/trade_params.js.map +0 -7
  375. package/dist/cjs/contracts/deepbook/vault.d.ts +0 -30
  376. package/dist/cjs/contracts/deepbook/vault.js +0 -65
  377. package/dist/cjs/contracts/deepbook/vault.js.map +0 -7
  378. package/dist/cjs/contracts/utils/index.d.ts +0 -25
  379. package/dist/cjs/contracts/utils/index.js +0 -148
  380. package/dist/cjs/contracts/utils/index.js.map +0 -7
  381. package/dist/cjs/index.d.ts +0 -23
  382. package/dist/cjs/index.js +0 -81
  383. package/dist/cjs/index.js.map +0 -7
  384. package/dist/cjs/package.json +0 -4
  385. package/dist/cjs/pyth/PriceServiceConnection.d.ts +0 -26
  386. package/dist/cjs/pyth/PriceServiceConnection.js +0 -68
  387. package/dist/cjs/pyth/PriceServiceConnection.js.map +0 -7
  388. package/dist/cjs/pyth/pyth-helpers.d.ts +0 -7
  389. package/dist/cjs/pyth/pyth-helpers.js +0 -36
  390. package/dist/cjs/pyth/pyth-helpers.js.map +0 -7
  391. package/dist/cjs/pyth/pyth.d.ts +0 -65
  392. package/dist/cjs/pyth/pyth.js +0 -269
  393. package/dist/cjs/pyth/pyth.js.map +0 -7
  394. package/dist/cjs/transactions/balanceManager.d.ts +0 -168
  395. package/dist/cjs/transactions/balanceManager.js +0 -384
  396. package/dist/cjs/transactions/balanceManager.js.map +0 -7
  397. package/dist/cjs/transactions/deepbook.d.ts +0 -477
  398. package/dist/cjs/transactions/deepbook.js +0 -1335
  399. package/dist/cjs/transactions/deepbook.js.map +0 -7
  400. package/dist/cjs/transactions/deepbookAdmin.d.ts +0 -105
  401. package/dist/cjs/transactions/deepbookAdmin.js +0 -334
  402. package/dist/cjs/transactions/deepbookAdmin.js.map +0 -7
  403. package/dist/cjs/transactions/flashLoans.d.ts +0 -56
  404. package/dist/cjs/transactions/flashLoans.js +0 -124
  405. package/dist/cjs/transactions/flashLoans.js.map +0 -7
  406. package/dist/cjs/transactions/governance.d.ts +0 -42
  407. package/dist/cjs/transactions/governance.js +0 -135
  408. package/dist/cjs/transactions/governance.js.map +0 -7
  409. package/dist/cjs/transactions/marginAdmin.d.ts +0 -133
  410. package/dist/cjs/transactions/marginAdmin.js +0 -393
  411. package/dist/cjs/transactions/marginAdmin.js.map +0 -7
  412. package/dist/cjs/transactions/marginLiquidations.d.ts +0 -61
  413. package/dist/cjs/transactions/marginLiquidations.js +0 -173
  414. package/dist/cjs/transactions/marginLiquidations.js.map +0 -7
  415. package/dist/cjs/transactions/marginMaintainer.d.ts +0 -80
  416. package/dist/cjs/transactions/marginMaintainer.js +0 -251
  417. package/dist/cjs/transactions/marginMaintainer.js.map +0 -7
  418. package/dist/cjs/transactions/marginManager.d.ts +0 -236
  419. package/dist/cjs/transactions/marginManager.js +0 -688
  420. package/dist/cjs/transactions/marginManager.js.map +0 -7
  421. package/dist/cjs/transactions/marginPool.d.ts +0 -134
  422. package/dist/cjs/transactions/marginPool.js +0 -330
  423. package/dist/cjs/transactions/marginPool.js.map +0 -7
  424. package/dist/cjs/transactions/marginRegistry.d.ts +0 -94
  425. package/dist/cjs/transactions/marginRegistry.js +0 -221
  426. package/dist/cjs/transactions/marginRegistry.js.map +0 -7
  427. package/dist/cjs/transactions/marginTPSL.d.ts +0 -93
  428. package/dist/cjs/transactions/marginTPSL.js +0 -286
  429. package/dist/cjs/transactions/marginTPSL.js.map +0 -7
  430. package/dist/cjs/transactions/poolProxy.d.ts +0 -104
  431. package/dist/cjs/transactions/poolProxy.js +0 -435
  432. package/dist/cjs/transactions/poolProxy.js.map +0 -7
  433. package/dist/cjs/types/bcs.d.ts +0 -5
  434. package/dist/cjs/types/bcs.js +0 -33
  435. package/dist/cjs/types/bcs.js.map +0 -7
  436. package/dist/cjs/types/index.d.ts +0 -218
  437. package/dist/cjs/types/index.js +0 -38
  438. package/dist/cjs/types/index.js.map +0 -7
  439. package/dist/cjs/utils/config.d.ts +0 -65
  440. package/dist/cjs/utils/config.js +0 -144
  441. package/dist/cjs/utils/config.js.map +0 -7
  442. package/dist/cjs/utils/constants.d.ts +0 -76
  443. package/dist/cjs/utils/constants.js +0 -382
  444. package/dist/cjs/utils/constants.js.map +0 -7
  445. package/dist/cjs/utils/errors.d.ts +0 -42
  446. package/dist/cjs/utils/errors.js +0 -70
  447. package/dist/cjs/utils/errors.js.map +0 -7
  448. package/dist/cjs/utils/validation.js +0 -67
  449. package/dist/cjs/utils/validation.js.map +0 -7
  450. package/dist/esm/client.d.ts +0 -861
  451. package/dist/esm/client.js +0 -1967
  452. package/dist/esm/client.js.map +0 -7
  453. package/dist/esm/contracts/deepbook/account.d.ts +0 -105
  454. package/dist/esm/contracts/deepbook/account.js +0 -133
  455. package/dist/esm/contracts/deepbook/account.js.map +0 -7
  456. package/dist/esm/contracts/deepbook/balance_manager.d.ts +0 -268
  457. package/dist/esm/contracts/deepbook/balance_manager.js +0 -331
  458. package/dist/esm/contracts/deepbook/balance_manager.js.map +0 -7
  459. package/dist/esm/contracts/deepbook/balances.d.ts +0 -10
  460. package/dist/esm/contracts/deepbook/balances.js +0 -15
  461. package/dist/esm/contracts/deepbook/balances.js.map +0 -7
  462. package/dist/esm/contracts/deepbook/big_vector.d.ts +0 -62
  463. package/dist/esm/contracts/deepbook/big_vector.js +0 -50
  464. package/dist/esm/contracts/deepbook/big_vector.js.map +0 -7
  465. package/dist/esm/contracts/deepbook/book.d.ts +0 -34
  466. package/dist/esm/contracts/deepbook/book.js +0 -20
  467. package/dist/esm/contracts/deepbook/book.js.map +0 -7
  468. package/dist/esm/contracts/deepbook/constants.d.ts +0 -176
  469. package/dist/esm/contracts/deepbook/constants.js +0 -318
  470. package/dist/esm/contracts/deepbook/constants.js.map +0 -7
  471. package/dist/esm/contracts/deepbook/deep_price.d.ts +0 -60
  472. package/dist/esm/contracts/deepbook/deep_price.js +0 -67
  473. package/dist/esm/contracts/deepbook/deep_price.js.map +0 -7
  474. package/dist/esm/contracts/deepbook/deps/std/type_name.d.ts +0 -14
  475. package/dist/esm/contracts/deepbook/deps/std/type_name.js +0 -22
  476. package/dist/esm/contracts/deepbook/deps/std/type_name.js.map +0 -7
  477. package/dist/esm/contracts/deepbook/deps/sui/bag.d.ts +0 -33
  478. package/dist/esm/contracts/deepbook/deps/sui/bag.js +0 -17
  479. package/dist/esm/contracts/deepbook/deps/sui/bag.js.map +0 -7
  480. package/dist/esm/contracts/deepbook/deps/sui/balance.d.ts +0 -9
  481. package/dist/esm/contracts/deepbook/deps/sui/balance.js +0 -13
  482. package/dist/esm/contracts/deepbook/deps/sui/balance.js.map +0 -7
  483. package/dist/esm/contracts/deepbook/deps/sui/object.d.ts +0 -5
  484. package/dist/esm/contracts/deepbook/deps/sui/object.js +0 -13
  485. package/dist/esm/contracts/deepbook/deps/sui/object.js.map +0 -7
  486. package/dist/esm/contracts/deepbook/deps/sui/table.d.ts +0 -28
  487. package/dist/esm/contracts/deepbook/deps/sui/table.js +0 -17
  488. package/dist/esm/contracts/deepbook/deps/sui/table.js.map +0 -7
  489. package/dist/esm/contracts/deepbook/deps/sui/vec_map.d.ts +0 -27
  490. package/dist/esm/contracts/deepbook/deps/sui/vec_map.js +0 -25
  491. package/dist/esm/contracts/deepbook/deps/sui/vec_map.js.map +0 -7
  492. package/dist/esm/contracts/deepbook/deps/sui/vec_set.d.ts +0 -15
  493. package/dist/esm/contracts/deepbook/deps/sui/vec_set.js +0 -15
  494. package/dist/esm/contracts/deepbook/deps/sui/vec_set.js.map +0 -7
  495. package/dist/esm/contracts/deepbook/deps/sui/versioned.d.ts +0 -7
  496. package/dist/esm/contracts/deepbook/deps/sui/versioned.js +0 -15
  497. package/dist/esm/contracts/deepbook/deps/sui/versioned.js.map +0 -7
  498. package/dist/esm/contracts/deepbook/ewma.d.ts +0 -17
  499. package/dist/esm/contracts/deepbook/ewma.js +0 -19
  500. package/dist/esm/contracts/deepbook/ewma.js.map +0 -7
  501. package/dist/esm/contracts/deepbook/fill.d.ts +0 -153
  502. package/dist/esm/contracts/deepbook/fill.js +0 -221
  503. package/dist/esm/contracts/deepbook/fill.js.map +0 -7
  504. package/dist/esm/contracts/deepbook/governance.d.ts +0 -63
  505. package/dist/esm/contracts/deepbook/governance.js +0 -49
  506. package/dist/esm/contracts/deepbook/governance.js.map +0 -7
  507. package/dist/esm/contracts/deepbook/history.d.ts +0 -60
  508. package/dist/esm/contracts/deepbook/history.js +0 -48
  509. package/dist/esm/contracts/deepbook/history.js.map +0 -7
  510. package/dist/esm/contracts/deepbook/math.d.ts +0 -94
  511. package/dist/esm/contracts/deepbook/math.js +0 -112
  512. package/dist/esm/contracts/deepbook/math.js.map +0 -7
  513. package/dist/esm/contracts/deepbook/order.d.ts +0 -135
  514. package/dist/esm/contracts/deepbook/order.js +0 -188
  515. package/dist/esm/contracts/deepbook/order.js.map +0 -7
  516. package/dist/esm/contracts/deepbook/order_info.d.ts +0 -296
  517. package/dist/esm/contracts/deepbook/order_info.js +0 -356
  518. package/dist/esm/contracts/deepbook/order_info.js.map +0 -7
  519. package/dist/esm/contracts/deepbook/order_query.d.ts +0 -85
  520. package/dist/esm/contracts/deepbook/order_query.js +0 -66
  521. package/dist/esm/contracts/deepbook/order_query.js.map +0 -7
  522. package/dist/esm/contracts/deepbook/pool.d.ts +0 -1218
  523. package/dist/esm/contracts/deepbook/pool.js +0 -1206
  524. package/dist/esm/contracts/deepbook/pool.js.map +0 -7
  525. package/dist/esm/contracts/deepbook/registry.d.ts +0 -134
  526. package/dist/esm/contracts/deepbook/registry.js +0 -152
  527. package/dist/esm/contracts/deepbook/registry.js.map +0 -7
  528. package/dist/esm/contracts/deepbook/state.d.ts +0 -117
  529. package/dist/esm/contracts/deepbook/state.js +0 -74
  530. package/dist/esm/contracts/deepbook/state.js.map +0 -7
  531. package/dist/esm/contracts/deepbook/trade_params.d.ts +0 -7
  532. package/dist/esm/contracts/deepbook/trade_params.js +0 -15
  533. package/dist/esm/contracts/deepbook/trade_params.js.map +0 -7
  534. package/dist/esm/contracts/deepbook/vault.d.ts +0 -30
  535. package/dist/esm/contracts/deepbook/vault.js +0 -35
  536. package/dist/esm/contracts/deepbook/vault.js.map +0 -7
  537. package/dist/esm/contracts/utils/index.d.ts +0 -25
  538. package/dist/esm/contracts/utils/index.js +0 -128
  539. package/dist/esm/contracts/utils/index.js.map +0 -7
  540. package/dist/esm/index.d.ts +0 -23
  541. package/dist/esm/index.js +0 -81
  542. package/dist/esm/index.js.map +0 -7
  543. package/dist/esm/package.json +0 -4
  544. package/dist/esm/pyth/PriceServiceConnection.d.ts +0 -26
  545. package/dist/esm/pyth/PriceServiceConnection.js +0 -38
  546. package/dist/esm/pyth/PriceServiceConnection.js.map +0 -7
  547. package/dist/esm/pyth/pyth-helpers.d.ts +0 -7
  548. package/dist/esm/pyth/pyth-helpers.js +0 -16
  549. package/dist/esm/pyth/pyth-helpers.js.map +0 -7
  550. package/dist/esm/pyth/pyth.d.ts +0 -65
  551. package/dist/esm/pyth/pyth.js +0 -249
  552. package/dist/esm/pyth/pyth.js.map +0 -7
  553. package/dist/esm/transactions/balanceManager.d.ts +0 -168
  554. package/dist/esm/transactions/balanceManager.js +0 -364
  555. package/dist/esm/transactions/balanceManager.js.map +0 -7
  556. package/dist/esm/transactions/deepbook.d.ts +0 -477
  557. package/dist/esm/transactions/deepbook.js +0 -1321
  558. package/dist/esm/transactions/deepbook.js.map +0 -7
  559. package/dist/esm/transactions/deepbookAdmin.d.ts +0 -105
  560. package/dist/esm/transactions/deepbookAdmin.js +0 -314
  561. package/dist/esm/transactions/deepbookAdmin.js.map +0 -7
  562. package/dist/esm/transactions/flashLoans.d.ts +0 -56
  563. package/dist/esm/transactions/flashLoans.js +0 -104
  564. package/dist/esm/transactions/flashLoans.js.map +0 -7
  565. package/dist/esm/transactions/governance.d.ts +0 -42
  566. package/dist/esm/transactions/governance.js +0 -115
  567. package/dist/esm/transactions/governance.js.map +0 -7
  568. package/dist/esm/transactions/marginAdmin.d.ts +0 -133
  569. package/dist/esm/transactions/marginAdmin.js +0 -373
  570. package/dist/esm/transactions/marginAdmin.js.map +0 -7
  571. package/dist/esm/transactions/marginLiquidations.d.ts +0 -61
  572. package/dist/esm/transactions/marginLiquidations.js +0 -153
  573. package/dist/esm/transactions/marginLiquidations.js.map +0 -7
  574. package/dist/esm/transactions/marginMaintainer.d.ts +0 -80
  575. package/dist/esm/transactions/marginMaintainer.js +0 -231
  576. package/dist/esm/transactions/marginMaintainer.js.map +0 -7
  577. package/dist/esm/transactions/marginManager.d.ts +0 -236
  578. package/dist/esm/transactions/marginManager.js +0 -668
  579. package/dist/esm/transactions/marginManager.js.map +0 -7
  580. package/dist/esm/transactions/marginPool.d.ts +0 -134
  581. package/dist/esm/transactions/marginPool.js +0 -310
  582. package/dist/esm/transactions/marginPool.js.map +0 -7
  583. package/dist/esm/transactions/marginRegistry.d.ts +0 -94
  584. package/dist/esm/transactions/marginRegistry.js +0 -201
  585. package/dist/esm/transactions/marginRegistry.js.map +0 -7
  586. package/dist/esm/transactions/marginTPSL.d.ts +0 -93
  587. package/dist/esm/transactions/marginTPSL.js +0 -266
  588. package/dist/esm/transactions/marginTPSL.js.map +0 -7
  589. package/dist/esm/transactions/poolProxy.d.ts +0 -104
  590. package/dist/esm/transactions/poolProxy.js +0 -415
  591. package/dist/esm/transactions/poolProxy.js.map +0 -7
  592. package/dist/esm/types/bcs.d.ts +0 -5
  593. package/dist/esm/types/bcs.js +0 -13
  594. package/dist/esm/types/bcs.js.map +0 -7
  595. package/dist/esm/types/index.d.ts +0 -218
  596. package/dist/esm/types/index.js +0 -18
  597. package/dist/esm/types/index.js.map +0 -7
  598. package/dist/esm/utils/config.d.ts +0 -65
  599. package/dist/esm/utils/config.js +0 -135
  600. package/dist/esm/utils/config.js.map +0 -7
  601. package/dist/esm/utils/constants.d.ts +0 -76
  602. package/dist/esm/utils/constants.js +0 -362
  603. package/dist/esm/utils/constants.js.map +0 -7
  604. package/dist/esm/utils/errors.d.ts +0 -42
  605. package/dist/esm/utils/errors.js +0 -50
  606. package/dist/esm/utils/errors.js.map +0 -7
  607. package/dist/esm/utils/validation.d.ts +0 -50
  608. package/dist/esm/utils/validation.js +0 -47
  609. package/dist/esm/utils/validation.js.map +0 -7
  610. package/dist/tsconfig.esm.tsbuildinfo +0 -1
  611. package/dist/tsconfig.tsbuildinfo +0 -1
  612. package/src/contracts/deepbook/deps/sui/object.ts +0 -14
@@ -0,0 +1,374 @@
1
+ import { TransactionArgument, TransactionObjectArgument } from "@haneullabs/haneul/transactions";
2
+
3
+ //#region src/types/index.d.ts
4
+ interface BalanceManager {
5
+ address: string;
6
+ tradeCap?: string;
7
+ depositCap?: string;
8
+ withdrawCap?: string;
9
+ }
10
+ interface MarginManager {
11
+ address: string;
12
+ poolKey: string;
13
+ }
14
+ interface Coin {
15
+ address: string;
16
+ type: string;
17
+ scalar: number;
18
+ feed?: string;
19
+ currencyId?: string;
20
+ priceInfoObjectId?: string;
21
+ }
22
+ interface Pool {
23
+ address: string;
24
+ baseCoin: string;
25
+ quoteCoin: string;
26
+ }
27
+ interface MarginPool {
28
+ address: string;
29
+ type: string;
30
+ }
31
+ declare enum OrderType {
32
+ NO_RESTRICTION = 0,
33
+ IMMEDIATE_OR_CANCEL = 1,
34
+ FILL_OR_KILL = 2,
35
+ POST_ONLY = 3
36
+ }
37
+ declare enum SelfMatchingOptions {
38
+ SELF_MATCHING_ALLOWED = 0,
39
+ CANCEL_TAKER = 1,
40
+ CANCEL_MAKER = 2
41
+ }
42
+ interface PlaceLimitOrderParams {
43
+ poolKey: string;
44
+ balanceManagerKey: string;
45
+ clientOrderId: string;
46
+ price: number | bigint;
47
+ quantity: number | bigint;
48
+ isBid: boolean;
49
+ expiration?: number | bigint;
50
+ orderType?: OrderType;
51
+ selfMatchingOption?: SelfMatchingOptions;
52
+ payWithDeep?: boolean;
53
+ }
54
+ interface PlaceMarketOrderParams {
55
+ poolKey: string;
56
+ balanceManagerKey: string;
57
+ clientOrderId: string;
58
+ quantity: number | bigint;
59
+ isBid: boolean;
60
+ selfMatchingOption?: SelfMatchingOptions;
61
+ payWithDeep?: boolean;
62
+ }
63
+ interface CanPlaceLimitOrderParams {
64
+ poolKey: string;
65
+ balanceManagerKey: string;
66
+ price: number | bigint;
67
+ quantity: number | bigint;
68
+ isBid: boolean;
69
+ payWithDeep: boolean;
70
+ expireTimestamp: number;
71
+ }
72
+ interface CanPlaceMarketOrderParams {
73
+ poolKey: string;
74
+ balanceManagerKey: string;
75
+ quantity: number | bigint;
76
+ isBid: boolean;
77
+ payWithDeep: boolean;
78
+ }
79
+ interface PlaceMarginLimitOrderParams {
80
+ poolKey: string;
81
+ marginManagerKey: string;
82
+ clientOrderId: string;
83
+ price: number | bigint;
84
+ quantity: number | bigint;
85
+ isBid: boolean;
86
+ expiration?: number | bigint;
87
+ orderType?: OrderType;
88
+ selfMatchingOption?: SelfMatchingOptions;
89
+ payWithDeep?: boolean;
90
+ }
91
+ interface PlaceMarginMarketOrderParams {
92
+ poolKey: string;
93
+ marginManagerKey: string;
94
+ clientOrderId: string;
95
+ quantity: number | bigint;
96
+ isBid: boolean;
97
+ selfMatchingOption?: SelfMatchingOptions;
98
+ payWithDeep?: boolean;
99
+ }
100
+ interface PendingLimitOrderParams {
101
+ clientOrderId: string;
102
+ orderType?: OrderType;
103
+ selfMatchingOption?: SelfMatchingOptions;
104
+ price: number | bigint;
105
+ quantity: number | bigint;
106
+ isBid: boolean;
107
+ payWithDeep?: boolean;
108
+ expireTimestamp?: number | bigint;
109
+ }
110
+ interface PendingMarketOrderParams {
111
+ clientOrderId: string;
112
+ selfMatchingOption?: SelfMatchingOptions;
113
+ quantity: number | bigint;
114
+ isBid: boolean;
115
+ payWithDeep?: boolean;
116
+ }
117
+ interface AddConditionalOrderParams {
118
+ marginManagerKey: string;
119
+ conditionalOrderId: string;
120
+ triggerBelowPrice: boolean;
121
+ triggerPrice: number | bigint;
122
+ pendingOrder: PendingLimitOrderParams | PendingMarketOrderParams;
123
+ }
124
+ interface ProposalParams {
125
+ poolKey: string;
126
+ balanceManagerKey: string;
127
+ takerFee: number | bigint;
128
+ makerFee: number | bigint;
129
+ stakeRequired: number | bigint;
130
+ }
131
+ interface MarginProposalParams {
132
+ takerFee: number | bigint;
133
+ makerFee: number | bigint;
134
+ stakeRequired: number | bigint;
135
+ }
136
+ interface SwapParams {
137
+ poolKey: string;
138
+ amount: number | bigint;
139
+ deepAmount: number | bigint;
140
+ minOut: number | bigint;
141
+ deepCoin?: TransactionObjectArgument;
142
+ baseCoin?: TransactionObjectArgument;
143
+ quoteCoin?: TransactionObjectArgument;
144
+ }
145
+ interface SwapWithManagerParams {
146
+ poolKey: string;
147
+ balanceManagerKey: string;
148
+ tradeCap: string;
149
+ depositCap: string;
150
+ withdrawCap: string;
151
+ amount: number | bigint;
152
+ minOut: number | bigint;
153
+ baseCoin?: TransactionObjectArgument;
154
+ quoteCoin?: TransactionObjectArgument;
155
+ }
156
+ interface CreatePoolAdminParams {
157
+ baseCoinKey: string;
158
+ quoteCoinKey: string;
159
+ tickSize: number | bigint;
160
+ lotSize: number | bigint;
161
+ minSize: number | bigint;
162
+ whitelisted: boolean;
163
+ stablePool: boolean;
164
+ }
165
+ interface CreatePermissionlessPoolParams {
166
+ baseCoinKey: string;
167
+ quoteCoinKey: string;
168
+ tickSize: number | bigint;
169
+ lotSize: number | bigint;
170
+ minSize: number | bigint;
171
+ deepCoin?: TransactionObjectArgument;
172
+ }
173
+ interface SetEwmaParams {
174
+ alpha: number | bigint;
175
+ zScoreThreshold: number | bigint;
176
+ additionalTakerFee: number | bigint;
177
+ }
178
+ interface PoolConfigParams {
179
+ minWithdrawRiskRatio: number | bigint;
180
+ minBorrowRiskRatio: number | bigint;
181
+ liquidationRiskRatio: number | bigint;
182
+ targetLiquidationRiskRatio: number | bigint;
183
+ userLiquidationReward: number | bigint;
184
+ poolLiquidationReward: number | bigint;
185
+ }
186
+ interface MarginPoolConfigParams {
187
+ supplyCap: number | bigint;
188
+ maxUtilizationRate: number | bigint;
189
+ referralSpread: number | bigint;
190
+ minBorrow: number | bigint;
191
+ rateLimitCapacity?: number | bigint;
192
+ rateLimitRefillRatePerMs?: number | bigint;
193
+ rateLimitEnabled?: boolean;
194
+ }
195
+ interface InterestConfigParams {
196
+ baseRate: number | bigint;
197
+ baseSlope: number | bigint;
198
+ optimalUtilization: number | bigint;
199
+ excessSlope: number | bigint;
200
+ }
201
+ interface Config {
202
+ DEEPBOOK_PACKAGE_ID: string;
203
+ REGISTRY_ID: string;
204
+ DEEP_TREASURY_ID: string;
205
+ }
206
+ interface ManagerBalance {
207
+ coinType: string;
208
+ balance: number;
209
+ }
210
+ interface VaultBalances {
211
+ base: number;
212
+ quote: number;
213
+ deep: number;
214
+ }
215
+ interface LockedBalances {
216
+ base: number;
217
+ quote: number;
218
+ deep: number;
219
+ }
220
+ interface ReferralBalances {
221
+ base: number;
222
+ quote: number;
223
+ deep: number;
224
+ }
225
+ interface PoolTradeParams {
226
+ takerFee: number;
227
+ makerFee: number;
228
+ stakeRequired: number;
229
+ }
230
+ interface PoolBookParams {
231
+ tickSize: number;
232
+ lotSize: number;
233
+ minSize: number;
234
+ }
235
+ type PoolDeepPrice = {
236
+ asset_is_base: true;
237
+ deep_per_base: number;
238
+ } | {
239
+ asset_is_base: false;
240
+ deep_per_quote: number;
241
+ };
242
+ interface QuoteQuantityOut {
243
+ baseQuantity: number;
244
+ baseOut: number;
245
+ quoteOut: number;
246
+ deepRequired: number;
247
+ }
248
+ interface BaseQuantityOut {
249
+ quoteQuantity: number;
250
+ baseOut: number;
251
+ quoteOut: number;
252
+ deepRequired: number;
253
+ }
254
+ interface QuantityOut {
255
+ baseQuantity: number;
256
+ quoteQuantity: number;
257
+ baseOut: number;
258
+ quoteOut: number;
259
+ deepRequired: number;
260
+ }
261
+ interface BaseQuantityIn {
262
+ baseIn: number;
263
+ quoteOut: number;
264
+ deepRequired: number;
265
+ }
266
+ interface QuoteQuantityIn {
267
+ baseOut: number;
268
+ quoteIn: number;
269
+ deepRequired: number;
270
+ }
271
+ interface OrderDeepRequiredResult {
272
+ deepRequiredTaker: number;
273
+ deepRequiredMaker: number;
274
+ }
275
+ interface Level2Range {
276
+ prices: number[];
277
+ quantities: number[];
278
+ }
279
+ interface Level2TicksFromMid {
280
+ bid_prices: number[];
281
+ bid_quantities: number[];
282
+ ask_prices: number[];
283
+ ask_quantities: number[];
284
+ }
285
+ interface AccountBalances {
286
+ base: number;
287
+ quote: number;
288
+ deep: number;
289
+ }
290
+ interface AccountInfo {
291
+ epoch: string;
292
+ open_orders: {
293
+ contents: string[];
294
+ };
295
+ taker_volume: number;
296
+ maker_volume: number;
297
+ active_stake: number;
298
+ inactive_stake: number;
299
+ created_proposal: boolean;
300
+ voted_proposal: string | null;
301
+ unclaimed_rebates: AccountBalances;
302
+ settled_balances: AccountBalances;
303
+ owed_balances: AccountBalances;
304
+ }
305
+ interface DecodedOrderId {
306
+ isBid: boolean;
307
+ price: number;
308
+ orderId: number;
309
+ }
310
+ interface MarginManagerState {
311
+ managerId: string;
312
+ deepbookPoolId: string;
313
+ riskRatio: number;
314
+ baseAsset: string;
315
+ quoteAsset: string;
316
+ baseDebt: string;
317
+ quoteDebt: string;
318
+ basePythPrice: string;
319
+ basePythDecimals: number;
320
+ quotePythPrice: string;
321
+ quotePythDecimals: number;
322
+ currentPrice: bigint;
323
+ lowestTriggerAbovePrice: bigint;
324
+ highestTriggerBelowPrice: bigint;
325
+ }
326
+ interface MarginManagerAssets {
327
+ baseAsset: string;
328
+ quoteAsset: string;
329
+ }
330
+ interface MarginManagerDebts {
331
+ baseDebt: string;
332
+ quoteDebt: string;
333
+ }
334
+ interface MarginManagerBalancesResult {
335
+ base: string;
336
+ quote: string;
337
+ deep: string;
338
+ }
339
+ interface BorrowedShares {
340
+ baseShares: string;
341
+ quoteShares: string;
342
+ }
343
+ /**
344
+ * Parameters for depositing into a margin manager.
345
+ * Either `amount` (number) or `coin` (TransactionArgument) must be provided, but not both.
346
+ */
347
+ type DepositParams = {
348
+ managerKey: string;
349
+ } & ({
350
+ amount: number | bigint;
351
+ coin?: never;
352
+ } | {
353
+ amount?: never;
354
+ coin: TransactionArgument;
355
+ });
356
+ /**
357
+ * Parameters for depositing during margin manager initialization.
358
+ * Either (`coinType` + `amount`) or (`coinType` + `coin`) must be provided.
359
+ * `coinType` should be a coin key from config (e.g., 'HANEUL', 'DBUSDC', 'DEEP').
360
+ */
361
+ type DepositDuringInitParams = {
362
+ manager: TransactionArgument;
363
+ poolKey: string;
364
+ coinType: string;
365
+ } & ({
366
+ amount: number | bigint;
367
+ coin?: never;
368
+ } | {
369
+ amount?: never;
370
+ coin: TransactionArgument;
371
+ });
372
+ //#endregion
373
+ export { AccountBalances, AccountInfo, AddConditionalOrderParams, BalanceManager, BaseQuantityIn, BaseQuantityOut, BorrowedShares, CanPlaceLimitOrderParams, CanPlaceMarketOrderParams, Coin, Config, CreatePermissionlessPoolParams, CreatePoolAdminParams, DecodedOrderId, DepositDuringInitParams, DepositParams, InterestConfigParams, Level2Range, Level2TicksFromMid, LockedBalances, ManagerBalance, MarginManager, MarginManagerAssets, MarginManagerBalancesResult, MarginManagerDebts, MarginManagerState, MarginPool, MarginPoolConfigParams, MarginProposalParams, OrderDeepRequiredResult, OrderType, PendingLimitOrderParams, PendingMarketOrderParams, PlaceLimitOrderParams, PlaceMarginLimitOrderParams, PlaceMarginMarketOrderParams, PlaceMarketOrderParams, Pool, PoolBookParams, PoolConfigParams, PoolDeepPrice, PoolTradeParams, ProposalParams, QuantityOut, QuoteQuantityIn, QuoteQuantityOut, ReferralBalances, SelfMatchingOptions, SetEwmaParams, SwapParams, SwapWithManagerParams, VaultBalances };
374
+ //# sourceMappingURL=index.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.mts","names":[],"sources":["../../src/types/index.ts"],"mappings":"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"}
@@ -0,0 +1,18 @@
1
+ //#region src/types/index.ts
2
+ let OrderType = /* @__PURE__ */ function(OrderType$1) {
3
+ OrderType$1[OrderType$1["NO_RESTRICTION"] = 0] = "NO_RESTRICTION";
4
+ OrderType$1[OrderType$1["IMMEDIATE_OR_CANCEL"] = 1] = "IMMEDIATE_OR_CANCEL";
5
+ OrderType$1[OrderType$1["FILL_OR_KILL"] = 2] = "FILL_OR_KILL";
6
+ OrderType$1[OrderType$1["POST_ONLY"] = 3] = "POST_ONLY";
7
+ return OrderType$1;
8
+ }({});
9
+ let SelfMatchingOptions = /* @__PURE__ */ function(SelfMatchingOptions$1) {
10
+ SelfMatchingOptions$1[SelfMatchingOptions$1["SELF_MATCHING_ALLOWED"] = 0] = "SELF_MATCHING_ALLOWED";
11
+ SelfMatchingOptions$1[SelfMatchingOptions$1["CANCEL_TAKER"] = 1] = "CANCEL_TAKER";
12
+ SelfMatchingOptions$1[SelfMatchingOptions$1["CANCEL_MAKER"] = 2] = "CANCEL_MAKER";
13
+ return SelfMatchingOptions$1;
14
+ }({});
15
+
16
+ //#endregion
17
+ export { OrderType, SelfMatchingOptions };
18
+ //# sourceMappingURL=index.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.mjs","names":[],"sources":["../../src/types/index.ts"],"sourcesContent":["// Copyright (c) Mysten Labs, Inc.\n// SPDX-License-Identifier: Apache-2.0\n\nimport type { TransactionArgument, TransactionObjectArgument } from '@haneullabs/haneul/transactions';\n\n// SPDX-License-Identifier: Apache-2.0\nexport interface BalanceManager {\n\taddress: string;\n\ttradeCap?: string;\n\tdepositCap?: string;\n\twithdrawCap?: string;\n}\n\nexport interface MarginManager {\n\taddress: string;\n\tpoolKey: string;\n}\n\nexport interface Coin {\n\taddress: string;\n\ttype: string;\n\tscalar: number;\n\tfeed?: string;\n\tcurrencyId?: string;\n\tpriceInfoObjectId?: string;\n}\n\nexport interface Pool {\n\taddress: string;\n\tbaseCoin: string;\n\tquoteCoin: string;\n}\n\nexport interface MarginPool {\n\taddress: string;\n\ttype: string;\n}\n\n// Trading constants\nexport enum OrderType {\n\tNO_RESTRICTION,\n\tIMMEDIATE_OR_CANCEL,\n\tFILL_OR_KILL,\n\tPOST_ONLY,\n}\n\n// Self matching options\nexport enum SelfMatchingOptions {\n\tSELF_MATCHING_ALLOWED,\n\tCANCEL_TAKER,\n\tCANCEL_MAKER,\n}\n\nexport interface PlaceLimitOrderParams {\n\tpoolKey: string;\n\tbalanceManagerKey: string;\n\tclientOrderId: string;\n\tprice: number | bigint;\n\tquantity: number | bigint;\n\tisBid: boolean;\n\texpiration?: number | bigint;\n\torderType?: OrderType;\n\tselfMatchingOption?: SelfMatchingOptions;\n\tpayWithDeep?: boolean;\n}\n\nexport interface PlaceMarketOrderParams {\n\tpoolKey: string;\n\tbalanceManagerKey: string;\n\tclientOrderId: string;\n\tquantity: number | bigint;\n\tisBid: boolean;\n\tselfMatchingOption?: SelfMatchingOptions;\n\tpayWithDeep?: boolean;\n}\n\nexport interface CanPlaceLimitOrderParams {\n\tpoolKey: string;\n\tbalanceManagerKey: string;\n\tprice: number | bigint;\n\tquantity: number | bigint;\n\tisBid: boolean;\n\tpayWithDeep: boolean;\n\texpireTimestamp: number;\n}\n\nexport interface CanPlaceMarketOrderParams {\n\tpoolKey: string;\n\tbalanceManagerKey: string;\n\tquantity: number | bigint;\n\tisBid: boolean;\n\tpayWithDeep: boolean;\n}\n\nexport interface PlaceMarginLimitOrderParams {\n\tpoolKey: string;\n\tmarginManagerKey: string;\n\tclientOrderId: string;\n\tprice: number | bigint;\n\tquantity: number | bigint;\n\tisBid: boolean;\n\texpiration?: number | bigint;\n\torderType?: OrderType;\n\tselfMatchingOption?: SelfMatchingOptions;\n\tpayWithDeep?: boolean;\n}\n\nexport interface PlaceMarginMarketOrderParams {\n\tpoolKey: string;\n\tmarginManagerKey: string;\n\tclientOrderId: string;\n\tquantity: number | bigint;\n\tisBid: boolean;\n\tselfMatchingOption?: SelfMatchingOptions;\n\tpayWithDeep?: boolean;\n}\n\nexport interface PendingLimitOrderParams {\n\tclientOrderId: string;\n\torderType?: OrderType;\n\tselfMatchingOption?: SelfMatchingOptions;\n\tprice: number | bigint;\n\tquantity: number | bigint;\n\tisBid: boolean;\n\tpayWithDeep?: boolean;\n\texpireTimestamp?: number | bigint;\n}\n\nexport interface PendingMarketOrderParams {\n\tclientOrderId: string;\n\tselfMatchingOption?: SelfMatchingOptions;\n\tquantity: number | bigint;\n\tisBid: boolean;\n\tpayWithDeep?: boolean;\n}\n\nexport interface AddConditionalOrderParams {\n\tmarginManagerKey: string;\n\tconditionalOrderId: string;\n\ttriggerBelowPrice: boolean;\n\ttriggerPrice: number | bigint;\n\tpendingOrder: PendingLimitOrderParams | PendingMarketOrderParams;\n}\n\nexport interface ProposalParams {\n\tpoolKey: string;\n\tbalanceManagerKey: string;\n\ttakerFee: number | bigint;\n\tmakerFee: number | bigint;\n\tstakeRequired: number | bigint;\n}\n\nexport interface MarginProposalParams {\n\ttakerFee: number | bigint;\n\tmakerFee: number | bigint;\n\tstakeRequired: number | bigint;\n}\n\nexport interface SwapParams {\n\tpoolKey: string;\n\tamount: number | bigint;\n\tdeepAmount: number | bigint;\n\tminOut: number | bigint;\n\tdeepCoin?: TransactionObjectArgument;\n\tbaseCoin?: TransactionObjectArgument;\n\tquoteCoin?: TransactionObjectArgument;\n}\n\nexport interface SwapWithManagerParams {\n\tpoolKey: string;\n\tbalanceManagerKey: string;\n\ttradeCap: string;\n\tdepositCap: string;\n\twithdrawCap: string;\n\tamount: number | bigint;\n\tminOut: number | bigint;\n\tbaseCoin?: TransactionObjectArgument;\n\tquoteCoin?: TransactionObjectArgument;\n}\n\nexport interface StakeParams {\n\tpoolKey: string;\n\tbalanceManagerKey: string;\n\tamount: number | bigint;\n}\n\nexport interface VoteParams {\n\tpoolKey: string;\n\tbalanceManagerKey: string;\n\tproposalId: string;\n}\n\nexport interface FlashLoanParams {\n\tpoolKey: string;\n\tamount: number | bigint;\n}\n\nexport interface CreatePoolAdminParams {\n\tbaseCoinKey: string;\n\tquoteCoinKey: string;\n\ttickSize: number | bigint;\n\tlotSize: number | bigint;\n\tminSize: number | bigint;\n\twhitelisted: boolean;\n\tstablePool: boolean;\n}\n\nexport interface CreatePermissionlessPoolParams {\n\tbaseCoinKey: string;\n\tquoteCoinKey: string;\n\ttickSize: number | bigint;\n\tlotSize: number | bigint;\n\tminSize: number | bigint;\n\tdeepCoin?: TransactionObjectArgument;\n}\n\nexport interface SetEwmaParams {\n\talpha: number | bigint;\n\tzScoreThreshold: number | bigint;\n\tadditionalTakerFee: number | bigint;\n}\n\nexport interface PoolConfigParams {\n\tminWithdrawRiskRatio: number | bigint;\n\tminBorrowRiskRatio: number | bigint;\n\tliquidationRiskRatio: number | bigint;\n\ttargetLiquidationRiskRatio: number | bigint;\n\tuserLiquidationReward: number | bigint;\n\tpoolLiquidationReward: number | bigint;\n}\n\nexport interface MarginPoolConfigParams {\n\tsupplyCap: number | bigint;\n\tmaxUtilizationRate: number | bigint;\n\treferralSpread: number | bigint;\n\tminBorrow: number | bigint;\n\trateLimitCapacity?: number | bigint;\n\trateLimitRefillRatePerMs?: number | bigint;\n\trateLimitEnabled?: boolean;\n}\n\nexport interface InterestConfigParams {\n\tbaseRate: number | bigint;\n\tbaseSlope: number | bigint;\n\toptimalUtilization: number | bigint;\n\texcessSlope: number | bigint;\n}\n\nexport interface Config {\n\tDEEPBOOK_PACKAGE_ID: string;\n\tREGISTRY_ID: string;\n\tDEEP_TREASURY_ID: string;\n}\n\n// === Named Return Types ===\n\n// Balance\nexport interface ManagerBalance {\n\tcoinType: string;\n\tbalance: number;\n}\nexport interface VaultBalances {\n\tbase: number;\n\tquote: number;\n\tdeep: number;\n}\nexport interface LockedBalances {\n\tbase: number;\n\tquote: number;\n\tdeep: number;\n}\nexport interface ReferralBalances {\n\tbase: number;\n\tquote: number;\n\tdeep: number;\n}\n\n// Pool\nexport interface PoolTradeParams {\n\ttakerFee: number;\n\tmakerFee: number;\n\tstakeRequired: number;\n}\nexport interface PoolBookParams {\n\ttickSize: number;\n\tlotSize: number;\n\tminSize: number;\n}\nexport type PoolDeepPrice =\n\t| { asset_is_base: true; deep_per_base: number }\n\t| { asset_is_base: false; deep_per_quote: number };\n\n// Quantity calculations\nexport interface QuoteQuantityOut {\n\tbaseQuantity: number;\n\tbaseOut: number;\n\tquoteOut: number;\n\tdeepRequired: number;\n}\nexport interface BaseQuantityOut {\n\tquoteQuantity: number;\n\tbaseOut: number;\n\tquoteOut: number;\n\tdeepRequired: number;\n}\nexport interface QuantityOut {\n\tbaseQuantity: number;\n\tquoteQuantity: number;\n\tbaseOut: number;\n\tquoteOut: number;\n\tdeepRequired: number;\n}\nexport interface BaseQuantityIn {\n\tbaseIn: number;\n\tquoteOut: number;\n\tdeepRequired: number;\n}\nexport interface QuoteQuantityIn {\n\tbaseOut: number;\n\tquoteIn: number;\n\tdeepRequired: number;\n}\nexport interface OrderDeepRequiredResult {\n\tdeepRequiredTaker: number;\n\tdeepRequiredMaker: number;\n}\n\n// Order book\nexport interface Level2Range {\n\tprices: number[];\n\tquantities: number[];\n}\nexport interface Level2TicksFromMid {\n\tbid_prices: number[];\n\tbid_quantities: number[];\n\task_prices: number[];\n\task_quantities: number[];\n}\n\n// Account\nexport interface AccountBalances {\n\tbase: number;\n\tquote: number;\n\tdeep: number;\n}\nexport interface AccountInfo {\n\tepoch: string;\n\topen_orders: { contents: string[] };\n\ttaker_volume: number;\n\tmaker_volume: number;\n\tactive_stake: number;\n\tinactive_stake: number;\n\tcreated_proposal: boolean;\n\tvoted_proposal: string | null;\n\tunclaimed_rebates: AccountBalances;\n\tsettled_balances: AccountBalances;\n\towed_balances: AccountBalances;\n}\n\n// Order\nexport interface DecodedOrderId {\n\tisBid: boolean;\n\tprice: number;\n\torderId: number;\n}\n\n// Margin\nexport interface MarginManagerState {\n\tmanagerId: string;\n\tdeepbookPoolId: string;\n\triskRatio: number;\n\tbaseAsset: string;\n\tquoteAsset: string;\n\tbaseDebt: string;\n\tquoteDebt: string;\n\tbasePythPrice: string;\n\tbasePythDecimals: number;\n\tquotePythPrice: string;\n\tquotePythDecimals: number;\n\tcurrentPrice: bigint;\n\tlowestTriggerAbovePrice: bigint;\n\thighestTriggerBelowPrice: bigint;\n}\nexport interface MarginManagerAssets {\n\tbaseAsset: string;\n\tquoteAsset: string;\n}\nexport interface MarginManagerDebts {\n\tbaseDebt: string;\n\tquoteDebt: string;\n}\nexport interface MarginManagerBalancesResult {\n\tbase: string;\n\tquote: string;\n\tdeep: string;\n}\nexport interface BorrowedShares {\n\tbaseShares: string;\n\tquoteShares: string;\n}\n\n/**\n * Parameters for depositing into a margin manager.\n * Either `amount` (number) or `coin` (TransactionArgument) must be provided, but not both.\n */\nexport type DepositParams = {\n\tmanagerKey: string;\n} & ({ amount: number | bigint; coin?: never } | { amount?: never; coin: TransactionArgument });\n\n/**\n * Parameters for depositing during margin manager initialization.\n * Either (`coinType` + `amount`) or (`coinType` + `coin`) must be provided.\n * `coinType` should be a coin key from config (e.g., 'HANEUL', 'DBUSDC', 'DEEP').\n */\nexport type DepositDuringInitParams = {\n\tmanager: TransactionArgument;\n\tpoolKey: string;\n\tcoinType: string;\n} & ({ amount: number | bigint; coin?: never } | { amount?: never; coin: TransactionArgument });\n"],"mappings":";AAuCA,IAAY,kDAAL;AACN;AACA;AACA;AACA;;;AAID,IAAY,sEAAL;AACN;AACA;AACA"}
@@ -0,0 +1,90 @@
1
+ import { BalanceManager, Coin, MarginManager, MarginPool, Pool } from "../types/index.mjs";
2
+ import { CoinMap, DeepbookPackageIds, MarginPoolMap, PoolMap } from "./constants.mjs";
3
+ import { BalanceManagerContract } from "../transactions/balanceManager.mjs";
4
+ import { HaneulClientTypes } from "@haneullabs/haneul/client";
5
+
6
+ //#region src/utils/config.d.ts
7
+ declare const FLOAT_SCALAR = 1000000000;
8
+ declare const DEEP_SCALAR = 1000000;
9
+ declare const MAX_TIMESTAMP = 1844674407370955161n;
10
+ declare const PRICE_INFO_OBJECT_MAX_AGE_MS = 30000;
11
+ declare const GAS_BUDGET = 250000000;
12
+ declare const POOL_CREATION_FEE_DEEP = 500000000;
13
+ declare class DeepBookConfig {
14
+ #private;
15
+ network: HaneulClientTypes.Network;
16
+ balanceManagers: {
17
+ [key: string]: BalanceManager;
18
+ };
19
+ marginManagers: {
20
+ [key: string]: MarginManager;
21
+ };
22
+ address: string;
23
+ pyth: {
24
+ pythStateId: string;
25
+ wormholeStateId: string;
26
+ };
27
+ DEEPBOOK_PACKAGE_ID: string;
28
+ REGISTRY_ID: string;
29
+ DEEP_TREASURY_ID: string;
30
+ MARGIN_PACKAGE_ID: string;
31
+ MARGIN_REGISTRY_ID: string;
32
+ LIQUIDATION_PACKAGE_ID: string;
33
+ adminCap?: string;
34
+ marginAdminCap?: string;
35
+ marginMaintainerCap?: string;
36
+ balanceManager: BalanceManagerContract;
37
+ constructor({
38
+ network,
39
+ address,
40
+ adminCap,
41
+ marginAdminCap,
42
+ marginMaintainerCap,
43
+ balanceManagers,
44
+ marginManagers,
45
+ coins,
46
+ pools,
47
+ marginPools,
48
+ packageIds,
49
+ pyth
50
+ }: {
51
+ network: HaneulClientTypes.Network;
52
+ address: string;
53
+ adminCap?: string;
54
+ marginAdminCap?: string;
55
+ marginMaintainerCap?: string;
56
+ balanceManagers?: {
57
+ [key: string]: BalanceManager;
58
+ };
59
+ marginManagers?: {
60
+ [key: string]: MarginManager;
61
+ };
62
+ coins?: CoinMap;
63
+ pools?: PoolMap;
64
+ marginPools?: MarginPoolMap;
65
+ packageIds?: DeepbookPackageIds;
66
+ pyth?: {
67
+ pythStateId: string;
68
+ wormholeStateId: string;
69
+ };
70
+ });
71
+ requirePyth(): void;
72
+ getCoin(key: string): Coin;
73
+ getPool(key: string): Pool;
74
+ getMarginPool(key: string): MarginPool;
75
+ /**
76
+ * @description Get the balance manager by key
77
+ * @param managerKey Key of the balance manager
78
+ * @returns The BalanceManager object
79
+ */
80
+ getBalanceManager(managerKey: string): BalanceManager;
81
+ /**
82
+ * @description Get the margin manager by key
83
+ * @param managerKey Key of the margin manager
84
+ * @returns The MarginManager object
85
+ */
86
+ getMarginManager(managerKey: string): MarginManager;
87
+ }
88
+ //#endregion
89
+ export { DEEP_SCALAR, DeepBookConfig, FLOAT_SCALAR, GAS_BUDGET, MAX_TIMESTAMP, POOL_CREATION_FEE_DEEP, PRICE_INFO_OBJECT_MAX_AGE_MS };
90
+ //# sourceMappingURL=config.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config.d.mts","names":[],"sources":["../../src/utils/config.ts"],"mappings":";;;;;;cAuBa,YAAA;AAAA,cACA,WAAA;AAAA,cAGA,aAAA;AAAA,cACA,4BAAA;AAAA,cAGA,UAAA;AAAA,cACA,sBAAA;AAAA,cAEA,cAAA;EAAA;EAIZ,OAAA,EAAS,iBAAA,CAAkB,OAAA;EAC3B,eAAA;IAAA,CAAoB,GAAA,WAAc,cAAA;EAAA;EAClC,cAAA;IAAA,CAAmB,GAAA,WAAc,aAAA;EAAA;EACjC,OAAA;EACA,IAAA;IACC,WAAA;IACA,eAAA;EAAA;EAGD,mBAAA;EACA,WAAA;EACA,gBAAA;EACA,iBAAA;EACA,kBAAA;EACA,sBAAA;EACA,QAAA;EACA,cAAA;EACA,mBAAA;EAEA,cAAA,EAAgB,sBAAA;;IAGf,OAAA;IACA,OAAA;IACA,QAAA;IACA,cAAA;IACA,mBAAA;IACA,eAAA;IACA,cAAA;IACA,KAAA;IACA,KAAA;IACA,WAAA;IACA,UAAA;IACA;EAAA;IAEA,OAAA,EAAS,iBAAA,CAAkB,OAAA;IAC3B,OAAA;IACA,QAAA;IACA,cAAA;IACA,mBAAA;IACA,eAAA;MAAA,CAAqB,GAAA,WAAc,cAAA;IAAA;IACnC,cAAA;MAAA,CAAoB,GAAA,WAAc,aAAA;IAAA;IAClC,KAAA,GAAQ,OAAA;IACR,KAAA,GAAQ,OAAA;IACR,WAAA,GAAc,aAAA;IACd,UAAA,GAAa,kBAAA;IACb,IAAA;MAAS,WAAA;MAAqB,eAAA;IAAA;EAAA;EAoD/B,WAAA,CAAA;EASA,OAAA,CAAQ,GAAA,WAAc,IAAA;EAStB,OAAA,CAAQ,GAAA,WAAc,IAAA;EAStB,aAAA,CAAc,GAAA,WAAc,UAAA;EAlFnB;;;;;EAgGT,iBAAA,CAAkB,UAAA,WAAqB,cAAA;EAAA;;;;;EAavC,gBAAA,CAAiB,UAAA,WAAqB,aAAA;AAAA"}
@@ -0,0 +1,104 @@
1
+ import { BalanceManagerContract } from "../transactions/balanceManager.mjs";
2
+ import { ConfigurationError, ErrorMessages, ResourceNotFoundError } from "./errors.mjs";
3
+ import { mainnetCoins, mainnetMarginPools, mainnetPackageIds, mainnetPools, mainnetPythConfigs, testnetCoins, testnetMarginPools, testnetPackageIds, testnetPools, testnetPythConfigs } from "./constants.mjs";
4
+ import { normalizeHaneulAddress } from "@haneullabs/haneul/utils";
5
+
6
+ //#region src/utils/config.ts
7
+ const FLOAT_SCALAR = 1e9;
8
+ const DEEP_SCALAR = 1e6;
9
+ const MAX_TIMESTAMP = 1844674407370955161n;
10
+ const PRICE_INFO_OBJECT_MAX_AGE_MS = 3e4;
11
+ const GAS_BUDGET = 25e7;
12
+ const POOL_CREATION_FEE_DEEP = 5e8;
13
+ var DeepBookConfig = class {
14
+ #coins;
15
+ #pools;
16
+ #marginPools;
17
+ constructor({ network, address, adminCap, marginAdminCap, marginMaintainerCap, balanceManagers, marginManagers, coins, pools, marginPools, packageIds, pyth }) {
18
+ this.network = network;
19
+ this.address = normalizeHaneulAddress(address);
20
+ this.adminCap = adminCap;
21
+ this.marginAdminCap = marginAdminCap;
22
+ this.marginMaintainerCap = marginMaintainerCap;
23
+ this.balanceManagers = balanceManagers || {};
24
+ this.marginManagers = marginManagers || {};
25
+ if (packageIds) {
26
+ this.DEEPBOOK_PACKAGE_ID = packageIds.DEEPBOOK_PACKAGE_ID || "";
27
+ this.REGISTRY_ID = packageIds.REGISTRY_ID || "";
28
+ this.DEEP_TREASURY_ID = packageIds.DEEP_TREASURY_ID || "";
29
+ this.MARGIN_PACKAGE_ID = packageIds.MARGIN_PACKAGE_ID || "";
30
+ this.MARGIN_REGISTRY_ID = packageIds.MARGIN_REGISTRY_ID || "";
31
+ this.LIQUIDATION_PACKAGE_ID = packageIds.LIQUIDATION_PACKAGE_ID || "";
32
+ this.#coins = coins || {};
33
+ this.#pools = pools || {};
34
+ this.#marginPools = marginPools || {};
35
+ this.pyth = pyth || {
36
+ pythStateId: "",
37
+ wormholeStateId: ""
38
+ };
39
+ } else if (network === "mainnet") {
40
+ this.#coins = coins || mainnetCoins;
41
+ this.#pools = pools || mainnetPools;
42
+ this.#marginPools = marginPools || mainnetMarginPools;
43
+ this.DEEPBOOK_PACKAGE_ID = mainnetPackageIds.DEEPBOOK_PACKAGE_ID;
44
+ this.REGISTRY_ID = mainnetPackageIds.REGISTRY_ID;
45
+ this.DEEP_TREASURY_ID = mainnetPackageIds.DEEP_TREASURY_ID;
46
+ this.MARGIN_PACKAGE_ID = mainnetPackageIds.MARGIN_PACKAGE_ID;
47
+ this.MARGIN_REGISTRY_ID = mainnetPackageIds.MARGIN_REGISTRY_ID;
48
+ this.LIQUIDATION_PACKAGE_ID = mainnetPackageIds.LIQUIDATION_PACKAGE_ID;
49
+ this.pyth = mainnetPythConfigs;
50
+ } else if (network === "testnet") {
51
+ this.#coins = coins || testnetCoins;
52
+ this.#pools = pools || testnetPools;
53
+ this.#marginPools = marginPools || testnetMarginPools;
54
+ this.DEEPBOOK_PACKAGE_ID = testnetPackageIds.DEEPBOOK_PACKAGE_ID;
55
+ this.REGISTRY_ID = testnetPackageIds.REGISTRY_ID;
56
+ this.DEEP_TREASURY_ID = testnetPackageIds.DEEP_TREASURY_ID;
57
+ this.MARGIN_PACKAGE_ID = testnetPackageIds.MARGIN_PACKAGE_ID;
58
+ this.MARGIN_REGISTRY_ID = testnetPackageIds.MARGIN_REGISTRY_ID;
59
+ this.LIQUIDATION_PACKAGE_ID = testnetPackageIds.LIQUIDATION_PACKAGE_ID;
60
+ this.pyth = testnetPythConfigs;
61
+ } else throw new Error(`Network '${network}' is not supported by default. Provide custom 'packageIds' for non-standard networks.`);
62
+ this.balanceManager = new BalanceManagerContract(this);
63
+ }
64
+ requirePyth() {
65
+ if (!this.pyth.pythStateId || !this.pyth.wormholeStateId) throw new ConfigurationError("Pyth configuration is required for price feed operations. Provide 'pyth' when using custom packageIds.");
66
+ }
67
+ getCoin(key) {
68
+ const coin = this.#coins[key];
69
+ if (!coin) throw new ResourceNotFoundError("Coin", key);
70
+ return coin;
71
+ }
72
+ getPool(key) {
73
+ const pool = this.#pools[key];
74
+ if (!pool) throw new ResourceNotFoundError("Pool", key);
75
+ return pool;
76
+ }
77
+ getMarginPool(key) {
78
+ const pool = this.#marginPools[key];
79
+ if (!pool) throw new ResourceNotFoundError("Margin pool", key);
80
+ return pool;
81
+ }
82
+ /**
83
+ * @description Get the balance manager by key
84
+ * @param managerKey Key of the balance manager
85
+ * @returns The BalanceManager object
86
+ */
87
+ getBalanceManager(managerKey) {
88
+ if (!Object.hasOwn(this.balanceManagers, managerKey)) throw new Error(ErrorMessages.BALANCE_MANAGER_NOT_FOUND(managerKey));
89
+ return this.balanceManagers[managerKey];
90
+ }
91
+ /**
92
+ * @description Get the margin manager by key
93
+ * @param managerKey Key of the margin manager
94
+ * @returns The MarginManager object
95
+ */
96
+ getMarginManager(managerKey) {
97
+ if (!Object.hasOwn(this.marginManagers, managerKey)) throw new Error(ErrorMessages.MARGIN_MANAGER_NOT_FOUND(managerKey));
98
+ return this.marginManagers[managerKey];
99
+ }
100
+ };
101
+
102
+ //#endregion
103
+ export { DEEP_SCALAR, DeepBookConfig, FLOAT_SCALAR, GAS_BUDGET, MAX_TIMESTAMP, POOL_CREATION_FEE_DEEP, PRICE_INFO_OBJECT_MAX_AGE_MS };
104
+ //# sourceMappingURL=config.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config.mjs","names":["#coins","#pools","#marginPools"],"sources":["../../src/utils/config.ts"],"sourcesContent":["// Copyright (c) Mysten Labs, Inc.\n// SPDX-License-Identifier: Apache-2.0\nimport type { HaneulClientTypes } from '@haneullabs/haneul/client';\nimport { normalizeHaneulAddress } from '@haneullabs/haneul/utils';\n\nimport { BalanceManagerContract } from '../transactions/balanceManager.js';\nimport type { BalanceManager, MarginManager, Coin, Pool, MarginPool } from '../types/index.js';\nimport type { CoinMap, PoolMap, MarginPoolMap, DeepbookPackageIds } from './constants.js';\nimport { ResourceNotFoundError, ConfigurationError, ErrorMessages } from './errors.js';\nimport {\n\tmainnetCoins,\n\tmainnetPackageIds,\n\tmainnetPools,\n\ttestnetCoins,\n\ttestnetPackageIds,\n\ttestnetPools,\n\tmainnetMarginPools,\n\ttestnetMarginPools,\n\tmainnetPythConfigs,\n\ttestnetPythConfigs,\n} from './constants.js';\n\n// Constants for numerical precision and scaling\nexport const FLOAT_SCALAR = 1_000_000_000; // 10^9 - Used for floating point representation\nexport const DEEP_SCALAR = 1_000_000; // 10^6 - DEEP token decimal places\n\n// Time-related constants\nexport const MAX_TIMESTAMP = 1_844_674_407_370_955_161n; // Maximum Unix timestamp (approximately year 2554)\nexport const PRICE_INFO_OBJECT_MAX_AGE_MS = 30_000; // 30 seconds in milliseconds\n\n// Transaction and fee constants\nexport const GAS_BUDGET = 250_000_000; // 0.25 HANEUL (0.5 * 500M GEUNHWA)\nexport const POOL_CREATION_FEE_DEEP = 500_000_000; // 500 DEEP tokens (500 * 10^6)\n\nexport class DeepBookConfig {\n\t#coins: CoinMap;\n\t#pools: PoolMap;\n\t#marginPools: MarginPoolMap;\n\tnetwork: HaneulClientTypes.Network;\n\tbalanceManagers: { [key: string]: BalanceManager };\n\tmarginManagers: { [key: string]: MarginManager };\n\taddress: string;\n\tpyth: {\n\t\tpythStateId: string;\n\t\twormholeStateId: string;\n\t};\n\n\tDEEPBOOK_PACKAGE_ID: string;\n\tREGISTRY_ID: string;\n\tDEEP_TREASURY_ID: string;\n\tMARGIN_PACKAGE_ID: string;\n\tMARGIN_REGISTRY_ID: string;\n\tLIQUIDATION_PACKAGE_ID: string;\n\tadminCap?: string;\n\tmarginAdminCap?: string;\n\tmarginMaintainerCap?: string;\n\n\tbalanceManager: BalanceManagerContract;\n\n\tconstructor({\n\t\tnetwork,\n\t\taddress,\n\t\tadminCap,\n\t\tmarginAdminCap,\n\t\tmarginMaintainerCap,\n\t\tbalanceManagers,\n\t\tmarginManagers,\n\t\tcoins,\n\t\tpools,\n\t\tmarginPools,\n\t\tpackageIds,\n\t\tpyth,\n\t}: {\n\t\tnetwork: HaneulClientTypes.Network;\n\t\taddress: string;\n\t\tadminCap?: string;\n\t\tmarginAdminCap?: string;\n\t\tmarginMaintainerCap?: string;\n\t\tbalanceManagers?: { [key: string]: BalanceManager };\n\t\tmarginManagers?: { [key: string]: MarginManager };\n\t\tcoins?: CoinMap;\n\t\tpools?: PoolMap;\n\t\tmarginPools?: MarginPoolMap;\n\t\tpackageIds?: DeepbookPackageIds;\n\t\tpyth?: { pythStateId: string; wormholeStateId: string };\n\t}) {\n\t\tthis.network = network;\n\t\tthis.address = normalizeHaneulAddress(address);\n\t\tthis.adminCap = adminCap;\n\t\tthis.marginAdminCap = marginAdminCap;\n\t\tthis.marginMaintainerCap = marginMaintainerCap;\n\t\tthis.balanceManagers = balanceManagers || {};\n\t\tthis.marginManagers = marginManagers || {};\n\n\t\tif (packageIds) {\n\t\t\tthis.DEEPBOOK_PACKAGE_ID = packageIds.DEEPBOOK_PACKAGE_ID || '';\n\t\t\tthis.REGISTRY_ID = packageIds.REGISTRY_ID || '';\n\t\t\tthis.DEEP_TREASURY_ID = packageIds.DEEP_TREASURY_ID || '';\n\t\t\tthis.MARGIN_PACKAGE_ID = packageIds.MARGIN_PACKAGE_ID || '';\n\t\t\tthis.MARGIN_REGISTRY_ID = packageIds.MARGIN_REGISTRY_ID || '';\n\t\t\tthis.LIQUIDATION_PACKAGE_ID = packageIds.LIQUIDATION_PACKAGE_ID || '';\n\t\t\tthis.#coins = coins || {};\n\t\t\tthis.#pools = pools || {};\n\t\t\tthis.#marginPools = marginPools || {};\n\t\t\tthis.pyth = pyth || { pythStateId: '', wormholeStateId: '' };\n\t\t} else if (network === 'mainnet') {\n\t\t\tthis.#coins = coins || mainnetCoins;\n\t\t\tthis.#pools = pools || mainnetPools;\n\t\t\tthis.#marginPools = marginPools || mainnetMarginPools;\n\t\t\tthis.DEEPBOOK_PACKAGE_ID = mainnetPackageIds.DEEPBOOK_PACKAGE_ID;\n\t\t\tthis.REGISTRY_ID = mainnetPackageIds.REGISTRY_ID;\n\t\t\tthis.DEEP_TREASURY_ID = mainnetPackageIds.DEEP_TREASURY_ID;\n\t\t\tthis.MARGIN_PACKAGE_ID = mainnetPackageIds.MARGIN_PACKAGE_ID;\n\t\t\tthis.MARGIN_REGISTRY_ID = mainnetPackageIds.MARGIN_REGISTRY_ID;\n\t\t\tthis.LIQUIDATION_PACKAGE_ID = mainnetPackageIds.LIQUIDATION_PACKAGE_ID;\n\t\t\tthis.pyth = mainnetPythConfigs;\n\t\t} else if (network === 'testnet') {\n\t\t\tthis.#coins = coins || testnetCoins;\n\t\t\tthis.#pools = pools || testnetPools;\n\t\t\tthis.#marginPools = marginPools || testnetMarginPools;\n\t\t\tthis.DEEPBOOK_PACKAGE_ID = testnetPackageIds.DEEPBOOK_PACKAGE_ID;\n\t\t\tthis.REGISTRY_ID = testnetPackageIds.REGISTRY_ID;\n\t\t\tthis.DEEP_TREASURY_ID = testnetPackageIds.DEEP_TREASURY_ID;\n\t\t\tthis.MARGIN_PACKAGE_ID = testnetPackageIds.MARGIN_PACKAGE_ID;\n\t\t\tthis.MARGIN_REGISTRY_ID = testnetPackageIds.MARGIN_REGISTRY_ID;\n\t\t\tthis.LIQUIDATION_PACKAGE_ID = testnetPackageIds.LIQUIDATION_PACKAGE_ID;\n\t\t\tthis.pyth = testnetPythConfigs;\n\t\t} else {\n\t\t\tthrow new Error(\n\t\t\t\t`Network '${network}' is not supported by default. Provide custom 'packageIds' for non-standard networks.`,\n\t\t\t);\n\t\t}\n\n\t\tthis.balanceManager = new BalanceManagerContract(this);\n\t}\n\n\trequirePyth() {\n\t\tif (!this.pyth.pythStateId || !this.pyth.wormholeStateId) {\n\t\t\tthrow new ConfigurationError(\n\t\t\t\t\"Pyth configuration is required for price feed operations. Provide 'pyth' when using custom packageIds.\",\n\t\t\t);\n\t\t}\n\t}\n\n\t// Getters\n\tgetCoin(key: string): Coin {\n\t\tconst coin = this.#coins[key];\n\t\tif (!coin) {\n\t\t\tthrow new ResourceNotFoundError('Coin', key);\n\t\t}\n\n\t\treturn coin;\n\t}\n\n\tgetPool(key: string): Pool {\n\t\tconst pool = this.#pools[key];\n\t\tif (!pool) {\n\t\t\tthrow new ResourceNotFoundError('Pool', key);\n\t\t}\n\n\t\treturn pool;\n\t}\n\n\tgetMarginPool(key: string): MarginPool {\n\t\tconst pool = this.#marginPools[key];\n\t\tif (!pool) {\n\t\t\tthrow new ResourceNotFoundError('Margin pool', key);\n\t\t}\n\n\t\treturn pool;\n\t}\n\n\t/**\n\t * @description Get the balance manager by key\n\t * @param managerKey Key of the balance manager\n\t * @returns The BalanceManager object\n\t */\n\tgetBalanceManager(managerKey: string): BalanceManager {\n\t\tif (!Object.hasOwn(this.balanceManagers, managerKey)) {\n\t\t\tthrow new Error(ErrorMessages.BALANCE_MANAGER_NOT_FOUND(managerKey));\n\t\t}\n\n\t\treturn this.balanceManagers[managerKey];\n\t}\n\n\t/**\n\t * @description Get the margin manager by key\n\t * @param managerKey Key of the margin manager\n\t * @returns The MarginManager object\n\t */\n\tgetMarginManager(managerKey: string): MarginManager {\n\t\tif (!Object.hasOwn(this.marginManagers, managerKey)) {\n\t\t\tthrow new Error(ErrorMessages.MARGIN_MANAGER_NOT_FOUND(managerKey));\n\t\t}\n\n\t\treturn this.marginManagers[managerKey];\n\t}\n}\n"],"mappings":";;;;;;AAuBA,MAAa,eAAe;AAC5B,MAAa,cAAc;AAG3B,MAAa,gBAAgB;AAC7B,MAAa,+BAA+B;AAG5C,MAAa,aAAa;AAC1B,MAAa,yBAAyB;AAEtC,IAAa,iBAAb,MAA4B;CAC3B;CACA;CACA;CAsBA,YAAY,EACX,SACA,SACA,UACA,gBACA,qBACA,iBACA,gBACA,OACA,OACA,aACA,YACA,QAcE;AACF,OAAK,UAAU;AACf,OAAK,UAAU,uBAAuB,QAAQ;AAC9C,OAAK,WAAW;AAChB,OAAK,iBAAiB;AACtB,OAAK,sBAAsB;AAC3B,OAAK,kBAAkB,mBAAmB,EAAE;AAC5C,OAAK,iBAAiB,kBAAkB,EAAE;AAE1C,MAAI,YAAY;AACf,QAAK,sBAAsB,WAAW,uBAAuB;AAC7D,QAAK,cAAc,WAAW,eAAe;AAC7C,QAAK,mBAAmB,WAAW,oBAAoB;AACvD,QAAK,oBAAoB,WAAW,qBAAqB;AACzD,QAAK,qBAAqB,WAAW,sBAAsB;AAC3D,QAAK,yBAAyB,WAAW,0BAA0B;AACnE,SAAKA,QAAS,SAAS,EAAE;AACzB,SAAKC,QAAS,SAAS,EAAE;AACzB,SAAKC,cAAe,eAAe,EAAE;AACrC,QAAK,OAAO,QAAQ;IAAE,aAAa;IAAI,iBAAiB;IAAI;aAClD,YAAY,WAAW;AACjC,SAAKF,QAAS,SAAS;AACvB,SAAKC,QAAS,SAAS;AACvB,SAAKC,cAAe,eAAe;AACnC,QAAK,sBAAsB,kBAAkB;AAC7C,QAAK,cAAc,kBAAkB;AACrC,QAAK,mBAAmB,kBAAkB;AAC1C,QAAK,oBAAoB,kBAAkB;AAC3C,QAAK,qBAAqB,kBAAkB;AAC5C,QAAK,yBAAyB,kBAAkB;AAChD,QAAK,OAAO;aACF,YAAY,WAAW;AACjC,SAAKF,QAAS,SAAS;AACvB,SAAKC,QAAS,SAAS;AACvB,SAAKC,cAAe,eAAe;AACnC,QAAK,sBAAsB,kBAAkB;AAC7C,QAAK,cAAc,kBAAkB;AACrC,QAAK,mBAAmB,kBAAkB;AAC1C,QAAK,oBAAoB,kBAAkB;AAC3C,QAAK,qBAAqB,kBAAkB;AAC5C,QAAK,yBAAyB,kBAAkB;AAChD,QAAK,OAAO;QAEZ,OAAM,IAAI,MACT,YAAY,QAAQ,uFACpB;AAGF,OAAK,iBAAiB,IAAI,uBAAuB,KAAK;;CAGvD,cAAc;AACb,MAAI,CAAC,KAAK,KAAK,eAAe,CAAC,KAAK,KAAK,gBACxC,OAAM,IAAI,mBACT,yGACA;;CAKH,QAAQ,KAAmB;EAC1B,MAAM,OAAO,MAAKF,MAAO;AACzB,MAAI,CAAC,KACJ,OAAM,IAAI,sBAAsB,QAAQ,IAAI;AAG7C,SAAO;;CAGR,QAAQ,KAAmB;EAC1B,MAAM,OAAO,MAAKC,MAAO;AACzB,MAAI,CAAC,KACJ,OAAM,IAAI,sBAAsB,QAAQ,IAAI;AAG7C,SAAO;;CAGR,cAAc,KAAyB;EACtC,MAAM,OAAO,MAAKC,YAAa;AAC/B,MAAI,CAAC,KACJ,OAAM,IAAI,sBAAsB,eAAe,IAAI;AAGpD,SAAO;;;;;;;CAQR,kBAAkB,YAAoC;AACrD,MAAI,CAAC,OAAO,OAAO,KAAK,iBAAiB,WAAW,CACnD,OAAM,IAAI,MAAM,cAAc,0BAA0B,WAAW,CAAC;AAGrE,SAAO,KAAK,gBAAgB;;;;;;;CAQ7B,iBAAiB,YAAmC;AACnD,MAAI,CAAC,OAAO,OAAO,KAAK,gBAAgB,WAAW,CAClD,OAAM,IAAI,MAAM,cAAc,yBAAyB,WAAW,CAAC;AAGpE,SAAO,KAAK,eAAe"}