extended-typescript-sdk 0.0.4 → 0.0.6

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 (433) hide show
  1. package/README.md +175 -0
  2. package/dist/cjs/config.d.ts.map +1 -0
  3. package/dist/cjs/config.js.map +1 -0
  4. package/dist/cjs/errors.d.ts.map +1 -0
  5. package/dist/cjs/errors.js.map +1 -0
  6. package/dist/{index.d.ts → cjs/index.d.ts} +28 -28
  7. package/dist/cjs/index.d.ts.map +1 -0
  8. package/dist/{index.js → cjs/index.js} +98 -98
  9. package/dist/cjs/index.js.map +1 -0
  10. package/dist/cjs/package.json +3 -0
  11. package/dist/{perpetual → cjs/perpetual}/accounts.d.ts +2 -2
  12. package/dist/cjs/perpetual/accounts.d.ts.map +1 -0
  13. package/dist/{perpetual → cjs/perpetual}/accounts.js +14 -14
  14. package/dist/cjs/perpetual/accounts.js.map +1 -0
  15. package/dist/{perpetual → cjs/perpetual}/amounts.d.ts +1 -1
  16. package/dist/cjs/perpetual/amounts.d.ts.map +1 -0
  17. package/dist/cjs/perpetual/amounts.js.map +1 -0
  18. package/dist/{perpetual → cjs/perpetual}/assets.d.ts +1 -1
  19. package/dist/cjs/perpetual/assets.d.ts.map +1 -0
  20. package/dist/{perpetual → cjs/perpetual}/assets.js +2 -2
  21. package/dist/cjs/perpetual/assets.js.map +1 -0
  22. package/dist/{perpetual → cjs/perpetual}/bridges.d.ts +1 -1
  23. package/dist/cjs/perpetual/bridges.d.ts.map +1 -0
  24. package/dist/{perpetual → cjs/perpetual}/bridges.js +4 -4
  25. package/dist/cjs/perpetual/bridges.js.map +1 -0
  26. package/dist/{perpetual → cjs/perpetual}/candles.d.ts +1 -1
  27. package/dist/cjs/perpetual/candles.d.ts.map +1 -0
  28. package/dist/{perpetual → cjs/perpetual}/candles.js +2 -2
  29. package/dist/cjs/perpetual/candles.js.map +1 -0
  30. package/dist/{perpetual → cjs/perpetual}/clients.d.ts +1 -1
  31. package/dist/cjs/perpetual/clients.d.ts.map +1 -0
  32. package/dist/{perpetual → cjs/perpetual}/clients.js +2 -2
  33. package/dist/cjs/perpetual/clients.js.map +1 -0
  34. package/dist/cjs/perpetual/configuration.d.ts.map +1 -0
  35. package/dist/cjs/perpetual/configuration.js.map +1 -0
  36. package/dist/cjs/perpetual/crypto/signer.d.ts.map +1 -0
  37. package/dist/{perpetual → cjs/perpetual}/crypto/signer.js +77 -48
  38. package/dist/cjs/perpetual/crypto/signer.js.map +1 -0
  39. package/dist/cjs/perpetual/custom-signer.d.ts.map +1 -0
  40. package/dist/cjs/perpetual/custom-signer.js.map +1 -0
  41. package/dist/{perpetual → cjs/perpetual}/fees.d.ts +1 -1
  42. package/dist/cjs/perpetual/fees.d.ts.map +1 -0
  43. package/dist/{perpetual → cjs/perpetual}/fees.js +2 -2
  44. package/dist/cjs/perpetual/fees.js.map +1 -0
  45. package/dist/{perpetual → cjs/perpetual}/funding-rates.d.ts +1 -1
  46. package/dist/cjs/perpetual/funding-rates.d.ts.map +1 -0
  47. package/dist/{perpetual → cjs/perpetual}/funding-rates.js +2 -2
  48. package/dist/cjs/perpetual/funding-rates.js.map +1 -0
  49. package/dist/{perpetual → cjs/perpetual}/markets.d.ts +2 -2
  50. package/dist/cjs/perpetual/markets.d.ts.map +1 -0
  51. package/dist/{perpetual → cjs/perpetual}/markets.js +9 -9
  52. package/dist/cjs/perpetual/markets.js.map +1 -0
  53. package/dist/{perpetual → cjs/perpetual}/order-object-settlement.d.ts +5 -5
  54. package/dist/cjs/perpetual/order-object-settlement.d.ts.map +1 -0
  55. package/dist/{perpetual → cjs/perpetual}/order-object-settlement.js +13 -13
  56. package/dist/cjs/perpetual/order-object-settlement.js.map +1 -0
  57. package/dist/{perpetual → cjs/perpetual}/order-object.d.ts +4 -4
  58. package/dist/cjs/perpetual/order-object.d.ts.map +1 -0
  59. package/dist/cjs/perpetual/order-object.js +90 -0
  60. package/dist/cjs/perpetual/order-object.js.map +1 -0
  61. package/dist/{perpetual → cjs/perpetual}/orderbooks.d.ts +1 -1
  62. package/dist/cjs/perpetual/orderbooks.d.ts.map +1 -0
  63. package/dist/{perpetual → cjs/perpetual}/orderbooks.js +3 -3
  64. package/dist/cjs/perpetual/orderbooks.js.map +1 -0
  65. package/dist/{perpetual → cjs/perpetual}/orders.d.ts +1 -1
  66. package/dist/cjs/perpetual/orders.d.ts.map +1 -0
  67. package/dist/{perpetual → cjs/perpetual}/orders.js +7 -7
  68. package/dist/cjs/perpetual/orders.js.map +1 -0
  69. package/dist/{perpetual → cjs/perpetual}/positions.d.ts +1 -1
  70. package/dist/cjs/perpetual/positions.d.ts.map +1 -0
  71. package/dist/{perpetual → cjs/perpetual}/positions.js +4 -4
  72. package/dist/cjs/perpetual/positions.js.map +1 -0
  73. package/dist/{perpetual → cjs/perpetual}/stream-client/perpetual-stream-connection.d.ts +1 -1
  74. package/dist/cjs/perpetual/stream-client/perpetual-stream-connection.d.ts.map +1 -0
  75. package/dist/{perpetual → cjs/perpetual}/stream-client/perpetual-stream-connection.js +4 -4
  76. package/dist/cjs/perpetual/stream-client/perpetual-stream-connection.js.map +1 -0
  77. package/dist/{perpetual → cjs/perpetual}/stream-client/stream-client.d.ts +1 -1
  78. package/dist/cjs/perpetual/stream-client/stream-client.d.ts.map +1 -0
  79. package/dist/{perpetual → cjs/perpetual}/stream-client/stream-client.js +16 -16
  80. package/dist/cjs/perpetual/stream-client/stream-client.js.map +1 -0
  81. package/dist/{perpetual → cjs/perpetual}/trades.d.ts +2 -2
  82. package/dist/cjs/perpetual/trades.d.ts.map +1 -0
  83. package/dist/{perpetual → cjs/perpetual}/trades.js +3 -3
  84. package/dist/cjs/perpetual/trades.js.map +1 -0
  85. package/dist/{perpetual → cjs/perpetual}/trading-client/account-module.d.ts +9 -9
  86. package/dist/cjs/perpetual/trading-client/account-module.d.ts.map +1 -0
  87. package/dist/{perpetual → cjs/perpetual}/trading-client/account-module.js +32 -32
  88. package/dist/cjs/perpetual/trading-client/account-module.js.map +1 -0
  89. package/dist/{perpetual → cjs/perpetual}/trading-client/base-module.d.ts +2 -2
  90. package/dist/cjs/perpetual/trading-client/base-module.d.ts.map +1 -0
  91. package/dist/{perpetual → cjs/perpetual}/trading-client/base-module.js +5 -5
  92. package/dist/cjs/perpetual/trading-client/base-module.js.map +1 -0
  93. package/dist/{perpetual → cjs/perpetual}/trading-client/info-module.d.ts +3 -3
  94. package/dist/cjs/perpetual/trading-client/info-module.d.ts.map +1 -0
  95. package/dist/{perpetual → cjs/perpetual}/trading-client/info-module.js +6 -6
  96. package/dist/cjs/perpetual/trading-client/info-module.js.map +1 -0
  97. package/dist/{perpetual → cjs/perpetual}/trading-client/markets-information-module.d.ts +3 -3
  98. package/dist/cjs/perpetual/trading-client/markets-information-module.d.ts.map +1 -0
  99. package/dist/{perpetual → cjs/perpetual}/trading-client/markets-information-module.js +14 -14
  100. package/dist/cjs/perpetual/trading-client/markets-information-module.js.map +1 -0
  101. package/dist/{perpetual → cjs/perpetual}/trading-client/order-management-module.d.ts +4 -4
  102. package/dist/cjs/perpetual/trading-client/order-management-module.d.ts.map +1 -0
  103. package/dist/{perpetual → cjs/perpetual}/trading-client/order-management-module.js +9 -9
  104. package/dist/cjs/perpetual/trading-client/order-management-module.js.map +1 -0
  105. package/dist/{perpetual → cjs/perpetual}/trading-client/testnet-module.d.ts +4 -4
  106. package/dist/cjs/perpetual/trading-client/testnet-module.d.ts.map +1 -0
  107. package/dist/{perpetual → cjs/perpetual}/trading-client/testnet-module.js +6 -6
  108. package/dist/cjs/perpetual/trading-client/testnet-module.js.map +1 -0
  109. package/dist/{perpetual → cjs/perpetual}/trading-client/trading-client.d.ts +10 -10
  110. package/dist/cjs/perpetual/trading-client/trading-client.d.ts.map +1 -0
  111. package/dist/{perpetual → cjs/perpetual}/trading-client/trading-client.js +14 -14
  112. package/dist/cjs/perpetual/trading-client/trading-client.js.map +1 -0
  113. package/dist/{perpetual → cjs/perpetual}/transfer-object.d.ts +3 -3
  114. package/dist/cjs/perpetual/transfer-object.d.ts.map +1 -0
  115. package/dist/{perpetual → cjs/perpetual}/transfer-object.js +11 -11
  116. package/dist/cjs/perpetual/transfer-object.js.map +1 -0
  117. package/dist/{perpetual → cjs/perpetual}/transfers.d.ts +2 -2
  118. package/dist/cjs/perpetual/transfers.d.ts.map +1 -0
  119. package/dist/{perpetual → cjs/perpetual}/transfers.js +5 -5
  120. package/dist/cjs/perpetual/transfers.js.map +1 -0
  121. package/dist/{perpetual → cjs/perpetual}/user-client/onboarding.d.ts +2 -2
  122. package/dist/cjs/perpetual/user-client/onboarding.d.ts.map +1 -0
  123. package/dist/{perpetual → cjs/perpetual}/user-client/onboarding.js +8 -8
  124. package/dist/cjs/perpetual/user-client/onboarding.js.map +1 -0
  125. package/dist/{perpetual → cjs/perpetual}/user-client/user-client.d.ts +3 -3
  126. package/dist/cjs/perpetual/user-client/user-client.d.ts.map +1 -0
  127. package/dist/{perpetual → cjs/perpetual}/user-client/user-client.js +25 -25
  128. package/dist/cjs/perpetual/user-client/user-client.js.map +1 -0
  129. package/dist/{perpetual → cjs/perpetual}/withdrawal-object.d.ts +3 -3
  130. package/dist/cjs/perpetual/withdrawal-object.d.ts.map +1 -0
  131. package/dist/{perpetual → cjs/perpetual}/withdrawal-object.js +11 -11
  132. package/dist/cjs/perpetual/withdrawal-object.js.map +1 -0
  133. package/dist/{perpetual → cjs/perpetual}/withdrawals.d.ts +2 -2
  134. package/dist/cjs/perpetual/withdrawals.d.ts.map +1 -0
  135. package/dist/{perpetual → cjs/perpetual}/withdrawals.js +4 -4
  136. package/dist/cjs/perpetual/withdrawals.js.map +1 -0
  137. package/dist/cjs/utils/date.d.ts.map +1 -0
  138. package/dist/cjs/utils/date.js.map +1 -0
  139. package/dist/cjs/utils/env.d.ts.map +1 -0
  140. package/dist/cjs/utils/env.js.map +1 -0
  141. package/dist/{utils → cjs/utils}/http.d.ts +1 -1
  142. package/dist/cjs/utils/http.d.ts.map +1 -0
  143. package/dist/{utils → cjs/utils}/http.js +14 -14
  144. package/dist/cjs/utils/http.js.map +1 -0
  145. package/dist/cjs/utils/model.d.ts.map +1 -0
  146. package/dist/cjs/utils/model.js.map +1 -0
  147. package/dist/cjs/utils/nonce.d.ts.map +1 -0
  148. package/dist/cjs/utils/nonce.js.map +1 -0
  149. package/dist/cjs/utils/string.d.ts.map +1 -0
  150. package/dist/cjs/utils/string.js.map +1 -0
  151. package/dist/esm/config.d.ts +11 -0
  152. package/dist/esm/config.d.ts.map +1 -0
  153. package/dist/esm/config.js +12 -0
  154. package/dist/esm/config.js.map +1 -0
  155. package/dist/esm/errors.d.ts +25 -0
  156. package/dist/esm/errors.d.ts.map +1 -0
  157. package/dist/esm/errors.js +38 -0
  158. package/dist/esm/errors.js.map +1 -0
  159. package/dist/esm/index.d.ts +40 -0
  160. package/dist/esm/index.d.ts.map +1 -0
  161. package/dist/esm/index.js +58 -0
  162. package/dist/esm/index.js.map +1 -0
  163. package/dist/esm/package.json +3 -0
  164. package/dist/esm/perpetual/accounts.d.ts +147 -0
  165. package/dist/esm/perpetual/accounts.d.ts.map +1 -0
  166. package/dist/esm/perpetual/accounts.js +225 -0
  167. package/dist/esm/perpetual/accounts.js.map +1 -0
  168. package/dist/esm/perpetual/amounts.d.ts +41 -0
  169. package/dist/esm/perpetual/amounts.d.ts.map +1 -0
  170. package/dist/esm/perpetual/amounts.js +70 -0
  171. package/dist/esm/perpetual/amounts.js.map +1 -0
  172. package/dist/esm/perpetual/assets.d.ts +74 -0
  173. package/dist/esm/perpetual/assets.d.ts.map +1 -0
  174. package/dist/esm/perpetual/assets.js +111 -0
  175. package/dist/esm/perpetual/assets.js.map +1 -0
  176. package/dist/esm/perpetual/bridges.d.ts +29 -0
  177. package/dist/esm/perpetual/bridges.d.ts.map +1 -0
  178. package/dist/esm/perpetual/bridges.js +39 -0
  179. package/dist/esm/perpetual/bridges.js.map +1 -0
  180. package/dist/esm/perpetual/candles.d.ts +26 -0
  181. package/dist/esm/perpetual/candles.d.ts.map +1 -0
  182. package/dist/esm/perpetual/candles.js +25 -0
  183. package/dist/esm/perpetual/candles.js.map +1 -0
  184. package/dist/esm/perpetual/clients.d.ts +15 -0
  185. package/dist/esm/perpetual/clients.d.ts.map +1 -0
  186. package/dist/esm/perpetual/clients.js +21 -0
  187. package/dist/esm/perpetual/clients.js.map +1 -0
  188. package/dist/esm/perpetual/configuration.d.ts +39 -0
  189. package/dist/esm/perpetual/configuration.d.ts.map +1 -0
  190. package/dist/esm/perpetual/configuration.js +56 -0
  191. package/dist/esm/perpetual/configuration.js.map +1 -0
  192. package/dist/esm/perpetual/crypto/signer.d.ts +164 -0
  193. package/dist/esm/perpetual/crypto/signer.d.ts.map +1 -0
  194. package/dist/esm/perpetual/crypto/signer.js +319 -0
  195. package/dist/esm/perpetual/crypto/signer.js.map +1 -0
  196. package/dist/esm/perpetual/custom-signer.d.ts +51 -0
  197. package/dist/esm/perpetual/custom-signer.d.ts.map +1 -0
  198. package/dist/esm/perpetual/custom-signer.js +15 -0
  199. package/dist/esm/perpetual/custom-signer.js.map +1 -0
  200. package/dist/esm/perpetual/fees.d.ts +20 -0
  201. package/dist/esm/perpetual/fees.d.ts.map +1 -0
  202. package/dist/esm/perpetual/fees.js +28 -0
  203. package/dist/esm/perpetual/fees.js.map +1 -0
  204. package/dist/esm/perpetual/funding-rates.d.ts +15 -0
  205. package/dist/esm/perpetual/funding-rates.d.ts.map +1 -0
  206. package/dist/esm/perpetual/funding-rates.js +19 -0
  207. package/dist/esm/perpetual/funding-rates.js.map +1 -0
  208. package/dist/esm/perpetual/markets.d.ts +83 -0
  209. package/dist/esm/perpetual/markets.d.ts.map +1 -0
  210. package/dist/esm/perpetual/markets.js +113 -0
  211. package/dist/esm/perpetual/markets.js.map +1 -0
  212. package/dist/esm/perpetual/order-object-settlement.d.ts +43 -0
  213. package/dist/esm/perpetual/order-object-settlement.d.ts.map +1 -0
  214. package/dist/esm/perpetual/order-object-settlement.js +111 -0
  215. package/dist/esm/perpetual/order-object-settlement.js.map +1 -0
  216. package/dist/esm/perpetual/order-object.d.ts +38 -0
  217. package/dist/esm/perpetual/order-object.d.ts.map +1 -0
  218. package/dist/esm/perpetual/order-object.js +82 -0
  219. package/dist/esm/perpetual/order-object.js.map +1 -0
  220. package/dist/esm/perpetual/orderbooks.d.ts +23 -0
  221. package/dist/esm/perpetual/orderbooks.d.ts.map +1 -0
  222. package/dist/esm/perpetual/orderbooks.js +31 -0
  223. package/dist/esm/perpetual/orderbooks.js.map +1 -0
  224. package/dist/esm/perpetual/orders.d.ts +207 -0
  225. package/dist/esm/perpetual/orders.d.ts.map +1 -0
  226. package/dist/esm/perpetual/orders.js +257 -0
  227. package/dist/esm/perpetual/orders.js.map +1 -0
  228. package/dist/esm/perpetual/positions.d.ts +80 -0
  229. package/dist/esm/perpetual/positions.d.ts.map +1 -0
  230. package/dist/esm/perpetual/positions.js +88 -0
  231. package/dist/esm/perpetual/positions.js.map +1 -0
  232. package/dist/esm/perpetual/stream-client/perpetual-stream-connection.d.ts +47 -0
  233. package/dist/esm/perpetual/stream-client/perpetual-stream-connection.d.ts.map +1 -0
  234. package/dist/esm/perpetual/stream-client/perpetual-stream-connection.js +118 -0
  235. package/dist/esm/perpetual/stream-client/perpetual-stream-connection.js.map +1 -0
  236. package/dist/esm/perpetual/stream-client/stream-client.d.ts +62 -0
  237. package/dist/esm/perpetual/stream-client/stream-client.d.ts.map +1 -0
  238. package/dist/esm/perpetual/stream-client/stream-client.js +103 -0
  239. package/dist/esm/perpetual/stream-client/stream-client.js.map +1 -0
  240. package/dist/esm/perpetual/trades.d.ts +44 -0
  241. package/dist/esm/perpetual/trades.d.ts.map +1 -0
  242. package/dist/esm/perpetual/trades.js +43 -0
  243. package/dist/esm/perpetual/trades.js.map +1 -0
  244. package/dist/esm/perpetual/trading-client/account-module.d.ts +192 -0
  245. package/dist/esm/perpetual/trading-client/account-module.d.ts.map +1 -0
  246. package/dist/esm/perpetual/trading-client/account-module.js +355 -0
  247. package/dist/esm/perpetual/trading-client/account-module.js.map +1 -0
  248. package/dist/esm/perpetual/trading-client/base-module.d.ts +27 -0
  249. package/dist/esm/perpetual/trading-client/base-module.d.ts.map +1 -0
  250. package/dist/esm/perpetual/trading-client/base-module.js +45 -0
  251. package/dist/esm/perpetual/trading-client/base-module.js.map +1 -0
  252. package/dist/esm/perpetual/trading-client/info-module.d.ts +24 -0
  253. package/dist/esm/perpetual/trading-client/info-module.d.ts.map +1 -0
  254. package/dist/esm/perpetual/trading-client/info-module.js +29 -0
  255. package/dist/esm/perpetual/trading-client/info-module.js.map +1 -0
  256. package/dist/esm/perpetual/trading-client/markets-information-module.d.ts +53 -0
  257. package/dist/esm/perpetual/trading-client/markets-information-module.d.ts.map +1 -0
  258. package/dist/esm/perpetual/trading-client/markets-information-module.js +102 -0
  259. package/dist/esm/perpetual/trading-client/markets-information-module.js.map +1 -0
  260. package/dist/esm/perpetual/trading-client/order-management-module.d.ts +40 -0
  261. package/dist/esm/perpetual/trading-client/order-management-module.d.ts.map +1 -0
  262. package/dist/esm/perpetual/trading-client/order-management-module.js +67 -0
  263. package/dist/esm/perpetual/trading-client/order-management-module.js.map +1 -0
  264. package/dist/esm/perpetual/trading-client/testnet-module.d.ts +27 -0
  265. package/dist/esm/perpetual/trading-client/testnet-module.d.ts.map +1 -0
  266. package/dist/esm/perpetual/trading-client/testnet-module.js +41 -0
  267. package/dist/esm/perpetual/trading-client/testnet-module.js.map +1 -0
  268. package/dist/esm/perpetual/trading-client/trading-client.d.ts +75 -0
  269. package/dist/esm/perpetual/trading-client/trading-client.d.ts.map +1 -0
  270. package/dist/esm/perpetual/trading-client/trading-client.js +111 -0
  271. package/dist/esm/perpetual/trading-client/trading-client.js.map +1 -0
  272. package/dist/esm/perpetual/transfer-object.d.ts +12 -0
  273. package/dist/esm/perpetual/transfer-object.d.ts.map +1 -0
  274. package/dist/esm/perpetual/transfer-object.js +54 -0
  275. package/dist/esm/perpetual/transfer-object.js.map +1 -0
  276. package/dist/esm/perpetual/transfers.d.ts +54 -0
  277. package/dist/esm/perpetual/transfers.d.ts.map +1 -0
  278. package/dist/esm/perpetual/transfers.js +83 -0
  279. package/dist/esm/perpetual/transfers.js.map +1 -0
  280. package/dist/esm/perpetual/user-client/onboarding.d.ts +101 -0
  281. package/dist/esm/perpetual/user-client/onboarding.d.ts.map +1 -0
  282. package/dist/esm/perpetual/user-client/onboarding.js +234 -0
  283. package/dist/esm/perpetual/user-client/onboarding.js.map +1 -0
  284. package/dist/esm/perpetual/user-client/user-client.d.ts +45 -0
  285. package/dist/esm/perpetual/user-client/user-client.d.ts.map +1 -0
  286. package/dist/esm/perpetual/user-client/user-client.js +181 -0
  287. package/dist/esm/perpetual/user-client/user-client.js.map +1 -0
  288. package/dist/esm/perpetual/withdrawal-object.d.ts +12 -0
  289. package/dist/esm/perpetual/withdrawal-object.d.ts.map +1 -0
  290. package/dist/esm/perpetual/withdrawal-object.js +48 -0
  291. package/dist/esm/perpetual/withdrawal-object.js.map +1 -0
  292. package/dist/esm/perpetual/withdrawals.d.ts +40 -0
  293. package/dist/esm/perpetual/withdrawals.d.ts.map +1 -0
  294. package/dist/esm/perpetual/withdrawals.js +59 -0
  295. package/dist/esm/perpetual/withdrawals.js.map +1 -0
  296. package/dist/esm/utils/date.d.ts +13 -0
  297. package/dist/esm/utils/date.d.ts.map +1 -0
  298. package/dist/esm/utils/date.js +17 -0
  299. package/dist/esm/utils/date.js.map +1 -0
  300. package/dist/esm/utils/env.d.ts +50 -0
  301. package/dist/esm/utils/env.d.ts.map +1 -0
  302. package/dist/esm/utils/env.js +147 -0
  303. package/dist/esm/utils/env.js.map +1 -0
  304. package/dist/esm/utils/http.d.ts +98 -0
  305. package/dist/esm/utils/http.d.ts.map +1 -0
  306. package/dist/esm/utils/http.js +278 -0
  307. package/dist/esm/utils/http.js.map +1 -0
  308. package/dist/esm/utils/model.d.ts +35 -0
  309. package/dist/esm/utils/model.d.ts.map +1 -0
  310. package/dist/esm/utils/model.js +77 -0
  311. package/dist/esm/utils/model.js.map +1 -0
  312. package/dist/esm/utils/nonce.d.ts +9 -0
  313. package/dist/esm/utils/nonce.d.ts.map +1 -0
  314. package/dist/esm/utils/nonce.js +11 -0
  315. package/dist/esm/utils/nonce.js.map +1 -0
  316. package/dist/esm/utils/string.d.ts +10 -0
  317. package/dist/esm/utils/string.d.ts.map +1 -0
  318. package/dist/esm/utils/string.js +17 -0
  319. package/dist/esm/utils/string.js.map +1 -0
  320. package/package.json +76 -60
  321. package/vite.config.example.ts +56 -0
  322. package/wasm/stark_crypto_wasm-web.js +3 -3
  323. package/wasm/stark_crypto_wasm.d-web.ts +26 -34
  324. package/wasm/stark_crypto_wasm.d.ts +26 -34
  325. package/wasm/stark_crypto_wasm.js +111 -113
  326. package/wasm/stark_crypto_wasm_bg-web.js +365 -0
  327. package/wasm/stark_crypto_wasm_bg-web.wasm +0 -0
  328. package/wasm/stark_crypto_wasm_bg.wasm +0 -0
  329. package/dist/config.d.ts.map +0 -1
  330. package/dist/config.js.map +0 -1
  331. package/dist/errors.d.ts.map +0 -1
  332. package/dist/errors.js.map +0 -1
  333. package/dist/index.d.ts.map +0 -1
  334. package/dist/index.js.map +0 -1
  335. package/dist/perpetual/accounts.d.ts.map +0 -1
  336. package/dist/perpetual/accounts.js.map +0 -1
  337. package/dist/perpetual/amounts.d.ts.map +0 -1
  338. package/dist/perpetual/amounts.js.map +0 -1
  339. package/dist/perpetual/assets.d.ts.map +0 -1
  340. package/dist/perpetual/assets.js.map +0 -1
  341. package/dist/perpetual/bridges.d.ts.map +0 -1
  342. package/dist/perpetual/bridges.js.map +0 -1
  343. package/dist/perpetual/candles.d.ts.map +0 -1
  344. package/dist/perpetual/candles.js.map +0 -1
  345. package/dist/perpetual/clients.d.ts.map +0 -1
  346. package/dist/perpetual/clients.js.map +0 -1
  347. package/dist/perpetual/configuration.d.ts.map +0 -1
  348. package/dist/perpetual/configuration.js.map +0 -1
  349. package/dist/perpetual/crypto/signer.d.ts.map +0 -1
  350. package/dist/perpetual/crypto/signer.js.map +0 -1
  351. package/dist/perpetual/custom-signer.d.ts.map +0 -1
  352. package/dist/perpetual/custom-signer.js.map +0 -1
  353. package/dist/perpetual/fees.d.ts.map +0 -1
  354. package/dist/perpetual/fees.js.map +0 -1
  355. package/dist/perpetual/funding-rates.d.ts.map +0 -1
  356. package/dist/perpetual/funding-rates.js.map +0 -1
  357. package/dist/perpetual/markets.d.ts.map +0 -1
  358. package/dist/perpetual/markets.js.map +0 -1
  359. package/dist/perpetual/order-object-settlement.d.ts.map +0 -1
  360. package/dist/perpetual/order-object-settlement.js.map +0 -1
  361. package/dist/perpetual/order-object.d.ts.map +0 -1
  362. package/dist/perpetual/order-object.js +0 -90
  363. package/dist/perpetual/order-object.js.map +0 -1
  364. package/dist/perpetual/orderbooks.d.ts.map +0 -1
  365. package/dist/perpetual/orderbooks.js.map +0 -1
  366. package/dist/perpetual/orders.d.ts.map +0 -1
  367. package/dist/perpetual/orders.js.map +0 -1
  368. package/dist/perpetual/positions.d.ts.map +0 -1
  369. package/dist/perpetual/positions.js.map +0 -1
  370. package/dist/perpetual/stream-client/perpetual-stream-connection.d.ts.map +0 -1
  371. package/dist/perpetual/stream-client/perpetual-stream-connection.js.map +0 -1
  372. package/dist/perpetual/stream-client/stream-client.d.ts.map +0 -1
  373. package/dist/perpetual/stream-client/stream-client.js.map +0 -1
  374. package/dist/perpetual/trades.d.ts.map +0 -1
  375. package/dist/perpetual/trades.js.map +0 -1
  376. package/dist/perpetual/trading-client/account-module.d.ts.map +0 -1
  377. package/dist/perpetual/trading-client/account-module.js.map +0 -1
  378. package/dist/perpetual/trading-client/base-module.d.ts.map +0 -1
  379. package/dist/perpetual/trading-client/base-module.js.map +0 -1
  380. package/dist/perpetual/trading-client/info-module.d.ts.map +0 -1
  381. package/dist/perpetual/trading-client/info-module.js.map +0 -1
  382. package/dist/perpetual/trading-client/markets-information-module.d.ts.map +0 -1
  383. package/dist/perpetual/trading-client/markets-information-module.js.map +0 -1
  384. package/dist/perpetual/trading-client/order-management-module.d.ts.map +0 -1
  385. package/dist/perpetual/trading-client/order-management-module.js.map +0 -1
  386. package/dist/perpetual/trading-client/testnet-module.d.ts.map +0 -1
  387. package/dist/perpetual/trading-client/testnet-module.js.map +0 -1
  388. package/dist/perpetual/trading-client/trading-client.d.ts.map +0 -1
  389. package/dist/perpetual/trading-client/trading-client.js.map +0 -1
  390. package/dist/perpetual/transfer-object.d.ts.map +0 -1
  391. package/dist/perpetual/transfer-object.js.map +0 -1
  392. package/dist/perpetual/transfers.d.ts.map +0 -1
  393. package/dist/perpetual/transfers.js.map +0 -1
  394. package/dist/perpetual/user-client/onboarding.d.ts.map +0 -1
  395. package/dist/perpetual/user-client/onboarding.js.map +0 -1
  396. package/dist/perpetual/user-client/user-client.d.ts.map +0 -1
  397. package/dist/perpetual/user-client/user-client.js.map +0 -1
  398. package/dist/perpetual/withdrawal-object.d.ts.map +0 -1
  399. package/dist/perpetual/withdrawal-object.js.map +0 -1
  400. package/dist/perpetual/withdrawals.d.ts.map +0 -1
  401. package/dist/perpetual/withdrawals.js.map +0 -1
  402. package/dist/utils/date.d.ts.map +0 -1
  403. package/dist/utils/date.js.map +0 -1
  404. package/dist/utils/env.d.ts.map +0 -1
  405. package/dist/utils/env.js.map +0 -1
  406. package/dist/utils/http.d.ts.map +0 -1
  407. package/dist/utils/http.js.map +0 -1
  408. package/dist/utils/model.d.ts.map +0 -1
  409. package/dist/utils/model.js.map +0 -1
  410. package/dist/utils/nonce.d.ts.map +0 -1
  411. package/dist/utils/nonce.js.map +0 -1
  412. package/dist/utils/string.d.ts.map +0 -1
  413. package/dist/utils/string.js.map +0 -1
  414. /package/dist/{config.d.ts → cjs/config.d.ts} +0 -0
  415. /package/dist/{config.js → cjs/config.js} +0 -0
  416. /package/dist/{errors.d.ts → cjs/errors.d.ts} +0 -0
  417. /package/dist/{errors.js → cjs/errors.js} +0 -0
  418. /package/dist/{perpetual → cjs/perpetual}/amounts.js +0 -0
  419. /package/dist/{perpetual → cjs/perpetual}/configuration.d.ts +0 -0
  420. /package/dist/{perpetual → cjs/perpetual}/configuration.js +0 -0
  421. /package/dist/{perpetual → cjs/perpetual}/crypto/signer.d.ts +0 -0
  422. /package/dist/{perpetual → cjs/perpetual}/custom-signer.d.ts +0 -0
  423. /package/dist/{perpetual → cjs/perpetual}/custom-signer.js +0 -0
  424. /package/dist/{utils → cjs/utils}/date.d.ts +0 -0
  425. /package/dist/{utils → cjs/utils}/date.js +0 -0
  426. /package/dist/{utils → cjs/utils}/env.d.ts +0 -0
  427. /package/dist/{utils → cjs/utils}/env.js +0 -0
  428. /package/dist/{utils → cjs/utils}/model.d.ts +0 -0
  429. /package/dist/{utils → cjs/utils}/model.js +0 -0
  430. /package/dist/{utils → cjs/utils}/nonce.d.ts +0 -0
  431. /package/dist/{utils → cjs/utils}/nonce.js +0 -0
  432. /package/dist/{utils → cjs/utils}/string.d.ts +0 -0
  433. /package/dist/{utils → cjs/utils}/string.js +0 -0
@@ -0,0 +1,40 @@
1
+ /**
2
+ * Extended TypeScript Trading SDK
3
+ *
4
+ * Unofficial TypeScript client for Extended Exchange API
5
+ * Built and maintained by the community
6
+ *
7
+ * Extended is a perpetual DEX, built by an ex-Revolut team.
8
+ * Extended offers perpetual contracts on both crypto and TradFi assets,
9
+ * with USDC as collateral and leverage of up to 100x.
10
+ */
11
+ export { initWasm } from './perpetual/crypto/signer.js';
12
+ export { EndpointConfig, StarknetDomain, TESTNET_CONFIG, MAINNET_CONFIG } from './perpetual/configuration.js';
13
+ export { StarkPerpetualAccount, AccountModel, AccountLeverage, BalanceModel, createStarkPerpetualAccountWithCustomSigner } from './perpetual/accounts.js';
14
+ export { CustomStarkSigner, SignatureResult, isCustomStarkSigner } from './perpetual/custom-signer.js';
15
+ export { OrderSide, OrderType, OrderStatus, OrderStatusReason, TimeInForce, OrderTpslType, SelfTradeProtectionLevel, OrderPriceType, OrderTriggerPriceType, NewOrderModel, PlacedOrderModel, OpenOrderModel, CreateOrderTpslTriggerModel, } from './perpetual/orders.js';
16
+ export { PerpetualTradingClient } from './perpetual/trading-client/trading-client.js';
17
+ export { AccountModule } from './perpetual/trading-client/account-module.js';
18
+ export { OrderManagementModule } from './perpetual/trading-client/order-management-module.js';
19
+ export { MarketsInformationModule } from './perpetual/trading-client/markets-information-module.js';
20
+ export { InfoModule } from './perpetual/trading-client/info-module.js';
21
+ export { TestnetModule } from './perpetual/trading-client/testnet-module.js';
22
+ export { UserClient } from './perpetual/user-client/user-client.js';
23
+ export { OnBoardedAccount, StarkKeyPair } from './perpetual/user-client/onboarding.js';
24
+ export { PerpetualStreamClient } from './perpetual/stream-client/stream-client.js';
25
+ export { PerpetualStreamConnection } from './perpetual/stream-client/perpetual-stream-connection.js';
26
+ export { PositionModel, PositionHistoryModel, PositionSide, PositionStatus, ExitType } from './perpetual/positions.js';
27
+ export { AccountTradeModel, PublicTradeModel, TradeType } from './perpetual/trades.js';
28
+ export { createOrderObject, OrderTpslTriggerParam } from './perpetual/order-object.js';
29
+ export { MarketModel, MarketStatsModel, TradingConfigModel } from './perpetual/markets.js';
30
+ export { Asset, AssetOperationType, AssetOperationStatus } from './perpetual/assets.js';
31
+ export { TradingFeeModel, DEFAULT_FEES } from './perpetual/fees.js';
32
+ export { X10Error, RateLimitException, NotAuthorizedException, SubAccountExists } from './errors.js';
33
+ export { WrappedApiResponse, WrappedStreamResponse, StreamDataType } from './utils/http.js';
34
+ export { X10BaseModel, SettlementSignatureModel } from './utils/model.js';
35
+ export { generateNonce } from './utils/nonce.js';
36
+ export { utcNow, toEpochMillis } from './utils/date.js';
37
+ export * from './utils/env.js';
38
+ export { sign, pedersenHash, generateKeypairFromEthSignature, getOrderMsgHash, getTransferMsgHash, getWithdrawalMsgHash, } from './perpetual/crypto/signer.js';
39
+ export declare const SDK_VERSION = "0.0.1";
40
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAGH,OAAO,EAAE,QAAQ,EAAE,MAAM,8BAA8B,CAAC;AAGxD,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAG9G,OAAO,EACL,qBAAqB,EACrB,YAAY,EACZ,eAAe,EACf,YAAY,EACZ,2CAA2C,EAC5C,MAAM,yBAAyB,CAAC;AAGjC,OAAO,EACL,iBAAiB,EACjB,eAAe,EACf,mBAAmB,EACpB,MAAM,8BAA8B,CAAC;AAGtC,OAAO,EACL,SAAS,EACT,SAAS,EACT,WAAW,EACX,iBAAiB,EACjB,WAAW,EACX,aAAa,EACb,wBAAwB,EACxB,cAAc,EACd,qBAAqB,EACrB,aAAa,EACb,gBAAgB,EAChB,cAAc,EACd,2BAA2B,GAC5B,MAAM,uBAAuB,CAAC;AAG/B,OAAO,EAAE,sBAAsB,EAAE,MAAM,8CAA8C,CAAC;AACtF,OAAO,EAAE,aAAa,EAAE,MAAM,8CAA8C,CAAC;AAC7E,OAAO,EAAE,qBAAqB,EAAE,MAAM,uDAAuD,CAAC;AAC9F,OAAO,EAAE,wBAAwB,EAAE,MAAM,0DAA0D,CAAC;AACpG,OAAO,EAAE,UAAU,EAAE,MAAM,2CAA2C,CAAC;AACvE,OAAO,EAAE,aAAa,EAAE,MAAM,8CAA8C,CAAC;AAG7E,OAAO,EAAE,UAAU,EAAE,MAAM,wCAAwC,CAAC;AACpE,OAAO,EAAE,gBAAgB,EAAE,YAAY,EAAE,MAAM,uCAAuC,CAAC;AAGvF,OAAO,EAAE,qBAAqB,EAAE,MAAM,4CAA4C,CAAC;AACnF,OAAO,EAAE,yBAAyB,EAAE,MAAM,0DAA0D,CAAC;AAGrG,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,YAAY,EAAE,cAAc,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AACvH,OAAO,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAGvF,OAAO,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,MAAM,6BAA6B,CAAC;AAGvF,OAAO,EAAE,WAAW,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAG3F,OAAO,EAAE,KAAK,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAGxF,OAAO,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAGpE,OAAO,EAAE,QAAQ,EAAE,kBAAkB,EAAE,sBAAsB,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAGrG,OAAO,EAAE,kBAAkB,EAAE,qBAAqB,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAC5F,OAAO,EAAE,YAAY,EAAE,wBAAwB,EAAE,MAAM,kBAAkB,CAAC;AAC1E,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAGxD,cAAc,gBAAgB,CAAC;AAG/B,OAAO,EACL,IAAI,EACJ,YAAY,EACZ,+BAA+B,EAC/B,eAAe,EACf,kBAAkB,EAClB,oBAAoB,GACrB,MAAM,8BAA8B,CAAC;AAGtC,eAAO,MAAM,WAAW,UAAU,CAAC"}
@@ -0,0 +1,58 @@
1
+ /**
2
+ * Extended TypeScript Trading SDK
3
+ *
4
+ * Unofficial TypeScript client for Extended Exchange API
5
+ * Built and maintained by the community
6
+ *
7
+ * Extended is a perpetual DEX, built by an ex-Revolut team.
8
+ * Extended offers perpetual contracts on both crypto and TradFi assets,
9
+ * with USDC as collateral and leverage of up to 100x.
10
+ */
11
+ // Initialize WASM module
12
+ export { initWasm } from './perpetual/crypto/signer.js';
13
+ // Configuration
14
+ export { EndpointConfig, StarknetDomain, TESTNET_CONFIG, MAINNET_CONFIG } from './perpetual/configuration.js';
15
+ // Accounts
16
+ export { StarkPerpetualAccount, AccountModel, AccountLeverage, BalanceModel, createStarkPerpetualAccountWithCustomSigner } from './perpetual/accounts.js';
17
+ // Custom Signer Support
18
+ export { isCustomStarkSigner } from './perpetual/custom-signer.js';
19
+ // Orders
20
+ export { OrderSide, OrderType, OrderStatus, OrderStatusReason, TimeInForce, OrderTpslType, SelfTradeProtectionLevel, OrderPriceType, OrderTriggerPriceType, NewOrderModel, PlacedOrderModel, OpenOrderModel, CreateOrderTpslTriggerModel, } from './perpetual/orders.js';
21
+ // Trading Client
22
+ export { PerpetualTradingClient } from './perpetual/trading-client/trading-client.js';
23
+ export { AccountModule } from './perpetual/trading-client/account-module.js';
24
+ export { OrderManagementModule } from './perpetual/trading-client/order-management-module.js';
25
+ export { MarketsInformationModule } from './perpetual/trading-client/markets-information-module.js';
26
+ export { InfoModule } from './perpetual/trading-client/info-module.js';
27
+ export { TestnetModule } from './perpetual/trading-client/testnet-module.js';
28
+ // User Client
29
+ export { UserClient } from './perpetual/user-client/user-client.js';
30
+ export { StarkKeyPair } from './perpetual/user-client/onboarding.js';
31
+ // Stream Client
32
+ export { PerpetualStreamClient } from './perpetual/stream-client/stream-client.js';
33
+ export { PerpetualStreamConnection } from './perpetual/stream-client/perpetual-stream-connection.js';
34
+ // Positions & Trades
35
+ export { PositionModel, PositionHistoryModel, PositionSide, PositionStatus, ExitType } from './perpetual/positions.js';
36
+ export { AccountTradeModel, PublicTradeModel, TradeType } from './perpetual/trades.js';
37
+ // Order Objects
38
+ export { createOrderObject, OrderTpslTriggerParam } from './perpetual/order-object.js';
39
+ // Markets
40
+ export { MarketModel, MarketStatsModel, TradingConfigModel } from './perpetual/markets.js';
41
+ // Assets
42
+ export { Asset, AssetOperationType, AssetOperationStatus } from './perpetual/assets.js';
43
+ // Fees
44
+ export { TradingFeeModel, DEFAULT_FEES } from './perpetual/fees.js';
45
+ // Errors
46
+ export { X10Error, RateLimitException, NotAuthorizedException, SubAccountExists } from './errors.js';
47
+ // Utils
48
+ export { WrappedApiResponse, WrappedStreamResponse, StreamDataType } from './utils/http.js';
49
+ export { X10BaseModel, SettlementSignatureModel } from './utils/model.js';
50
+ export { generateNonce } from './utils/nonce.js';
51
+ export { utcNow, toEpochMillis } from './utils/date.js';
52
+ // Utils
53
+ export * from './utils/env.js';
54
+ // Cryptographic Signer Functions (exported for standalone use)
55
+ export { sign, pedersenHash, generateKeypairFromEthSignature, getOrderMsgHash, getTransferMsgHash, getWithdrawalMsgHash, } from './perpetual/crypto/signer.js';
56
+ // Version
57
+ export const SDK_VERSION = '0.0.1';
58
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,yBAAyB;AACzB,OAAO,EAAE,QAAQ,EAAE,MAAM,8BAA8B,CAAC;AAExD,gBAAgB;AAChB,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAE9G,WAAW;AACX,OAAO,EACL,qBAAqB,EACrB,YAAY,EACZ,eAAe,EACf,YAAY,EACZ,2CAA2C,EAC5C,MAAM,yBAAyB,CAAC;AAEjC,wBAAwB;AACxB,OAAO,EAGL,mBAAmB,EACpB,MAAM,8BAA8B,CAAC;AAEtC,SAAS;AACT,OAAO,EACL,SAAS,EACT,SAAS,EACT,WAAW,EACX,iBAAiB,EACjB,WAAW,EACX,aAAa,EACb,wBAAwB,EACxB,cAAc,EACd,qBAAqB,EACrB,aAAa,EACb,gBAAgB,EAChB,cAAc,EACd,2BAA2B,GAC5B,MAAM,uBAAuB,CAAC;AAE/B,iBAAiB;AACjB,OAAO,EAAE,sBAAsB,EAAE,MAAM,8CAA8C,CAAC;AACtF,OAAO,EAAE,aAAa,EAAE,MAAM,8CAA8C,CAAC;AAC7E,OAAO,EAAE,qBAAqB,EAAE,MAAM,uDAAuD,CAAC;AAC9F,OAAO,EAAE,wBAAwB,EAAE,MAAM,0DAA0D,CAAC;AACpG,OAAO,EAAE,UAAU,EAAE,MAAM,2CAA2C,CAAC;AACvE,OAAO,EAAE,aAAa,EAAE,MAAM,8CAA8C,CAAC;AAE7E,cAAc;AACd,OAAO,EAAE,UAAU,EAAE,MAAM,wCAAwC,CAAC;AACpE,OAAO,EAAoB,YAAY,EAAE,MAAM,uCAAuC,CAAC;AAEvF,gBAAgB;AAChB,OAAO,EAAE,qBAAqB,EAAE,MAAM,4CAA4C,CAAC;AACnF,OAAO,EAAE,yBAAyB,EAAE,MAAM,0DAA0D,CAAC;AAErG,qBAAqB;AACrB,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,YAAY,EAAE,cAAc,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AACvH,OAAO,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAEvF,gBAAgB;AAChB,OAAO,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,MAAM,6BAA6B,CAAC;AAEvF,UAAU;AACV,OAAO,EAAE,WAAW,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAE3F,SAAS;AACT,OAAO,EAAE,KAAK,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAExF,OAAO;AACP,OAAO,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAEpE,SAAS;AACT,OAAO,EAAE,QAAQ,EAAE,kBAAkB,EAAE,sBAAsB,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAErG,QAAQ;AACR,OAAO,EAAE,kBAAkB,EAAE,qBAAqB,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAC5F,OAAO,EAAE,YAAY,EAAE,wBAAwB,EAAE,MAAM,kBAAkB,CAAC;AAC1E,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAExD,QAAQ;AACR,cAAc,gBAAgB,CAAC;AAE/B,+DAA+D;AAC/D,OAAO,EACL,IAAI,EACJ,YAAY,EACZ,+BAA+B,EAC/B,eAAe,EACf,kBAAkB,EAClB,oBAAoB,GACrB,MAAM,8BAA8B,CAAC;AAEtC,UAAU;AACV,MAAM,CAAC,MAAM,WAAW,GAAG,OAAO,CAAC"}
@@ -0,0 +1,3 @@
1
+ {
2
+ "type": "module"
3
+ }
@@ -0,0 +1,147 @@
1
+ /**
2
+ * Account models and StarkPerpetualAccount class
3
+ */
4
+ import Decimal from 'decimal.js';
5
+ import { X10BaseModel } from '../utils/model.js';
6
+ import { CustomStarkSigner } from './custom-signer.js';
7
+ /**
8
+ * Stark Perpetual Account
9
+ * Manages signing operations for trading
10
+ *
11
+ * Supports two modes of operation:
12
+ * 1. Direct signing with a private key (default)
13
+ * 2. Custom signer integration (e.g., Privy, Web3Auth)
14
+ */
15
+ export declare class StarkPerpetualAccount {
16
+ private vault;
17
+ private privateKey?;
18
+ private publicKey;
19
+ private apiKey;
20
+ private tradingFee;
21
+ private customSigner?;
22
+ constructor(vault: number | string, privateKey: string, publicKey: string, apiKey: string);
23
+ getVault(): number;
24
+ getPublicKey(): bigint;
25
+ getPublicKeyHex(): string;
26
+ getApiKey(): string;
27
+ getTradingFee(): Map<string, any>;
28
+ setTradingFee(market: string, fee: any): void;
29
+ /**
30
+ * Set a custom signer for remote signing (e.g., Privy, Web3Auth)
31
+ *
32
+ * @param signer - Custom signer implementation
33
+ *
34
+ * @example
35
+ * ```typescript
36
+ * const account = new StarkPerpetualAccount(vault, privateKey, publicKey, apiKey);
37
+ * account.setCustomSigner(new PrivyStarkSigner(privyClient, walletId));
38
+ * ```
39
+ */
40
+ setCustomSigner(signer: CustomStarkSigner): void;
41
+ /**
42
+ * Get the custom signer if set
43
+ */
44
+ getCustomSigner(): CustomStarkSigner | undefined;
45
+ /**
46
+ * Clear the custom signer and use direct signing
47
+ */
48
+ clearCustomSigner(): void;
49
+ /**
50
+ * Sign a message hash
51
+ * Returns Promise resolving to [r, s] tuple
52
+ *
53
+ * If a custom signer is set, uses the custom signer.
54
+ * Otherwise, uses the built-in WASM signer with the private key.
55
+ *
56
+ * @returns Promise resolving to signature tuple [r, s]
57
+ */
58
+ sign(msgHash: bigint): Promise<[bigint, bigint]>;
59
+ }
60
+ /**
61
+ * Create a StarkPerpetualAccount with a custom signer
62
+ *
63
+ * Use this factory function when integrating with external signing services
64
+ * like Privy, Web3Auth, or other remote signers that don't expose private keys.
65
+ *
66
+ * Note: This function uses a dummy private key internally to maintain backward
67
+ * compatibility with the existing StarkPerpetualAccount constructor. The dummy
68
+ * key is never used for signing when a custom signer is set.
69
+ *
70
+ * @param vault - Vault ID
71
+ * @param publicKey - Public key as hex string
72
+ * @param apiKey - API key for authentication
73
+ * @param customSigner - Custom signer implementation
74
+ * @returns StarkPerpetualAccount configured with the custom signer
75
+ *
76
+ * @example
77
+ * ```typescript
78
+ * const privySigner = new PrivyStarkSigner(privyClient, walletId);
79
+ * const account = createStarkPerpetualAccountWithCustomSigner(
80
+ * vaultId,
81
+ * publicKeyHex,
82
+ * apiKey,
83
+ * privySigner
84
+ * );
85
+ * ```
86
+ */
87
+ export declare function createStarkPerpetualAccountWithCustomSigner(vault: number | string, publicKey: string, apiKey: string, customSigner: CustomStarkSigner): StarkPerpetualAccount;
88
+ /**
89
+ * Account model
90
+ */
91
+ export declare class AccountModel extends X10BaseModel {
92
+ accountId: number;
93
+ description: string;
94
+ accountIndex: number;
95
+ status: string;
96
+ l2Key: string;
97
+ l2Vault: number;
98
+ bridgeStarknetAddress?: string;
99
+ apiKeys?: string[];
100
+ constructor(accountId: number, description: string, accountIndex: number, status: string, l2Key: string, l2Vault: number, bridgeStarknetAddress?: string, apiKeys?: string[]);
101
+ }
102
+ /**
103
+ * Account leverage model
104
+ */
105
+ export declare class AccountLeverage extends X10BaseModel {
106
+ market: string;
107
+ leverage: Decimal;
108
+ constructor(market: string, leverage: Decimal);
109
+ }
110
+ /**
111
+ * API key response model
112
+ */
113
+ export declare class ApiKeyResponseModel extends X10BaseModel {
114
+ key: string;
115
+ constructor(key: string);
116
+ }
117
+ /**
118
+ * API key request model
119
+ */
120
+ export declare class ApiKeyRequestModel extends X10BaseModel {
121
+ description: string;
122
+ constructor(description: string);
123
+ }
124
+ /**
125
+ * Balance model
126
+ */
127
+ export declare class BalanceModel extends X10BaseModel {
128
+ collateralName: string;
129
+ balance: Decimal;
130
+ equity: Decimal;
131
+ availableForTrade: Decimal;
132
+ availableForWithdrawal: Decimal;
133
+ unrealisedPnl: Decimal;
134
+ initialMargin: Decimal;
135
+ marginRatio: Decimal;
136
+ updatedTime: number;
137
+ }
138
+ /**
139
+ * Account stream data model
140
+ */
141
+ export declare class AccountStreamDataModel extends X10BaseModel {
142
+ orders?: any[];
143
+ positions?: any[];
144
+ trades?: any[];
145
+ balance?: BalanceModel;
146
+ }
147
+ //# sourceMappingURL=accounts.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"accounts.d.ts","sourceRoot":"","sources":["../../../src/perpetual/accounts.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,225 @@
1
+ /**
2
+ * Account models and StarkPerpetualAccount class
3
+ */
4
+ import { X10BaseModel } from '../utils/model.js';
5
+ import { isHexString } from '../utils/string.js';
6
+ import { sign as wasmSign } from './crypto/signer.js';
7
+ import { isCustomStarkSigner } from './custom-signer.js';
8
+ /**
9
+ * Stark Perpetual Account
10
+ * Manages signing operations for trading
11
+ *
12
+ * Supports two modes of operation:
13
+ * 1. Direct signing with a private key (default)
14
+ * 2. Custom signer integration (e.g., Privy, Web3Auth)
15
+ */
16
+ export class StarkPerpetualAccount {
17
+ vault;
18
+ privateKey;
19
+ publicKey;
20
+ apiKey;
21
+ tradingFee = new Map();
22
+ customSigner;
23
+ constructor(vault, privateKey, publicKey, apiKey) {
24
+ if (!isHexString(privateKey)) {
25
+ throw new Error('Invalid private key format');
26
+ }
27
+ if (!isHexString(publicKey)) {
28
+ throw new Error('Invalid public key format');
29
+ }
30
+ if (typeof vault === 'string') {
31
+ this.vault = parseInt(vault, 10);
32
+ }
33
+ else {
34
+ this.vault = vault;
35
+ }
36
+ // Remove '0x' prefix if present and convert to bigint
37
+ const cleanPrivateKey = privateKey.startsWith('0x') ? privateKey.slice(2) : privateKey;
38
+ const cleanPublicKey = publicKey.startsWith('0x') ? publicKey.slice(2) : publicKey;
39
+ this.privateKey = BigInt('0x' + cleanPrivateKey);
40
+ this.publicKey = BigInt('0x' + cleanPublicKey);
41
+ this.apiKey = apiKey;
42
+ }
43
+ getVault() {
44
+ return this.vault;
45
+ }
46
+ getPublicKey() {
47
+ return this.publicKey;
48
+ }
49
+ getPublicKeyHex() {
50
+ return '0x' + this.publicKey.toString(16);
51
+ }
52
+ getApiKey() {
53
+ return this.apiKey;
54
+ }
55
+ getTradingFee() {
56
+ return this.tradingFee;
57
+ }
58
+ setTradingFee(market, fee) {
59
+ this.tradingFee.set(market, fee);
60
+ }
61
+ /**
62
+ * Set a custom signer for remote signing (e.g., Privy, Web3Auth)
63
+ *
64
+ * @param signer - Custom signer implementation
65
+ *
66
+ * @example
67
+ * ```typescript
68
+ * const account = new StarkPerpetualAccount(vault, privateKey, publicKey, apiKey);
69
+ * account.setCustomSigner(new PrivyStarkSigner(privyClient, walletId));
70
+ * ```
71
+ */
72
+ setCustomSigner(signer) {
73
+ if (!isCustomStarkSigner(signer)) {
74
+ throw new Error('Invalid custom signer: must implement CustomStarkSigner interface');
75
+ }
76
+ this.customSigner = signer;
77
+ }
78
+ /**
79
+ * Get the custom signer if set
80
+ */
81
+ getCustomSigner() {
82
+ return this.customSigner;
83
+ }
84
+ /**
85
+ * Clear the custom signer and use direct signing
86
+ */
87
+ clearCustomSigner() {
88
+ this.customSigner = undefined;
89
+ }
90
+ /**
91
+ * Sign a message hash
92
+ * Returns Promise resolving to [r, s] tuple
93
+ *
94
+ * If a custom signer is set, uses the custom signer.
95
+ * Otherwise, uses the built-in WASM signer with the private key.
96
+ *
97
+ * @returns Promise resolving to signature tuple [r, s]
98
+ */
99
+ async sign(msgHash) {
100
+ if (this.customSigner) {
101
+ return this.customSigner.sign(msgHash);
102
+ }
103
+ if (!this.privateKey) {
104
+ throw new Error('No private key or custom signer available for signing');
105
+ }
106
+ // Wrap synchronous WASM sign in Promise for consistent API
107
+ return Promise.resolve(wasmSign(this.privateKey, msgHash));
108
+ }
109
+ }
110
+ /**
111
+ * Create a StarkPerpetualAccount with a custom signer
112
+ *
113
+ * Use this factory function when integrating with external signing services
114
+ * like Privy, Web3Auth, or other remote signers that don't expose private keys.
115
+ *
116
+ * Note: This function uses a dummy private key internally to maintain backward
117
+ * compatibility with the existing StarkPerpetualAccount constructor. The dummy
118
+ * key is never used for signing when a custom signer is set.
119
+ *
120
+ * @param vault - Vault ID
121
+ * @param publicKey - Public key as hex string
122
+ * @param apiKey - API key for authentication
123
+ * @param customSigner - Custom signer implementation
124
+ * @returns StarkPerpetualAccount configured with the custom signer
125
+ *
126
+ * @example
127
+ * ```typescript
128
+ * const privySigner = new PrivyStarkSigner(privyClient, walletId);
129
+ * const account = createStarkPerpetualAccountWithCustomSigner(
130
+ * vaultId,
131
+ * publicKeyHex,
132
+ * apiKey,
133
+ * privySigner
134
+ * );
135
+ * ```
136
+ */
137
+ export function createStarkPerpetualAccountWithCustomSigner(vault, publicKey, apiKey, customSigner) {
138
+ // Use a dummy private key (all zeros) to satisfy the constructor
139
+ // This maintains backward compatibility without breaking existing code
140
+ // The dummy key is never used when a custom signer is set
141
+ const dummyPrivateKey = '0x0000000000000000000000000000000000000000000000000000000000000000';
142
+ const account = new StarkPerpetualAccount(vault, dummyPrivateKey, publicKey, apiKey);
143
+ account.setCustomSigner(customSigner);
144
+ return account;
145
+ }
146
+ /**
147
+ * Account model
148
+ */
149
+ export class AccountModel extends X10BaseModel {
150
+ accountId;
151
+ description;
152
+ accountIndex;
153
+ status;
154
+ l2Key;
155
+ l2Vault;
156
+ bridgeStarknetAddress;
157
+ apiKeys;
158
+ constructor(accountId, description, accountIndex, status, l2Key, l2Vault, bridgeStarknetAddress, apiKeys) {
159
+ super();
160
+ this.accountId = accountId;
161
+ this.description = description;
162
+ this.accountIndex = accountIndex;
163
+ this.status = status;
164
+ this.l2Key = l2Key;
165
+ this.l2Vault = l2Vault;
166
+ this.bridgeStarknetAddress = bridgeStarknetAddress;
167
+ this.apiKeys = apiKeys;
168
+ }
169
+ }
170
+ /**
171
+ * Account leverage model
172
+ */
173
+ export class AccountLeverage extends X10BaseModel {
174
+ market;
175
+ leverage;
176
+ constructor(market, leverage) {
177
+ super();
178
+ this.market = market;
179
+ this.leverage = leverage;
180
+ }
181
+ }
182
+ /**
183
+ * API key response model
184
+ */
185
+ export class ApiKeyResponseModel extends X10BaseModel {
186
+ key;
187
+ constructor(key) {
188
+ super();
189
+ this.key = key;
190
+ }
191
+ }
192
+ /**
193
+ * API key request model
194
+ */
195
+ export class ApiKeyRequestModel extends X10BaseModel {
196
+ description;
197
+ constructor(description) {
198
+ super();
199
+ this.description = description;
200
+ }
201
+ }
202
+ /**
203
+ * Balance model
204
+ */
205
+ export class BalanceModel extends X10BaseModel {
206
+ collateralName;
207
+ balance;
208
+ equity;
209
+ availableForTrade;
210
+ availableForWithdrawal;
211
+ unrealisedPnl;
212
+ initialMargin;
213
+ marginRatio;
214
+ updatedTime;
215
+ }
216
+ /**
217
+ * Account stream data model
218
+ */
219
+ export class AccountStreamDataModel extends X10BaseModel {
220
+ orders;
221
+ positions;
222
+ trades;
223
+ balance;
224
+ }
225
+ //# sourceMappingURL=accounts.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"accounts.js","sourceRoot":"","sources":["../../../src/perpetual/accounts.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,41 @@
1
+ /**
2
+ * Amount conversion utilities
3
+ */
4
+ import Decimal from 'decimal.js';
5
+ import { Asset } from './assets.js';
6
+ /**
7
+ * Rounding contexts
8
+ */
9
+ export declare const ROUNDING_SELL_CONTEXT: 1;
10
+ export declare const ROUNDING_BUY_CONTEXT: 0;
11
+ export declare const ROUNDING_FEE_CONTEXT: 0;
12
+ /**
13
+ * Human-readable amount
14
+ */
15
+ export declare class HumanReadableAmount {
16
+ value: Decimal;
17
+ asset: Asset;
18
+ constructor(value: Decimal, asset: Asset);
19
+ toL1Amount(): L1Amount;
20
+ toStarkAmount(roundingMode?: Decimal.Rounding): StarkAmount;
21
+ }
22
+ /**
23
+ * L1 amount
24
+ */
25
+ export declare class L1Amount {
26
+ value: number;
27
+ asset: Asset;
28
+ constructor(value: number, asset: Asset);
29
+ toInternalAmount(): HumanReadableAmount;
30
+ }
31
+ /**
32
+ * Stark amount
33
+ */
34
+ export declare class StarkAmount {
35
+ value: number;
36
+ asset: Asset;
37
+ constructor(value: number, asset: Asset);
38
+ toInternalAmount(): HumanReadableAmount;
39
+ negate(): StarkAmount;
40
+ }
41
+ //# sourceMappingURL=amounts.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"amounts.d.ts","sourceRoot":"","sources":["../../../src/perpetual/amounts.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,OAAO,MAAM,YAAY,CAAC;AACjC,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAEpC;;GAEG;AACH,eAAO,MAAM,qBAAqB,GAAqB,CAAC;AACxD,eAAO,MAAM,oBAAoB,GAAmB,CAAC;AACrD,eAAO,MAAM,oBAAoB,GAAmB,CAAC;AAErD;;GAEG;AACH,qBAAa,mBAAmB;IAC9B,KAAK,EAAE,OAAO,CAAC;IACf,KAAK,EAAE,KAAK,CAAC;gBAED,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK;IAKxC,UAAU,IAAI,QAAQ;IAKtB,aAAa,CAAC,YAAY,GAAE,OAAO,CAAC,QAA+B,GAAG,WAAW;CAalF;AAED;;GAEG;AACH,qBAAa,QAAQ;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,KAAK,CAAC;gBAED,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK;IAKvC,gBAAgB,IAAI,mBAAmB;CAIxC;AAED;;GAEG;AACH,qBAAa,WAAW;IACtB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,KAAK,CAAC;gBAED,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK;IAKvC,gBAAgB,IAAI,mBAAmB;IAKvC,MAAM,IAAI,WAAW;CAGtB"}
@@ -0,0 +1,70 @@
1
+ /**
2
+ * Amount conversion utilities
3
+ */
4
+ import Decimal from 'decimal.js';
5
+ /**
6
+ * Rounding contexts
7
+ */
8
+ export const ROUNDING_SELL_CONTEXT = Decimal.ROUND_DOWN;
9
+ export const ROUNDING_BUY_CONTEXT = Decimal.ROUND_UP;
10
+ export const ROUNDING_FEE_CONTEXT = Decimal.ROUND_UP;
11
+ /**
12
+ * Human-readable amount
13
+ */
14
+ export class HumanReadableAmount {
15
+ value;
16
+ asset;
17
+ constructor(value, asset) {
18
+ this.value = value;
19
+ this.asset = asset;
20
+ }
21
+ toL1Amount() {
22
+ const convertedValue = this.asset.convertInternalQuantityToL1Quantity(this.value);
23
+ return new L1Amount(convertedValue, this.asset);
24
+ }
25
+ toStarkAmount(roundingMode = ROUNDING_BUY_CONTEXT) {
26
+ if (!this.asset) {
27
+ throw new Error(`HumanReadableAmount.asset is undefined. value=${String(this.value)}`);
28
+ }
29
+ const convertedValue = this.asset.convertHumanReadableToStarkQuantity(this.value, Decimal // Type workaround
30
+ );
31
+ if (convertedValue === undefined) {
32
+ throw new Error('Asset conversion failed: asset or conversion method undefined');
33
+ }
34
+ return new StarkAmount(convertedValue, this.asset);
35
+ }
36
+ }
37
+ /**
38
+ * L1 amount
39
+ */
40
+ export class L1Amount {
41
+ value;
42
+ asset;
43
+ constructor(value, asset) {
44
+ this.value = value;
45
+ this.asset = asset;
46
+ }
47
+ toInternalAmount() {
48
+ const convertedValue = this.asset.convertL1QuantityToInternalQuantity(this.value);
49
+ return new HumanReadableAmount(convertedValue, this.asset);
50
+ }
51
+ }
52
+ /**
53
+ * Stark amount
54
+ */
55
+ export class StarkAmount {
56
+ value;
57
+ asset;
58
+ constructor(value, asset) {
59
+ this.value = value;
60
+ this.asset = asset;
61
+ }
62
+ toInternalAmount() {
63
+ const convertedValue = this.asset.convertStarkToInternalQuantity(this.value);
64
+ return new HumanReadableAmount(convertedValue, this.asset);
65
+ }
66
+ negate() {
67
+ return new StarkAmount(-this.value, this.asset);
68
+ }
69
+ }
70
+ //# sourceMappingURL=amounts.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"amounts.js","sourceRoot":"","sources":["../../../src/perpetual/amounts.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,OAAO,MAAM,YAAY,CAAC;AAGjC;;GAEG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAG,OAAO,CAAC,UAAU,CAAC;AACxD,MAAM,CAAC,MAAM,oBAAoB,GAAG,OAAO,CAAC,QAAQ,CAAC;AACrD,MAAM,CAAC,MAAM,oBAAoB,GAAG,OAAO,CAAC,QAAQ,CAAC;AAErD;;GAEG;AACH,MAAM,OAAO,mBAAmB;IAC9B,KAAK,CAAU;IACf,KAAK,CAAQ;IAEb,YAAY,KAAc,EAAE,KAAY;QACtC,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IACrB,CAAC;IAED,UAAU;QACR,MAAM,cAAc,GAAG,IAAI,CAAC,KAAK,CAAC,mCAAmC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAClF,OAAO,IAAI,QAAQ,CAAC,cAAc,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;IAClD,CAAC;IAED,aAAa,CAAC,eAAiC,oBAAoB;QACnE,IAAI,CAAE,IAAY,CAAC,KAAK,EAAE,CAAC;YAC1B,MAAM,IAAI,KAAK,CAAC,iDAAiD,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QACxF,CAAC;QACD,MAAM,cAAc,GAAI,IAAY,CAAC,KAAK,CAAC,mCAAmC,CAC1E,IAAI,CAAC,KAAK,EACV,OAAc,CAAC,kBAAkB;SAClC,CAAC;QACJ,IAAI,cAAc,KAAK,SAAS,EAAE,CAAC;YAClC,MAAM,IAAI,KAAK,CAAC,+DAA+D,CAAC,CAAC;QAClF,CAAC;QACD,OAAO,IAAI,WAAW,CAAC,cAAc,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;IACnD,CAAC;CACF;AAED;;GAEG;AACH,MAAM,OAAO,QAAQ;IACnB,KAAK,CAAS;IACd,KAAK,CAAQ;IAEb,YAAY,KAAa,EAAE,KAAY;QACrC,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IACrB,CAAC;IAED,gBAAgB;QACd,MAAM,cAAc,GAAG,IAAI,CAAC,KAAK,CAAC,mCAAmC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAClF,OAAO,IAAI,mBAAmB,CAAC,cAAc,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;IAC7D,CAAC;CACF;AAED;;GAEG;AACH,MAAM,OAAO,WAAW;IACtB,KAAK,CAAS;IACd,KAAK,CAAQ;IAEb,YAAY,KAAa,EAAE,KAAY;QACrC,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IACrB,CAAC;IAED,gBAAgB;QACd,MAAM,cAAc,GAAG,IAAI,CAAC,KAAK,CAAC,8BAA8B,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC7E,OAAO,IAAI,mBAAmB,CAAC,cAAc,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;IAC7D,CAAC;IAED,MAAM;QACJ,OAAO,IAAI,WAAW,CAAC,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;IAClD,CAAC;CACF"}