@lightconexyz/lightcone-sdk 0.1.0 → 0.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 (381) hide show
  1. package/README.md +33 -206
  2. package/dist/auth/client.d.ts +25 -0
  3. package/dist/auth/client.d.ts.map +1 -0
  4. package/dist/auth/client.js +120 -0
  5. package/dist/auth/client.js.map +1 -0
  6. package/dist/auth/index.d.ts +73 -0
  7. package/dist/auth/index.d.ts.map +1 -0
  8. package/dist/auth/index.js +42 -0
  9. package/dist/auth/index.js.map +1 -0
  10. package/dist/auth/native.d.ts +8 -0
  11. package/dist/auth/native.d.ts.map +1 -0
  12. package/dist/auth/native.js +19 -0
  13. package/dist/auth/native.js.map +1 -0
  14. package/dist/auth.d.ts +1 -79
  15. package/dist/auth.d.ts.map +1 -1
  16. package/dist/auth.js +15 -145
  17. package/dist/auth.js.map +1 -1
  18. package/dist/client.d.ts +69 -0
  19. package/dist/client.d.ts.map +1 -0
  20. package/dist/client.js +158 -0
  21. package/dist/client.js.map +1 -0
  22. package/dist/domain/admin/client.d.ts +17 -0
  23. package/dist/domain/admin/client.d.ts.map +1 -0
  24. package/dist/domain/admin/client.js +32 -0
  25. package/dist/domain/admin/client.js.map +1 -0
  26. package/dist/domain/admin/index.d.ts +7 -0
  27. package/dist/domain/admin/index.d.ts.map +1 -0
  28. package/dist/domain/admin/index.js +19 -0
  29. package/dist/domain/admin/index.js.map +1 -0
  30. package/dist/domain/admin/wire.d.ts +117 -0
  31. package/dist/domain/admin/wire.d.ts.map +1 -0
  32. package/dist/domain/admin/wire.js +3 -0
  33. package/dist/domain/admin/wire.js.map +1 -0
  34. package/dist/domain/index.d.ts +9 -0
  35. package/dist/domain/index.d.ts.map +1 -0
  36. package/dist/domain/index.js +45 -0
  37. package/dist/domain/index.js.map +1 -0
  38. package/dist/domain/market/client.d.ts +21 -0
  39. package/dist/domain/market/client.d.ts.map +1 -0
  40. package/dist/domain/market/client.js +70 -0
  41. package/dist/domain/market/client.js.map +1 -0
  42. package/dist/domain/market/convert.d.ts +8 -0
  43. package/dist/domain/market/convert.d.ts.map +1 -0
  44. package/dist/domain/market/convert.js +96 -0
  45. package/dist/domain/market/convert.js.map +1 -0
  46. package/dist/domain/market/index.d.ts +47 -0
  47. package/dist/domain/market/index.d.ts.map +1 -0
  48. package/dist/domain/market/index.js +58 -0
  49. package/dist/domain/market/index.js.map +1 -0
  50. package/dist/domain/market/outcome.d.ts +12 -0
  51. package/dist/domain/market/outcome.d.ts.map +1 -0
  52. package/dist/domain/market/outcome.js +28 -0
  53. package/dist/domain/market/outcome.js.map +1 -0
  54. package/dist/domain/market/tokens.d.ts +42 -0
  55. package/dist/domain/market/tokens.d.ts.map +1 -0
  56. package/dist/domain/market/tokens.js +106 -0
  57. package/dist/domain/market/tokens.js.map +1 -0
  58. package/dist/domain/market/wire.d.ts +116 -0
  59. package/dist/domain/market/wire.d.ts.map +1 -0
  60. package/dist/domain/market/wire.js +3 -0
  61. package/dist/domain/market/wire.js.map +1 -0
  62. package/dist/domain/order/client.d.ts +187 -0
  63. package/dist/domain/order/client.d.ts.map +1 -0
  64. package/dist/domain/order/client.js +122 -0
  65. package/dist/domain/order/client.js.map +1 -0
  66. package/dist/domain/order/convert.d.ts +8 -0
  67. package/dist/domain/order/convert.d.ts.map +1 -0
  68. package/dist/domain/order/convert.js +80 -0
  69. package/dist/domain/order/convert.js.map +1 -0
  70. package/dist/domain/order/index.d.ts +48 -0
  71. package/dist/domain/order/index.d.ts.map +1 -0
  72. package/dist/domain/order/index.js +41 -0
  73. package/dist/domain/order/index.js.map +1 -0
  74. package/dist/domain/order/state.d.ts +26 -0
  75. package/dist/domain/order/state.d.ts.map +1 -0
  76. package/dist/domain/order/state.js +85 -0
  77. package/dist/domain/order/state.js.map +1 -0
  78. package/dist/domain/order/wire.d.ts +123 -0
  79. package/dist/domain/order/wire.d.ts.map +1 -0
  80. package/dist/domain/order/wire.js +3 -0
  81. package/dist/domain/order/wire.js.map +1 -0
  82. package/dist/domain/orderbook/client.d.ts +20 -0
  83. package/dist/domain/orderbook/client.d.ts.map +1 -0
  84. package/dist/domain/orderbook/client.js +30 -0
  85. package/dist/domain/orderbook/client.js.map +1 -0
  86. package/dist/domain/orderbook/convert.d.ts +5 -0
  87. package/dist/domain/orderbook/convert.d.ts.map +1 -0
  88. package/dist/domain/orderbook/convert.js +34 -0
  89. package/dist/domain/orderbook/convert.js.map +1 -0
  90. package/dist/domain/orderbook/index.d.ts +36 -0
  91. package/dist/domain/orderbook/index.d.ts.map +1 -0
  92. package/dist/domain/orderbook/index.js +63 -0
  93. package/dist/domain/orderbook/index.js.map +1 -0
  94. package/dist/domain/orderbook/state.d.ts +19 -0
  95. package/dist/domain/orderbook/state.d.ts.map +1 -0
  96. package/dist/domain/orderbook/state.js +86 -0
  97. package/dist/domain/orderbook/state.js.map +1 -0
  98. package/dist/domain/orderbook/ticker.d.ts +8 -0
  99. package/dist/domain/orderbook/ticker.d.ts.map +1 -0
  100. package/dist/domain/orderbook/ticker.js +3 -0
  101. package/dist/domain/orderbook/ticker.js.map +1 -0
  102. package/dist/domain/orderbook/wire.d.ts +63 -0
  103. package/dist/domain/orderbook/wire.d.ts.map +1 -0
  104. package/dist/domain/orderbook/wire.js +3 -0
  105. package/dist/domain/orderbook/wire.js.map +1 -0
  106. package/dist/domain/position/client.d.ts +13 -0
  107. package/dist/domain/position/client.d.ts.map +1 -0
  108. package/dist/domain/position/client.js +20 -0
  109. package/dist/domain/position/client.js.map +1 -0
  110. package/dist/domain/position/index.d.ts +66 -0
  111. package/dist/domain/position/index.d.ts.map +1 -0
  112. package/dist/domain/position/index.js +19 -0
  113. package/dist/domain/position/index.js.map +1 -0
  114. package/dist/domain/position/wire.d.ts +29 -0
  115. package/dist/domain/position/wire.d.ts.map +1 -0
  116. package/dist/domain/position/wire.js +3 -0
  117. package/dist/domain/position/wire.js.map +1 -0
  118. package/dist/domain/price_history/client.d.ts +12 -0
  119. package/dist/domain/price_history/client.d.ts.map +1 -0
  120. package/dist/domain/price_history/client.js +24 -0
  121. package/dist/domain/price_history/client.js.map +1 -0
  122. package/dist/domain/price_history/index.d.ts +14 -0
  123. package/dist/domain/price_history/index.d.ts.map +1 -0
  124. package/dist/domain/price_history/index.js +27 -0
  125. package/dist/domain/price_history/index.js.map +1 -0
  126. package/dist/domain/price_history/state.d.ts +11 -0
  127. package/dist/domain/price_history/state.d.ts.map +1 -0
  128. package/dist/domain/price_history/state.js +35 -0
  129. package/dist/domain/price_history/state.js.map +1 -0
  130. package/dist/domain/price_history/wire.d.ts +45 -0
  131. package/dist/domain/price_history/wire.d.ts.map +1 -0
  132. package/dist/domain/price_history/wire.js +3 -0
  133. package/dist/domain/price_history/wire.js.map +1 -0
  134. package/dist/domain/referral/client.d.ts +13 -0
  135. package/dist/domain/referral/client.d.ts.map +1 -0
  136. package/dist/domain/referral/client.js +34 -0
  137. package/dist/domain/referral/client.js.map +1 -0
  138. package/dist/domain/referral/index.d.ts +17 -0
  139. package/dist/domain/referral/index.d.ts.map +1 -0
  140. package/dist/domain/referral/index.js +19 -0
  141. package/dist/domain/referral/index.js.map +1 -0
  142. package/dist/domain/referral/wire.d.ts +22 -0
  143. package/dist/domain/referral/wire.d.ts.map +1 -0
  144. package/dist/domain/referral/wire.js +3 -0
  145. package/dist/domain/referral/wire.js.map +1 -0
  146. package/dist/domain/trade/client.d.ts +12 -0
  147. package/dist/domain/trade/client.d.ts.map +1 -0
  148. package/dist/domain/trade/client.js +27 -0
  149. package/dist/domain/trade/client.js.map +1 -0
  150. package/dist/domain/trade/convert.d.ts +5 -0
  151. package/dist/domain/trade/convert.d.ts.map +1 -0
  152. package/dist/domain/trade/convert.js +25 -0
  153. package/dist/domain/trade/convert.js.map +1 -0
  154. package/dist/domain/trade/index.d.ts +19 -0
  155. package/dist/domain/trade/index.d.ts.map +1 -0
  156. package/dist/domain/trade/index.js +24 -0
  157. package/dist/domain/trade/index.js.map +1 -0
  158. package/dist/domain/trade/state.d.ts +16 -0
  159. package/dist/domain/trade/state.d.ts.map +1 -0
  160. package/dist/domain/trade/state.js +40 -0
  161. package/dist/domain/trade/state.js.map +1 -0
  162. package/dist/domain/trade/wire.d.ts +34 -0
  163. package/dist/domain/trade/wire.d.ts.map +1 -0
  164. package/dist/domain/trade/wire.js +3 -0
  165. package/dist/domain/trade/wire.js.map +1 -0
  166. package/dist/error.d.ts +44 -0
  167. package/dist/error.d.ts.map +1 -0
  168. package/dist/error.js +126 -0
  169. package/dist/error.js.map +1 -0
  170. package/dist/http/client.d.ts +16 -0
  171. package/dist/http/client.d.ts.map +1 -0
  172. package/dist/http/client.js +146 -0
  173. package/dist/http/client.js.map +1 -0
  174. package/dist/http/index.d.ts +3 -0
  175. package/dist/http/index.d.ts.map +1 -0
  176. package/dist/http/index.js +12 -0
  177. package/dist/http/index.js.map +1 -0
  178. package/dist/http/retry.d.ts +30 -0
  179. package/dist/http/retry.d.ts.map +1 -0
  180. package/dist/http/retry.js +48 -0
  181. package/dist/http/retry.js.map +1 -0
  182. package/dist/index.d.ts +13 -51
  183. package/dist/index.d.ts.map +1 -1
  184. package/dist/index.js +22 -68
  185. package/dist/index.js.map +1 -1
  186. package/dist/network.d.ts +4 -4
  187. package/dist/network.d.ts.map +1 -1
  188. package/dist/network.js +4 -4
  189. package/dist/network.js.map +1 -1
  190. package/dist/prelude.d.ts +41 -0
  191. package/dist/prelude.d.ts.map +1 -0
  192. package/dist/prelude.js +55 -0
  193. package/dist/prelude.js.map +1 -0
  194. package/dist/privy/client.d.ts +17 -0
  195. package/dist/privy/client.d.ts.map +1 -0
  196. package/dist/privy/client.js +66 -0
  197. package/dist/privy/client.js.map +1 -0
  198. package/dist/privy/index.d.ts +57 -0
  199. package/dist/privy/index.d.ts.map +1 -0
  200. package/dist/privy/index.js +80 -0
  201. package/dist/privy/index.js.map +1 -0
  202. package/dist/program/accounts.d.ts +16 -1
  203. package/dist/program/accounts.d.ts.map +1 -1
  204. package/dist/program/accounts.js +41 -0
  205. package/dist/program/accounts.js.map +1 -1
  206. package/dist/program/builder.d.ts +15 -11
  207. package/dist/program/builder.d.ts.map +1 -1
  208. package/dist/program/builder.js +30 -22
  209. package/dist/program/builder.js.map +1 -1
  210. package/dist/program/client.d.ts +37 -1
  211. package/dist/program/client.d.ts.map +1 -1
  212. package/dist/program/client.js +82 -2
  213. package/dist/program/client.js.map +1 -1
  214. package/dist/program/constants.d.ts +9 -1
  215. package/dist/program/constants.d.ts.map +1 -1
  216. package/dist/program/constants.js +9 -1
  217. package/dist/program/constants.js.map +1 -1
  218. package/dist/program/envelope.d.ts +94 -0
  219. package/dist/program/envelope.d.ts.map +1 -0
  220. package/dist/program/envelope.js +258 -0
  221. package/dist/program/envelope.js.map +1 -0
  222. package/dist/program/error.d.ts +8 -0
  223. package/dist/program/error.d.ts.map +1 -0
  224. package/dist/program/error.js +20 -0
  225. package/dist/program/error.js.map +1 -0
  226. package/dist/program/index.d.ts +8 -5
  227. package/dist/program/index.d.ts.map +1 -1
  228. package/dist/program/index.js +28 -3
  229. package/dist/program/index.js.map +1 -1
  230. package/dist/program/instructions.d.ts +78 -1
  231. package/dist/program/instructions.d.ts.map +1 -1
  232. package/dist/program/instructions.js +277 -3
  233. package/dist/program/instructions.js.map +1 -1
  234. package/dist/program/orders.d.ts +26 -8
  235. package/dist/program/orders.d.ts.map +1 -1
  236. package/dist/program/orders.js +58 -31
  237. package/dist/program/orders.js.map +1 -1
  238. package/dist/program/pda.d.ts +19 -0
  239. package/dist/program/pda.d.ts.map +1 -1
  240. package/dist/program/pda.js +28 -0
  241. package/dist/program/pda.js.map +1 -1
  242. package/dist/program/types.d.ts +72 -9
  243. package/dist/program/types.d.ts.map +1 -1
  244. package/dist/program/types.js.map +1 -1
  245. package/dist/shared/fmt/decimal.d.ts +5 -0
  246. package/dist/shared/fmt/decimal.d.ts.map +1 -0
  247. package/dist/shared/fmt/decimal.js +54 -0
  248. package/dist/shared/fmt/decimal.js.map +1 -0
  249. package/dist/shared/fmt/index.d.ts +3 -0
  250. package/dist/shared/fmt/index.d.ts.map +1 -0
  251. package/dist/shared/fmt/index.js +39 -0
  252. package/dist/shared/fmt/index.js.map +1 -0
  253. package/dist/shared/fmt/num.d.ts +6 -0
  254. package/dist/shared/fmt/num.d.ts.map +1 -0
  255. package/dist/shared/fmt/num.js +44 -0
  256. package/dist/shared/fmt/num.js.map +1 -0
  257. package/dist/shared/index.d.ts +4 -7
  258. package/dist/shared/index.d.ts.map +1 -1
  259. package/dist/shared/index.js +19 -7
  260. package/dist/shared/index.js.map +1 -1
  261. package/dist/shared/price.d.ts +5 -33
  262. package/dist/shared/price.d.ts.map +1 -1
  263. package/dist/shared/price.js +11 -39
  264. package/dist/shared/price.js.map +1 -1
  265. package/dist/shared/scaling.d.ts +17 -30
  266. package/dist/shared/scaling.d.ts.map +1 -1
  267. package/dist/shared/scaling.js +88 -57
  268. package/dist/shared/scaling.js.map +1 -1
  269. package/dist/shared/types.d.ts +66 -16
  270. package/dist/shared/types.d.ts.map +1 -1
  271. package/dist/shared/types.js +81 -17
  272. package/dist/shared/types.js.map +1 -1
  273. package/dist/ws/client.browser.d.ts +46 -0
  274. package/dist/ws/client.browser.d.ts.map +1 -0
  275. package/dist/ws/client.browser.js +245 -0
  276. package/dist/ws/client.browser.js.map +1 -0
  277. package/dist/ws/client.node.d.ts +36 -0
  278. package/dist/ws/client.node.d.ts.map +1 -0
  279. package/dist/ws/client.node.js +226 -0
  280. package/dist/ws/client.node.js.map +1 -0
  281. package/dist/ws/index.d.ts +110 -0
  282. package/dist/ws/index.d.ts.map +1 -0
  283. package/dist/ws/index.js +181 -0
  284. package/dist/ws/index.js.map +1 -0
  285. package/dist/ws/subscriptions.d.ts +51 -0
  286. package/dist/ws/subscriptions.d.ts.map +1 -0
  287. package/dist/ws/subscriptions.js +44 -0
  288. package/dist/ws/subscriptions.js.map +1 -0
  289. package/dist/ws/types.d.ts +23 -0
  290. package/dist/ws/types.d.ts.map +1 -0
  291. package/dist/ws/types.js +3 -0
  292. package/dist/ws/types.js.map +1 -0
  293. package/package.json +10 -13
  294. package/dist/api/client.d.ts +0 -225
  295. package/dist/api/client.d.ts.map +0 -1
  296. package/dist/api/client.js +0 -452
  297. package/dist/api/client.js.map +0 -1
  298. package/dist/api/error.d.ts +0 -58
  299. package/dist/api/error.d.ts.map +0 -1
  300. package/dist/api/error.js +0 -98
  301. package/dist/api/error.js.map +0 -1
  302. package/dist/api/index.d.ts +0 -23
  303. package/dist/api/index.d.ts.map +0 -1
  304. package/dist/api/index.js +0 -51
  305. package/dist/api/index.js.map +0 -1
  306. package/dist/api/types/admin.d.ts +0 -49
  307. package/dist/api/types/admin.d.ts.map +0 -1
  308. package/dist/api/types/admin.js +0 -13
  309. package/dist/api/types/admin.js.map +0 -1
  310. package/dist/api/types/index.d.ts +0 -14
  311. package/dist/api/types/index.d.ts.map +0 -1
  312. package/dist/api/types/index.js +0 -13
  313. package/dist/api/types/index.js.map +0 -1
  314. package/dist/api/types/market.d.ts +0 -186
  315. package/dist/api/types/market.d.ts.map +0 -1
  316. package/dist/api/types/market.js +0 -6
  317. package/dist/api/types/market.js.map +0 -1
  318. package/dist/api/types/order.d.ts +0 -190
  319. package/dist/api/types/order.d.ts.map +0 -1
  320. package/dist/api/types/order.js +0 -6
  321. package/dist/api/types/order.js.map +0 -1
  322. package/dist/api/types/orderbook.d.ts +0 -36
  323. package/dist/api/types/orderbook.d.ts.map +0 -1
  324. package/dist/api/types/orderbook.js +0 -6
  325. package/dist/api/types/orderbook.js.map +0 -1
  326. package/dist/api/types/position.d.ts +0 -60
  327. package/dist/api/types/position.d.ts.map +0 -1
  328. package/dist/api/types/position.js +0 -6
  329. package/dist/api/types/position.js.map +0 -1
  330. package/dist/api/types/price_history.d.ts +0 -68
  331. package/dist/api/types/price_history.d.ts.map +0 -1
  332. package/dist/api/types/price_history.js +0 -13
  333. package/dist/api/types/price_history.js.map +0 -1
  334. package/dist/api/types/trade.d.ts +0 -67
  335. package/dist/api/types/trade.d.ts.map +0 -1
  336. package/dist/api/types/trade.js +0 -13
  337. package/dist/api/types/trade.js.map +0 -1
  338. package/dist/api/validation.d.ts +0 -24
  339. package/dist/api/validation.d.ts.map +0 -1
  340. package/dist/api/validation.js +0 -53
  341. package/dist/api/validation.js.map +0 -1
  342. package/dist/websocket/client.d.ts +0 -238
  343. package/dist/websocket/client.d.ts.map +0 -1
  344. package/dist/websocket/client.js +0 -580
  345. package/dist/websocket/client.js.map +0 -1
  346. package/dist/websocket/error.d.ts +0 -47
  347. package/dist/websocket/error.d.ts.map +0 -1
  348. package/dist/websocket/error.js +0 -83
  349. package/dist/websocket/error.js.map +0 -1
  350. package/dist/websocket/handlers.d.ts +0 -97
  351. package/dist/websocket/handlers.d.ts.map +0 -1
  352. package/dist/websocket/handlers.js +0 -277
  353. package/dist/websocket/handlers.js.map +0 -1
  354. package/dist/websocket/index.d.ts +0 -38
  355. package/dist/websocket/index.d.ts.map +0 -1
  356. package/dist/websocket/index.js +0 -75
  357. package/dist/websocket/index.js.map +0 -1
  358. package/dist/websocket/state/index.d.ts +0 -7
  359. package/dist/websocket/state/index.d.ts.map +0 -1
  360. package/dist/websocket/state/index.js +0 -14
  361. package/dist/websocket/state/index.js.map +0 -1
  362. package/dist/websocket/state/orderbook.d.ts +0 -107
  363. package/dist/websocket/state/orderbook.d.ts.map +0 -1
  364. package/dist/websocket/state/orderbook.js +0 -293
  365. package/dist/websocket/state/orderbook.js.map +0 -1
  366. package/dist/websocket/state/price.d.ts +0 -108
  367. package/dist/websocket/state/price.d.ts.map +0 -1
  368. package/dist/websocket/state/price.js +0 -243
  369. package/dist/websocket/state/price.js.map +0 -1
  370. package/dist/websocket/state/user.d.ts +0 -83
  371. package/dist/websocket/state/user.d.ts.map +0 -1
  372. package/dist/websocket/state/user.js +0 -228
  373. package/dist/websocket/state/user.js.map +0 -1
  374. package/dist/websocket/subscriptions.d.ts +0 -143
  375. package/dist/websocket/subscriptions.d.ts.map +0 -1
  376. package/dist/websocket/subscriptions.js +0 -244
  377. package/dist/websocket/subscriptions.js.map +0 -1
  378. package/dist/websocket/types.d.ts +0 -417
  379. package/dist/websocket/types.d.ts.map +0 -1
  380. package/dist/websocket/types.js +0 -195
  381. package/dist/websocket/types.js.map +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"file":"client.js","sourceRoot":"","sources":["../../src/api/client.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * REST API client for Lightcone.\n */\n\nimport { Keypair } from \"@solana/web3.js\";\nimport { signCancelOrder, signCancelAll } from \"../program/orders\";\nimport { ApiError, getErrorMessage, type ErrorResponse } from \"./error\";\nimport {\n validatePubkey,\n validateSignature,\n validateLimit,\n DEFAULT_TIMEOUT_MS,\n} from \"./validation\";\nimport { authenticate, type AuthCredentials } from \"../auth\";\nimport type {\n MarketsResponse,\n MarketInfoResponse,\n DepositAssetsResponse,\n OrderbookResponse,\n SubmitOrderRequest,\n OrderResponse,\n CancelOrderRequest,\n CancelResponse,\n CancelAllOrdersRequest,\n CancelAllResponse,\n PositionsResponse,\n MarketPositionsResponse,\n UserOrdersResponse,\n PriceHistoryParams,\n PriceHistoryResponse,\n TradesParams,\n TradesResponse,\n AdminResponse,\n CreateOrderbookRequest,\n CreateOrderbookResponse,\n} from \"./types\";\n\n/**\n * Convert a typed params object to query string record.\n */\nfunction toQueryParams(\n params: object\n): Record<string, string> {\n const result: Record<string, string> = {};\n for (const [key, value] of Object.entries(params)) {\n if (value !== undefined && value !== null) {\n result[key] = String(value);\n }\n }\n return result;\n}\n\nimport { DEFAULT_API_URL } from \"../network\";\nexport { DEFAULT_API_URL } from \"../network\";\n\n/**\n * Configuration for retry behavior.\n */\nexport interface RetryConfig {\n /** Maximum number of retry attempts (default: 0 = disabled) */\n maxRetries: number;\n /** Initial delay in milliseconds (default: 100) */\n baseDelayMs: number;\n /** Maximum delay cap in milliseconds (default: 10000) */\n maxDelayMs: number;\n}\n\n/** Default retry configuration (disabled) */\nexport const DEFAULT_RETRY_CONFIG: RetryConfig = {\n maxRetries: 0,\n baseDelayMs: 100,\n maxDelayMs: 10000,\n};\n\n/**\n * Configuration for the Lightcone API client.\n */\nexport interface LightconeApiClientConfig {\n /** Base URL for the API (default: https://tapi.lightcone.xyz/api) */\n baseUrl?: string;\n /** Request timeout in milliseconds (default: 30000) */\n timeout?: number;\n /** Additional headers to include in requests */\n headers?: Record<string, string>;\n /** Retry configuration for transient failures */\n retry?: Partial<RetryConfig>;\n /** Authentication token for authenticated endpoints */\n authToken?: string;\n}\n\n/**\n * Calculate delay with exponential backoff and jitter.\n * Jitter: 75-100% of calculated delay (prevents thundering herd)\n */\nfunction calculateRetryDelay(attempt: number, config: RetryConfig): number {\n const expDelay = config.baseDelayMs * Math.pow(2, Math.min(attempt, 10));\n const cappedDelay = Math.min(expDelay, config.maxDelayMs);\n const jitterRange = cappedDelay * 0.25;\n const jitter = Math.random() * jitterRange;\n return cappedDelay - jitterRange + jitter;\n}\n\n/**\n * Check if error is retryable.\n */\nfunction isRetryable(error: ApiError): boolean {\n if (error.variant === \"ServerError\") return true;\n if (error.variant === \"RateLimited\") return true;\n if (error.variant === \"Http\") return true; // Network errors\n return false;\n}\n\n/**\n * Sleep for a duration.\n */\nfunction sleep(ms: number): Promise<void> {\n return new Promise((resolve) => setTimeout(resolve, ms));\n}\n\n/**\n * REST API client for the Lightcone platform.\n *\n * @example\n * ```typescript\n * import { LightconeApiClient } from \"@lightcone/sdk/api\";\n *\n * const client = new LightconeApiClient();\n *\n * // Get all markets\n * const markets = await client.getMarkets();\n *\n * // Get orderbook\n * const orderbook = await client.getOrderbook(\"market1:ob1\");\n * ```\n */\nexport class LightconeApiClient {\n private readonly baseUrl: string;\n private readonly timeout: number;\n private readonly headers: Record<string, string>;\n private readonly retryConfig: RetryConfig;\n private authToken?: string;\n\n constructor(config: LightconeApiClientConfig = {}) {\n this.baseUrl = config.baseUrl || DEFAULT_API_URL;\n this.timeout = config.timeout || DEFAULT_TIMEOUT_MS;\n this.headers = {\n \"Content-Type\": \"application/json\",\n ...config.headers,\n };\n this.retryConfig = {\n ...DEFAULT_RETRY_CONFIG,\n ...config.retry,\n };\n this.authToken = config.authToken;\n }\n\n // ============================================================================\n // AUTHENTICATION\n // ============================================================================\n\n /**\n * Log in with a Solana keypair. Stores the auth token for subsequent requests.\n *\n * @param keypair - The Solana Keypair for authentication\n * @returns AuthCredentials containing the auth token and user info\n */\n async login(keypair: Keypair): Promise<AuthCredentials> {\n const credentials = await authenticate(keypair);\n this.authToken = credentials.authToken;\n return credentials;\n }\n\n /**\n * Set the authentication token manually.\n */\n setAuthToken(token: string): void {\n this.authToken = token;\n }\n\n /**\n * Clear the authentication token.\n */\n clearAuthToken(): void {\n this.authToken = undefined;\n }\n\n /**\n * Check if the client has an authentication token.\n */\n hasAuthToken(): boolean {\n return this.authToken !== undefined;\n }\n\n // ============================================================================\n // PRIVATE HELPERS\n // ============================================================================\n\n /**\n * Make an HTTP request with retry support.\n */\n private async request<T>(\n method: string,\n path: string,\n body?: unknown,\n queryParams?: Record<string, string>,\n authenticated?: boolean\n ): Promise<T> {\n let url = `${this.baseUrl}${path}`;\n\n // Add query parameters\n if (queryParams && Object.keys(queryParams).length > 0) {\n const params = new URLSearchParams(queryParams);\n url += `?${params.toString()}`;\n }\n\n // Build headers, adding auth cookie if needed\n const requestHeaders: Record<string, string> = { ...this.headers };\n if (authenticated && this.authToken) {\n requestHeaders[\"Cookie\"] = `auth_token=${this.authToken}`;\n }\n\n let lastError: ApiError | undefined;\n\n for (let attempt = 0; attempt <= this.retryConfig.maxRetries; attempt++) {\n // Delay before retry (not on first attempt)\n if (attempt > 0) {\n const delay = calculateRetryDelay(attempt - 1, this.retryConfig);\n await sleep(delay);\n }\n\n const controller = new AbortController();\n const timeoutId = setTimeout(() => controller.abort(), this.timeout);\n\n try {\n const response = await fetch(url, {\n method,\n headers: requestHeaders,\n body: body ? JSON.stringify(body) : undefined,\n signal: controller.signal,\n });\n\n clearTimeout(timeoutId);\n\n if (!response.ok) {\n let errorMessage = `HTTP ${response.status}`;\n try {\n const errorData = (await response.json()) as ErrorResponse;\n errorMessage = getErrorMessage(errorData);\n } catch (parseError) {\n console.warn(\n `Failed to parse error response: ${parseError instanceof Error ? parseError.message : String(parseError)}`\n );\n }\n const error = ApiError.fromStatus(response.status, errorMessage);\n\n // Check if retryable\n if (isRetryable(error) && attempt < this.retryConfig.maxRetries) {\n lastError = error;\n continue;\n }\n throw error;\n }\n\n const data = (await response.json()) as T;\n return data;\n } catch (error) {\n clearTimeout(timeoutId);\n\n if (error instanceof ApiError) {\n // Already an ApiError - check if retryable\n if (isRetryable(error) && attempt < this.retryConfig.maxRetries) {\n lastError = error;\n continue;\n }\n throw error;\n }\n\n let apiError: ApiError;\n if (error instanceof Error) {\n if (error.name === \"AbortError\") {\n apiError = ApiError.http(\"Request timeout\");\n } else {\n apiError = ApiError.http(error.message);\n }\n } else {\n apiError = ApiError.http(\"Unknown error\");\n }\n\n // Network errors are retryable\n if (isRetryable(apiError) && attempt < this.retryConfig.maxRetries) {\n lastError = apiError;\n continue;\n }\n throw apiError;\n }\n }\n\n // Should not reach here, but throw last error if we do\n throw lastError || ApiError.http(\"Unknown error\");\n }\n\n // ============================================================================\n // HEALTH CHECK\n // ============================================================================\n\n /**\n * Check if the API is healthy.\n *\n * @throws {ApiError} If the health check fails\n */\n async healthCheck(): Promise<void> {\n await this.request<{ status: string }>(\"GET\", \"/health\");\n }\n\n // ============================================================================\n // MARKETS\n // ============================================================================\n\n /**\n * Get all available markets.\n *\n * @returns List of markets\n */\n async getMarkets(): Promise<MarketsResponse> {\n return this.request<MarketsResponse>(\"GET\", \"/markets\");\n }\n\n /**\n * Get market information by pubkey.\n *\n * @param marketPubkey - Market PDA address (Base58)\n * @returns Market details\n * @throws {ApiError} If marketPubkey is invalid\n */\n async getMarket(marketPubkey: string): Promise<MarketInfoResponse> {\n validatePubkey(marketPubkey, \"marketPubkey\");\n return this.request<MarketInfoResponse>(\n \"GET\",\n `/markets/${encodeURIComponent(marketPubkey)}`\n );\n }\n\n /**\n * Get market information by slug.\n *\n * @param slug - URL-friendly market slug\n * @returns Market details\n */\n async getMarketBySlug(slug: string): Promise<MarketInfoResponse> {\n return this.request<MarketInfoResponse>(\n \"GET\",\n `/markets/by-slug/${encodeURIComponent(slug)}`\n );\n }\n\n /**\n * Get deposit assets for a market.\n *\n * @param marketPubkey - Market PDA address (Base58)\n * @returns Deposit assets\n * @throws {ApiError} If marketPubkey is invalid\n */\n async getDepositAssets(marketPubkey: string): Promise<DepositAssetsResponse> {\n validatePubkey(marketPubkey, \"marketPubkey\");\n return this.request<DepositAssetsResponse>(\n \"GET\",\n `/markets/${encodeURIComponent(marketPubkey)}/deposit-assets`\n );\n }\n\n // ============================================================================\n // ORDERBOOK\n // ============================================================================\n\n /**\n * Get orderbook snapshot.\n *\n * @param orderbookId - Orderbook identifier\n * @param depth - Number of levels (default: 20)\n * @returns Orderbook snapshot\n */\n async getOrderbook(\n orderbookId: string,\n depth?: number\n ): Promise<OrderbookResponse> {\n return this.request<OrderbookResponse>(\n \"GET\",\n `/orderbook/${encodeURIComponent(orderbookId)}`,\n undefined,\n toQueryParams({ depth })\n );\n }\n\n // ============================================================================\n // ORDERS\n // ============================================================================\n\n /**\n * Submit a new order.\n *\n * @param request - Order details\n * @returns Order response with hash and fill info\n * @throws {ApiError} If any pubkey or signature is invalid\n */\n async submitOrder(request: SubmitOrderRequest): Promise<OrderResponse> {\n validatePubkey(request.maker, \"maker\");\n validatePubkey(request.market_pubkey, \"market_pubkey\");\n validatePubkey(request.base_token, \"base_token\");\n validatePubkey(request.quote_token, \"quote_token\");\n validateSignature(request.signature);\n return this.request<OrderResponse>(\"POST\", \"/orders/submit\", request);\n }\n\n /**\n * Cancel an order with a pre-computed signature.\n *\n * @param orderHash - Hash of the order to cancel (hex)\n * @param maker - Order creator's pubkey (Base58)\n * @param signature - Ed25519 signature over the order hash (hex, 128 chars)\n * @returns Cancel response\n * @throws {ApiError} If maker pubkey or signature is invalid\n */\n async cancelOrderWithSignature(\n orderHash: string,\n maker: string,\n signature: string\n ): Promise<CancelResponse> {\n validatePubkey(maker, \"maker\");\n validateSignature(signature);\n const request: CancelOrderRequest = { order_hash: orderHash, maker, signature };\n return this.request<CancelResponse>(\"POST\", \"/orders/cancel\", request);\n }\n\n /**\n * Cancel an order, auto-signing with the given keypair.\n *\n * @param orderHash - Hash of the order to cancel (hex)\n * @param signer - Keypair to sign the cancellation\n * @returns Cancel response\n */\n async cancelOrder(orderHash: string, signer: Keypair): Promise<CancelResponse> {\n const maker = signer.publicKey.toBase58();\n const signature = signCancelOrder(orderHash, signer);\n return this.cancelOrderWithSignature(orderHash, maker, signature);\n }\n\n /**\n * Cancel all orders for a user with a pre-computed signature.\n *\n * @param userPubkey - User's public key (Base58)\n * @param signature - Ed25519 signature over \"cancel_all:{pubkey}:{timestamp}\" (hex, 128 chars)\n * @param timestamp - Unix timestamp used in the signed message\n * @param orderbookId - Optional orderbook filter\n * @returns Cancel all response\n * @throws {ApiError} If any pubkey or signature is invalid\n */\n async cancelAllOrdersWithSignature(\n userPubkey: string,\n signature: string,\n timestamp: number,\n orderbookId?: string\n ): Promise<CancelAllResponse> {\n validatePubkey(userPubkey, \"userPubkey\");\n validateSignature(signature);\n const request: CancelAllOrdersRequest = {\n user_pubkey: userPubkey,\n orderbook_id: orderbookId,\n signature,\n timestamp,\n };\n return this.request<CancelAllResponse>(\"POST\", \"/orders/cancel-all\", request);\n }\n\n /**\n * Cancel all orders for a user, auto-signing with the given keypair.\n *\n * @param signer - Keypair to sign the cancellation\n * @param orderbookId - Optional orderbook filter\n * @returns Cancel all response\n */\n async cancelAllOrders(\n signer: Keypair,\n orderbookId?: string\n ): Promise<CancelAllResponse> {\n const userPubkey = signer.publicKey.toBase58();\n const timestamp = Math.floor(Date.now() / 1000);\n const signature = signCancelAll(userPubkey, timestamp, signer);\n return this.cancelAllOrdersWithSignature(userPubkey, signature, timestamp, orderbookId);\n }\n\n // ============================================================================\n // USER POSITIONS\n // ============================================================================\n\n /**\n * Get user positions across all markets.\n *\n * @param userPubkey - User's public key (Base58)\n * @returns User positions\n * @throws {ApiError} If userPubkey is invalid\n */\n async getUserPositions(userPubkey: string): Promise<PositionsResponse> {\n validatePubkey(userPubkey, \"userPubkey\");\n return this.request<PositionsResponse>(\n \"GET\",\n `/users/${encodeURIComponent(userPubkey)}/positions`\n );\n }\n\n /**\n * Get user positions in a specific market.\n *\n * @param userPubkey - User's public key (Base58)\n * @param marketPubkey - Market PDA address (Base58)\n * @returns Market positions\n * @throws {ApiError} If any pubkey is invalid\n */\n async getUserMarketPositions(\n userPubkey: string,\n marketPubkey: string\n ): Promise<MarketPositionsResponse> {\n validatePubkey(userPubkey, \"userPubkey\");\n validatePubkey(marketPubkey, \"marketPubkey\");\n return this.request<MarketPositionsResponse>(\n \"GET\",\n `/users/${encodeURIComponent(userPubkey)}/markets/${encodeURIComponent(marketPubkey)}/positions`\n );\n }\n\n // ============================================================================\n // USER ORDERS\n // ============================================================================\n\n /**\n * Get user's open orders.\n *\n * @param userPubkey - User's public key (Base58)\n * @returns User orders and balances\n * @throws {ApiError} If userPubkey is invalid\n */\n async getUserOrders(userPubkey: string): Promise<UserOrdersResponse> {\n validatePubkey(userPubkey, \"userPubkey\");\n return this.request<UserOrdersResponse>(\n \"POST\",\n \"/users/orders\",\n { user_pubkey: userPubkey },\n undefined,\n true\n );\n }\n\n // ============================================================================\n // PRICE HISTORY\n // ============================================================================\n\n /**\n * Get historical price data.\n *\n * @param params - Query parameters\n * @returns Price history data\n * @throws {ApiError} If limit is out of bounds (1-500)\n */\n async getPriceHistory(params: PriceHistoryParams): Promise<PriceHistoryResponse> {\n validateLimit(params.limit);\n return this.request<PriceHistoryResponse>(\n \"GET\",\n \"/price-history\",\n undefined,\n toQueryParams(params)\n );\n }\n\n // ============================================================================\n // TRADES\n // ============================================================================\n\n /**\n * Get recent trades.\n *\n * @param params - Query parameters\n * @returns Trade history\n * @throws {ApiError} If limit is out of bounds (1-500)\n */\n async getTrades(params: TradesParams): Promise<TradesResponse> {\n validateLimit(params.limit);\n return this.request<TradesResponse>(\n \"GET\",\n \"/trades\",\n undefined,\n toQueryParams(params)\n );\n }\n\n // ============================================================================\n // ADMIN\n // ============================================================================\n\n /**\n * Admin health check.\n *\n * @returns Admin status\n */\n async adminHealthCheck(): Promise<AdminResponse> {\n return this.request<AdminResponse>(\"GET\", \"/admin/test\");\n }\n\n /**\n * Create a new orderbook (admin only).\n *\n * @param request - Orderbook creation request\n * @returns Created orderbook info\n */\n async createOrderbook(\n request: CreateOrderbookRequest\n ): Promise<CreateOrderbookResponse> {\n return this.request<CreateOrderbookResponse>(\n \"POST\",\n \"/admin/create-orderbook\",\n request\n );\n }\n}\n"]}
@@ -1,58 +0,0 @@
1
- /**
2
- * API error types for the Lightcone REST API client.
3
- */
4
- /**
5
- * API error variants
6
- */
7
- export type ApiErrorVariant = "Http" | "NotFound" | "BadRequest" | "Forbidden" | "Conflict" | "ServerError" | "Deserialize" | "InvalidParameter" | "UnexpectedStatus" | "RateLimited" | "Unauthorized";
8
- /**
9
- * API-specific error class for the Lightcone REST API client.
10
- */
11
- export declare class ApiError extends Error {
12
- readonly variant: ApiErrorVariant;
13
- readonly statusCode?: number;
14
- readonly details?: string;
15
- constructor(variant: ApiErrorVariant, message: string, statusCode?: number, details?: string);
16
- /** HTTP/network error */
17
- static http(message: string): ApiError;
18
- /** Resource not found (404) */
19
- static notFound(message: string): ApiError;
20
- /** Invalid request parameters (400) */
21
- static badRequest(message: string): ApiError;
22
- /** Permission denied, signature mismatch (403) */
23
- static forbidden(message: string): ApiError;
24
- /** Resource already exists (409) */
25
- static conflict(message: string): ApiError;
26
- /** Server-side error (500) */
27
- static serverError(message: string): ApiError;
28
- /** JSON deserialization error */
29
- static deserialize(message: string): ApiError;
30
- /** Invalid parameter provided */
31
- static invalidParameter(message: string): ApiError;
32
- /** Unexpected HTTP status code */
33
- static unexpectedStatus(statusCode: number, message: string): ApiError;
34
- /** Rate limited (429) */
35
- static rateLimited(message: string): ApiError;
36
- /** Unauthorized - invalid or missing authentication (401) */
37
- static unauthorized(message: string): ApiError;
38
- /** Create from HTTP status code */
39
- static fromStatus(statusCode: number, message: string): ApiError;
40
- }
41
- /**
42
- * Error response format from the API.
43
- */
44
- export interface ErrorResponse {
45
- /** Error status (usually "error") */
46
- status?: string;
47
- /** Human-readable error message */
48
- message?: string;
49
- /** Alternative error field */
50
- error?: string;
51
- /** Additional error details */
52
- details?: string;
53
- }
54
- /**
55
- * Get the error message from an ErrorResponse.
56
- */
57
- export declare function getErrorMessage(response: ErrorResponse): string;
58
- //# sourceMappingURL=error.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"error.d.ts","sourceRoot":"","sources":["../../src/api/error.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH;;GAEG;AACH,MAAM,MAAM,eAAe,GACvB,MAAM,GACN,UAAU,GACV,YAAY,GACZ,WAAW,GACX,UAAU,GACV,aAAa,GACb,aAAa,GACb,kBAAkB,GAClB,kBAAkB,GAClB,aAAa,GACb,cAAc,CAAC;AAEnB;;GAEG;AACH,qBAAa,QAAS,SAAQ,KAAK;IACjC,QAAQ,CAAC,OAAO,EAAE,eAAe,CAAC;IAClC,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;gBAEd,OAAO,EAAE,eAAe,EAAE,OAAO,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM;IAQ5F,yBAAyB;IACzB,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,GAAG,QAAQ;IAItC,+BAA+B;IAC/B,MAAM,CAAC,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,QAAQ;IAI1C,uCAAuC;IACvC,MAAM,CAAC,UAAU,CAAC,OAAO,EAAE,MAAM,GAAG,QAAQ;IAI5C,kDAAkD;IAClD,MAAM,CAAC,SAAS,CAAC,OAAO,EAAE,MAAM,GAAG,QAAQ;IAI3C,oCAAoC;IACpC,MAAM,CAAC,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,QAAQ;IAI1C,8BAA8B;IAC9B,MAAM,CAAC,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,QAAQ;IAI7C,iCAAiC;IACjC,MAAM,CAAC,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,QAAQ;IAI7C,iCAAiC;IACjC,MAAM,CAAC,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,QAAQ;IAIlD,kCAAkC;IAClC,MAAM,CAAC,gBAAgB,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,QAAQ;IAItE,yBAAyB;IACzB,MAAM,CAAC,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,QAAQ;IAI7C,6DAA6D;IAC7D,MAAM,CAAC,YAAY,CAAC,OAAO,EAAE,MAAM,GAAG,QAAQ;IAI9C,mCAAmC;IACnC,MAAM,CAAC,UAAU,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,QAAQ;CAuBjE;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,qCAAqC;IACrC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,mCAAmC;IACnC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,8BAA8B;IAC9B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,+BAA+B;IAC/B,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,QAAQ,EAAE,aAAa,GAAG,MAAM,CAE/D"}
package/dist/api/error.js DELETED
@@ -1,98 +0,0 @@
1
- "use strict";
2
- /**
3
- * API error types for the Lightcone REST API client.
4
- */
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.ApiError = void 0;
7
- exports.getErrorMessage = getErrorMessage;
8
- /**
9
- * API-specific error class for the Lightcone REST API client.
10
- */
11
- class ApiError extends Error {
12
- variant;
13
- statusCode;
14
- details;
15
- constructor(variant, message, statusCode, details) {
16
- super(message);
17
- this.name = "ApiError";
18
- this.variant = variant;
19
- this.statusCode = statusCode;
20
- this.details = details;
21
- }
22
- /** HTTP/network error */
23
- static http(message) {
24
- return new ApiError("Http", `HTTP error: ${message}`);
25
- }
26
- /** Resource not found (404) */
27
- static notFound(message) {
28
- return new ApiError("NotFound", `Not found: ${message}`, 404);
29
- }
30
- /** Invalid request parameters (400) */
31
- static badRequest(message) {
32
- return new ApiError("BadRequest", `Bad request: ${message}`, 400);
33
- }
34
- /** Permission denied, signature mismatch (403) */
35
- static forbidden(message) {
36
- return new ApiError("Forbidden", `Permission denied: ${message}`, 403);
37
- }
38
- /** Resource already exists (409) */
39
- static conflict(message) {
40
- return new ApiError("Conflict", `Conflict: ${message}`, 409);
41
- }
42
- /** Server-side error (500) */
43
- static serverError(message) {
44
- return new ApiError("ServerError", `Server error: ${message}`, 500);
45
- }
46
- /** JSON deserialization error */
47
- static deserialize(message) {
48
- return new ApiError("Deserialize", `Deserialization error: ${message}`);
49
- }
50
- /** Invalid parameter provided */
51
- static invalidParameter(message) {
52
- return new ApiError("InvalidParameter", `Invalid parameter: ${message}`);
53
- }
54
- /** Unexpected HTTP status code */
55
- static unexpectedStatus(statusCode, message) {
56
- return new ApiError("UnexpectedStatus", `Unexpected status ${statusCode}: ${message}`, statusCode);
57
- }
58
- /** Rate limited (429) */
59
- static rateLimited(message) {
60
- return new ApiError("RateLimited", `Rate limited: ${message}`, 429);
61
- }
62
- /** Unauthorized - invalid or missing authentication (401) */
63
- static unauthorized(message) {
64
- return new ApiError("Unauthorized", `Unauthorized: ${message}`, 401);
65
- }
66
- /** Create from HTTP status code */
67
- static fromStatus(statusCode, message) {
68
- switch (statusCode) {
69
- case 401:
70
- return ApiError.unauthorized(message);
71
- case 400:
72
- return ApiError.badRequest(message);
73
- case 403:
74
- return ApiError.forbidden(message);
75
- case 404:
76
- return ApiError.notFound(message);
77
- case 409:
78
- return ApiError.conflict(message);
79
- case 429:
80
- return ApiError.rateLimited(message);
81
- case 500:
82
- case 502:
83
- case 503:
84
- case 504:
85
- return ApiError.serverError(message);
86
- default:
87
- return ApiError.unexpectedStatus(statusCode, message);
88
- }
89
- }
90
- }
91
- exports.ApiError = ApiError;
92
- /**
93
- * Get the error message from an ErrorResponse.
94
- */
95
- function getErrorMessage(response) {
96
- return response.message || response.error || response.details || "Unknown error";
97
- }
98
- //# sourceMappingURL=error.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"error.js","sourceRoot":"","sources":["../../src/api/error.ts"],"names":[],"mappings":";AAAA;;GAEG;;;AAoIH,0CAEC;AApHD;;GAEG;AACH,MAAa,QAAS,SAAQ,KAAK;IACxB,OAAO,CAAkB;IACzB,UAAU,CAAU;IACpB,OAAO,CAAU;IAE1B,YAAY,OAAwB,EAAE,OAAe,EAAE,UAAmB,EAAE,OAAgB;QAC1F,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,UAAU,CAAC;QACvB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAC7B,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACzB,CAAC;IAED,yBAAyB;IACzB,MAAM,CAAC,IAAI,CAAC,OAAe;QACzB,OAAO,IAAI,QAAQ,CAAC,MAAM,EAAE,eAAe,OAAO,EAAE,CAAC,CAAC;IACxD,CAAC;IAED,+BAA+B;IAC/B,MAAM,CAAC,QAAQ,CAAC,OAAe;QAC7B,OAAO,IAAI,QAAQ,CAAC,UAAU,EAAE,cAAc,OAAO,EAAE,EAAE,GAAG,CAAC,CAAC;IAChE,CAAC;IAED,uCAAuC;IACvC,MAAM,CAAC,UAAU,CAAC,OAAe;QAC/B,OAAO,IAAI,QAAQ,CAAC,YAAY,EAAE,gBAAgB,OAAO,EAAE,EAAE,GAAG,CAAC,CAAC;IACpE,CAAC;IAED,kDAAkD;IAClD,MAAM,CAAC,SAAS,CAAC,OAAe;QAC9B,OAAO,IAAI,QAAQ,CAAC,WAAW,EAAE,sBAAsB,OAAO,EAAE,EAAE,GAAG,CAAC,CAAC;IACzE,CAAC;IAED,oCAAoC;IACpC,MAAM,CAAC,QAAQ,CAAC,OAAe;QAC7B,OAAO,IAAI,QAAQ,CAAC,UAAU,EAAE,aAAa,OAAO,EAAE,EAAE,GAAG,CAAC,CAAC;IAC/D,CAAC;IAED,8BAA8B;IAC9B,MAAM,CAAC,WAAW,CAAC,OAAe;QAChC,OAAO,IAAI,QAAQ,CAAC,aAAa,EAAE,iBAAiB,OAAO,EAAE,EAAE,GAAG,CAAC,CAAC;IACtE,CAAC;IAED,iCAAiC;IACjC,MAAM,CAAC,WAAW,CAAC,OAAe;QAChC,OAAO,IAAI,QAAQ,CAAC,aAAa,EAAE,0BAA0B,OAAO,EAAE,CAAC,CAAC;IAC1E,CAAC;IAED,iCAAiC;IACjC,MAAM,CAAC,gBAAgB,CAAC,OAAe;QACrC,OAAO,IAAI,QAAQ,CAAC,kBAAkB,EAAE,sBAAsB,OAAO,EAAE,CAAC,CAAC;IAC3E,CAAC;IAED,kCAAkC;IAClC,MAAM,CAAC,gBAAgB,CAAC,UAAkB,EAAE,OAAe;QACzD,OAAO,IAAI,QAAQ,CAAC,kBAAkB,EAAE,qBAAqB,UAAU,KAAK,OAAO,EAAE,EAAE,UAAU,CAAC,CAAC;IACrG,CAAC;IAED,yBAAyB;IACzB,MAAM,CAAC,WAAW,CAAC,OAAe;QAChC,OAAO,IAAI,QAAQ,CAAC,aAAa,EAAE,iBAAiB,OAAO,EAAE,EAAE,GAAG,CAAC,CAAC;IACtE,CAAC;IAED,6DAA6D;IAC7D,MAAM,CAAC,YAAY,CAAC,OAAe;QACjC,OAAO,IAAI,QAAQ,CAAC,cAAc,EAAE,iBAAiB,OAAO,EAAE,EAAE,GAAG,CAAC,CAAC;IACvE,CAAC;IAED,mCAAmC;IACnC,MAAM,CAAC,UAAU,CAAC,UAAkB,EAAE,OAAe;QACnD,QAAQ,UAAU,EAAE,CAAC;YACnB,KAAK,GAAG;gBACN,OAAO,QAAQ,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;YACxC,KAAK,GAAG;gBACN,OAAO,QAAQ,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;YACtC,KAAK,GAAG;gBACN,OAAO,QAAQ,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;YACrC,KAAK,GAAG;gBACN,OAAO,QAAQ,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;YACpC,KAAK,GAAG;gBACN,OAAO,QAAQ,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;YACpC,KAAK,GAAG;gBACN,OAAO,QAAQ,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;YACvC,KAAK,GAAG,CAAC;YACT,KAAK,GAAG,CAAC;YACT,KAAK,GAAG,CAAC;YACT,KAAK,GAAG;gBACN,OAAO,QAAQ,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;YACvC;gBACE,OAAO,QAAQ,CAAC,gBAAgB,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;QAC1D,CAAC;IACH,CAAC;CACF;AA5FD,4BA4FC;AAgBD;;GAEG;AACH,SAAgB,eAAe,CAAC,QAAuB;IACrD,OAAO,QAAQ,CAAC,OAAO,IAAI,QAAQ,CAAC,KAAK,IAAI,QAAQ,CAAC,OAAO,IAAI,eAAe,CAAC;AACnF,CAAC","sourcesContent":["/**\n * API error types for the Lightcone REST API client.\n */\n\n/**\n * API error variants\n */\nexport type ApiErrorVariant =\n | \"Http\"\n | \"NotFound\"\n | \"BadRequest\"\n | \"Forbidden\"\n | \"Conflict\"\n | \"ServerError\"\n | \"Deserialize\"\n | \"InvalidParameter\"\n | \"UnexpectedStatus\"\n | \"RateLimited\"\n | \"Unauthorized\";\n\n/**\n * API-specific error class for the Lightcone REST API client.\n */\nexport class ApiError extends Error {\n readonly variant: ApiErrorVariant;\n readonly statusCode?: number;\n readonly details?: string;\n\n constructor(variant: ApiErrorVariant, message: string, statusCode?: number, details?: string) {\n super(message);\n this.name = \"ApiError\";\n this.variant = variant;\n this.statusCode = statusCode;\n this.details = details;\n }\n\n /** HTTP/network error */\n static http(message: string): ApiError {\n return new ApiError(\"Http\", `HTTP error: ${message}`);\n }\n\n /** Resource not found (404) */\n static notFound(message: string): ApiError {\n return new ApiError(\"NotFound\", `Not found: ${message}`, 404);\n }\n\n /** Invalid request parameters (400) */\n static badRequest(message: string): ApiError {\n return new ApiError(\"BadRequest\", `Bad request: ${message}`, 400);\n }\n\n /** Permission denied, signature mismatch (403) */\n static forbidden(message: string): ApiError {\n return new ApiError(\"Forbidden\", `Permission denied: ${message}`, 403);\n }\n\n /** Resource already exists (409) */\n static conflict(message: string): ApiError {\n return new ApiError(\"Conflict\", `Conflict: ${message}`, 409);\n }\n\n /** Server-side error (500) */\n static serverError(message: string): ApiError {\n return new ApiError(\"ServerError\", `Server error: ${message}`, 500);\n }\n\n /** JSON deserialization error */\n static deserialize(message: string): ApiError {\n return new ApiError(\"Deserialize\", `Deserialization error: ${message}`);\n }\n\n /** Invalid parameter provided */\n static invalidParameter(message: string): ApiError {\n return new ApiError(\"InvalidParameter\", `Invalid parameter: ${message}`);\n }\n\n /** Unexpected HTTP status code */\n static unexpectedStatus(statusCode: number, message: string): ApiError {\n return new ApiError(\"UnexpectedStatus\", `Unexpected status ${statusCode}: ${message}`, statusCode);\n }\n\n /** Rate limited (429) */\n static rateLimited(message: string): ApiError {\n return new ApiError(\"RateLimited\", `Rate limited: ${message}`, 429);\n }\n\n /** Unauthorized - invalid or missing authentication (401) */\n static unauthorized(message: string): ApiError {\n return new ApiError(\"Unauthorized\", `Unauthorized: ${message}`, 401);\n }\n\n /** Create from HTTP status code */\n static fromStatus(statusCode: number, message: string): ApiError {\n switch (statusCode) {\n case 401:\n return ApiError.unauthorized(message);\n case 400:\n return ApiError.badRequest(message);\n case 403:\n return ApiError.forbidden(message);\n case 404:\n return ApiError.notFound(message);\n case 409:\n return ApiError.conflict(message);\n case 429:\n return ApiError.rateLimited(message);\n case 500:\n case 502:\n case 503:\n case 504:\n return ApiError.serverError(message);\n default:\n return ApiError.unexpectedStatus(statusCode, message);\n }\n }\n}\n\n/**\n * Error response format from the API.\n */\nexport interface ErrorResponse {\n /** Error status (usually \"error\") */\n status?: string;\n /** Human-readable error message */\n message?: string;\n /** Alternative error field */\n error?: string;\n /** Additional error details */\n details?: string;\n}\n\n/**\n * Get the error message from an ErrorResponse.\n */\nexport function getErrorMessage(response: ErrorResponse): string {\n return response.message || response.error || response.details || \"Unknown error\";\n}\n"]}
@@ -1,23 +0,0 @@
1
- /**
2
- * REST API client module for Lightcone.
3
- *
4
- * This module provides HTTP client functionality for interacting with
5
- * the Lightcone REST API for orderbook data, market info, and more.
6
- *
7
- * @example
8
- * ```typescript
9
- * import { api } from "@lightcone/sdk";
10
- *
11
- * const client = new api.LightconeApiClient();
12
- * const markets = await client.getMarkets();
13
- * ```
14
- *
15
- * @module api
16
- */
17
- export { LightconeApiClient, DEFAULT_API_URL, DEFAULT_RETRY_CONFIG, } from "./client";
18
- export type { LightconeApiClientConfig, RetryConfig } from "./client";
19
- export { ApiError } from "./error";
20
- export type { ApiErrorVariant, ErrorResponse } from "./error";
21
- export { validatePubkey, validateSignature, validateLimit, MAX_PAGINATION_LIMIT, DEFAULT_TIMEOUT_MS, } from "./validation";
22
- export * from "./types";
23
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/api/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAGH,OAAO,EACL,kBAAkB,EAClB,eAAe,EACf,oBAAoB,GACrB,MAAM,UAAU,CAAC;AAClB,YAAY,EAAE,wBAAwB,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAGtE,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AACnC,YAAY,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAG9D,OAAO,EACL,cAAc,EACd,iBAAiB,EACjB,aAAa,EACb,oBAAoB,EACpB,kBAAkB,GACnB,MAAM,cAAc,CAAC;AAGtB,cAAc,SAAS,CAAC"}
package/dist/api/index.js DELETED
@@ -1,51 +0,0 @@
1
- "use strict";
2
- /**
3
- * REST API client module for Lightcone.
4
- *
5
- * This module provides HTTP client functionality for interacting with
6
- * the Lightcone REST API for orderbook data, market info, and more.
7
- *
8
- * @example
9
- * ```typescript
10
- * import { api } from "@lightcone/sdk";
11
- *
12
- * const client = new api.LightconeApiClient();
13
- * const markets = await client.getMarkets();
14
- * ```
15
- *
16
- * @module api
17
- */
18
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
19
- if (k2 === undefined) k2 = k;
20
- var desc = Object.getOwnPropertyDescriptor(m, k);
21
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
22
- desc = { enumerable: true, get: function() { return m[k]; } };
23
- }
24
- Object.defineProperty(o, k2, desc);
25
- }) : (function(o, m, k, k2) {
26
- if (k2 === undefined) k2 = k;
27
- o[k2] = m[k];
28
- }));
29
- var __exportStar = (this && this.__exportStar) || function(m, exports) {
30
- for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
31
- };
32
- Object.defineProperty(exports, "__esModule", { value: true });
33
- exports.DEFAULT_TIMEOUT_MS = exports.MAX_PAGINATION_LIMIT = exports.validateLimit = exports.validateSignature = exports.validatePubkey = exports.ApiError = exports.DEFAULT_RETRY_CONFIG = exports.DEFAULT_API_URL = exports.LightconeApiClient = void 0;
34
- // Client
35
- var client_1 = require("./client");
36
- Object.defineProperty(exports, "LightconeApiClient", { enumerable: true, get: function () { return client_1.LightconeApiClient; } });
37
- Object.defineProperty(exports, "DEFAULT_API_URL", { enumerable: true, get: function () { return client_1.DEFAULT_API_URL; } });
38
- Object.defineProperty(exports, "DEFAULT_RETRY_CONFIG", { enumerable: true, get: function () { return client_1.DEFAULT_RETRY_CONFIG; } });
39
- // Error types
40
- var error_1 = require("./error");
41
- Object.defineProperty(exports, "ApiError", { enumerable: true, get: function () { return error_1.ApiError; } });
42
- // Validation utilities
43
- var validation_1 = require("./validation");
44
- Object.defineProperty(exports, "validatePubkey", { enumerable: true, get: function () { return validation_1.validatePubkey; } });
45
- Object.defineProperty(exports, "validateSignature", { enumerable: true, get: function () { return validation_1.validateSignature; } });
46
- Object.defineProperty(exports, "validateLimit", { enumerable: true, get: function () { return validation_1.validateLimit; } });
47
- Object.defineProperty(exports, "MAX_PAGINATION_LIMIT", { enumerable: true, get: function () { return validation_1.MAX_PAGINATION_LIMIT; } });
48
- Object.defineProperty(exports, "DEFAULT_TIMEOUT_MS", { enumerable: true, get: function () { return validation_1.DEFAULT_TIMEOUT_MS; } });
49
- // All types
50
- __exportStar(require("./types"), exports);
51
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/api/index.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;GAeG;;;;;;;;;;;;;;;;;AAEH,SAAS;AACT,mCAIkB;AAHhB,4GAAA,kBAAkB,OAAA;AAClB,yGAAA,eAAe,OAAA;AACf,8GAAA,oBAAoB,OAAA;AAItB,cAAc;AACd,iCAAmC;AAA1B,iGAAA,QAAQ,OAAA;AAGjB,uBAAuB;AACvB,2CAMsB;AALpB,4GAAA,cAAc,OAAA;AACd,+GAAA,iBAAiB,OAAA;AACjB,2GAAA,aAAa,OAAA;AACb,kHAAA,oBAAoB,OAAA;AACpB,gHAAA,kBAAkB,OAAA;AAGpB,YAAY;AACZ,0CAAwB","sourcesContent":["/**\n * REST API client module for Lightcone.\n *\n * This module provides HTTP client functionality for interacting with\n * the Lightcone REST API for orderbook data, market info, and more.\n *\n * @example\n * ```typescript\n * import { api } from \"@lightcone/sdk\";\n *\n * const client = new api.LightconeApiClient();\n * const markets = await client.getMarkets();\n * ```\n *\n * @module api\n */\n\n// Client\nexport {\n LightconeApiClient,\n DEFAULT_API_URL,\n DEFAULT_RETRY_CONFIG,\n} from \"./client\";\nexport type { LightconeApiClientConfig, RetryConfig } from \"./client\";\n\n// Error types\nexport { ApiError } from \"./error\";\nexport type { ApiErrorVariant, ErrorResponse } from \"./error\";\n\n// Validation utilities\nexport {\n validatePubkey,\n validateSignature,\n validateLimit,\n MAX_PAGINATION_LIMIT,\n DEFAULT_TIMEOUT_MS,\n} from \"./validation\";\n\n// All types\nexport * from \"./types\";\n"]}
@@ -1,49 +0,0 @@
1
- /**
2
- * Admin-related types for the Lightcone REST API.
3
- */
4
- /**
5
- * Response for GET /api/admin/test.
6
- */
7
- export interface AdminResponse {
8
- /** Status (usually "success") */
9
- status: string;
10
- /** Human-readable message */
11
- message: string;
12
- }
13
- /**
14
- * Request for POST /api/admin/create-orderbook.
15
- */
16
- export interface CreateOrderbookRequest {
17
- /** Market address (Base58) */
18
- market_pubkey: string;
19
- /** Base conditional token (Base58) */
20
- base_token: string;
21
- /** Quote conditional token (Base58) */
22
- quote_token: string;
23
- /** Price granularity (default: 1000) */
24
- tick_size?: number;
25
- }
26
- /**
27
- * Create a new CreateOrderbookRequest with required fields.
28
- */
29
- export declare function createOrderbookRequest(market_pubkey: string, base_token: string, quote_token: string): CreateOrderbookRequest;
30
- /**
31
- * Response for POST /api/admin/create-orderbook.
32
- */
33
- export interface CreateOrderbookResponse {
34
- /** Status (usually "success") */
35
- status: string;
36
- /** Created orderbook ID */
37
- orderbook_id: string;
38
- /** Market pubkey */
39
- market_pubkey: string;
40
- /** Base token address */
41
- base_token: string;
42
- /** Quote token address */
43
- quote_token: string;
44
- /** Tick size */
45
- tick_size: number;
46
- /** Human-readable message */
47
- message: string;
48
- }
49
- //# sourceMappingURL=admin.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"admin.d.ts","sourceRoot":"","sources":["../../../src/api/types/admin.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,iCAAiC;IACjC,MAAM,EAAE,MAAM,CAAC;IACf,6BAA6B;IAC7B,OAAO,EAAE,MAAM,CAAC;CACjB;AAED;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACrC,8BAA8B;IAC9B,aAAa,EAAE,MAAM,CAAC;IACtB,sCAAsC;IACtC,UAAU,EAAE,MAAM,CAAC;IACnB,uCAAuC;IACvC,WAAW,EAAE,MAAM,CAAC;IACpB,wCAAwC;IACxC,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CACpC,aAAa,EAAE,MAAM,EACrB,UAAU,EAAE,MAAM,EAClB,WAAW,EAAE,MAAM,GAClB,sBAAsB,CAExB;AAED;;GAEG;AACH,MAAM,WAAW,uBAAuB;IACtC,iCAAiC;IACjC,MAAM,EAAE,MAAM,CAAC;IACf,2BAA2B;IAC3B,YAAY,EAAE,MAAM,CAAC;IACrB,oBAAoB;IACpB,aAAa,EAAE,MAAM,CAAC;IACtB,yBAAyB;IACzB,UAAU,EAAE,MAAM,CAAC;IACnB,0BAA0B;IAC1B,WAAW,EAAE,MAAM,CAAC;IACpB,gBAAgB;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,6BAA6B;IAC7B,OAAO,EAAE,MAAM,CAAC;CACjB"}
@@ -1,13 +0,0 @@
1
- "use strict";
2
- /**
3
- * Admin-related types for the Lightcone REST API.
4
- */
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.createOrderbookRequest = createOrderbookRequest;
7
- /**
8
- * Create a new CreateOrderbookRequest with required fields.
9
- */
10
- function createOrderbookRequest(market_pubkey, base_token, quote_token) {
11
- return { market_pubkey, base_token, quote_token };
12
- }
13
- //# sourceMappingURL=admin.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"admin.js","sourceRoot":"","sources":["../../../src/api/types/admin.ts"],"names":[],"mappings":";AAAA;;GAEG;;AA6BH,wDAMC;AATD;;GAEG;AACH,SAAgB,sBAAsB,CACpC,aAAqB,EACrB,UAAkB,EAClB,WAAmB;IAEnB,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,WAAW,EAAE,CAAC;AACpD,CAAC","sourcesContent":["/**\n * Admin-related types for the Lightcone REST API.\n */\n\n/**\n * Response for GET /api/admin/test.\n */\nexport interface AdminResponse {\n /** Status (usually \"success\") */\n status: string;\n /** Human-readable message */\n message: string;\n}\n\n/**\n * Request for POST /api/admin/create-orderbook.\n */\nexport interface CreateOrderbookRequest {\n /** Market address (Base58) */\n market_pubkey: string;\n /** Base conditional token (Base58) */\n base_token: string;\n /** Quote conditional token (Base58) */\n quote_token: string;\n /** Price granularity (default: 1000) */\n tick_size?: number;\n}\n\n/**\n * Create a new CreateOrderbookRequest with required fields.\n */\nexport function createOrderbookRequest(\n market_pubkey: string,\n base_token: string,\n quote_token: string\n): CreateOrderbookRequest {\n return { market_pubkey, base_token, quote_token };\n}\n\n/**\n * Response for POST /api/admin/create-orderbook.\n */\nexport interface CreateOrderbookResponse {\n /** Status (usually \"success\") */\n status: string;\n /** Created orderbook ID */\n orderbook_id: string;\n /** Market pubkey */\n market_pubkey: string;\n /** Base token address */\n base_token: string;\n /** Quote token address */\n quote_token: string;\n /** Tick size */\n tick_size: number;\n /** Human-readable message */\n message: string;\n}\n"]}
@@ -1,14 +0,0 @@
1
- /**
2
- * Re-export all API types.
3
- */
4
- export type { ApiMarketStatus, Outcome, OrderbookSummary, ConditionalToken, DepositAsset, Market, MarketsResponse, MarketInfoResponse, DepositAssetsResponse, } from "./market";
5
- export type { ApiOrderSide, OrderStatusValue, Fill, SubmitOrderRequest, OrderResponse, CancelOrderRequest, CancelResponse, CancelAllOrdersRequest, CancelAllResponse, UserOrder, GetUserOrdersRequest, UserOrderOutcomeBalance, UserBalance, UserOrdersResponse, } from "./order";
6
- export type { PriceLevel, OrderbookResponse } from "./orderbook";
7
- export type { OutcomeBalance, Position, PositionsResponse, MarketPositionsResponse, } from "./position";
8
- export type { PricePoint, PriceHistoryParams, PriceHistoryResponse, } from "./price_history";
9
- export { createPriceHistoryParams } from "./price_history";
10
- export type { TradeSide, Trade, TradesParams, TradesResponse } from "./trade";
11
- export { createTradesParams } from "./trade";
12
- export type { AdminResponse, CreateOrderbookRequest, CreateOrderbookResponse, } from "./admin";
13
- export { createOrderbookRequest } from "./admin";
14
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/api/types/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,YAAY,EACV,eAAe,EACf,OAAO,EACP,gBAAgB,EAChB,gBAAgB,EAChB,YAAY,EACZ,MAAM,EACN,eAAe,EACf,kBAAkB,EAClB,qBAAqB,GACtB,MAAM,UAAU,CAAC;AAGlB,YAAY,EACV,YAAY,EACZ,gBAAgB,EAChB,IAAI,EACJ,kBAAkB,EAClB,aAAa,EACb,kBAAkB,EAClB,cAAc,EACd,sBAAsB,EACtB,iBAAiB,EACjB,SAAS,EACT,oBAAoB,EACpB,uBAAuB,EACvB,WAAW,EACX,kBAAkB,GACnB,MAAM,SAAS,CAAC;AAGjB,YAAY,EAAE,UAAU,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAGjE,YAAY,EACV,cAAc,EACd,QAAQ,EACR,iBAAiB,EACjB,uBAAuB,GACxB,MAAM,YAAY,CAAC;AAGpB,YAAY,EACV,UAAU,EACV,kBAAkB,EAClB,oBAAoB,GACrB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,wBAAwB,EAAE,MAAM,iBAAiB,CAAC;AAG3D,YAAY,EAAE,SAAS,EAAE,KAAK,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAC9E,OAAO,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAC;AAG7C,YAAY,EACV,aAAa,EACb,sBAAsB,EACtB,uBAAuB,GACxB,MAAM,SAAS,CAAC;AACjB,OAAO,EAAE,sBAAsB,EAAE,MAAM,SAAS,CAAC"}
@@ -1,13 +0,0 @@
1
- "use strict";
2
- /**
3
- * Re-export all API types.
4
- */
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.createOrderbookRequest = exports.createTradesParams = exports.createPriceHistoryParams = void 0;
7
- var price_history_1 = require("./price_history");
8
- Object.defineProperty(exports, "createPriceHistoryParams", { enumerable: true, get: function () { return price_history_1.createPriceHistoryParams; } });
9
- var trade_1 = require("./trade");
10
- Object.defineProperty(exports, "createTradesParams", { enumerable: true, get: function () { return trade_1.createTradesParams; } });
11
- var admin_1 = require("./admin");
12
- Object.defineProperty(exports, "createOrderbookRequest", { enumerable: true, get: function () { return admin_1.createOrderbookRequest; } });
13
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/api/types/index.ts"],"names":[],"mappings":";AAAA;;GAEG;;;AAkDH,iDAA2D;AAAlD,yHAAA,wBAAwB,OAAA;AAIjC,iCAA6C;AAApC,2GAAA,kBAAkB,OAAA;AAQ3B,iCAAiD;AAAxC,+GAAA,sBAAsB,OAAA","sourcesContent":["/**\n * Re-export all API types.\n */\n\n// Market types\nexport type {\n ApiMarketStatus,\n Outcome,\n OrderbookSummary,\n ConditionalToken,\n DepositAsset,\n Market,\n MarketsResponse,\n MarketInfoResponse,\n DepositAssetsResponse,\n} from \"./market\";\n\n// Order types\nexport type {\n ApiOrderSide,\n OrderStatusValue,\n Fill,\n SubmitOrderRequest,\n OrderResponse,\n CancelOrderRequest,\n CancelResponse,\n CancelAllOrdersRequest,\n CancelAllResponse,\n UserOrder,\n GetUserOrdersRequest,\n UserOrderOutcomeBalance,\n UserBalance,\n UserOrdersResponse,\n} from \"./order\";\n\n// Orderbook types\nexport type { PriceLevel, OrderbookResponse } from \"./orderbook\";\n\n// Position types\nexport type {\n OutcomeBalance,\n Position,\n PositionsResponse,\n MarketPositionsResponse,\n} from \"./position\";\n\n// Price history types\nexport type {\n PricePoint,\n PriceHistoryParams,\n PriceHistoryResponse,\n} from \"./price_history\";\nexport { createPriceHistoryParams } from \"./price_history\";\n\n// Trade types\nexport type { TradeSide, Trade, TradesParams, TradesResponse } from \"./trade\";\nexport { createTradesParams } from \"./trade\";\n\n// Admin types\nexport type {\n AdminResponse,\n CreateOrderbookRequest,\n CreateOrderbookResponse,\n} from \"./admin\";\nexport { createOrderbookRequest } from \"./admin\";\n"]}
@@ -1,186 +0,0 @@
1
- /**
2
- * Market-related types for the Lightcone REST API.
3
- */
4
- /**
5
- * Market status enum matching the API specification.
6
- */
7
- export type ApiMarketStatus = "Pending" | "Active" | "Settled";
8
- /**
9
- * Outcome information for a market.
10
- */
11
- export interface Outcome {
12
- /** Outcome index (0-based) */
13
- index: number;
14
- /** Outcome name */
15
- name: string;
16
- /** Optional thumbnail URL */
17
- thumbnail_url?: string;
18
- }
19
- /**
20
- * Orderbook summary embedded in market response.
21
- */
22
- export interface OrderbookSummary {
23
- /** Orderbook identifier */
24
- orderbook_id: string;
25
- /** Market pubkey */
26
- market_pubkey: string;
27
- /** Base token address */
28
- base_token: string;
29
- /** Quote token address */
30
- quote_token: string;
31
- /** Tick size for price granularity */
32
- tick_size: number;
33
- /** Creation timestamp */
34
- created_at: string;
35
- }
36
- /**
37
- * Conditional token information.
38
- */
39
- export interface ConditionalToken {
40
- /** Database ID */
41
- id: number;
42
- /** Outcome index this token represents */
43
- outcome_index: number;
44
- /** Token mint address */
45
- token_address: string;
46
- /** Token name */
47
- name: string;
48
- /** Token symbol */
49
- symbol: string;
50
- /** Token metadata URI */
51
- uri?: string;
52
- /** Display name for UI */
53
- display_name: string;
54
- /** Outcome name */
55
- outcome: string;
56
- /** Associated deposit symbol */
57
- deposit_symbol: string;
58
- /** Short name for display */
59
- short_name: string;
60
- /** Token description */
61
- description?: string;
62
- /** Icon URL */
63
- icon_url?: string;
64
- /** Metadata URI */
65
- metadata_uri?: string;
66
- /** Token decimals */
67
- decimals: number;
68
- /** Creation timestamp */
69
- created_at: string;
70
- }
71
- /**
72
- * Deposit asset information.
73
- */
74
- export interface DepositAsset {
75
- /** Display name for the asset */
76
- display_name: string;
77
- /** Token symbol */
78
- token_symbol: string;
79
- /** Short symbol */
80
- symbol: string;
81
- /** Deposit asset mint address */
82
- deposit_asset: string;
83
- /** Database ID */
84
- id: number;
85
- /** Associated market pubkey */
86
- market_pubkey: string;
87
- /** Vault address */
88
- vault: string;
89
- /** Number of outcomes */
90
- num_outcomes: number;
91
- /** Asset description */
92
- description?: string;
93
- /** Icon URL */
94
- icon_url?: string;
95
- /** Metadata URI */
96
- metadata_uri?: string;
97
- /** Token decimals */
98
- decimals: number;
99
- /** Conditional tokens for each outcome */
100
- conditional_tokens: ConditionalToken[];
101
- /** Creation timestamp */
102
- created_at: string;
103
- }
104
- /**
105
- * Market information.
106
- */
107
- export interface Market {
108
- /** Market name */
109
- market_name: string;
110
- /** URL-friendly slug */
111
- slug: string;
112
- /** Market description */
113
- description: string;
114
- /** Market definition/rules */
115
- definition: string;
116
- /** Possible outcomes */
117
- outcomes: Outcome[];
118
- /** Banner image URL */
119
- banner_image_url?: string;
120
- /** Thumbnail URL */
121
- thumbnail_url?: string;
122
- /** Market category */
123
- category?: string;
124
- /** Tags for filtering */
125
- tags: string[];
126
- /** Featured rank (0 = not featured) */
127
- featured_rank: number;
128
- /** Market PDA address */
129
- market_pubkey: string;
130
- /** Market ID */
131
- market_id: number;
132
- /** Oracle address */
133
- oracle: string;
134
- /** Question ID */
135
- question_id: string;
136
- /** Condition ID */
137
- condition_id: string;
138
- /** Current market status */
139
- market_status: ApiMarketStatus;
140
- /** Winning outcome index (if settled) */
141
- winning_outcome: number;
142
- /** Whether market has a winning outcome */
143
- has_winning_outcome: boolean;
144
- /** Creation timestamp */
145
- created_at: string;
146
- /** Activation timestamp */
147
- activated_at?: string;
148
- /** Settlement timestamp */
149
- settled_at?: string;
150
- /** Deposit assets for this market */
151
- deposit_assets: DepositAsset[];
152
- /** Orderbooks for this market */
153
- orderbooks: OrderbookSummary[];
154
- }
155
- /**
156
- * Response for GET /api/markets.
157
- */
158
- export interface MarketsResponse {
159
- /** List of markets */
160
- markets: Market[];
161
- /** Total count */
162
- total: number;
163
- }
164
- /**
165
- * Response for GET /api/markets/{market_pubkey}.
166
- */
167
- export interface MarketInfoResponse {
168
- /** Market details */
169
- market: Market;
170
- /** Deposit assets */
171
- deposit_assets: DepositAsset[];
172
- /** Count of deposit assets */
173
- deposit_asset_count: number;
174
- }
175
- /**
176
- * Response for GET /api/markets/{market_pubkey}/deposit-assets.
177
- */
178
- export interface DepositAssetsResponse {
179
- /** Market pubkey */
180
- market_pubkey: string;
181
- /** Deposit assets */
182
- deposit_assets: DepositAsset[];
183
- /** Total count */
184
- total: number;
185
- }
186
- //# sourceMappingURL=market.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"market.d.ts","sourceRoot":"","sources":["../../../src/api/types/market.ts"],"names":[],"mappings":"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"}