@lifi/perps-types 0.1.1-alpha.9 → 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (282) hide show
  1. package/README.md +6 -30
  2. package/dist/cjs/acceptTerms.d.ts +20 -0
  3. package/dist/cjs/acceptTerms.d.ts.map +1 -0
  4. package/dist/cjs/acceptTerms.js +10 -0
  5. package/dist/cjs/acceptTerms.js.map +1 -0
  6. package/dist/cjs/account.d.ts +191 -0
  7. package/dist/cjs/account.d.ts.map +1 -0
  8. package/{src/_esm → dist/cjs}/account.js.map +1 -1
  9. package/dist/cjs/action.d.ts +200 -0
  10. package/dist/cjs/action.d.ts.map +1 -0
  11. package/dist/cjs/action.js +3 -0
  12. package/dist/cjs/action.js.map +1 -0
  13. package/dist/cjs/asset.d.ts +11 -0
  14. package/dist/cjs/asset.d.ts.map +1 -0
  15. package/{src/_cjs/providers/hyperliquid/types.js → dist/cjs/asset.js} +1 -1
  16. package/dist/cjs/asset.js.map +1 -0
  17. package/dist/cjs/enums.d.ts +148 -0
  18. package/dist/cjs/enums.d.ts.map +1 -0
  19. package/dist/cjs/enums.js +170 -0
  20. package/dist/cjs/enums.js.map +1 -0
  21. package/dist/cjs/errors.d.ts.map +1 -0
  22. package/dist/cjs/errors.js.map +1 -0
  23. package/dist/cjs/index.d.ts +15 -0
  24. package/dist/cjs/index.d.ts.map +1 -0
  25. package/{src/_cjs → dist/cjs}/index.js +11 -6
  26. package/dist/cjs/index.js.map +1 -0
  27. package/{src/_types → dist/cjs}/market.d.ts +33 -36
  28. package/dist/cjs/market.d.ts.map +1 -0
  29. package/dist/cjs/market.js.map +1 -0
  30. package/dist/cjs/meta.d.ts +17 -0
  31. package/dist/cjs/meta.d.ts.map +1 -0
  32. package/dist/cjs/meta.js +3 -0
  33. package/dist/cjs/meta.js.map +1 -0
  34. package/dist/cjs/primitives.d.ts +3 -0
  35. package/dist/cjs/primitives.d.ts.map +1 -0
  36. package/dist/cjs/primitives.js +3 -0
  37. package/dist/cjs/primitives.js.map +1 -0
  38. package/dist/cjs/providers.d.ts +58 -0
  39. package/dist/cjs/providers.d.ts.map +1 -0
  40. package/dist/cjs/providers.js +3 -0
  41. package/dist/cjs/providers.js.map +1 -0
  42. package/dist/cjs/quote.d.ts +23 -0
  43. package/dist/cjs/quote.d.ts.map +1 -0
  44. package/dist/cjs/quote.js +3 -0
  45. package/dist/cjs/quote.js.map +1 -0
  46. package/{src/_types → dist/cjs}/subscriptions.d.ts +26 -20
  47. package/dist/cjs/subscriptions.d.ts.map +1 -0
  48. package/{src/_cjs → dist/cjs}/subscriptions.js.map +1 -1
  49. package/dist/cjs/typedData.d.ts +23 -0
  50. package/dist/cjs/typedData.d.ts.map +1 -0
  51. package/{src/_cjs → dist/cjs}/typedData.js.map +1 -1
  52. package/dist/cjs/vote.d.ts +27 -0
  53. package/dist/cjs/vote.d.ts.map +1 -0
  54. package/dist/cjs/vote.js +12 -0
  55. package/dist/cjs/vote.js.map +1 -0
  56. package/dist/esm/acceptTerms.d.ts +45 -0
  57. package/dist/esm/acceptTerms.d.ts.map +1 -0
  58. package/dist/esm/acceptTerms.js +12 -0
  59. package/dist/esm/acceptTerms.js.map +1 -0
  60. package/dist/esm/account.d.ts +229 -0
  61. package/dist/esm/account.d.ts.map +1 -0
  62. package/{src/_cjs → dist/esm}/account.js.map +1 -1
  63. package/dist/esm/action.d.ts +248 -0
  64. package/dist/esm/action.d.ts.map +1 -0
  65. package/dist/esm/action.js +2 -0
  66. package/dist/esm/action.js.map +1 -0
  67. package/dist/esm/asset.d.ts +25 -0
  68. package/dist/esm/asset.d.ts.map +1 -0
  69. package/dist/esm/asset.js +2 -0
  70. package/dist/esm/asset.js.map +1 -0
  71. package/dist/esm/enums.d.ts +171 -0
  72. package/dist/esm/enums.d.ts.map +1 -0
  73. package/dist/esm/enums.js +195 -0
  74. package/dist/esm/enums.js.map +1 -0
  75. package/dist/esm/errors.d.ts +8 -0
  76. package/dist/esm/errors.d.ts.map +1 -0
  77. package/dist/esm/errors.js.map +1 -0
  78. package/dist/esm/index.d.ts +23 -0
  79. package/dist/esm/index.d.ts.map +1 -0
  80. package/dist/esm/index.js +23 -0
  81. package/dist/esm/index.js.map +1 -0
  82. package/dist/esm/market.d.ts +107 -0
  83. package/dist/esm/market.d.ts.map +1 -0
  84. package/dist/esm/market.js.map +1 -0
  85. package/dist/esm/meta.d.ts +37 -0
  86. package/dist/esm/meta.d.ts.map +1 -0
  87. package/dist/esm/meta.js +2 -0
  88. package/dist/esm/meta.js.map +1 -0
  89. package/dist/esm/primitives.d.ts +5 -0
  90. package/dist/esm/primitives.d.ts.map +1 -0
  91. package/dist/esm/primitives.js +2 -0
  92. package/dist/esm/primitives.js.map +1 -0
  93. package/dist/esm/providers.d.ts +116 -0
  94. package/dist/esm/providers.d.ts.map +1 -0
  95. package/dist/esm/providers.js +2 -0
  96. package/dist/esm/providers.js.map +1 -0
  97. package/dist/esm/quote.d.ts +47 -0
  98. package/dist/esm/quote.d.ts.map +1 -0
  99. package/dist/esm/quote.js +2 -0
  100. package/dist/esm/quote.js.map +1 -0
  101. package/dist/esm/subscriptions.d.ts +115 -0
  102. package/dist/esm/subscriptions.d.ts.map +1 -0
  103. package/{src/_esm → dist/esm}/subscriptions.js.map +1 -1
  104. package/dist/esm/typedData.d.ts +28 -0
  105. package/dist/esm/typedData.d.ts.map +1 -0
  106. package/{src/_esm → dist/esm}/typedData.js.map +1 -1
  107. package/dist/esm/vote.d.ts +68 -0
  108. package/dist/esm/vote.d.ts.map +1 -0
  109. package/dist/esm/vote.js +20 -0
  110. package/dist/esm/vote.js.map +1 -0
  111. package/dist/types/acceptTerms.d.ts +45 -0
  112. package/dist/types/acceptTerms.d.ts.map +1 -0
  113. package/dist/types/account.d.ts +229 -0
  114. package/dist/types/account.d.ts.map +1 -0
  115. package/dist/types/action.d.ts +248 -0
  116. package/dist/types/action.d.ts.map +1 -0
  117. package/dist/types/asset.d.ts +25 -0
  118. package/dist/types/asset.d.ts.map +1 -0
  119. package/dist/types/enums.d.ts +171 -0
  120. package/dist/types/enums.d.ts.map +1 -0
  121. package/dist/types/errors.d.ts +8 -0
  122. package/dist/types/errors.d.ts.map +1 -0
  123. package/dist/types/index.d.ts +23 -0
  124. package/dist/types/index.d.ts.map +1 -0
  125. package/dist/types/market.d.ts +107 -0
  126. package/dist/types/market.d.ts.map +1 -0
  127. package/dist/types/meta.d.ts +37 -0
  128. package/dist/types/meta.d.ts.map +1 -0
  129. package/dist/types/primitives.d.ts +5 -0
  130. package/dist/types/primitives.d.ts.map +1 -0
  131. package/dist/types/providers.d.ts +116 -0
  132. package/dist/types/providers.d.ts.map +1 -0
  133. package/dist/types/quote.d.ts +47 -0
  134. package/dist/types/quote.d.ts.map +1 -0
  135. package/dist/types/subscriptions.d.ts +115 -0
  136. package/dist/types/subscriptions.d.ts.map +1 -0
  137. package/dist/types/typedData.d.ts +28 -0
  138. package/dist/types/typedData.d.ts.map +1 -0
  139. package/dist/types/vote.d.ts +68 -0
  140. package/dist/types/vote.d.ts.map +1 -0
  141. package/package.json +37 -51
  142. package/src/acceptTerms.ts +53 -0
  143. package/src/account.ts +163 -29
  144. package/src/action.ts +292 -0
  145. package/src/asset.ts +25 -0
  146. package/src/enums.ts +102 -3
  147. package/src/errors.ts +1 -0
  148. package/src/index.ts +20 -6
  149. package/src/market.ts +79 -39
  150. package/src/meta.ts +38 -0
  151. package/src/primitives.ts +5 -0
  152. package/src/providers.ts +122 -0
  153. package/src/quote.ts +49 -0
  154. package/src/subscriptions.ts +70 -25
  155. package/src/typedData.ts +27 -8
  156. package/src/vote.ts +79 -0
  157. package/providers/hyperliquid/package.json +0 -5
  158. package/src/_cjs/authorization.js +0 -3
  159. package/src/_cjs/authorization.js.map +0 -1
  160. package/src/_cjs/enums.js +0 -100
  161. package/src/_cjs/enums.js.map +0 -1
  162. package/src/_cjs/errors.js.map +0 -1
  163. package/src/_cjs/index.js.map +0 -1
  164. package/src/_cjs/market.js.map +0 -1
  165. package/src/_cjs/providers/hyperliquid/assetId.js +0 -19
  166. package/src/_cjs/providers/hyperliquid/assetId.js.map +0 -1
  167. package/src/_cjs/providers/hyperliquid/index.js +0 -20
  168. package/src/_cjs/providers/hyperliquid/index.js.map +0 -1
  169. package/src/_cjs/providers/hyperliquid/mappers/activity.js +0 -56
  170. package/src/_cjs/providers/hyperliquid/mappers/activity.js.map +0 -1
  171. package/src/_cjs/providers/hyperliquid/mappers/history.js +0 -22
  172. package/src/_cjs/providers/hyperliquid/mappers/history.js.map +0 -1
  173. package/src/_cjs/providers/hyperliquid/mappers/index.js +0 -18
  174. package/src/_cjs/providers/hyperliquid/mappers/index.js.map +0 -1
  175. package/src/_cjs/providers/hyperliquid/mappers/market.js +0 -28
  176. package/src/_cjs/providers/hyperliquid/mappers/market.js.map +0 -1
  177. package/src/_cjs/providers/hyperliquid/mappers/order.js +0 -76
  178. package/src/_cjs/providers/hyperliquid/mappers/order.js.map +0 -1
  179. package/src/_cjs/providers/hyperliquid/mappers/position.js +0 -29
  180. package/src/_cjs/providers/hyperliquid/mappers/position.js.map +0 -1
  181. package/src/_cjs/providers/hyperliquid/mappers/shared.js +0 -12
  182. package/src/_cjs/providers/hyperliquid/mappers/shared.js.map +0 -1
  183. package/src/_cjs/providers/hyperliquid/types.js.map +0 -1
  184. package/src/_cjs/trading.js +0 -3
  185. package/src/_cjs/trading.js.map +0 -1
  186. package/src/_cjs/withdrawal.js +0 -3
  187. package/src/_cjs/withdrawal.js.map +0 -1
  188. package/src/_esm/authorization.js +0 -2
  189. package/src/_esm/authorization.js.map +0 -1
  190. package/src/_esm/enums.js +0 -103
  191. package/src/_esm/enums.js.map +0 -1
  192. package/src/_esm/errors.js.map +0 -1
  193. package/src/_esm/index.js +0 -10
  194. package/src/_esm/index.js.map +0 -1
  195. package/src/_esm/market.js.map +0 -1
  196. package/src/_esm/providers/hyperliquid/assetId.js +0 -23
  197. package/src/_esm/providers/hyperliquid/assetId.js.map +0 -1
  198. package/src/_esm/providers/hyperliquid/index.js +0 -4
  199. package/src/_esm/providers/hyperliquid/index.js.map +0 -1
  200. package/src/_esm/providers/hyperliquid/mappers/activity.js +0 -59
  201. package/src/_esm/providers/hyperliquid/mappers/activity.js.map +0 -1
  202. package/src/_esm/providers/hyperliquid/mappers/history.js +0 -18
  203. package/src/_esm/providers/hyperliquid/mappers/history.js.map +0 -1
  204. package/src/_esm/providers/hyperliquid/mappers/index.js +0 -7
  205. package/src/_esm/providers/hyperliquid/mappers/index.js.map +0 -1
  206. package/src/_esm/providers/hyperliquid/mappers/market.js +0 -24
  207. package/src/_esm/providers/hyperliquid/mappers/market.js.map +0 -1
  208. package/src/_esm/providers/hyperliquid/mappers/order.js +0 -71
  209. package/src/_esm/providers/hyperliquid/mappers/order.js.map +0 -1
  210. package/src/_esm/providers/hyperliquid/mappers/position.js +0 -25
  211. package/src/_esm/providers/hyperliquid/mappers/position.js.map +0 -1
  212. package/src/_esm/providers/hyperliquid/mappers/shared.js +0 -13
  213. package/src/_esm/providers/hyperliquid/mappers/shared.js.map +0 -1
  214. package/src/_esm/providers/hyperliquid/types.js +0 -5
  215. package/src/_esm/providers/hyperliquid/types.js.map +0 -1
  216. package/src/_esm/trading.js +0 -2
  217. package/src/_esm/trading.js.map +0 -1
  218. package/src/_esm/withdrawal.js +0 -2
  219. package/src/_esm/withdrawal.js.map +0 -1
  220. package/src/_types/account.d.ts +0 -113
  221. package/src/_types/account.d.ts.map +0 -1
  222. package/src/_types/authorization.d.ts +0 -39
  223. package/src/_types/authorization.d.ts.map +0 -1
  224. package/src/_types/enums.d.ts +0 -84
  225. package/src/_types/enums.d.ts.map +0 -1
  226. package/src/_types/errors.d.ts.map +0 -1
  227. package/src/_types/index.d.ts +0 -10
  228. package/src/_types/index.d.ts.map +0 -1
  229. package/src/_types/market.d.ts.map +0 -1
  230. package/src/_types/providers/hyperliquid/assetId.d.ts +0 -12
  231. package/src/_types/providers/hyperliquid/assetId.d.ts.map +0 -1
  232. package/src/_types/providers/hyperliquid/index.d.ts +0 -4
  233. package/src/_types/providers/hyperliquid/index.d.ts.map +0 -1
  234. package/src/_types/providers/hyperliquid/mappers/activity.d.ts +0 -13
  235. package/src/_types/providers/hyperliquid/mappers/activity.d.ts.map +0 -1
  236. package/src/_types/providers/hyperliquid/mappers/history.d.ts +0 -4
  237. package/src/_types/providers/hyperliquid/mappers/history.d.ts.map +0 -1
  238. package/src/_types/providers/hyperliquid/mappers/index.d.ts +0 -7
  239. package/src/_types/providers/hyperliquid/mappers/index.d.ts.map +0 -1
  240. package/src/_types/providers/hyperliquid/mappers/market.d.ts +0 -4
  241. package/src/_types/providers/hyperliquid/mappers/market.d.ts.map +0 -1
  242. package/src/_types/providers/hyperliquid/mappers/order.d.ts +0 -6
  243. package/src/_types/providers/hyperliquid/mappers/order.d.ts.map +0 -1
  244. package/src/_types/providers/hyperliquid/mappers/position.d.ts +0 -4
  245. package/src/_types/providers/hyperliquid/mappers/position.d.ts.map +0 -1
  246. package/src/_types/providers/hyperliquid/mappers/shared.d.ts +0 -7
  247. package/src/_types/providers/hyperliquid/mappers/shared.d.ts.map +0 -1
  248. package/src/_types/providers/hyperliquid/types.d.ts +0 -201
  249. package/src/_types/providers/hyperliquid/types.d.ts.map +0 -1
  250. package/src/_types/subscriptions.d.ts.map +0 -1
  251. package/src/_types/trading.d.ts +0 -80
  252. package/src/_types/trading.d.ts.map +0 -1
  253. package/src/_types/typedData.d.ts +0 -10
  254. package/src/_types/typedData.d.ts.map +0 -1
  255. package/src/_types/withdrawal.d.ts +0 -37
  256. package/src/_types/withdrawal.d.ts.map +0 -1
  257. package/src/authorization.ts +0 -46
  258. package/src/providers/hyperliquid/assetId.ts +0 -26
  259. package/src/providers/hyperliquid/index.ts +0 -3
  260. package/src/providers/hyperliquid/mappers/activity.ts +0 -84
  261. package/src/providers/hyperliquid/mappers/history.ts +0 -25
  262. package/src/providers/hyperliquid/mappers/index.ts +0 -6
  263. package/src/providers/hyperliquid/mappers/market.ts +0 -35
  264. package/src/providers/hyperliquid/mappers/order.ts +0 -88
  265. package/src/providers/hyperliquid/mappers/position.ts +0 -35
  266. package/src/providers/hyperliquid/mappers/shared.ts +0 -15
  267. package/src/providers/hyperliquid/types.ts +0 -255
  268. package/src/trading.ts +0 -97
  269. package/src/withdrawal.ts +0 -44
  270. /package/{src/_cjs → dist/cjs}/account.js +0 -0
  271. /package/{src/_types → dist/cjs}/errors.d.ts +0 -0
  272. /package/{src/_cjs → dist/cjs}/errors.js +0 -0
  273. /package/{src/_cjs → dist/cjs}/market.js +0 -0
  274. /package/{src/_cjs → dist/cjs}/package.json +0 -0
  275. /package/{src/_cjs → dist/cjs}/subscriptions.js +0 -0
  276. /package/{src/_cjs → dist/cjs}/typedData.js +0 -0
  277. /package/{src/_esm → dist/esm}/account.js +0 -0
  278. /package/{src/_esm → dist/esm}/errors.js +0 -0
  279. /package/{src/_esm → dist/esm}/market.js +0 -0
  280. /package/{src/_esm → dist/esm}/package.json +0 -0
  281. /package/{src/_esm → dist/esm}/subscriptions.js +0 -0
  282. /package/{src/_esm → dist/esm}/typedData.js +0 -0
@@ -1,35 +0,0 @@
1
- import { MarginMode, PositionSide } from '../../../enums.js'
2
- import type { Position } from '../../../account.js'
3
- import type { HlAssetPosition } from '../types.js'
4
-
5
- import { resolveAssetIdFromLookup } from './shared.js'
6
-
7
- export const mapPosition = (
8
- ap: HlAssetPosition,
9
- dexKey: string,
10
- assetIdLookup: Map<string, number>
11
- ): Position => {
12
- const pos = ap.position
13
- const szi = parseFloat(pos.szi)
14
-
15
- return {
16
- symbol: pos.coin,
17
- assetId: resolveAssetIdFromLookup(assetIdLookup, pos.coin),
18
- dex: dexKey,
19
- side: szi >= 0 ? PositionSide.LONG : PositionSide.SHORT,
20
- size: Math.abs(szi).toString(),
21
- entryPrice: pos.entryPx ?? '0',
22
- markPrice:
23
- pos.positionValue && szi !== 0
24
- ? (parseFloat(pos.positionValue) / Math.abs(szi)).toString()
25
- : '0',
26
- liquidationPrice: pos.liquidationPx ?? '0',
27
- unrealizedPnl: pos.unrealizedPnl,
28
- leverage: ap.position.leverage.value,
29
- marginUsed: pos.marginUsed,
30
- marginMode:
31
- ap.position.leverage.type === 'cross'
32
- ? MarginMode.CROSS
33
- : MarginMode.ISOLATED,
34
- }
35
- }
@@ -1,15 +0,0 @@
1
- /**
2
- * Look up an asset ID by symbol, throwing if the symbol is unknown.
3
- * Asset ID 0 is a valid Hyperliquid asset (BTC-PERP), so a fallback
4
- * to 0 would silently corrupt data.
5
- */
6
- export const resolveAssetIdFromLookup = (
7
- lookup: Map<string, number>,
8
- symbol: string
9
- ): number => {
10
- const id = lookup.get(symbol)
11
- if (id === undefined) {
12
- throw new Error(`Unknown asset symbol: ${symbol}`)
13
- }
14
- return id
15
- }
@@ -1,255 +0,0 @@
1
- // ---------------------------------------------------------------------------
2
- // Hyperliquid /info response types
3
- // ---------------------------------------------------------------------------
4
-
5
- // -- metaAndAssetCtxs -------------------------------------------------------
6
-
7
- export type HlUniverseItem = {
8
- name: string
9
- szDecimals: number
10
- maxLeverage: number
11
- onlyIsolated?: boolean
12
- isDelisted?: boolean
13
- }
14
-
15
- export type HlMeta = {
16
- universe: HlUniverseItem[]
17
- }
18
-
19
- export type HlAssetCtx = {
20
- funding: string
21
- openInterest: string
22
- dayNtlVlm: string
23
- markPx: string
24
- }
25
-
26
- export type HlMetaAndAssetCtxs = [HlMeta, HlAssetCtx[]]
27
-
28
- export type HlUniverse = HlMeta['universe']
29
-
30
- // -- allMids ----------------------------------------------------------------
31
-
32
- export type HlAllMids = Record<string, string>
33
-
34
- // -- candleSnapshot ---------------------------------------------------------
35
-
36
- export type HlCandle = {
37
- t: number
38
- o: string
39
- h: string
40
- l: string
41
- c: string
42
- v: string
43
- }
44
-
45
- export type HlCandleSnapshot = HlCandle[]
46
-
47
- // -- l2Book -----------------------------------------------------------------
48
-
49
- export type HlLevel = {
50
- px: string
51
- sz: string
52
- n: number
53
- }
54
-
55
- export type HlL2Book = {
56
- levels: [HlLevel[], HlLevel[]]
57
- time: number
58
- }
59
-
60
- // -- clearinghouseState -----------------------------------------------------
61
-
62
- export type HlPosition = {
63
- coin: string
64
- szi: string
65
- entryPx: string
66
- positionValue: string
67
- liquidationPx: string
68
- unrealizedPnl: string
69
- marginUsed: string
70
- leverage: {
71
- type: string
72
- value: number
73
- }
74
- }
75
-
76
- export type HlAssetPosition = {
77
- position: HlPosition
78
- }
79
-
80
- export type HlClearinghouseState = {
81
- assetPositions: HlAssetPosition[]
82
- marginSummary: {
83
- accountValue: string
84
- totalMarginUsed: string
85
- }
86
- crossMarginSummary: {
87
- accountValue: string
88
- totalMarginUsed: string
89
- }
90
- }
91
-
92
- // -- spotClearinghouseState -------------------------------------------------
93
-
94
- export type HlSpotBalance = {
95
- coin: string
96
- token: number
97
- total: string
98
- hold: string
99
- entryNtl: string
100
- }
101
-
102
- export type HlSpotClearinghouseState = {
103
- balances: HlSpotBalance[]
104
- }
105
-
106
- // -- userFees ---------------------------------------------------------------
107
-
108
- export type HlUserFees = {
109
- userAddRate: string
110
- userCrossRate: string
111
- activeReferralDiscount: string
112
- }
113
-
114
- // -- frontendOpenOrders -----------------------------------------------------
115
-
116
- export type HlFrontendOpenOrder = {
117
- oid: number
118
- coin: string
119
- side: string
120
- sz: string
121
- limitPx: string
122
- orderType: string
123
- origSz: string
124
- reduceOnly: boolean
125
- timestamp: number
126
- }
127
-
128
- export type HlFrontendOpenOrders = HlFrontendOpenOrder[]
129
-
130
- // -- extraAgents ------------------------------------------------------------
131
-
132
- export type HlExtraAgents = Record<string, unknown>[]
133
-
134
- // -- userFills / userFillsByTime --------------------------------------------
135
-
136
- export type HlUserFill = {
137
- tid: number
138
- coin: string
139
- side: string
140
- sz: string
141
- px: string
142
- dir: string
143
- fee: string
144
- closedPnl: string
145
- time: number
146
- }
147
-
148
- export type HlUserFills = HlUserFill[]
149
-
150
- export type HlUserFillsByTime = HlUserFill[]
151
-
152
- // -- orderStatus ------------------------------------------------------------
153
-
154
- export type HlOrderDetail = {
155
- order: {
156
- oid: number
157
- coin: string
158
- side: string
159
- sz: string
160
- limitPx: string
161
- orderType: string
162
- origSz: string
163
- reduceOnly: boolean
164
- timestamp: number
165
- tif: string | null
166
- cloid: string | null
167
- triggerCondition: string
168
- triggerPx: string | null
169
- }
170
- status: string
171
- statusTimestamp: number
172
- }
173
-
174
- export type HlOrderStatusFound = {
175
- status: 'order'
176
- order: HlOrderDetail
177
- }
178
-
179
- export type HlOrderStatusResponse =
180
- | HlOrderStatusFound
181
- | { status: 'unknownOid' }
182
-
183
- // -- userNonFundingLedgerUpdates --------------------------------------------
184
-
185
- export type HlLedgerDelta = {
186
- type: string
187
- usdc: string
188
- [key: string]: unknown
189
- }
190
-
191
- export type HlLedgerUpdate = {
192
- time: number
193
- hash: string
194
- delta: HlLedgerDelta
195
- }
196
-
197
- export type HlUserNonFundingLedgerUpdates = HlLedgerUpdate[]
198
-
199
- // -- userFunding ------------------------------------------------------------
200
-
201
- export type HlFundingDelta = {
202
- type: 'funding'
203
- coin: string
204
- usdc: string
205
- szi: string
206
- fundingRate: string
207
- }
208
-
209
- export type HlFundingUpdate = {
210
- time: number
211
- hash: string
212
- delta: HlFundingDelta
213
- }
214
-
215
- export type HlUserFunding = HlFundingUpdate[]
216
-
217
- // -- perpDexs ---------------------------------------------------------------
218
-
219
- export type HlPerpDexs = (null | { name: string })[]
220
-
221
- // ---------------------------------------------------------------------------
222
- // Exchange request / response types
223
- // ---------------------------------------------------------------------------
224
-
225
- export type HlExchangeRequest = {
226
- action: Record<string, unknown>
227
- signature: {
228
- r: string
229
- s: string
230
- v: number
231
- }
232
- nonce: number
233
- vaultAddress?: string | null
234
- }
235
-
236
- export type HlExchangeResponse = {
237
- status: string
238
- response?:
239
- | string
240
- | {
241
- type: string
242
- data?: {
243
- statuses?: (
244
- | string
245
- | { filled: { totalSz: string; avgPx: string; oid: number } }
246
- | { resting: { oid: number } }
247
- | { waitingForFill: { oid: number } }
248
- | { waitingForTrigger: { oid: number } }
249
- | { success: true }
250
- | { error: string }
251
- )[]
252
- status?: unknown
253
- }
254
- }
255
- }
package/src/trading.ts DELETED
@@ -1,97 +0,0 @@
1
- import type { Address, Hex, PerpsTypedData } from './typedData.js'
2
- import type {
3
- OrderActionType,
4
- OrderSide,
5
- OrderStatus,
6
- OrderType,
7
- TimeInForce,
8
- TriggerCondition,
9
- } from './enums.js'
10
-
11
- export interface TriggerOrderInput {
12
- triggerPrice: string
13
- limitPrice?: string
14
- }
15
-
16
- export interface CreateOrderRequest {
17
- dex: string
18
- address: Address
19
- signerAddress?: Address
20
- symbol: string
21
- side: OrderSide
22
- type: OrderType
23
- size: string
24
- price: string
25
- leverage?: number
26
- reduceOnly?: boolean
27
- timeInForce?: TimeInForce
28
- expiresAt?: string
29
- takeProfit?: TriggerOrderInput
30
- stopLoss?: TriggerOrderInput
31
- }
32
-
33
- export interface OrderAction {
34
- action: OrderActionType
35
- description?: string
36
- typedData: PerpsTypedData
37
- }
38
-
39
- export interface CreateOrderResponse {
40
- actions: OrderAction[]
41
- }
42
-
43
- export interface CancelOrderRequest {
44
- dex: string
45
- address: Address
46
- signerAddress?: Address
47
- ids: string[]
48
- }
49
-
50
- export interface CancelOrderPayloadResponse {
51
- actions: OrderAction[]
52
- }
53
-
54
- export interface SignedOrderAction {
55
- action: OrderActionType
56
- typedData: PerpsTypedData
57
- signature: Hex
58
- }
59
-
60
- export interface SubmitOrderRequest {
61
- dex: string
62
- address: Address
63
- signerAddress?: Address
64
- actions: SignedOrderAction[]
65
- }
66
-
67
- export interface OrderActionResult {
68
- action: OrderActionType
69
- success: boolean
70
- orderId?: string
71
- error?: string
72
- }
73
-
74
- export interface SubmitOrderResponse {
75
- results: OrderActionResult[]
76
- }
77
-
78
- export interface Order {
79
- orderId: string
80
- symbol: string
81
- side: OrderSide
82
- type: OrderType
83
- price?: string
84
- originalSize: string
85
- remainingSize: string
86
- filledSize: string
87
- timeInForce?: TimeInForce
88
- expiresAt?: string
89
- reduceOnly?: boolean
90
- isTrigger?: boolean
91
- triggerPrice?: string
92
- triggerCondition?: TriggerCondition
93
- status: OrderStatus
94
- averagePrice?: string
95
- createdAt: string
96
- updatedAt: string
97
- }
package/src/withdrawal.ts DELETED
@@ -1,44 +0,0 @@
1
- import type { Address, Hex, PerpsTypedData } from './typedData.js'
2
-
3
- export interface WithdrawalInput {
4
- destination: Address
5
- amount: string // e.g., "100.5" — units are $1 USDC
6
- }
7
-
8
- export interface CreateWithdrawalRequest {
9
- dex: string
10
- address: Address
11
- withdrawal: WithdrawalInput
12
- }
13
-
14
- export interface WithdrawalAction {
15
- action: string // "Withdraw"
16
- description?: string
17
- typedData: PerpsTypedData
18
- }
19
-
20
- export interface CreateWithdrawalResponse {
21
- action: WithdrawalAction
22
- }
23
-
24
- export interface SignedWithdrawal {
25
- action: string
26
- typedData: PerpsTypedData
27
- signature: Hex
28
- }
29
-
30
- export interface SubmitWithdrawalRequest {
31
- dex: string
32
- address: Address
33
- action: SignedWithdrawal
34
- }
35
-
36
- export interface WithdrawalResult {
37
- action: string
38
- success: boolean
39
- error?: string
40
- }
41
-
42
- export interface SubmitWithdrawalResponse {
43
- result: WithdrawalResult
44
- }
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes