@ancatag/n-r 0.1.7 → 0.1.8

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/chat.d.ts CHANGED
@@ -2,9 +2,9 @@
2
2
  * Chat Completions API
3
3
  * Handles chat completion requests (streaming and non-streaming)
4
4
  */
5
- import { HttpClient } from './http-client.js';
6
- import { GrpcClient } from './grpc-client.js';
7
- import type { ChatCompletionRequest, ChatCompletionResponse, ChatCompletionChunk } from './types.js';
5
+ import { HttpClient } from "./http-client.js";
6
+ import { GrpcClient } from "./grpc-client.js";
7
+ import type { ChatCompletionRequest, ChatCompletionResponse, ChatCompletionChunk } from "./types.js";
8
8
  export declare class ChatCompletions {
9
9
  private readonly httpClient;
10
10
  private readonly grpcClient?;
@@ -1 +1 @@
1
- {"version":3,"file":"chat.d.ts","sourceRoot":"","sources":["../src/chat.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,KAAK,EACX,qBAAqB,EACrB,sBAAsB,EACtB,mBAAmB,EACnB,MAAM,YAAY,CAAC;AAEpB,qBAAa,eAAe;IAE1B,OAAO,CAAC,QAAQ,CAAC,UAAU;IAC3B,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC;gBADX,UAAU,EAAE,UAAU,EACtB,UAAU,CAAC,EAAE,UAAU,YAAA;IAGzC,OAAO,CAAC,MAAM;IAId;;OAEG;IACG,MAAM,CACX,OAAO,EAAE,qBAAqB,GAC5B,OAAO,CAAC,sBAAsB,CAAC;IAqBlC;;;OAGG;IACI,YAAY,CAClB,OAAO,EAAE,qBAAqB,EAC9B,MAAM,CAAC,EAAE,WAAW,GAClB,cAAc,CAAC,mBAAmB,EAAE,IAAI,EAAE,OAAO,CAAC;CA4DrD"}
1
+ {"version":3,"file":"chat.d.ts","sourceRoot":"","sources":["../src/chat.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,KAAK,EACX,qBAAqB,EACrB,sBAAsB,EACtB,mBAAmB,EACnB,MAAM,YAAY,CAAC;AAEpB,qBAAa,eAAe;IAE1B,OAAO,CAAC,QAAQ,CAAC,UAAU;IAC3B,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC;gBADX,UAAU,EAAE,UAAU,EACtB,UAAU,CAAC,EAAE,UAAU,YAAA;IAGzC,OAAO,CAAC,MAAM;IAId;;OAEG;IACG,MAAM,CACX,OAAO,EAAE,qBAAqB,GAC5B,OAAO,CAAC,sBAAsB,CAAC;IAqBlC;;;OAGG;IACI,YAAY,CAClB,OAAO,EAAE,qBAAqB,EAC9B,MAAM,CAAC,EAAE,WAAW,GAClB,cAAc,CAAC,mBAAmB,EAAE,IAAI,EAAE,OAAO,CAAC;CA8DrD"}
package/dist/chat.js CHANGED
@@ -25,7 +25,7 @@ export class ChatCompletions {
25
25
  ...filteredRequest,
26
26
  stream: false,
27
27
  };
28
- return this.httpClient.post('v1/chat/completions', payload);
28
+ return this.httpClient.post("v1/chat/completions", payload);
29
29
  }
30
30
  /**
31
31
  * Create a streaming chat completion
@@ -44,24 +44,24 @@ export class ChatCompletions {
44
44
  ...filteredRequest,
45
45
  stream: true,
46
46
  };
47
- const stream = await this.httpClient.postStream('v1/chat/completions', payload, signal);
47
+ const stream = await this.httpClient.postStream("v1/chat/completions", payload, signal);
48
48
  const reader = stream.getReader();
49
49
  const decoder = new TextDecoder();
50
- let buffer = '';
50
+ let buffer = "";
51
51
  try {
52
52
  while (true) {
53
53
  const { done, value } = await reader.read();
54
54
  if (done)
55
55
  break;
56
56
  buffer += decoder.decode(value, { stream: true });
57
- const lines = buffer.split('\n');
58
- buffer = lines.pop() || '';
57
+ const lines = buffer.split("\n");
58
+ buffer = lines.pop() || "";
59
59
  for (const line of lines) {
60
60
  const trimmed = line.trim();
61
- if (!trimmed || trimmed === 'data: [DONE]') {
61
+ if (!trimmed || trimmed === "data: [DONE]") {
62
62
  continue;
63
63
  }
64
- if (!trimmed.startsWith('data: ')) {
64
+ if (!trimmed.startsWith("data: ")) {
65
65
  continue;
66
66
  }
67
67
  try {
package/dist/chat.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"chat.js","sourceRoot":"","sources":["../src/chat.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"chat.js","sourceRoot":"","sources":["../src/chat.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAUH,MAAM,OAAO,eAAe;IAET;IACA;IAFlB,YACkB,UAAsB,EACtB,UAAuB;QADvB,eAAU,GAAV,UAAU,CAAY;QACtB,eAAU,GAAV,UAAU,CAAa;IACtC,CAAC;IAEI,MAAM;QACb,OAAO,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IACjC,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,MAAM,CACX,OAA8B;QAE9B,IAAI,IAAI,CAAC,MAAM,EAAE,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;YACtC,OAAO,IAAI,CAAC,UAAU,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAAC;QACtD,CAAC;QAED,+DAA+D;QAC/D,MAAM,eAAe,GAAG,MAAM,CAAC,WAAW,CACzC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,KAAK,KAAK,SAAS,CAAC,CAC1C,CAAC;QAE3B,MAAM,OAAO,GAA0B;YACtC,GAAG,eAAe;YAClB,MAAM,EAAE,KAAK;SACb,CAAC;QAEF,OAAO,IAAI,CAAC,UAAU,CAAC,IAAI,CAC1B,qBAAqB,EACrB,OAAO,CACP,CAAC;IACH,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,CAAC,YAAY,CAClB,OAA8B,EAC9B,MAAoB;QAEpB,IAAI,IAAI,CAAC,MAAM,EAAE,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;YACtC,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,IAAI,CAAC,UAAU,CAAC,0BAA0B,CACnE,OAAO,CACP,EAAE,CAAC;gBACH,MAAM,KAAK,CAAC;YACb,CAAC;YACD,OAAO;QACR,CAAC;QAED,+DAA+D;QAC/D,MAAM,eAAe,GAAG,MAAM,CAAC,WAAW,CACzC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,KAAK,KAAK,SAAS,CAAC,CAC1C,CAAC;QAE3B,MAAM,OAAO,GAA0B;YACtC,GAAG,eAAe;YAClB,MAAM,EAAE,IAAI;SACZ,CAAC;QAEF,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,UAAU,CAC9C,qBAAqB,EACrB,OAAO,EACP,MAAM,CACN,CAAC;QAEF,MAAM,MAAM,GAAG,MAAM,CAAC,SAAS,EAAE,CAAC;QAClC,MAAM,OAAO,GAAG,IAAI,WAAW,EAAE,CAAC;QAClC,IAAI,MAAM,GAAG,EAAE,CAAC;QAEhB,IAAI,CAAC;YACJ,OAAO,IAAI,EAAE,CAAC;gBACb,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,MAAM,MAAM,CAAC,IAAI,EAAE,CAAC;gBAC5C,IAAI,IAAI;oBAAE,MAAM;gBAEhB,MAAM,IAAI,OAAO,CAAC,MAAM,CAAC,KAAK,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;gBAClD,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;gBACjC,MAAM,GAAG,KAAK,CAAC,GAAG,EAAE,IAAI,EAAE,CAAC;gBAE3B,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;oBAC1B,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;oBAC5B,IAAI,CAAC,OAAO,IAAI,OAAO,KAAK,cAAc,EAAE,CAAC;wBAC5C,SAAS;oBACV,CAAC;oBACD,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;wBACnC,SAAS;oBACV,CAAC;oBAED,IAAI,CAAC;wBACJ,MAAM,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,yBAAyB;wBAC3D,MAAM,KAAK,GAAwB,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;wBACvD,MAAM,KAAK,CAAC;oBACb,CAAC;oBAAC,OAAO,UAAU,EAAE,CAAC;wBACrB,6BAA6B;wBAC7B,SAAS;oBACV,CAAC;gBACF,CAAC;YACF,CAAC;QACF,CAAC;gBAAS,CAAC;YACV,MAAM,CAAC,WAAW,EAAE,CAAC;QACtB,CAAC;IACF,CAAC;CACD"}
package/dist/client.d.ts CHANGED
@@ -2,9 +2,9 @@
2
2
  * Nova Client
3
3
  * Main client class for interacting with Nova AI API
4
4
  */
5
- import { ChatCompletions } from './chat.js';
6
- import { Models } from './models.js';
7
- import type { NovaClientConfig } from './types.js';
5
+ import { ChatCompletions } from "./chat.js";
6
+ import { Models } from "./models.js";
7
+ import type { NovaClientConfig } from "./types.js";
8
8
  export declare class NovaClient {
9
9
  readonly chat: ChatCompletions;
10
10
  readonly models: Models;
package/dist/client.js CHANGED
@@ -2,10 +2,10 @@
2
2
  * Nova Client
3
3
  * Main client class for interacting with Nova AI API
4
4
  */
5
- import { HttpClient } from './http-client.js';
6
- import { ChatCompletions } from './chat.js';
7
- import { Models } from './models.js';
8
- import { GrpcClient } from './grpc-client.js';
5
+ import { HttpClient } from "./http-client.js";
6
+ import { ChatCompletions } from "./chat.js";
7
+ import { Models } from "./models.js";
8
+ import { GrpcClient } from "./grpc-client.js";
9
9
  export class NovaClient {
10
10
  chat;
11
11
  models;
@@ -20,7 +20,7 @@ export class NovaClient {
20
20
  this.models = new Models(this.httpClient, this.grpcClient);
21
21
  }
22
22
  shouldUseGrpc(transport) {
23
- return transport === 'grpc';
23
+ return transport === "grpc";
24
24
  }
25
25
  /**
26
26
  * Get the API key (masked for security)
@@ -9,7 +9,7 @@
9
9
  * Note: gRPC dependencies are optional. If gRPC is requested but dependencies
10
10
  * are not installed, this will throw an error suggesting to use REST instead.
11
11
  */
12
- import type { ChatCompletionRequest, ChatCompletionResponse, ChatCompletionChunk, Model, NovaClientConfig } from './types.js';
12
+ import type { ChatCompletionRequest, ChatCompletionResponse, ChatCompletionChunk, Model, NovaClientConfig } from "./types.js";
13
13
  export declare class GrpcClient {
14
14
  constructor(config: NovaClientConfig);
15
15
  createChatCompletion(request: ChatCompletionRequest): Promise<ChatCompletionResponse>;
@@ -16,16 +16,16 @@ export class GrpcClient {
16
16
  // If you need gRPC support, install them: pnpm add @grpc/grpc-js @grpc/proto-loader
17
17
  // For now, use REST transport: transport: "rest"
18
18
  throw new Error('gRPC transport is not fully implemented. Use transport: "rest" instead.\n' +
19
- 'If you need gRPC support, ensure @grpc/grpc-js and @grpc/proto-loader are installed.');
19
+ "If you need gRPC support, ensure @grpc/grpc-js and @grpc/proto-loader are installed.");
20
20
  }
21
21
  async createChatCompletion(request) {
22
- throw new Error('gRPC not implemented');
22
+ throw new Error("gRPC not implemented");
23
23
  }
24
24
  async *createChatCompletionStream(request) {
25
- throw new Error('gRPC not implemented');
25
+ throw new Error("gRPC not implemented");
26
26
  }
27
27
  async listModels() {
28
- throw new Error('gRPC not implemented');
28
+ throw new Error("gRPC not implemented");
29
29
  }
30
30
  }
31
31
  //# sourceMappingURL=grpc-client.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"grpc-client.js","sourceRoot":"","sources":["../src/grpc-client.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAUH,MAAM,OAAO,UAAU;IACtB,YAAY,MAAwB;QACnC,uDAAuD;QACvD,2EAA2E;QAC3E,oFAAoF;QACpF,iDAAiD;QACjD,MAAM,IAAI,KAAK,CACd,2EAA2E;YAC3E,sFAAsF,CACtF,CAAC;IACH,CAAC;IAED,KAAK,CAAC,oBAAoB,CACzB,OAA8B;QAE9B,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC;IACzC,CAAC;IAED,KAAK,CAAC,CAAC,0BAA0B,CAChC,OAA8B;QAE9B,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC;IACzC,CAAC;IAED,KAAK,CAAC,UAAU;QACf,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC;IACzC,CAAC;CACD"}
1
+ {"version":3,"file":"grpc-client.js","sourceRoot":"","sources":["../src/grpc-client.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAUH,MAAM,OAAO,UAAU;IACtB,YAAY,MAAwB;QACnC,uDAAuD;QACvD,2EAA2E;QAC3E,oFAAoF;QACpF,iDAAiD;QACjD,MAAM,IAAI,KAAK,CACd,2EAA2E;YAC1E,sFAAsF,CACvF,CAAC;IACH,CAAC;IAED,KAAK,CAAC,oBAAoB,CACzB,OAA8B;QAE9B,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC;IACzC,CAAC;IAED,KAAK,CAAC,CAAC,0BAA0B,CAChC,OAA8B;QAE9B,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC;IACzC,CAAC;IAED,KAAK,CAAC,UAAU;QACf,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC;IACzC,CAAC;CACD"}
@@ -2,7 +2,7 @@
2
2
  * HTTP Client for Nova API
3
3
  * Handles authentication, retries, timeouts, and error handling
4
4
  */
5
- import type { NovaClientConfig } from './types.js';
5
+ import type { NovaClientConfig } from "./types.js";
6
6
  export declare class HttpClient {
7
7
  private readonly apiKey;
8
8
  private readonly baseUrl;
@@ -1 +1 @@
1
- {"version":3,"file":"http-client.d.ts","sourceRoot":"","sources":["../src/http-client.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAGnD,qBAAa,UAAU;IACtB,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAS;IAChC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAS;IACjC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAS;IACnC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAS;gBAExB,MAAM,EAAE,gBAAgB;IAiBpC;;OAEG;IACG,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC;IAItC;;OAEG;IACG,IAAI,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,CAAC,CAAC;IAIvD;;OAEG;IACG,UAAU,CACf,IAAI,EAAE,MAAM,EACZ,IAAI,CAAC,EAAE,OAAO,EACd,MAAM,CAAC,EAAE,WAAW,GAClB,OAAO,CAAC,cAAc,CAAC,UAAU,CAAC,CAAC;IAkDtC;;OAEG;YACW,OAAO;IAqErB;;OAEG;YACW,UAAU;CA6BxB"}
1
+ {"version":3,"file":"http-client.d.ts","sourceRoot":"","sources":["../src/http-client.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAGnD,qBAAa,UAAU;IACtB,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAS;IAChC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAS;IACjC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAS;IACnC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAS;gBAExB,MAAM,EAAE,gBAAgB;IAoBpC;;OAEG;IACG,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC;IAItC;;OAEG;IACG,IAAI,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,CAAC,CAAC;IAIvD;;OAEG;IACG,UAAU,CACf,IAAI,EAAE,MAAM,EACZ,IAAI,CAAC,EAAE,OAAO,EACd,MAAM,CAAC,EAAE,WAAW,GAClB,OAAO,CAAC,cAAc,CAAC,UAAU,CAAC,CAAC;IA8CtC;;OAEG;YACW,OAAO;IA8DrB;;OAEG;YACW,UAAU;CA6BxB"}
@@ -2,7 +2,7 @@
2
2
  * HTTP Client for Nova API
3
3
  * Handles authentication, retries, timeouts, and error handling
4
4
  */
5
- import { NovaError } from './types.js';
5
+ import { NovaError } from "./types.js";
6
6
  export class HttpClient {
7
7
  apiKey;
8
8
  baseUrl;
@@ -10,16 +10,16 @@ export class HttpClient {
10
10
  maxRetries;
11
11
  constructor(config) {
12
12
  if (!config.apiKey) {
13
- throw new NovaError('API key is required');
13
+ throw new NovaError("API key is required");
14
14
  }
15
- if (!config.apiKey.startsWith('nova_sk_')) {
16
- throw new NovaError('Invalid API key format. Expected format: nova_sk_...');
15
+ if (!config.apiKey.startsWith("nova_sk_")) {
16
+ throw new NovaError("Invalid API key format. Expected format: nova_sk_...");
17
17
  }
18
18
  this.apiKey = config.apiKey;
19
- const envBase = (typeof process !== 'undefined') ? process.env.NOVA_BASE_URL : undefined;
19
+ const envBase = typeof process !== "undefined" ? process.env.NOVA_BASE_URL : undefined;
20
20
  const configBase = config.baseUrl;
21
- const fallback = 'http://localhost:3000';
22
- this.baseUrl = (configBase || envBase || fallback).replace(/\/$/, '');
21
+ const fallback = "http://localhost:3000";
22
+ this.baseUrl = (configBase || envBase || fallback).replace(/\/$/, "");
23
23
  this.timeoutMs = config.timeoutMs || 60000;
24
24
  this.maxRetries = config.maxRetries ?? 2;
25
25
  }
@@ -27,13 +27,13 @@ export class HttpClient {
27
27
  * Make a GET request
28
28
  */
29
29
  async get(path) {
30
- return this.request('GET', path);
30
+ return this.request("GET", path);
31
31
  }
32
32
  /**
33
33
  * Make a POST request
34
34
  */
35
35
  async post(path, body) {
36
- return this.request('POST', path, body);
36
+ return this.request("POST", path, body);
37
37
  }
38
38
  /**
39
39
  * Make a streaming POST request (returns ReadableStream)
@@ -44,15 +44,15 @@ export class HttpClient {
44
44
  const timeoutId = setTimeout(() => controller.abort(), this.timeoutMs);
45
45
  // Combine abort signals
46
46
  if (signal) {
47
- signal.addEventListener('abort', () => controller.abort());
47
+ signal.addEventListener("abort", () => controller.abort());
48
48
  }
49
49
  try {
50
50
  const response = await fetch(url, {
51
- method: 'POST',
51
+ method: "POST",
52
52
  headers: {
53
- 'Content-Type': 'application/json',
53
+ "Content-Type": "application/json",
54
54
  Authorization: `Bearer ${this.apiKey}`,
55
- 'User-Agent': '@ancatag/n-r',
55
+ "User-Agent": "@ancatag/n-r",
56
56
  },
57
57
  body: body ? JSON.stringify(body) : undefined,
58
58
  signal: controller.signal,
@@ -63,7 +63,7 @@ export class HttpClient {
63
63
  throw error;
64
64
  }
65
65
  if (!response.body) {
66
- throw new NovaError('No response body');
66
+ throw new NovaError("No response body");
67
67
  }
68
68
  return response.body;
69
69
  }
@@ -72,10 +72,10 @@ export class HttpClient {
72
72
  if (error instanceof NovaError) {
73
73
  throw error;
74
74
  }
75
- if (error.name === 'AbortError') {
76
- throw new NovaError('Request timeout', 408, 'timeout');
75
+ if (error.name === "AbortError") {
76
+ throw new NovaError("Request timeout", 408, "timeout");
77
77
  }
78
- throw new NovaError(error.message || 'Network error', 0, 'network_error');
78
+ throw new NovaError(error.message || "Network error", 0, "network_error");
79
79
  }
80
80
  }
81
81
  /**
@@ -89,9 +89,9 @@ export class HttpClient {
89
89
  const response = await fetch(url, {
90
90
  method,
91
91
  headers: {
92
- 'Content-Type': 'application/json',
92
+ "Content-Type": "application/json",
93
93
  Authorization: `Bearer ${this.apiKey}`,
94
- 'User-Agent': '@ancatag/n-r',
94
+ "User-Agent": "@ancatag/n-r",
95
95
  },
96
96
  body: body ? JSON.stringify(body) : undefined,
97
97
  signal: controller.signal,
@@ -100,8 +100,7 @@ export class HttpClient {
100
100
  if (!response.ok) {
101
101
  const error = await this.parseError(response);
102
102
  // Retry on server errors (5xx) or rate limits (429)
103
- if ((error.status && error.status >= 500) ||
104
- error.status === 429) {
103
+ if ((error.status && error.status >= 500) || error.status === 429) {
105
104
  if (retryCount < this.maxRetries) {
106
105
  // Exponential backoff: 1s, 2s, 4s
107
106
  const delay = Math.pow(2, retryCount) * 1000;
@@ -119,16 +118,16 @@ export class HttpClient {
119
118
  if (error instanceof NovaError) {
120
119
  throw error;
121
120
  }
122
- if (error.name === 'AbortError') {
123
- throw new NovaError('Request timeout', 408, 'timeout');
121
+ if (error.name === "AbortError") {
122
+ throw new NovaError("Request timeout", 408, "timeout");
124
123
  }
125
124
  // Retry on network errors
126
- if (retryCount < this.maxRetries && method === 'GET') {
125
+ if (retryCount < this.maxRetries && method === "GET") {
127
126
  const delay = Math.pow(2, retryCount) * 1000;
128
127
  await new Promise((resolve) => setTimeout(resolve, delay));
129
128
  return this.request(method, path, body, retryCount + 1);
130
129
  }
131
- throw new NovaError(error.message || 'Network error', 0, 'network_error');
130
+ throw new NovaError(error.message || "Network error", 0, "network_error");
132
131
  }
133
132
  }
134
133
  /**
@@ -141,13 +140,13 @@ export class HttpClient {
141
140
  }
142
141
  catch {
143
142
  // If response is not JSON, use status text
144
- return new NovaError(response.statusText || `HTTP ${response.status}`, response.status, 'http_error');
143
+ return new NovaError(response.statusText || `HTTP ${response.status}`, response.status, "http_error");
145
144
  }
146
145
  // Handle OpenAI-compatible error format
147
146
  if (errorData.error) {
148
- return new NovaError(errorData.error.message || 'API error', response.status, errorData.error.code, errorData.error.type);
147
+ return new NovaError(errorData.error.message || "API error", response.status, errorData.error.code, errorData.error.type);
149
148
  }
150
- return new NovaError(errorData.message || `HTTP ${response.status}`, response.status, 'http_error');
149
+ return new NovaError(errorData.message || `HTTP ${response.status}`, response.status, "http_error");
151
150
  }
152
151
  }
153
152
  //# sourceMappingURL=http-client.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"http-client.js","sourceRoot":"","sources":["../src/http-client.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAEvC,MAAM,OAAO,UAAU;IACL,MAAM,CAAS;IACf,OAAO,CAAS;IAChB,SAAS,CAAS;IAClB,UAAU,CAAS;IAEpC,YAAY,MAAwB;QACnC,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;YACpB,MAAM,IAAI,SAAS,CAAC,qBAAqB,CAAC,CAAC;QAC5C,CAAC;QACD,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;YAC3C,MAAM,IAAI,SAAS,CAAC,sDAAsD,CAAC,CAAC;QAC7E,CAAC;QAED,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;QAC5B,MAAM,OAAO,GAAG,CAAC,OAAO,OAAO,KAAK,WAAW,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,SAAS,CAAC;QACzF,MAAM,UAAU,GAAG,MAAM,CAAC,OAAO,CAAC;QAClC,MAAM,QAAQ,GAAG,uBAAuB,CAAC;QACzC,IAAI,CAAC,OAAO,GAAG,CAAC,UAAU,IAAI,OAAO,IAAI,QAAQ,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;QACtE,IAAI,CAAC,SAAS,GAAG,MAAM,CAAC,SAAS,IAAI,KAAK,CAAC;QAC3C,IAAI,CAAC,UAAU,GAAG,MAAM,CAAC,UAAU,IAAI,CAAC,CAAC;IAC1C,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,GAAG,CAAI,IAAY;QACxB,OAAO,IAAI,CAAC,OAAO,CAAI,KAAK,EAAE,IAAI,CAAC,CAAC;IACrC,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,IAAI,CAAI,IAAY,EAAE,IAAc;QACzC,OAAO,IAAI,CAAC,OAAO,CAAI,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;IAC5C,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,UAAU,CACf,IAAY,EACZ,IAAc,EACd,MAAoB;QAEpB,MAAM,GAAG,GAAG,GAAG,IAAI,CAAC,OAAO,IAAI,IAAI,EAAE,CAAC;QACtC,MAAM,UAAU,GAAG,IAAI,eAAe,EAAE,CAAC;QACzC,MAAM,SAAS,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,UAAU,CAAC,KAAK,EAAE,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;QAEvE,wBAAwB;QACxB,IAAI,MAAM,EAAE,CAAC;YACZ,MAAM,CAAC,gBAAgB,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC,CAAC;QAC5D,CAAC;QAED,IAAI,CAAC;YACJ,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE;gBACjC,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE;oBACR,cAAc,EAAE,kBAAkB;oBAClC,aAAa,EAAE,UAAU,IAAI,CAAC,MAAM,EAAE;oBACtC,YAAY,EAAE,cAAc;iBAC5B;gBACD,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS;gBAC7C,MAAM,EAAE,UAAU,CAAC,MAAM;aACzB,CAAC,CAAC;YAEH,YAAY,CAAC,SAAS,CAAC,CAAC;YAExB,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;gBAClB,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;gBAC9C,MAAM,KAAK,CAAC;YACb,CAAC;YAED,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;gBACpB,MAAM,IAAI,SAAS,CAAC,kBAAkB,CAAC,CAAC;YACzC,CAAC;YAED,OAAO,QAAQ,CAAC,IAAI,CAAC;QACtB,CAAC;QAAC,OAAO,KAAU,EAAE,CAAC;YACrB,YAAY,CAAC,SAAS,CAAC,CAAC;YACxB,IAAI,KAAK,YAAY,SAAS,EAAE,CAAC;gBAChC,MAAM,KAAK,CAAC;YACb,CAAC;YACD,IAAI,KAAK,CAAC,IAAI,KAAK,YAAY,EAAE,CAAC;gBACjC,MAAM,IAAI,SAAS,CAAC,iBAAiB,EAAE,GAAG,EAAE,SAAS,CAAC,CAAC;YACxD,CAAC;YACD,MAAM,IAAI,SAAS,CAClB,KAAK,CAAC,OAAO,IAAI,eAAe,EAChC,CAAC,EACD,eAAe,CACf,CAAC;QACH,CAAC;IACF,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,OAAO,CACpB,MAAc,EACd,IAAY,EACZ,IAAc,EACd,UAAU,GAAG,CAAC;QAEd,MAAM,GAAG,GAAG,GAAG,IAAI,CAAC,OAAO,IAAI,IAAI,EAAE,CAAC;QACtC,MAAM,UAAU,GAAG,IAAI,eAAe,EAAE,CAAC;QACzC,MAAM,SAAS,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,UAAU,CAAC,KAAK,EAAE,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;QAEvE,IAAI,CAAC;YACJ,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE;gBACjC,MAAM;gBACN,OAAO,EAAE;oBACR,cAAc,EAAE,kBAAkB;oBAClC,aAAa,EAAE,UAAU,IAAI,CAAC,MAAM,EAAE;oBACtC,YAAY,EAAE,cAAc;iBAC5B;gBACD,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS;gBAC7C,MAAM,EAAE,UAAU,CAAC,MAAM;aACzB,CAAC,CAAC;YAEH,YAAY,CAAC,SAAS,CAAC,CAAC;YAExB,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;gBAClB,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;gBAE9C,oDAAoD;gBACpD,IACC,CAAC,KAAK,CAAC,MAAM,IAAI,KAAK,CAAC,MAAM,IAAI,GAAG,CAAC;oBACrC,KAAK,CAAC,MAAM,KAAK,GAAG,EACnB,CAAC;oBACF,IAAI,UAAU,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC;wBAClC,kCAAkC;wBAClC,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,UAAU,CAAC,GAAG,IAAI,CAAC;wBAC7C,MAAM,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC,CAAC;wBAC3D,OAAO,IAAI,CAAC,OAAO,CAAI,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,UAAU,GAAG,CAAC,CAAC,CAAC;oBAC5D,CAAC;gBACF,CAAC;gBAED,MAAM,KAAK,CAAC;YACb,CAAC;YAED,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;YACnC,OAAO,IAAS,CAAC;QAClB,CAAC;QAAC,OAAO,KAAU,EAAE,CAAC;YACrB,YAAY,CAAC,SAAS,CAAC,CAAC;YACxB,IAAI,KAAK,YAAY,SAAS,EAAE,CAAC;gBAChC,MAAM,KAAK,CAAC;YACb,CAAC;YACD,IAAI,KAAK,CAAC,IAAI,KAAK,YAAY,EAAE,CAAC;gBACjC,MAAM,IAAI,SAAS,CAAC,iBAAiB,EAAE,GAAG,EAAE,SAAS,CAAC,CAAC;YACxD,CAAC;YAED,0BAA0B;YAC1B,IAAI,UAAU,GAAG,IAAI,CAAC,UAAU,IAAI,MAAM,KAAK,KAAK,EAAE,CAAC;gBACtD,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,UAAU,CAAC,GAAG,IAAI,CAAC;gBAC7C,MAAM,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC,CAAC;gBAC3D,OAAO,IAAI,CAAC,OAAO,CAAI,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,UAAU,GAAG,CAAC,CAAC,CAAC;YAC5D,CAAC;YAED,MAAM,IAAI,SAAS,CAClB,KAAK,CAAC,OAAO,IAAI,eAAe,EAChC,CAAC,EACD,eAAe,CACf,CAAC;QACH,CAAC;IACF,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,UAAU,CAAC,QAAkB;QAC1C,IAAI,SAAc,CAAC;QACnB,IAAI,CAAC;YACJ,SAAS,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;QACnC,CAAC;QAAC,MAAM,CAAC;YACR,2CAA2C;YAC3C,OAAO,IAAI,SAAS,CACnB,QAAQ,CAAC,UAAU,IAAI,QAAQ,QAAQ,CAAC,MAAM,EAAE,EAChD,QAAQ,CAAC,MAAM,EACf,YAAY,CACZ,CAAC;QACH,CAAC;QAED,wCAAwC;QACxC,IAAI,SAAS,CAAC,KAAK,EAAE,CAAC;YACrB,OAAO,IAAI,SAAS,CACnB,SAAS,CAAC,KAAK,CAAC,OAAO,IAAI,WAAW,EACtC,QAAQ,CAAC,MAAM,EACf,SAAS,CAAC,KAAK,CAAC,IAAI,EACpB,SAAS,CAAC,KAAK,CAAC,IAAI,CACpB,CAAC;QACH,CAAC;QAED,OAAO,IAAI,SAAS,CACnB,SAAS,CAAC,OAAO,IAAI,QAAQ,QAAQ,CAAC,MAAM,EAAE,EAC9C,QAAQ,CAAC,MAAM,EACf,YAAY,CACZ,CAAC;IACH,CAAC;CACD"}
1
+ {"version":3,"file":"http-client.js","sourceRoot":"","sources":["../src/http-client.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -32,11 +32,11 @@
32
32
  * }
33
33
  * ```
34
34
  */
35
- export { NovaClient } from './client.js';
36
- export { ChatCompletions } from './chat.js';
37
- export { Models } from './models.js';
38
- export { HttpClient } from './http-client.js';
39
- export { GrpcClient } from './grpc-client.js';
40
- export { NovaError } from './types.js';
41
- export type { ChatMessage, ChatCompletionRequest, ChatCompletionResponse, ChatCompletionChunk, ChatCompletionChoice, ChatCompletionUsage, ChatCompletionChunkChoice, ChatCompletionError, Model, NovaClientConfig, NovaTransport, } from './types.js';
35
+ export { NovaClient } from "./client.js";
36
+ export { ChatCompletions } from "./chat.js";
37
+ export { Models } from "./models.js";
38
+ export { HttpClient } from "./http-client.js";
39
+ export { GrpcClient } from "./grpc-client.js";
40
+ export { NovaError } from "./types.js";
41
+ export type { ChatMessage, ChatCompletionRequest, ChatCompletionResponse, ChatCompletionChunk, ChatCompletionChoice, ChatCompletionUsage, ChatCompletionChunkChoice, ChatCompletionError, Model, NovaClientConfig, NovaTransport, } from "./types.js";
42
42
  //# sourceMappingURL=index.d.ts.map
package/dist/index.js CHANGED
@@ -32,10 +32,10 @@
32
32
  * }
33
33
  * ```
34
34
  */
35
- export { NovaClient } from './client.js';
36
- export { ChatCompletions } from './chat.js';
37
- export { Models } from './models.js';
38
- export { HttpClient } from './http-client.js';
39
- export { GrpcClient } from './grpc-client.js';
40
- export { NovaError } from './types.js';
35
+ export { NovaClient } from "./client.js";
36
+ export { ChatCompletions } from "./chat.js";
37
+ export { Models } from "./models.js";
38
+ export { HttpClient } from "./http-client.js";
39
+ export { GrpcClient } from "./grpc-client.js";
40
+ export { NovaError } from "./types.js";
41
41
  //# sourceMappingURL=index.js.map
package/dist/models.d.ts CHANGED
@@ -2,9 +2,9 @@
2
2
  * Models API
3
3
  * Handles model listing and retrieval
4
4
  */
5
- import { HttpClient } from './http-client.js';
6
- import { GrpcClient } from './grpc-client.js';
7
- import type { Model } from './types.js';
5
+ import { HttpClient } from "./http-client.js";
6
+ import { GrpcClient } from "./grpc-client.js";
7
+ import type { Model } from "./types.js";
8
8
  export declare class Models {
9
9
  private readonly httpClient;
10
10
  private readonly grpcClient?;
@@ -1 +1 @@
1
- {"version":3,"file":"models.d.ts","sourceRoot":"","sources":["../src/models.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AAExC,qBAAa,MAAM;IAEjB,OAAO,CAAC,QAAQ,CAAC,UAAU;IAC3B,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC;gBADX,UAAU,EAAE,UAAU,EACtB,UAAU,CAAC,EAAE,UAAU,YAAA;IAGzC,OAAO,CAAC,MAAM;IAId;;OAEG;IACG,IAAI,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;IAW9B;;OAEG;IACG,GAAG,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC;CAM1C"}
1
+ {"version":3,"file":"models.d.ts","sourceRoot":"","sources":["../src/models.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AAExC,qBAAa,MAAM;IAEjB,OAAO,CAAC,QAAQ,CAAC,UAAU;IAC3B,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC;gBADX,UAAU,EAAE,UAAU,EACtB,UAAU,CAAC,EAAE,UAAU,YAAA;IAGzC,OAAO,CAAC,MAAM;IAId;;OAEG;IACG,IAAI,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;IAS9B;;OAEG;IACG,GAAG,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC;CAI1C"}
package/dist/models.js CHANGED
@@ -19,7 +19,7 @@ export class Models {
19
19
  if (this.isGrpc() && this.grpcClient) {
20
20
  return this.grpcClient.listModels();
21
21
  }
22
- const response = await this.httpClient.get('v1/models');
22
+ const response = await this.httpClient.get("v1/models");
23
23
  return response.data || [];
24
24
  }
25
25
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"models.js","sourceRoot":"","sources":["../src/models.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAMH,MAAM,OAAO,MAAM;IAEA;IACA;IAFlB,YACkB,UAAsB,EACtB,UAAuB;QADvB,eAAU,GAAV,UAAU,CAAY;QACtB,eAAU,GAAV,UAAU,CAAa;IACtC,CAAC;IAEI,MAAM;QACb,OAAO,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IACjC,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,IAAI;QACT,IAAI,IAAI,CAAC,MAAM,EAAE,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;YACtC,OAAO,IAAI,CAAC,UAAU,CAAC,UAAU,EAAE,CAAC;QACrC,CAAC;QAED,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,GAAG,CACzC,WAAW,CACX,CAAC;QACF,OAAO,QAAQ,CAAC,IAAI,IAAI,EAAE,CAAC;IAC5B,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,GAAG,CAAC,OAAe;QACxB,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,GAAG,CACzC,aAAa,OAAO,EAAE,CACtB,CAAC;QACF,OAAO,QAAQ,CAAC;IACjB,CAAC;CACD"}
1
+ {"version":3,"file":"models.js","sourceRoot":"","sources":["../src/models.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAMH,MAAM,OAAO,MAAM;IAEA;IACA;IAFlB,YACkB,UAAsB,EACtB,UAAuB;QADvB,eAAU,GAAV,UAAU,CAAY;QACtB,eAAU,GAAV,UAAU,CAAa;IACtC,CAAC;IAEI,MAAM;QACb,OAAO,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IACjC,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,IAAI;QACT,IAAI,IAAI,CAAC,MAAM,EAAE,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;YACtC,OAAO,IAAI,CAAC,UAAU,CAAC,UAAU,EAAE,CAAC;QACrC,CAAC;QAED,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,GAAG,CAAoB,WAAW,CAAC,CAAC;QAC3E,OAAO,QAAQ,CAAC,IAAI,IAAI,EAAE,CAAC;IAC5B,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,GAAG,CAAC,OAAe;QACxB,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,GAAG,CAAQ,aAAa,OAAO,EAAE,CAAC,CAAC;QAC1E,OAAO,QAAQ,CAAC;IACjB,CAAC;CACD"}
package/dist/types.d.ts CHANGED
@@ -2,12 +2,12 @@
2
2
  * Nova SDK Types
3
3
  * OpenAI-compatible types for Nova AI API
4
4
  */
5
- export type NovaTransport = 'rest' | 'grpc';
5
+ export type NovaTransport = "rest" | "grpc";
6
6
  /**
7
7
  * Chat message format (OpenAI-compatible)
8
8
  */
9
9
  export interface ChatMessage {
10
- role: 'system' | 'user' | 'assistant' | 'function';
10
+ role: "system" | "user" | "assistant" | "function";
11
11
  content: string;
12
12
  name?: string;
13
13
  function_call?: {
@@ -49,14 +49,14 @@ export interface ChatCompletionRequest {
49
49
  */
50
50
  export interface ChatCompletionResponse {
51
51
  id: string;
52
- object: 'chat.completion';
52
+ object: "chat.completion";
53
53
  created: number;
54
54
  model: string;
55
55
  choices: ChatCompletionChoice[];
56
56
  usage: ChatCompletionUsage;
57
57
  nova?: {
58
58
  cacheHit: boolean;
59
- cacheLayer?: 'hot' | 'semantic' | null;
59
+ cacheLayer?: "hot" | "semantic" | null;
60
60
  tokensSaved: number;
61
61
  responseTimeMs: number;
62
62
  requestId: string;
@@ -65,14 +65,14 @@ export interface ChatCompletionResponse {
65
65
  export interface ChatCompletionChoice {
66
66
  index: number;
67
67
  message: {
68
- role: 'assistant';
68
+ role: "assistant";
69
69
  content: string;
70
70
  function_call?: {
71
71
  name: string;
72
72
  arguments: string;
73
73
  };
74
74
  };
75
- finish_reason: 'stop' | 'length' | 'function_call' | 'content_filter' | null;
75
+ finish_reason: "stop" | "length" | "function_call" | "content_filter" | null;
76
76
  }
77
77
  export interface ChatCompletionUsage {
78
78
  prompt_tokens: number;
@@ -84,7 +84,7 @@ export interface ChatCompletionUsage {
84
84
  */
85
85
  export interface ChatCompletionChunk {
86
86
  id: string;
87
- object: 'chat.completion.chunk';
87
+ object: "chat.completion.chunk";
88
88
  created: number;
89
89
  model: string;
90
90
  choices: ChatCompletionChunkChoice[];
@@ -92,14 +92,14 @@ export interface ChatCompletionChunk {
92
92
  export interface ChatCompletionChunkChoice {
93
93
  index: number;
94
94
  delta: {
95
- role?: 'assistant';
95
+ role?: "assistant";
96
96
  content?: string;
97
97
  function_call?: {
98
98
  name?: string;
99
99
  arguments?: string;
100
100
  };
101
101
  };
102
- finish_reason: 'stop' | 'length' | 'function_call' | 'content_filter' | null;
102
+ finish_reason: "stop" | "length" | "function_call" | "content_filter" | null;
103
103
  }
104
104
  /**
105
105
  * Error response (OpenAI-compatible)
@@ -117,7 +117,7 @@ export interface ChatCompletionError {
117
117
  */
118
118
  export interface Model {
119
119
  id: string;
120
- object: 'model';
120
+ object: "model";
121
121
  created: number;
122
122
  owned_by: string;
123
123
  }
package/dist/types.js CHANGED
@@ -14,7 +14,7 @@ export class NovaError extends Error {
14
14
  this.status = status;
15
15
  this.code = code;
16
16
  this.type = type;
17
- this.name = 'NovaError';
17
+ this.name = "NovaError";
18
18
  }
19
19
  }
20
20
  //# sourceMappingURL=types.js.map
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ancatag/n-r",
3
- "version": "0.1.7",
3
+ "version": "0.1.8",
4
4
  "description": "Official Node.js/TypeScript SDK for Nova AI API",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",