@n1xyz/nord-ts 0.0.1 → 0.0.4

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 (237) hide show
  1. package/.eslintrc.js +11 -0
  2. package/README.md +148 -65
  3. package/dist/bridge/NordUser.d.ts +78 -0
  4. package/dist/bridge/NordUser.js +196 -0
  5. package/dist/bridge/client.d.ts +150 -0
  6. package/dist/bridge/client.js +394 -0
  7. package/dist/bridge/const.d.ts +23 -0
  8. package/dist/bridge/const.js +47 -0
  9. package/dist/bridge/index.d.ts +5 -0
  10. package/dist/bridge/index.js +23 -0
  11. package/dist/bridge/types.d.ts +118 -0
  12. package/dist/bridge/types.js +16 -0
  13. package/dist/bridge/utils.d.ts +64 -0
  14. package/dist/bridge/utils.js +131 -0
  15. package/dist/client.d.ts +70 -0
  16. package/dist/client.js +129 -0
  17. package/dist/const.d.ts +2 -5
  18. package/dist/const.js +18 -22
  19. package/dist/constants/endpoints.d.ts +65 -0
  20. package/dist/constants/endpoints.js +68 -0
  21. package/dist/gen/common.d.ts +6 -1
  22. package/dist/gen/common.js +19 -9
  23. package/dist/gen/nord.d.ts +75 -17
  24. package/dist/gen/nord.js +987 -423
  25. package/dist/idl/bridge.d.ts +2 -0
  26. package/dist/idl/bridge.js +703 -0
  27. package/dist/index.d.ts +8 -5
  28. package/dist/index.js +18 -2
  29. package/dist/models/account.d.ts +58 -0
  30. package/dist/models/account.js +6 -0
  31. package/dist/models/index.d.ts +8 -0
  32. package/dist/models/index.js +28 -0
  33. package/dist/models/market.d.ts +137 -0
  34. package/dist/models/market.js +6 -0
  35. package/dist/models/order.d.ts +211 -0
  36. package/dist/models/order.js +6 -0
  37. package/dist/models/token.d.ts +50 -0
  38. package/dist/models/token.js +6 -0
  39. package/dist/nord/Nord.d.ts +222 -49
  40. package/dist/nord/Nord.js +290 -278
  41. package/dist/nord/NordError.d.ts +23 -0
  42. package/dist/nord/NordError.js +48 -0
  43. package/dist/nord/NordImpl.d.ts +6 -2
  44. package/dist/nord/NordImpl.js +21 -1
  45. package/dist/nord/NordUser.d.ts +208 -42
  46. package/dist/nord/NordUser.js +389 -157
  47. package/dist/nord/Subscriber.d.ts +37 -0
  48. package/dist/nord/Subscriber.js +29 -0
  49. package/dist/nord/api/actions.d.ts +101 -0
  50. package/dist/nord/api/actions.js +250 -0
  51. package/dist/nord/api/core.d.ts +49 -0
  52. package/dist/nord/api/core.js +121 -0
  53. package/dist/nord/api/index.d.ts +1 -0
  54. package/dist/nord/api/index.js +17 -0
  55. package/dist/nord/api/market.d.ts +36 -0
  56. package/dist/nord/api/market.js +98 -0
  57. package/dist/nord/api/metrics.d.ts +67 -0
  58. package/dist/nord/api/metrics.js +132 -0
  59. package/dist/nord/api/orderFunctions.d.ts +168 -0
  60. package/dist/nord/api/orderFunctions.js +133 -0
  61. package/dist/nord/api/queries.d.ts +81 -0
  62. package/dist/nord/api/queries.js +187 -0
  63. package/dist/nord/client/Nord.d.ts +335 -0
  64. package/dist/nord/client/Nord.js +532 -0
  65. package/dist/nord/client/NordUser.d.ts +320 -0
  66. package/dist/nord/client/NordUser.js +701 -0
  67. package/dist/nord/core.d.ts +48 -0
  68. package/dist/nord/core.js +97 -0
  69. package/dist/nord/index.d.ts +9 -2
  70. package/dist/nord/index.js +30 -6
  71. package/dist/nord/market.d.ts +36 -0
  72. package/dist/nord/market.js +90 -0
  73. package/dist/nord/metrics.d.ts +67 -0
  74. package/dist/nord/metrics.js +124 -0
  75. package/dist/nord/models/Subscriber.d.ts +37 -0
  76. package/dist/nord/models/Subscriber.js +29 -0
  77. package/dist/nord/queries.d.ts +81 -0
  78. package/dist/nord/queries.js +181 -0
  79. package/dist/nord/types.d.ts +88 -0
  80. package/dist/nord/types.js +2 -0
  81. package/dist/nord/utils/NordError.d.ts +35 -0
  82. package/dist/nord/utils/NordError.js +46 -0
  83. package/dist/nord/websocket.d.ts +49 -0
  84. package/dist/nord/websocket.js +107 -0
  85. package/dist/operations/account.d.ts +58 -0
  86. package/dist/operations/account.js +112 -0
  87. package/dist/operations/market.d.ts +65 -0
  88. package/dist/operations/market.js +131 -0
  89. package/dist/operations/orders.d.ts +57 -0
  90. package/dist/operations/orders.js +129 -0
  91. package/dist/solana/NordUser.d.ts +78 -0
  92. package/dist/solana/NordUser.js +196 -0
  93. package/dist/solana/client.d.ts +139 -0
  94. package/dist/solana/client.js +360 -0
  95. package/dist/solana/const.d.ts +23 -0
  96. package/dist/solana/const.js +47 -0
  97. package/dist/solana/index.d.ts +5 -0
  98. package/dist/solana/index.js +23 -0
  99. package/dist/solana/types.d.ts +118 -0
  100. package/dist/solana/types.js +16 -0
  101. package/dist/solana/utils.d.ts +64 -0
  102. package/dist/solana/utils.js +131 -0
  103. package/dist/types/api.d.ts +152 -0
  104. package/dist/types/api.js +6 -0
  105. package/dist/types/config.d.ts +34 -0
  106. package/dist/types/config.js +6 -0
  107. package/dist/types.d.ts +144 -87
  108. package/dist/types.js +13 -2
  109. package/dist/utils/errors.d.ts +96 -0
  110. package/dist/utils/errors.js +132 -0
  111. package/dist/utils/http.d.ts +35 -0
  112. package/dist/utils/http.js +105 -0
  113. package/dist/utils.d.ts +14 -5
  114. package/dist/utils.js +26 -7
  115. package/dist/websocket/NordWebSocketClient.d.ts +71 -0
  116. package/dist/websocket/NordWebSocketClient.js +343 -0
  117. package/dist/websocket/client.d.ts +93 -0
  118. package/dist/websocket/client.js +222 -0
  119. package/dist/websocket/events.d.ts +19 -0
  120. package/dist/websocket/events.js +2 -0
  121. package/dist/websocket/index.d.ts +2 -0
  122. package/dist/websocket/index.js +5 -0
  123. package/dist/websocket.d.ts +55 -0
  124. package/dist/websocket.js +211 -0
  125. package/docs/assets/navigation.js +1 -1
  126. package/docs/assets/search.js +1 -1
  127. package/docs/classes/Nord.html +2 -15
  128. package/docs/classes/NordUser.html +4 -4
  129. package/docs/enums/FillMode.html +2 -2
  130. package/docs/enums/KeyType.html +2 -2
  131. package/docs/enums/PeakTpsPeriodUnit.html +2 -2
  132. package/docs/enums/Side.html +2 -2
  133. package/docs/functions/assert.html +1 -1
  134. package/docs/functions/bigIntToProtoU128.html +1 -1
  135. package/docs/functions/checkPubKeyLength.html +1 -1
  136. package/docs/functions/checkedFetch.html +1 -1
  137. package/docs/functions/decodeLengthDelimited.html +1 -1
  138. package/docs/functions/encodeLengthDelimited.html +1 -1
  139. package/docs/functions/fillModeToProtoFillMode.html +1 -1
  140. package/docs/functions/findMarket.html +1 -1
  141. package/docs/functions/findToken.html +1 -1
  142. package/docs/functions/makeWalletSignFn.html +1 -1
  143. package/docs/functions/optExpect.html +1 -1
  144. package/docs/functions/optMap.html +1 -1
  145. package/docs/functions/optUnwrap.html +1 -1
  146. package/docs/functions/panic.html +1 -1
  147. package/docs/functions/signAction.html +1 -1
  148. package/docs/functions/toScaledU128.html +1 -1
  149. package/docs/functions/toScaledU64.html +1 -1
  150. package/docs/interfaces/Account.html +2 -2
  151. package/docs/interfaces/ActionInfo.html +2 -2
  152. package/docs/interfaces/ActionQuery.html +2 -2
  153. package/docs/interfaces/ActionResponse.html +2 -2
  154. package/docs/interfaces/ActionsExtendedInfo.html +2 -2
  155. package/docs/interfaces/ActionsQuery.html +2 -2
  156. package/docs/interfaces/ActionsResponse.html +2 -2
  157. package/docs/interfaces/AggregateMetrics.html +2 -2
  158. package/docs/interfaces/BlockQuery.html +2 -2
  159. package/docs/interfaces/BlockResponse.html +2 -2
  160. package/docs/interfaces/BlockSummary.html +2 -2
  161. package/docs/interfaces/BlockSummaryResponse.html +2 -2
  162. package/docs/interfaces/DeltaEvent.html +2 -2
  163. package/docs/interfaces/ERC20TokenInfo.html +2 -2
  164. package/docs/interfaces/Info.html +2 -2
  165. package/docs/interfaces/Market.html +2 -2
  166. package/docs/interfaces/MarketStats.html +2 -2
  167. package/docs/interfaces/MarketsStatsResponse.html +2 -2
  168. package/docs/interfaces/NordConfig.html +2 -2
  169. package/docs/interfaces/Order.html +2 -2
  170. package/docs/interfaces/OrderInfo.html +2 -2
  171. package/docs/interfaces/PerpMarketStats.html +2 -2
  172. package/docs/interfaces/RollmanActionExtendedInfo.html +2 -2
  173. package/docs/interfaces/RollmanActionInfo.html +2 -2
  174. package/docs/interfaces/RollmanActionResponse.html +2 -2
  175. package/docs/interfaces/RollmanActionsResponse.html +2 -2
  176. package/docs/interfaces/RollmanBlockResponse.html +2 -2
  177. package/docs/interfaces/SubscriberConfig.html +2 -2
  178. package/docs/interfaces/Token.html +2 -2
  179. package/docs/interfaces/Trade.html +2 -2
  180. package/docs/interfaces/Trades.html +2 -2
  181. package/docs/modules.html +0 -7
  182. package/docs/types/BigIntValue.html +1 -1
  183. package/docs/variables/DEBUG_KEYS.html +1 -1
  184. package/docs/variables/DEFAULT_FUNDING_AMOUNTS.html +1 -1
  185. package/docs/variables/DEV_CONTRACT_ADDRESS.html +1 -1
  186. package/docs/variables/DEV_TOKEN_INFOS.html +1 -1
  187. package/docs/variables/DEV_URL.html +1 -1
  188. package/docs/variables/ERC20_ABI.html +1 -1
  189. package/docs/variables/EVM_DEV_URL.html +1 -1
  190. package/docs/variables/FAUCET_PRIVATE_ADDRESS.html +1 -1
  191. package/docs/variables/MAX_BUFFER_LEN.html +1 -1
  192. package/docs/variables/NORD_GETTERS_FACET_ABI.html +1 -1
  193. package/docs/variables/NORD_RAMP_FACET_ABI.html +1 -1
  194. package/docs/variables/SESSION_TTL.html +1 -1
  195. package/docs/variables/WEBSERVER_DEV_URL.html +1 -1
  196. package/docs/variables/ZERO_DECIMAL.html +1 -1
  197. package/package.json +10 -12
  198. package/src/bridge/client.ts +487 -0
  199. package/src/bridge/const.ts +53 -0
  200. package/src/bridge/index.ts +7 -0
  201. package/src/bridge/types.ts +127 -0
  202. package/src/bridge/utils.ts +140 -0
  203. package/src/const.ts +20 -25
  204. package/src/gen/common.ts +27 -10
  205. package/src/gen/nord.ts +1044 -483
  206. package/src/idl/bridge.ts +702 -0
  207. package/src/index.ts +24 -5
  208. package/src/nord/{actions.ts → api/actions.ts} +33 -37
  209. package/src/nord/api/core.ts +130 -0
  210. package/src/nord/api/market.ts +125 -0
  211. package/src/nord/api/metrics.ts +154 -0
  212. package/src/nord/api/queries.ts +236 -0
  213. package/src/nord/client/Nord.ts +652 -0
  214. package/src/nord/client/NordUser.ts +1105 -0
  215. package/src/nord/index.ts +16 -2
  216. package/src/nord/models/Subscriber.ts +57 -0
  217. package/src/nord/utils/NordError.ts +72 -0
  218. package/src/types.ts +170 -99
  219. package/src/utils.ts +40 -19
  220. package/src/websocket/NordWebSocketClient.ts +432 -0
  221. package/src/websocket/events.ts +31 -0
  222. package/src/websocket/index.ts +2 -0
  223. package/tests/utils.spec.ts +24 -24
  224. package/docs/classes/Subscriber.html +0 -6
  225. package/docs/functions/createWebSocketSubscription.html +0 -12
  226. package/docs/interfaces/OrderbookOrder.html +0 -6
  227. package/docs/interfaces/OrderbookResponse.html +0 -10
  228. package/docs/interfaces/TradeInfo.html +0 -20
  229. package/docs/interfaces/TradesQueryParams.html +0 -10
  230. package/docs/interfaces/TradesResponse.html +0 -12
  231. package/src/abis/ERC20_ABI.ts +0 -310
  232. package/src/abis/NORD_GETTERS_FACET_ABI.ts +0 -192
  233. package/src/abis/NORD_RAMP_FACET_ABI.ts +0 -141
  234. package/src/abis/index.ts +0 -3
  235. package/src/nord/Nord.ts +0 -504
  236. package/src/nord/NordImpl.ts +0 -8
  237. package/src/nord/NordUser.ts +0 -469
package/dist/index.d.ts CHANGED
@@ -1,5 +1,8 @@
1
- export * from "./types";
2
- export * from "./utils";
3
- export * from "./abis";
4
- export * from "./nord";
5
- export * from "./const";
1
+ export * from './types';
2
+ export * from './utils';
3
+ export * from './const';
4
+ export * from './nord';
5
+ export * from './websocket/index';
6
+ export * from './bridge/client';
7
+ export * from './bridge/types';
8
+ export { bridgeToBN, fromBN, keypairFromPrivateKey, makeSigningFunction, findPda, bufferToHex, hexToBuffer, shortenPublicKey, } from './bridge/utils';
package/dist/index.js CHANGED
@@ -14,8 +14,24 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
14
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
+ exports.shortenPublicKey = exports.hexToBuffer = exports.bufferToHex = exports.findPda = exports.makeSigningFunction = exports.keypairFromPrivateKey = exports.fromBN = exports.bridgeToBN = void 0;
18
+ // Export types
17
19
  __exportStar(require("./types"), exports);
18
20
  __exportStar(require("./utils"), exports);
19
- __exportStar(require("./abis"), exports);
20
- __exportStar(require("./nord"), exports);
21
21
  __exportStar(require("./const"), exports);
22
+ // Export Nord modules
23
+ __exportStar(require("./nord"), exports);
24
+ // Export WebSocket modules
25
+ __exportStar(require("./websocket/index"), exports);
26
+ // Export bridge modules
27
+ __exportStar(require("./bridge/client"), exports);
28
+ __exportStar(require("./bridge/types"), exports);
29
+ var utils_1 = require("./bridge/utils");
30
+ Object.defineProperty(exports, "bridgeToBN", { enumerable: true, get: function () { return utils_1.bridgeToBN; } });
31
+ Object.defineProperty(exports, "fromBN", { enumerable: true, get: function () { return utils_1.fromBN; } });
32
+ Object.defineProperty(exports, "keypairFromPrivateKey", { enumerable: true, get: function () { return utils_1.keypairFromPrivateKey; } });
33
+ Object.defineProperty(exports, "makeSigningFunction", { enumerable: true, get: function () { return utils_1.makeSigningFunction; } });
34
+ Object.defineProperty(exports, "findPda", { enumerable: true, get: function () { return utils_1.findPda; } });
35
+ Object.defineProperty(exports, "bufferToHex", { enumerable: true, get: function () { return utils_1.bufferToHex; } });
36
+ Object.defineProperty(exports, "hexToBuffer", { enumerable: true, get: function () { return utils_1.hexToBuffer; } });
37
+ Object.defineProperty(exports, "shortenPublicKey", { enumerable: true, get: function () { return utils_1.shortenPublicKey; } });
@@ -0,0 +1,58 @@
1
+ /**
2
+ * Account-related models and interfaces
3
+ * @module models/account
4
+ */
5
+ /**
6
+ * Account information
7
+ */
8
+ export interface Account {
9
+ /**
10
+ * Account ID
11
+ */
12
+ id: number;
13
+ /**
14
+ * User's blockchain address
15
+ */
16
+ address: string;
17
+ /**
18
+ * Account creation timestamp
19
+ */
20
+ createdAt: number;
21
+ /**
22
+ * Account type
23
+ */
24
+ type: 'spot' | 'margin' | 'futures';
25
+ /**
26
+ * Whether the account is active
27
+ */
28
+ active: boolean;
29
+ }
30
+ /**
31
+ * Balance information
32
+ */
33
+ export interface Balance {
34
+ /**
35
+ * Account ID
36
+ */
37
+ accountId: number;
38
+ /**
39
+ * Token symbol
40
+ */
41
+ symbol: string;
42
+ /**
43
+ * Token ID
44
+ */
45
+ tokenId: number;
46
+ /**
47
+ * Available balance
48
+ */
49
+ available: number;
50
+ /**
51
+ * Total balance (available + locked)
52
+ */
53
+ total: number;
54
+ /**
55
+ * Locked balance (in open orders)
56
+ */
57
+ locked: number;
58
+ }
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+ /**
3
+ * Account-related models and interfaces
4
+ * @module models/account
5
+ */
6
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,8 @@
1
+ /**
2
+ * Export all model interfaces
3
+ * @module models
4
+ */
5
+ export * from './token';
6
+ export * from './market';
7
+ export * from './account';
8
+ export * from './order';
@@ -0,0 +1,28 @@
1
+ "use strict";
2
+ /**
3
+ * Export all model interfaces
4
+ * @module models
5
+ */
6
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
7
+ if (k2 === undefined) k2 = k;
8
+ var desc = Object.getOwnPropertyDescriptor(m, k);
9
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
10
+ desc = { enumerable: true, get: function() { return m[k]; } };
11
+ }
12
+ Object.defineProperty(o, k2, desc);
13
+ }) : (function(o, m, k, k2) {
14
+ if (k2 === undefined) k2 = k;
15
+ o[k2] = m[k];
16
+ }));
17
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
18
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
19
+ };
20
+ Object.defineProperty(exports, "__esModule", { value: true });
21
+ // Export token models
22
+ __exportStar(require("./token"), exports);
23
+ // Export market models
24
+ __exportStar(require("./market"), exports);
25
+ // Export account models
26
+ __exportStar(require("./account"), exports);
27
+ // Export order models
28
+ __exportStar(require("./order"), exports);
@@ -0,0 +1,137 @@
1
+ /**
2
+ * Market-related models and interfaces
3
+ * @module models/market
4
+ */
5
+ /**
6
+ * Market information
7
+ */
8
+ export interface Market {
9
+ /**
10
+ * Market symbol (e.g., "BTCUSDC")
11
+ */
12
+ symbol: string;
13
+ /**
14
+ * Base token ID
15
+ */
16
+ baseTokenId: number;
17
+ /**
18
+ * Quote token ID
19
+ */
20
+ quoteTokenId: number;
21
+ /**
22
+ * Base token symbol
23
+ */
24
+ baseSymbol: string;
25
+ /**
26
+ * Quote token symbol
27
+ */
28
+ quoteSymbol: string;
29
+ /**
30
+ * Minimum order size
31
+ */
32
+ minSize: number;
33
+ /**
34
+ * Maximum order size
35
+ */
36
+ maxSize: number;
37
+ /**
38
+ * Price tick size
39
+ */
40
+ tickSize: number;
41
+ /**
42
+ * Whether the market is active
43
+ */
44
+ active: boolean;
45
+ }
46
+ /**
47
+ * Orderbook price level
48
+ */
49
+ export interface OrderbookLevel {
50
+ /**
51
+ * Price level
52
+ */
53
+ price: number;
54
+ /**
55
+ * Size at this price level
56
+ */
57
+ size: number;
58
+ }
59
+ /**
60
+ * Orderbook data
61
+ */
62
+ export interface OrderbookData {
63
+ /**
64
+ * Market symbol
65
+ */
66
+ market: string;
67
+ /**
68
+ * Timestamp of the orderbook snapshot
69
+ */
70
+ timestamp: number;
71
+ /**
72
+ * Bid (buy) price levels
73
+ */
74
+ bids: OrderbookLevel[];
75
+ /**
76
+ * Ask (sell) price levels
77
+ */
78
+ asks: OrderbookLevel[];
79
+ }
80
+ /**
81
+ * Trade information
82
+ */
83
+ export interface Trade {
84
+ /**
85
+ * Trade ID
86
+ */
87
+ id: number;
88
+ /**
89
+ * Market symbol
90
+ */
91
+ market: string;
92
+ /**
93
+ * Trade price
94
+ */
95
+ price: number;
96
+ /**
97
+ * Trade size
98
+ */
99
+ size: number;
100
+ /**
101
+ * Trade side ("buy" or "sell")
102
+ */
103
+ side: 'buy' | 'sell';
104
+ /**
105
+ * Trade timestamp
106
+ */
107
+ timestamp: number;
108
+ }
109
+ /**
110
+ * Candle (OHLCV) data
111
+ */
112
+ export interface Candle {
113
+ /**
114
+ * Timestamp of the candle start
115
+ */
116
+ timestamp: number;
117
+ /**
118
+ * Open price
119
+ */
120
+ open: number;
121
+ /**
122
+ * High price
123
+ */
124
+ high: number;
125
+ /**
126
+ * Low price
127
+ */
128
+ low: number;
129
+ /**
130
+ * Close price
131
+ */
132
+ close: number;
133
+ /**
134
+ * Volume
135
+ */
136
+ volume: number;
137
+ }
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+ /**
3
+ * Market-related models and interfaces
4
+ * @module models/market
5
+ */
6
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,211 @@
1
+ /**
2
+ * Order-related models and interfaces
3
+ * @module models/order
4
+ */
5
+ /**
6
+ * Order side
7
+ */
8
+ export type OrderSide = 'buy' | 'sell';
9
+ /**
10
+ * Order type
11
+ */
12
+ export type OrderType = 'limit' | 'market' | 'stop' | 'stopLimit';
13
+ /**
14
+ * Time in force options
15
+ */
16
+ export type TimeInForce = 'GTC' | 'IOC' | 'FOK';
17
+ /**
18
+ * Order status
19
+ */
20
+ export type OrderStatus = 'open' | 'closed' | 'canceled' | 'expired' | 'rejected';
21
+ /**
22
+ * Base order parameters
23
+ */
24
+ export interface BaseOrderParams {
25
+ /**
26
+ * Market symbol (e.g., "BTCUSDC")
27
+ */
28
+ market: string;
29
+ /**
30
+ * Order side
31
+ */
32
+ side: OrderSide;
33
+ /**
34
+ * Order size
35
+ */
36
+ size: number;
37
+ }
38
+ /**
39
+ * Limit order parameters
40
+ */
41
+ export interface LimitOrderParams extends BaseOrderParams {
42
+ /**
43
+ * Order type
44
+ */
45
+ type: 'limit';
46
+ /**
47
+ * Limit price
48
+ */
49
+ price: number;
50
+ /**
51
+ * Time in force
52
+ */
53
+ timeInForce?: TimeInForce;
54
+ }
55
+ /**
56
+ * Market order parameters
57
+ */
58
+ export interface MarketOrderParams extends BaseOrderParams {
59
+ /**
60
+ * Order type
61
+ */
62
+ type: 'market';
63
+ }
64
+ /**
65
+ * Stop order parameters
66
+ */
67
+ export interface StopOrderParams extends BaseOrderParams {
68
+ /**
69
+ * Order type
70
+ */
71
+ type: 'stop';
72
+ /**
73
+ * Stop price
74
+ */
75
+ stopPrice: number;
76
+ }
77
+ /**
78
+ * Stop-limit order parameters
79
+ */
80
+ export interface StopLimitOrderParams extends BaseOrderParams {
81
+ /**
82
+ * Order type
83
+ */
84
+ type: 'stopLimit';
85
+ /**
86
+ * Stop price
87
+ */
88
+ stopPrice: number;
89
+ /**
90
+ * Limit price
91
+ */
92
+ limitPrice: number;
93
+ /**
94
+ * Time in force
95
+ */
96
+ timeInForce?: TimeInForce;
97
+ }
98
+ /**
99
+ * Union type for all order parameters
100
+ */
101
+ export type PlaceOrderParams = LimitOrderParams | MarketOrderParams | StopOrderParams | StopLimitOrderParams;
102
+ /**
103
+ * Order information
104
+ */
105
+ export interface Order {
106
+ /**
107
+ * Order ID
108
+ */
109
+ id: number;
110
+ /**
111
+ * Account ID
112
+ */
113
+ accountId: number;
114
+ /**
115
+ * Market symbol
116
+ */
117
+ market: string;
118
+ /**
119
+ * Order type
120
+ */
121
+ type: OrderType;
122
+ /**
123
+ * Order side
124
+ */
125
+ side: OrderSide;
126
+ /**
127
+ * Order size
128
+ */
129
+ size: number;
130
+ /**
131
+ * Filled size
132
+ */
133
+ filledSize: number;
134
+ /**
135
+ * Remaining size
136
+ */
137
+ remainingSize: number;
138
+ /**
139
+ * Limit price (for limit and stop-limit orders)
140
+ */
141
+ price?: number;
142
+ /**
143
+ * Stop price (for stop and stop-limit orders)
144
+ */
145
+ stopPrice?: number;
146
+ /**
147
+ * Average fill price
148
+ */
149
+ avgFillPrice?: number;
150
+ /**
151
+ * Time in force
152
+ */
153
+ timeInForce?: TimeInForce;
154
+ /**
155
+ * Order status
156
+ */
157
+ status: OrderStatus;
158
+ /**
159
+ * Order creation timestamp
160
+ */
161
+ createdAt: number;
162
+ /**
163
+ * Order update timestamp
164
+ */
165
+ updatedAt: number;
166
+ }
167
+ /**
168
+ * Result of placing an order
169
+ */
170
+ export interface OrderResult {
171
+ /**
172
+ * Order ID
173
+ */
174
+ orderId: number;
175
+ /**
176
+ * Market symbol
177
+ */
178
+ market: string;
179
+ /**
180
+ * Order type
181
+ */
182
+ type: OrderType;
183
+ /**
184
+ * Order side
185
+ */
186
+ side: OrderSide;
187
+ /**
188
+ * Order size
189
+ */
190
+ size: number;
191
+ /**
192
+ * Limit price (for limit and stop-limit orders)
193
+ */
194
+ price?: number;
195
+ /**
196
+ * Stop price (for stop and stop-limit orders)
197
+ */
198
+ stopPrice?: number;
199
+ /**
200
+ * Time in force
201
+ */
202
+ timeInForce?: TimeInForce;
203
+ /**
204
+ * Order status
205
+ */
206
+ status: OrderStatus;
207
+ /**
208
+ * Order creation timestamp
209
+ */
210
+ createdAt: number;
211
+ }
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+ /**
3
+ * Order-related models and interfaces
4
+ * @module models/order
5
+ */
6
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,50 @@
1
+ /**
2
+ * Token-related models and interfaces
3
+ * @module models/token
4
+ */
5
+ /**
6
+ * Information about a token
7
+ */
8
+ export interface TokenInfo {
9
+ /**
10
+ * Token address (contract address or mint address)
11
+ */
12
+ address: string;
13
+ /**
14
+ * Token precision (number of decimal places)
15
+ */
16
+ precision: number;
17
+ /**
18
+ * Token ID
19
+ */
20
+ tokenId: number;
21
+ /**
22
+ * Token name/symbol
23
+ */
24
+ name: string;
25
+ }
26
+ /**
27
+ * Token data
28
+ */
29
+ export interface Token {
30
+ /**
31
+ * Token ID
32
+ */
33
+ id: number;
34
+ /**
35
+ * Token name
36
+ */
37
+ name: string;
38
+ /**
39
+ * Token symbol
40
+ */
41
+ symbol: string;
42
+ /**
43
+ * Token precision (number of decimal places)
44
+ */
45
+ precision: number;
46
+ /**
47
+ * Token address
48
+ */
49
+ address: string;
50
+ }
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+ /**
3
+ * Token-related models and interfaces
4
+ * @module models/token
5
+ */
6
+ Object.defineProperty(exports, "__esModule", { value: true });