@n1xyz/nord-ts 0.3.2 → 0.3.4-alpha.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.
package/dist/types.d.ts CHANGED
@@ -5,7 +5,7 @@ import { Connection } from "@solana/web3.js";
5
5
  /**
6
6
  * Nord subscription type for trades or deltas
7
7
  */
8
- export type SubscriptionType = "trades" | "deltas" | "account";
8
+ export type SubscriptionType = "trades" | "deltas" | "account" | "candle";
9
9
  /**
10
10
  * Pattern for a valid Nord subscription
11
11
  * Format should be: "<type>@<parameter>"
@@ -34,16 +34,16 @@ export type MarketsInfo = components["schemas"]["MarketsInfo"];
34
34
  export type Market = MarketsInfo["markets"][number];
35
35
  export type Token = MarketsInfo["tokens"][number];
36
36
  export type Account = components["schemas"]["Account"];
37
- export type TradesResponse = components["schemas"]["PageResult_for_String_and_Trade"];
37
+ export type TradesResponse = components["schemas"]["PageResult_for_uint64_and_Trade"];
38
38
  export type User = components["schemas"]["User"];
39
39
  export type OrderbookResponse = components["schemas"]["OrderbookInfo"];
40
40
  export type MarketStats = components["schemas"]["MarketStats"];
41
41
  export type OrderbookInfo = components["schemas"]["OrderbookInfo"];
42
42
  export type MarketStatsFromApi = components["schemas"]["MarketStats"];
43
43
  export type TradeFromApi = components["schemas"]["Trade"];
44
- export type PageResult<K extends string, V extends string> = K extends "String" ? V extends "OrderInfo" ? components["schemas"]["PageResult_for_String_and_OrderInfo"] : V extends "Trade" ? components["schemas"]["PageResult_for_String_and_Trade"] : never : never;
45
- export type PageResultStringOrderInfo = components["schemas"]["PageResult_for_String_and_OrderInfo"];
46
- export type PageResultStringTrade = components["schemas"]["PageResult_for_String_and_Trade"];
44
+ export type PageResult<K extends string, V extends string> = K extends "String" ? V extends "OrderInfo" ? components["schemas"]["PageResult_for_uint64_and_OrderInfo"] : V extends "Trade" ? components["schemas"]["PageResult_for_uint64_and_Trade"] : never : never;
45
+ export type PageResultStringOrderInfo = components["schemas"]["PageResult_for_uint64_and_OrderInfo"];
46
+ export type PageResultStringTrade = components["schemas"]["PageResult_for_uint64_and_Trade"];
47
47
  export type OrderInfoFromApi = components["schemas"]["OrderInfo"];
48
48
  export type OpenOrder = components["schemas"]["OpenOrder"];
49
49
  export type Balance = components["schemas"]["Balance"];
@@ -61,10 +61,10 @@ export type PlacementOrigin = components["schemas"]["PlacementOrigin"];
61
61
  export type FinalizationReason = components["schemas"]["FinalizationReason"];
62
62
  export type PagedQuery = components["schemas"]["PagedQuery"];
63
63
  export type AccountPnlInfo = components["schemas"]["AccountPnlInfo"];
64
- export type AccountPnlInfoPage = components["schemas"]["PageResult_for_String_and_AccountPnlInfo"];
64
+ export type AccountPnlInfoPage = components["schemas"]["PageResult_for_uint64_and_AccountPnlInfo"];
65
65
  export type AccountTriggerInfo = components["schemas"]["TriggerInfo"];
66
- export type TriggerHistoryPage = components["schemas"]["PageResult_for_String_and_Trigger"];
67
- export type WithdrawalHistoryPage = components["schemas"]["PageResult_for_String_and_Withdrawal"];
66
+ export type TriggerHistoryPage = components["schemas"]["PageResult_for_uint64_and_Trigger"];
67
+ export type WithdrawalHistoryPage = components["schemas"]["PageResult_for_uint64_and_WithdrawalInfo"];
68
68
  export type FeeTierConfig = components["schemas"]["FeeTierConfig"];
69
69
  export type FeeTierId = components["schemas"]["FeeTierId"];
70
70
  export type TokenStats = components["schemas"]["TokenStats"];
@@ -73,9 +73,7 @@ export type AccountFeeTierPage = components["schemas"]["PageResult_for_uint32_an
73
73
  export type AdminInfo = components["schemas"]["AdminInfo"];
74
74
  export type GetAccountVolumeQuery = components["schemas"]["GetAccountVolumeQuery"];
75
75
  export type AccountVolumeInfo = components["schemas"]["AccountVolumeInfo"];
76
- export type GetPrevMarketPriceQuery = components["schemas"]["GetPrevMarketPriceQuery"];
77
- export type PreviousMarketPrice = components["schemas"]["PreviousMarketPrice"];
78
- export type WithdrawalInfo = components["schemas"]["Withdrawal"];
76
+ export type WithdrawalInfo = components["schemas"]["WithdrawalInfo"];
79
77
  /**
80
78
  * Configuration options for the Nord client
81
79
  */
@@ -196,6 +194,7 @@ export declare enum WebSocketMessageType {
196
194
  DeltaUpdate = "delta",
197
195
  AccountUpdate = "account"
198
196
  }
197
+ export type CandleResolution = "1" | "5" | "15" | "30" | "60" | "1D" | "1W" | "1M";
199
198
  /**
200
199
  * WebSocket trade update message
201
200
  */
@@ -242,13 +241,23 @@ export interface WebSocketAccountUpdate {
242
241
  }>;
243
242
  balances: Record<string, number>;
244
243
  }
244
+ export interface WebSocketCandleUpdate {
245
+ res: CandleResolution;
246
+ mid: number;
247
+ t: number;
248
+ o: number;
249
+ h: number;
250
+ l: number;
251
+ c: number;
252
+ v: number;
253
+ }
245
254
  export type WebSocketMessage = {
246
255
  trades: WebSocketTradeUpdate;
247
256
  } | {
248
257
  delta: WebSocketDeltaUpdate;
249
258
  } | {
250
259
  account: WebSocketAccountUpdate;
251
- };
260
+ } | WebSocketCandleUpdate;
252
261
  export interface SPLTokenInfo {
253
262
  mint: string;
254
263
  precision: number;
package/dist/utils.d.ts CHANGED
@@ -75,12 +75,12 @@ export declare function decodeHex(value: string): Uint8Array;
75
75
  export declare function findMarket(markets: Market[], marketId: number): Market;
76
76
  export declare function findToken(tokens: Token[], tokenId: number): Token;
77
77
  export declare function keypairFromPrivateKey(privateKey: string | Uint8Array): Keypair;
78
- export declare function signAdminPayload({ payload, user, signTransaction, }: Readonly<{
78
+ export declare function signSolanaTransactionFramedPayload({ payload, user, signTransaction, }: Readonly<{
79
79
  payload: Uint8Array;
80
80
  user: solana.PublicKey;
81
81
  signTransaction: (tx: solana.Transaction) => Promise<solana.Transaction>;
82
82
  }>): Promise<Uint8Array>;
83
- export declare function signUserPayload({ payload, signMessage, }: Readonly<{
83
+ export declare function signHexEncodedPayload({ payload, signMessage, }: Readonly<{
84
84
  payload: Uint8Array;
85
85
  signMessage: (message: Uint8Array) => Promise<Uint8Array>;
86
86
  }>): Promise<Uint8Array>;
@@ -50,6 +50,7 @@ export declare class NordWebSocketClient extends EventEmitter implements NordWeb
50
50
  * @param message WebSocket message
51
51
  */
52
52
  private handleMessage;
53
+ private isCandleUpdate;
53
54
  /**
54
55
  * Attempt to reconnect to the WebSocket server
55
56
  */
@@ -1,5 +1,5 @@
1
1
  import { EventEmitter } from "events";
2
- import { Account, DeltaEvent, WebSocketDeltaUpdate, SubscriberConfig, Trades, WebSocketTradeUpdate } from "../types";
2
+ import { Account, DeltaEvent, WebSocketDeltaUpdate, SubscriberConfig, Trades, WebSocketTradeUpdate, WebSocketCandleUpdate } from "../types";
3
3
  /**
4
4
  * Subscriber class for handling WebSocket subscriptions
5
5
  */
@@ -35,3 +35,9 @@ export interface TradeSubscription extends EventEmitter {
35
35
  close(): void;
36
36
  removeAllListeners(event?: string): this;
37
37
  }
38
+ export interface CandleSubscription extends EventEmitter {
39
+ on(event: "message", listener: (data: WebSocketCandleUpdate) => void): this;
40
+ on(event: "error", listener: (error: Error) => void): this;
41
+ close(): void;
42
+ removeAllListeners(event?: string): this;
43
+ }
@@ -1,4 +1,4 @@
1
- import { WebSocketTradeUpdate, WebSocketDeltaUpdate, WebSocketAccountUpdate } from "../types";
1
+ import { WebSocketTradeUpdate, WebSocketDeltaUpdate, WebSocketAccountUpdate, WebSocketCandleUpdate } from "../types";
2
2
  /**
3
3
  * Event type definitions for the NordWebSocketClient
4
4
  */
@@ -9,6 +9,7 @@ export interface NordWebSocketEvents {
9
9
  trade: (update: WebSocketTradeUpdate) => void;
10
10
  delta: (update: WebSocketDeltaUpdate) => void;
11
11
  account: (update: WebSocketAccountUpdate) => void;
12
+ candle: (update: WebSocketCandleUpdate) => void;
12
13
  }
13
14
  /**
14
15
  * Type declaration for NordWebSocketClient event methods
@@ -16,4 +16,4 @@ export { NordWebSocketClient, NordWebSocketEvents, NordWebSocketClientEvents, Su
16
16
  * @returns WebSocket client
17
17
  * @throws {NordError} If initialization fails or invalid subscription is provided
18
18
  */
19
- export declare function initWebSocketClient(webServerUrl: string, subscriptions?: SubscriptionPattern[] | "trades" | "delta" | "account"): NordWebSocketClient;
19
+ export declare function initWebSocketClient(webServerUrl: string, subscriptions?: SubscriptionPattern[] | "trades" | "delta" | "account" | "candle"): NordWebSocketClient;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@n1xyz/nord-ts",
3
- "version": "0.3.2",
3
+ "version": "0.3.4-alpha.1",
4
4
  "description": "Typescript for Nord",
5
5
  "keywords": [],
6
6
  "author": "",
@@ -47,7 +47,7 @@
47
47
  },
48
48
  "dependencies": {
49
49
  "@bufbuild/protobuf": "^2.6.3",
50
- "@n1xyz/proton": "0.1.1",
50
+ "@n1xyz/proton": "0.1.0",
51
51
  "@noble/curves": "^1.9.6",
52
52
  "@noble/ed25519": "^2.3.0",
53
53
  "@noble/hashes": "^1.8.0",