@quicknode/sdk 3.4.0 → 3.6.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.
package/README.md CHANGED
@@ -34,6 +34,7 @@ This is one of four language bindings published from the same Rust core. See the
34
34
  - [Endpoint URLs](#endpoint-urls)
35
35
  - [Metrics](#metrics)
36
36
  - [Chains](#chains)
37
+ - [Account](#account)
37
38
  - [Billing](#billing)
38
39
  - [Bulk Operations](#bulk-operations)
39
40
  - [Account Tags](#account-tags)
@@ -46,6 +47,7 @@ This is one of four language bindings published from the same Rust core. See the
46
47
  - [KV Store Client](#kv-store-client)
47
48
  - [Sets](#sets)
48
49
  - [Lists](#lists)
50
+ - [SQL Client](#sql-client)
49
51
  - [Error Handling](#error-handling)
50
52
  - [License](#license)
51
53
 
@@ -55,7 +57,7 @@ This is one of four language bindings published from the same Rust core. See the
55
57
 
56
58
  ## Quick Start
57
59
 
58
- Construct the SDK once, then reach into the four sub-clients (`admin`, `streams`, `webhooks`, `kvstore`). Subsequent API Reference snippets assume you have a `qn` handle from one of these blocks.
60
+ Construct the SDK once, then reach into the five sub-clients (`admin`, `streams`, `webhooks`, `kvstore`, `sql`). Subsequent API Reference snippets assume you have a `qn` handle from one of these blocks.
59
61
 
60
62
  ```typescript
61
63
  // Node.js
@@ -96,6 +98,7 @@ Environment variables (prefix `QN_SDK__`, separator `__`):
96
98
  | `QN_SDK__STREAMS__BASE_URL` | no | `https://api.quicknode.com/streams/rest/v1/` | Override streams base URL |
97
99
  | `QN_SDK__WEBHOOKS__BASE_URL` | no | `https://api.quicknode.com/webhooks/rest/v1/` | Override webhooks base URL |
98
100
  | `QN_SDK__KVSTORE__BASE_URL` | no | `https://api.quicknode.com/kv/rest/v1/` | Override KV store base URL |
101
+ | `QN_SDK__SQL__BASE_URL` | no | `https://api.quicknode.com/sql/rest/v1/` | Override SQL Explorer base URL |
99
102
  | `QN_SDK__HTTP__HEADERS__<NAME>` | no | — | Custom HTTP header sent on every request. Overrides SDK-managed headers (see below). |
100
103
 
101
104
  ### Custom headers and `User-Agent`
@@ -930,6 +933,34 @@ Lists the blockchains supported by Quicknode along with their networks.
930
933
  const resp = await qn.admin.listChains();
931
934
  ```
932
935
 
936
+ #### Account
937
+
938
+ ##### `account_info` / `accountInfo`
939
+
940
+ Returns details about the account, including its id, name, creation timestamp, billing version, and current subscription.
941
+
942
+ **Parameters**: none.
943
+
944
+ **Returns**: `AccountInfoResponse` with `data: AccountInfo` (including a nested `subscription: AccountSubscription`).
945
+
946
+ ```typescript
947
+ // Node.js
948
+ const resp = await qn.admin.accountInfo();
949
+ ```
950
+
951
+ ##### `get_api_credits` / `getApiCredits`
952
+
953
+ Returns the per-method API credit costs for a chain, identified by its slug (the same slugs returned by `list_chains`, e.g. `ethereum`). An unknown chain slug rejects with `ApiError` (status 404).
954
+
955
+ **Parameters**: `chain` (string, required) — the chain slug.
956
+
957
+ **Returns**: `GetApiCreditsResponse` with `data: ApiCredit[]`, where each `ApiCredit` has `method` and `credits`.
958
+
959
+ ```typescript
960
+ // Node.js
961
+ const resp = await qn.admin.getApiCredits("ethereum");
962
+ ```
963
+
933
964
  #### Billing
934
965
 
935
966
  ##### `list_invoices` / `listInvoices`
@@ -1606,6 +1637,43 @@ Deletes a list and all of its items.
1606
1637
  await qn.kvstore.deleteList("my-list");
1607
1638
  ```
1608
1639
 
1640
+ ---
1641
+
1642
+ ### SQL Client
1643
+
1644
+ Accessed as `qn.sql`. Runs SQL queries against indexed blockchain data and fetches the database schema. Backed by `https://api.quicknode.com/sql/rest/v1/`.
1645
+
1646
+ ##### `query`
1647
+
1648
+ Executes a SQL query against a cluster and returns the result set. Paginate by writing `LIMIT`/`OFFSET` into the SQL.
1649
+
1650
+ **Parameters**: `query` (string, required), `cluster_id` / `clusterId` (string, required).
1651
+
1652
+ **Returns**: a query result — `meta` (column metadata, each with `name` and `type`), `data` (rows as objects keyed by column name), `rows`, `rows_before_limit_at_least` / `rowsBeforeLimitAtLeast`, `statistics` (`elapsed`, `rows_read`/`rowsRead`, `bytes_read`/`bytesRead`), and `credits`.
1653
+
1654
+ ```typescript
1655
+ // Node.js
1656
+ const resp = await qn.sql.query(
1657
+ "SELECT action_type, user FROM hyperliquid_system_actions ORDER BY block_time DESC LIMIT 100",
1658
+ "hyperliquid-core-mainnet",
1659
+ );
1660
+ console.log(resp.rows, resp.data[0]);
1661
+ ```
1662
+
1663
+ ##### `get_schema` / `getSchema`
1664
+
1665
+ Fetches the database schema for a cluster: table names, columns, types, sort keys, and partition strategies.
1666
+
1667
+ **Parameters**: `cluster_id` / `clusterId` (string, required).
1668
+
1669
+ **Returns**: a chain schema — `chain`, `cluster_id` / `clusterId`, and `tables` (each with `name`, `engine`, `total_rows` / `totalRows`, `partition_key` / `partitionKey`, `sorting_key` / `sortingKey`, and `columns` of `{ name, type }`).
1670
+
1671
+ ```typescript
1672
+ // Node.js
1673
+ const schema = await qn.sql.getSchema("hyperliquid-core-mainnet");
1674
+ console.log(schema.tables.length);
1675
+ ```
1676
+
1609
1677
  ## Error Handling
1610
1678
 
1611
1679
  Every binding exposes a typed exception hierarchy derived from the core `SdkError`
package/index.d.ts CHANGED
@@ -1,5 +1,37 @@
1
1
  /* auto-generated by NAPI-RS */
2
2
  /* eslint-disable */
3
+ /** Details about a Quicknode account. */
4
+ export interface AccountInfo {
5
+ /** Numeric account id. */
6
+ id: number
7
+ /** Account name. */
8
+ name: string
9
+ /** ISO 8601 timestamp of when the account was created. */
10
+ createdAt: string
11
+ /** Billing version (e.g. `v6`). */
12
+ billingVersion?: string
13
+ /** The account's current subscription, when present. */
14
+ subscription?: AccountSubscription
15
+ }
16
+
17
+ /** Response from `account_info`. */
18
+ export interface AccountInfoResponse {
19
+ /** Account details, when the request succeeded. */
20
+ data?: AccountInfo
21
+ /** Error message when the request did not succeed. */
22
+ error?: string
23
+ }
24
+
25
+ /** The account's current subscription. */
26
+ export interface AccountSubscription {
27
+ /** Plan name (e.g. `Accelerate`). */
28
+ planName?: string
29
+ /** Subscription status (e.g. `active`). */
30
+ status?: string
31
+ /** Billing interval (e.g. `monthly`). */
32
+ interval?: string
33
+ }
34
+
3
35
  /** An account-level tag, shared across endpoints. */
4
36
  export interface AccountTag {
5
37
  /** Tag identifier. */
@@ -39,6 +71,14 @@ export interface AdminConfig {
39
71
  baseUrl?: string
40
72
  }
41
73
 
74
+ /** The API credit cost of a single RPC method on a chain. */
75
+ export interface ApiCredit {
76
+ /** RPC method name (e.g. `eth_chainId`). */
77
+ method: string
78
+ /** Number of API credits the method costs. */
79
+ credits: number
80
+ }
81
+
42
82
  /** Configuration for delivering stream batches to Azure Blob Storage. */
43
83
  export interface AzureAttributes {
44
84
  /** Azure storage account name. */
@@ -201,6 +241,16 @@ export interface ChainNetwork {
201
241
  chainId?: number
202
242
  }
203
243
 
244
+ /** Response from `get_schema`: the schema for a single chain/cluster. */
245
+ export interface ChainSchema {
246
+ /** Human-readable chain name (e.g. `"Hyperliquid (HyperCore)"`). */
247
+ chain: string
248
+ /** Cluster identifier the schema belongs to. */
249
+ clusterId: string
250
+ /** Tables available in this cluster. */
251
+ tables: Array<TableSchema>
252
+ }
253
+
204
254
  /** Per-chain usage row. */
205
255
  export interface ChainUsage {
206
256
  /** Chain name or slug. */
@@ -209,6 +259,22 @@ export interface ChainUsage {
209
259
  creditsUsed: number
210
260
  }
211
261
 
262
+ /** Metadata describing a single column in a query result set. */
263
+ export interface ColumnMeta {
264
+ /** Column name as it appears in the result set. */
265
+ name: string
266
+ /** Column data type (e.g. `"DateTime('UTC')"`, `"LowCardinality(String)"`). */
267
+ columnType: string
268
+ }
269
+
270
+ /** A single column in a table schema. */
271
+ export interface ColumnSchema {
272
+ /** Column name. */
273
+ name: string
274
+ /** Column data type (e.g. `"UInt64"`, `"FixedString(42)"`). */
275
+ columnType: string
276
+ }
277
+
212
278
  /** Parameters for `create_domain_mask`. */
213
279
  export interface CreateDomainMaskRequest {
214
280
  /** Custom domain that will mask the endpoint's Quicknode URL. */
@@ -701,6 +767,17 @@ export interface GetAccountMetricsResponse {
701
767
  error?: string
702
768
  }
703
769
 
770
+ /** Response from `get_api_credits`. */
771
+ export interface GetApiCreditsResponse {
772
+ /**
773
+ * Per-method API credit costs for the chain, when the request succeeded.
774
+ * `None` for an unknown chain slug.
775
+ */
776
+ data?: Array<ApiCredit>
777
+ /** Error message when the request did not succeed. */
778
+ error?: string
779
+ }
780
+
704
781
  /** Parameters for `get_endpoint_logs`. */
705
782
  export interface GetEndpointLogsRequest {
706
783
  /** Start of the query window (timestamp). */
@@ -1301,6 +1378,27 @@ export declare const enum ProductType {
1301
1378
  Webhook = 'Webhook'
1302
1379
  }
1303
1380
 
1381
+ /** Parameters for `query`. */
1382
+ export interface QueryParams {
1383
+ /**
1384
+ * The SQL query to execute. Pagination is expressed in the SQL itself via
1385
+ * `LIMIT`/`OFFSET`; the API caps results at 1000 rows per request.
1386
+ */
1387
+ query: string
1388
+ /** The blockchain network identifier (e.g. `"hyperliquid-core-mainnet"`). */
1389
+ clusterId: string
1390
+ }
1391
+
1392
+ /** Execution statistics returned alongside query results. */
1393
+ export interface QueryStatistics {
1394
+ /** Total query execution time in seconds. */
1395
+ elapsed: number
1396
+ /** Total number of rows scanned during execution. */
1397
+ rowsRead: number
1398
+ /** Total data scanned in bytes. */
1399
+ bytesRead: number
1400
+ }
1401
+
1304
1402
  /**
1305
1403
  * A single rate-limit row returned by `get_rate_limits`, identifying the
1306
1404
  * bucket (`rps`/`rpm`/`rpd`), the value enforced, and whether the value comes
@@ -1398,6 +1496,7 @@ export interface SdkFullConfig {
1398
1496
  streams?: StreamsConfig
1399
1497
  webhooks?: WebhooksConfig
1400
1498
  kvstore?: KvStoreConfig
1499
+ sql?: SqlConfig
1401
1500
  }
1402
1501
 
1403
1502
  /** A single security feature's name, status, and optional value. */
@@ -1484,6 +1583,10 @@ export interface SolanaWalletFilterTemplate {
1484
1583
  accounts: Array<string>
1485
1584
  }
1486
1585
 
1586
+ export interface SqlConfig {
1587
+ baseUrl?: string
1588
+ }
1589
+
1487
1590
  /** ByList form of `StellarWalletTransactionsFilterTemplate`. */
1488
1591
  export interface StellarWalletTransactionsFilterByListTemplate {
1489
1592
  /** Name of the pre-created wallets list. */
@@ -1557,6 +1660,22 @@ export declare const enum StreamStatus {
1557
1660
  Blocked = 'Blocked'
1558
1661
  }
1559
1662
 
1663
+ /** Schema for a single table. */
1664
+ export interface TableSchema {
1665
+ /** Table name. */
1666
+ name: string
1667
+ /** Storage engine backing the table. */
1668
+ engine: string
1669
+ /** Approximate total number of rows in the table. */
1670
+ totalRows: number
1671
+ /** Partition key expression; empty string for views. */
1672
+ partitionKey: string
1673
+ /** Sorting key columns; empty for views. */
1674
+ sortingKey: Array<string>
1675
+ /** Columns in the table. */
1676
+ columns: Array<ColumnSchema>
1677
+ }
1678
+
1560
1679
  /** Per-tag usage row. */
1561
1680
  export interface TagUsage {
1562
1681
  /** Tag identifier. */
@@ -2134,6 +2253,18 @@ export declare class AdminApiClient {
2134
2253
  * Each entry includes the chain slug and its network slugs and names.
2135
2254
  */
2136
2255
  listChains(): Promise<ListChainsResponse>
2256
+ /**
2257
+ * Returns details about the account, including its id, name, creation
2258
+ * timestamp, billing version, and current subscription.
2259
+ */
2260
+ accountInfo(): Promise<AccountInfoResponse>
2261
+ /**
2262
+ * Returns the per-method API credit costs for a chain, identified by its
2263
+ * slug (the same slugs returned by `list_chains`, e.g. `ethereum`). Each
2264
+ * item carries the RPC `method` name and its `credits` cost. An unknown
2265
+ * chain slug rejects with `ApiError` (status 404).
2266
+ */
2267
+ getApiCredits(chain: string): Promise<GetApiCreditsResponse>
2137
2268
  /**
2138
2269
  * Returns the account's invoices, including id, status, billing reason,
2139
2270
  * amounts due and paid, line items with descriptions and billing periods,
@@ -2291,10 +2422,22 @@ export declare class QuicknodeSdk {
2291
2422
  get webhooks(): WebhooksApiClient
2292
2423
  /** Returns the kvstore sub-client. */
2293
2424
  get kvstore(): KvStoreApiClient
2425
+ /** Returns the sql sub-client. */
2426
+ get sql(): SqlApiClient
2294
2427
  /** Creates a new SDK instance using configuration from environment variables. */
2295
2428
  static fromEnv(): QuicknodeSdk
2296
2429
  }
2297
2430
 
2431
+ export declare class SqlApiClient {
2432
+ /** Executes a SQL query against the given cluster and returns the result set. */
2433
+ query(query: string, clusterId: string): Promise<QueryResponseNode>
2434
+ /**
2435
+ * Fetches the database schema for a cluster, including table names,
2436
+ * columns, types, sort keys, and partition strategies.
2437
+ */
2438
+ getSchema(clusterId: string): Promise<ChainSchemaNode>
2439
+ }
2440
+
2298
2441
  export declare class StreamsApiClient {
2299
2442
  /**
2300
2443
  * Creates a new Stream on a given blockchain network and dataset, delivering
@@ -2419,6 +2562,29 @@ export declare class WebhooksApiClient {
2419
2562
  updateWebhookTemplate(webhookId: string, params: UpdateWebhookTemplateParamsNode): Promise<Webhook>
2420
2563
  }
2421
2564
 
2565
+ export interface ChainSchemaNode {
2566
+ /** Human-readable chain name. */
2567
+ chain: string
2568
+ /** Cluster identifier the schema belongs to. */
2569
+ clusterId: string
2570
+ /** Tables available in this cluster. */
2571
+ tables: Array<TableSchemaNode>
2572
+ }
2573
+
2574
+ export interface ColumnMetaNode {
2575
+ /** Column name as it appears in the result set. */
2576
+ name: string
2577
+ /** Column data type (e.g. `"DateTime('UTC')"`). */
2578
+ type: string
2579
+ }
2580
+
2581
+ export interface ColumnSchemaNode {
2582
+ /** Column name. */
2583
+ name: string
2584
+ /** Column data type (e.g. `"UInt64"`, `"FixedString(42)"`). */
2585
+ type: string
2586
+ }
2587
+
2422
2588
  export interface CreateStreamParamsNode {
2423
2589
  name: string
2424
2590
  region: StreamRegion
@@ -2460,6 +2626,33 @@ export interface ListStreamsResponseNode {
2460
2626
  pageInfo: PageInfo
2461
2627
  }
2462
2628
 
2629
+ export interface QueryResponseNode {
2630
+ /** Column metadata for each column in the result set. */
2631
+ meta: Array<ColumnMetaNode>
2632
+ /**
2633
+ * Result rows. Each row is an object keyed by the selected columns; shape
2634
+ * varies per query.
2635
+ */
2636
+ data: Array<any>
2637
+ /** Number of rows returned in this response. */
2638
+ rows: number
2639
+ /** Total rows that matched the query before applying `LIMIT`. */
2640
+ rowsBeforeLimitAtLeast: number
2641
+ /** Query execution statistics. */
2642
+ statistics: QueryStatisticsNode
2643
+ /** Credits consumed by the query. */
2644
+ credits: number
2645
+ }
2646
+
2647
+ export interface QueryStatisticsNode {
2648
+ /** Total query execution time in seconds. */
2649
+ elapsed: number
2650
+ /** Total number of rows scanned during execution. */
2651
+ rowsRead: number
2652
+ /** Total data scanned in bytes. */
2653
+ bytesRead: number
2654
+ }
2655
+
2463
2656
  export interface StreamNode {
2464
2657
  id: string
2465
2658
  name: string
@@ -2495,6 +2688,21 @@ export interface StreamNode {
2495
2688
  extraDestinations?: Array<any>
2496
2689
  }
2497
2690
 
2691
+ export interface TableSchemaNode {
2692
+ /** Table name. */
2693
+ name: string
2694
+ /** Storage engine backing the table. */
2695
+ engine: string
2696
+ /** Approximate total number of rows in the table. */
2697
+ totalRows: number
2698
+ /** Partition key expression; empty string for views. */
2699
+ partitionKey: string
2700
+ /** Sorting key columns; empty for views. */
2701
+ sortingKey: Array<string>
2702
+ /** Columns in the table. */
2703
+ columns: Array<ColumnSchemaNode>
2704
+ }
2705
+
2498
2706
  export interface UpdateStreamParamsNode {
2499
2707
  name?: string
2500
2708
  region?: StreamRegion
Binary file
package/index.js CHANGED
@@ -77,8 +77,8 @@ function requireNative() {
77
77
  try {
78
78
  const binding = require('@quicknode/sdk-android-arm64')
79
79
  const bindingPackageVersion = require('@quicknode/sdk-android-arm64/package.json').version
80
- if (bindingPackageVersion !== '3.4.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') {
81
- throw new Error(`Native binding package version mismatch, expected 3.4.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`)
80
+ if (bindingPackageVersion !== '3.6.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') {
81
+ throw new Error(`Native binding package version mismatch, expected 3.6.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`)
82
82
  }
83
83
  return binding
84
84
  } catch (e) {
@@ -93,8 +93,8 @@ function requireNative() {
93
93
  try {
94
94
  const binding = require('@quicknode/sdk-android-arm-eabi')
95
95
  const bindingPackageVersion = require('@quicknode/sdk-android-arm-eabi/package.json').version
96
- if (bindingPackageVersion !== '3.4.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') {
97
- throw new Error(`Native binding package version mismatch, expected 3.4.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`)
96
+ if (bindingPackageVersion !== '3.6.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') {
97
+ throw new Error(`Native binding package version mismatch, expected 3.6.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`)
98
98
  }
99
99
  return binding
100
100
  } catch (e) {
@@ -114,8 +114,8 @@ function requireNative() {
114
114
  try {
115
115
  const binding = require('@quicknode/sdk-win32-x64-gnu')
116
116
  const bindingPackageVersion = require('@quicknode/sdk-win32-x64-gnu/package.json').version
117
- if (bindingPackageVersion !== '3.4.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') {
118
- throw new Error(`Native binding package version mismatch, expected 3.4.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`)
117
+ if (bindingPackageVersion !== '3.6.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') {
118
+ throw new Error(`Native binding package version mismatch, expected 3.6.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`)
119
119
  }
120
120
  return binding
121
121
  } catch (e) {
@@ -130,8 +130,8 @@ function requireNative() {
130
130
  try {
131
131
  const binding = require('@quicknode/sdk-win32-x64-msvc')
132
132
  const bindingPackageVersion = require('@quicknode/sdk-win32-x64-msvc/package.json').version
133
- if (bindingPackageVersion !== '3.4.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') {
134
- throw new Error(`Native binding package version mismatch, expected 3.4.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`)
133
+ if (bindingPackageVersion !== '3.6.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') {
134
+ throw new Error(`Native binding package version mismatch, expected 3.6.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`)
135
135
  }
136
136
  return binding
137
137
  } catch (e) {
@@ -147,8 +147,8 @@ function requireNative() {
147
147
  try {
148
148
  const binding = require('@quicknode/sdk-win32-ia32-msvc')
149
149
  const bindingPackageVersion = require('@quicknode/sdk-win32-ia32-msvc/package.json').version
150
- if (bindingPackageVersion !== '3.4.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') {
151
- throw new Error(`Native binding package version mismatch, expected 3.4.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`)
150
+ if (bindingPackageVersion !== '3.6.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') {
151
+ throw new Error(`Native binding package version mismatch, expected 3.6.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`)
152
152
  }
153
153
  return binding
154
154
  } catch (e) {
@@ -163,8 +163,8 @@ function requireNative() {
163
163
  try {
164
164
  const binding = require('@quicknode/sdk-win32-arm64-msvc')
165
165
  const bindingPackageVersion = require('@quicknode/sdk-win32-arm64-msvc/package.json').version
166
- if (bindingPackageVersion !== '3.4.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') {
167
- throw new Error(`Native binding package version mismatch, expected 3.4.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`)
166
+ if (bindingPackageVersion !== '3.6.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') {
167
+ throw new Error(`Native binding package version mismatch, expected 3.6.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`)
168
168
  }
169
169
  return binding
170
170
  } catch (e) {
@@ -182,8 +182,8 @@ function requireNative() {
182
182
  try {
183
183
  const binding = require('@quicknode/sdk-darwin-universal')
184
184
  const bindingPackageVersion = require('@quicknode/sdk-darwin-universal/package.json').version
185
- if (bindingPackageVersion !== '3.4.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') {
186
- throw new Error(`Native binding package version mismatch, expected 3.4.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`)
185
+ if (bindingPackageVersion !== '3.6.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') {
186
+ throw new Error(`Native binding package version mismatch, expected 3.6.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`)
187
187
  }
188
188
  return binding
189
189
  } catch (e) {
@@ -198,8 +198,8 @@ function requireNative() {
198
198
  try {
199
199
  const binding = require('@quicknode/sdk-darwin-x64')
200
200
  const bindingPackageVersion = require('@quicknode/sdk-darwin-x64/package.json').version
201
- if (bindingPackageVersion !== '3.4.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') {
202
- throw new Error(`Native binding package version mismatch, expected 3.4.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`)
201
+ if (bindingPackageVersion !== '3.6.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') {
202
+ throw new Error(`Native binding package version mismatch, expected 3.6.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`)
203
203
  }
204
204
  return binding
205
205
  } catch (e) {
@@ -214,8 +214,8 @@ function requireNative() {
214
214
  try {
215
215
  const binding = require('@quicknode/sdk-darwin-arm64')
216
216
  const bindingPackageVersion = require('@quicknode/sdk-darwin-arm64/package.json').version
217
- if (bindingPackageVersion !== '3.4.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') {
218
- throw new Error(`Native binding package version mismatch, expected 3.4.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`)
217
+ if (bindingPackageVersion !== '3.6.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') {
218
+ throw new Error(`Native binding package version mismatch, expected 3.6.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`)
219
219
  }
220
220
  return binding
221
221
  } catch (e) {
@@ -234,8 +234,8 @@ function requireNative() {
234
234
  try {
235
235
  const binding = require('@quicknode/sdk-freebsd-x64')
236
236
  const bindingPackageVersion = require('@quicknode/sdk-freebsd-x64/package.json').version
237
- if (bindingPackageVersion !== '3.4.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') {
238
- throw new Error(`Native binding package version mismatch, expected 3.4.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`)
237
+ if (bindingPackageVersion !== '3.6.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') {
238
+ throw new Error(`Native binding package version mismatch, expected 3.6.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`)
239
239
  }
240
240
  return binding
241
241
  } catch (e) {
@@ -250,8 +250,8 @@ function requireNative() {
250
250
  try {
251
251
  const binding = require('@quicknode/sdk-freebsd-arm64')
252
252
  const bindingPackageVersion = require('@quicknode/sdk-freebsd-arm64/package.json').version
253
- if (bindingPackageVersion !== '3.4.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') {
254
- throw new Error(`Native binding package version mismatch, expected 3.4.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`)
253
+ if (bindingPackageVersion !== '3.6.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') {
254
+ throw new Error(`Native binding package version mismatch, expected 3.6.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`)
255
255
  }
256
256
  return binding
257
257
  } catch (e) {
@@ -271,8 +271,8 @@ function requireNative() {
271
271
  try {
272
272
  const binding = require('@quicknode/sdk-linux-x64-musl')
273
273
  const bindingPackageVersion = require('@quicknode/sdk-linux-x64-musl/package.json').version
274
- if (bindingPackageVersion !== '3.4.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') {
275
- throw new Error(`Native binding package version mismatch, expected 3.4.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`)
274
+ if (bindingPackageVersion !== '3.6.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') {
275
+ throw new Error(`Native binding package version mismatch, expected 3.6.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`)
276
276
  }
277
277
  return binding
278
278
  } catch (e) {
@@ -287,8 +287,8 @@ function requireNative() {
287
287
  try {
288
288
  const binding = require('@quicknode/sdk-linux-x64-gnu')
289
289
  const bindingPackageVersion = require('@quicknode/sdk-linux-x64-gnu/package.json').version
290
- if (bindingPackageVersion !== '3.4.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') {
291
- throw new Error(`Native binding package version mismatch, expected 3.4.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`)
290
+ if (bindingPackageVersion !== '3.6.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') {
291
+ throw new Error(`Native binding package version mismatch, expected 3.6.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`)
292
292
  }
293
293
  return binding
294
294
  } catch (e) {
@@ -305,8 +305,8 @@ function requireNative() {
305
305
  try {
306
306
  const binding = require('@quicknode/sdk-linux-arm64-musl')
307
307
  const bindingPackageVersion = require('@quicknode/sdk-linux-arm64-musl/package.json').version
308
- if (bindingPackageVersion !== '3.4.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') {
309
- throw new Error(`Native binding package version mismatch, expected 3.4.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`)
308
+ if (bindingPackageVersion !== '3.6.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') {
309
+ throw new Error(`Native binding package version mismatch, expected 3.6.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`)
310
310
  }
311
311
  return binding
312
312
  } catch (e) {
@@ -321,8 +321,8 @@ function requireNative() {
321
321
  try {
322
322
  const binding = require('@quicknode/sdk-linux-arm64-gnu')
323
323
  const bindingPackageVersion = require('@quicknode/sdk-linux-arm64-gnu/package.json').version
324
- if (bindingPackageVersion !== '3.4.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') {
325
- throw new Error(`Native binding package version mismatch, expected 3.4.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`)
324
+ if (bindingPackageVersion !== '3.6.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') {
325
+ throw new Error(`Native binding package version mismatch, expected 3.6.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`)
326
326
  }
327
327
  return binding
328
328
  } catch (e) {
@@ -339,8 +339,8 @@ function requireNative() {
339
339
  try {
340
340
  const binding = require('@quicknode/sdk-linux-arm-musleabihf')
341
341
  const bindingPackageVersion = require('@quicknode/sdk-linux-arm-musleabihf/package.json').version
342
- if (bindingPackageVersion !== '3.4.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') {
343
- throw new Error(`Native binding package version mismatch, expected 3.4.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`)
342
+ if (bindingPackageVersion !== '3.6.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') {
343
+ throw new Error(`Native binding package version mismatch, expected 3.6.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`)
344
344
  }
345
345
  return binding
346
346
  } catch (e) {
@@ -355,8 +355,8 @@ function requireNative() {
355
355
  try {
356
356
  const binding = require('@quicknode/sdk-linux-arm-gnueabihf')
357
357
  const bindingPackageVersion = require('@quicknode/sdk-linux-arm-gnueabihf/package.json').version
358
- if (bindingPackageVersion !== '3.4.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') {
359
- throw new Error(`Native binding package version mismatch, expected 3.4.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`)
358
+ if (bindingPackageVersion !== '3.6.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') {
359
+ throw new Error(`Native binding package version mismatch, expected 3.6.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`)
360
360
  }
361
361
  return binding
362
362
  } catch (e) {
@@ -373,8 +373,8 @@ function requireNative() {
373
373
  try {
374
374
  const binding = require('@quicknode/sdk-linux-loong64-musl')
375
375
  const bindingPackageVersion = require('@quicknode/sdk-linux-loong64-musl/package.json').version
376
- if (bindingPackageVersion !== '3.4.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') {
377
- throw new Error(`Native binding package version mismatch, expected 3.4.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`)
376
+ if (bindingPackageVersion !== '3.6.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') {
377
+ throw new Error(`Native binding package version mismatch, expected 3.6.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`)
378
378
  }
379
379
  return binding
380
380
  } catch (e) {
@@ -389,8 +389,8 @@ function requireNative() {
389
389
  try {
390
390
  const binding = require('@quicknode/sdk-linux-loong64-gnu')
391
391
  const bindingPackageVersion = require('@quicknode/sdk-linux-loong64-gnu/package.json').version
392
- if (bindingPackageVersion !== '3.4.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') {
393
- throw new Error(`Native binding package version mismatch, expected 3.4.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`)
392
+ if (bindingPackageVersion !== '3.6.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') {
393
+ throw new Error(`Native binding package version mismatch, expected 3.6.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`)
394
394
  }
395
395
  return binding
396
396
  } catch (e) {
@@ -407,8 +407,8 @@ function requireNative() {
407
407
  try {
408
408
  const binding = require('@quicknode/sdk-linux-riscv64-musl')
409
409
  const bindingPackageVersion = require('@quicknode/sdk-linux-riscv64-musl/package.json').version
410
- if (bindingPackageVersion !== '3.4.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') {
411
- throw new Error(`Native binding package version mismatch, expected 3.4.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`)
410
+ if (bindingPackageVersion !== '3.6.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') {
411
+ throw new Error(`Native binding package version mismatch, expected 3.6.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`)
412
412
  }
413
413
  return binding
414
414
  } catch (e) {
@@ -423,8 +423,8 @@ function requireNative() {
423
423
  try {
424
424
  const binding = require('@quicknode/sdk-linux-riscv64-gnu')
425
425
  const bindingPackageVersion = require('@quicknode/sdk-linux-riscv64-gnu/package.json').version
426
- if (bindingPackageVersion !== '3.4.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') {
427
- throw new Error(`Native binding package version mismatch, expected 3.4.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`)
426
+ if (bindingPackageVersion !== '3.6.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') {
427
+ throw new Error(`Native binding package version mismatch, expected 3.6.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`)
428
428
  }
429
429
  return binding
430
430
  } catch (e) {
@@ -440,8 +440,8 @@ function requireNative() {
440
440
  try {
441
441
  const binding = require('@quicknode/sdk-linux-ppc64-gnu')
442
442
  const bindingPackageVersion = require('@quicknode/sdk-linux-ppc64-gnu/package.json').version
443
- if (bindingPackageVersion !== '3.4.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') {
444
- throw new Error(`Native binding package version mismatch, expected 3.4.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`)
443
+ if (bindingPackageVersion !== '3.6.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') {
444
+ throw new Error(`Native binding package version mismatch, expected 3.6.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`)
445
445
  }
446
446
  return binding
447
447
  } catch (e) {
@@ -456,8 +456,8 @@ function requireNative() {
456
456
  try {
457
457
  const binding = require('@quicknode/sdk-linux-s390x-gnu')
458
458
  const bindingPackageVersion = require('@quicknode/sdk-linux-s390x-gnu/package.json').version
459
- if (bindingPackageVersion !== '3.4.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') {
460
- throw new Error(`Native binding package version mismatch, expected 3.4.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`)
459
+ if (bindingPackageVersion !== '3.6.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') {
460
+ throw new Error(`Native binding package version mismatch, expected 3.6.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`)
461
461
  }
462
462
  return binding
463
463
  } catch (e) {
@@ -476,8 +476,8 @@ function requireNative() {
476
476
  try {
477
477
  const binding = require('@quicknode/sdk-openharmony-arm64')
478
478
  const bindingPackageVersion = require('@quicknode/sdk-openharmony-arm64/package.json').version
479
- if (bindingPackageVersion !== '3.4.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') {
480
- throw new Error(`Native binding package version mismatch, expected 3.4.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`)
479
+ if (bindingPackageVersion !== '3.6.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') {
480
+ throw new Error(`Native binding package version mismatch, expected 3.6.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`)
481
481
  }
482
482
  return binding
483
483
  } catch (e) {
@@ -492,8 +492,8 @@ function requireNative() {
492
492
  try {
493
493
  const binding = require('@quicknode/sdk-openharmony-x64')
494
494
  const bindingPackageVersion = require('@quicknode/sdk-openharmony-x64/package.json').version
495
- if (bindingPackageVersion !== '3.4.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') {
496
- throw new Error(`Native binding package version mismatch, expected 3.4.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`)
495
+ if (bindingPackageVersion !== '3.6.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') {
496
+ throw new Error(`Native binding package version mismatch, expected 3.6.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`)
497
497
  }
498
498
  return binding
499
499
  } catch (e) {
@@ -508,8 +508,8 @@ function requireNative() {
508
508
  try {
509
509
  const binding = require('@quicknode/sdk-openharmony-arm')
510
510
  const bindingPackageVersion = require('@quicknode/sdk-openharmony-arm/package.json').version
511
- if (bindingPackageVersion !== '3.4.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') {
512
- throw new Error(`Native binding package version mismatch, expected 3.4.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`)
511
+ if (bindingPackageVersion !== '3.6.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') {
512
+ throw new Error(`Native binding package version mismatch, expected 3.6.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`)
513
513
  }
514
514
  return binding
515
515
  } catch (e) {
@@ -588,5 +588,6 @@ module.exports.WebhookTemplateId = nativeBinding.WebhookTemplateId
588
588
  module.exports.AdminApiClient = nativeBinding.AdminApiClient
589
589
  module.exports.KvStoreApiClient = nativeBinding.KvStoreApiClient
590
590
  module.exports.QuicknodeSdk = nativeBinding.QuicknodeSdk
591
+ module.exports.SqlApiClient = nativeBinding.SqlApiClient
591
592
  module.exports.StreamsApiClient = nativeBinding.StreamsApiClient
592
593
  module.exports.WebhooksApiClient = nativeBinding.WebhooksApiClient
Binary file
Binary file
Binary file
Binary file
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@quicknode/sdk",
3
- "version": "3.4.0",
3
+ "version": "3.6.0",
4
4
  "description": "Quicknode SDK",
5
5
  "repository": {
6
6
  "type": "git",
@@ -54,10 +54,10 @@
54
54
  },
55
55
  "license": "MIT",
56
56
  "optionalDependencies": {
57
- "@quicknode/sdk-linux-x64-gnu": "3.4.0",
58
- "@quicknode/sdk-linux-arm64-gnu": "3.4.0",
59
- "@quicknode/sdk-linux-x64-musl": "3.4.0",
60
- "@quicknode/sdk-linux-arm64-musl": "3.4.0",
61
- "@quicknode/sdk-darwin-arm64": "3.4.0"
57
+ "@quicknode/sdk-linux-x64-gnu": "3.6.0",
58
+ "@quicknode/sdk-linux-arm64-gnu": "3.6.0",
59
+ "@quicknode/sdk-linux-x64-musl": "3.6.0",
60
+ "@quicknode/sdk-linux-arm64-musl": "3.6.0",
61
+ "@quicknode/sdk-darwin-arm64": "3.6.0"
62
62
  }
63
63
  }
package/sdk.d.ts CHANGED
@@ -134,6 +134,13 @@ export type {
134
134
  ChainNetwork,
135
135
  Chain,
136
136
  ListChainsResponse,
137
+ // account
138
+ AccountSubscription,
139
+ AccountInfo,
140
+ AccountInfoResponse,
141
+ // api credits
142
+ ApiCredit,
143
+ GetApiCreditsResponse,
137
144
  // metrics
138
145
  GetEndpointMetricsRequest,
139
146
  GetAccountMetricsRequest,
@@ -310,6 +317,15 @@ export type {
310
317
  UpdateListParams,
311
318
  AddListItemParams,
312
319
  ListContainsItemResponse,
320
+ // sql
321
+ SqlConfig,
322
+ SqlApiClient,
323
+ QueryResponseNode,
324
+ ColumnMetaNode,
325
+ QueryStatisticsNode,
326
+ ChainSchemaNode,
327
+ TableSchemaNode,
328
+ ColumnSchemaNode,
313
329
  } from "./index";
314
330
 
315
331
  // const enums must use `export` (not `export type`) so they are usable as values
@@ -363,6 +379,19 @@ export interface WebhooksApiClientTyped {
363
379
  ): Promise<import("./index").Webhook>;
364
380
  }
365
381
 
382
+ // Retypes the query response `data` rows from napi's `any[]` to
383
+ // `Record<string, unknown>[]` (rows are objects keyed by the selected columns;
384
+ // shape varies per query). Keep method signatures in sync with the
385
+ // napi-generated SqlApiClient in ./index.d.ts.
386
+ export interface QueryResult extends Omit<QueryResponseNode, "data"> {
387
+ data: Array<Record<string, unknown>>;
388
+ }
389
+
390
+ export interface SqlApiClientTyped {
391
+ query(query: string, clusterId: string): Promise<QueryResult>;
392
+ getSchema(clusterId: string): Promise<ChainSchemaNode>;
393
+ }
394
+
366
395
  export class QuicknodeSdk {
367
396
  constructor(config: SdkFullConfig);
368
397
  static fromEnv(): QuicknodeSdk;
@@ -370,6 +399,7 @@ export class QuicknodeSdk {
370
399
  streams: StreamsApiClientTyped;
371
400
  webhooks: WebhooksApiClientTyped;
372
401
  kvstore: _QuicknodeSdk["kvstore"];
402
+ sql: SqlApiClientTyped;
373
403
  }
374
404
 
375
405
  // Typed static factory methods producing each discriminated variant of
package/sdk.js CHANGED
@@ -15,6 +15,7 @@ class QuicknodeSdk {
15
15
  this.streams = errors.wrapClient(this._inner.streams);
16
16
  this.webhooks = errors.wrapClient(this._inner.webhooks);
17
17
  this.kvstore = errors.wrapClient(this._inner.kvstore);
18
+ this.sql = errors.wrapClient(this._inner.sql);
18
19
  }
19
20
 
20
21
  static fromEnv() {
@@ -28,6 +29,7 @@ class QuicknodeSdk {
28
29
  instance.streams = errors.wrapClient(instance._inner.streams);
29
30
  instance.webhooks = errors.wrapClient(instance._inner.webhooks);
30
31
  instance.kvstore = errors.wrapClient(instance._inner.kvstore);
32
+ instance.sql = errors.wrapClient(instance._inner.sql);
31
33
  return instance;
32
34
  }
33
35
  }
package/sdk.mjs CHANGED
@@ -24,6 +24,7 @@ export const {
24
24
  StreamsApiClient,
25
25
  WebhooksApiClient,
26
26
  KvStoreApiClient,
27
+ SqlApiClient,
27
28
  QuicknodeError,
28
29
  ConfigError,
29
30
  HttpError,