langchain 0.0.179 → 0.0.181

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 (65) hide show
  1. package/chat_models/bedrock/web.cjs +1 -0
  2. package/chat_models/bedrock/web.d.ts +1 -0
  3. package/chat_models/bedrock/web.js +1 -0
  4. package/chat_models/bedrock.cjs +1 -1
  5. package/chat_models/bedrock.d.ts +1 -1
  6. package/chat_models/bedrock.js +1 -1
  7. package/dist/cache/base.cjs +2 -5
  8. package/dist/cache/base.js +2 -2
  9. package/dist/chains/combine_documents/reduce.cjs +3 -1
  10. package/dist/chains/combine_documents/reduce.js +3 -1
  11. package/dist/chat_models/baiduwenxin.cjs +16 -2
  12. package/dist/chat_models/baiduwenxin.js +16 -2
  13. package/dist/chat_models/bedrock/index.cjs +24 -0
  14. package/dist/chat_models/bedrock/index.d.ts +12 -0
  15. package/dist/chat_models/bedrock/index.js +18 -0
  16. package/dist/chat_models/{bedrock.cjs → bedrock/web.cjs} +44 -15
  17. package/dist/chat_models/{bedrock.d.ts → bedrock/web.d.ts} +14 -5
  18. package/dist/chat_models/{bedrock.js → bedrock/web.js} +42 -13
  19. package/dist/embeddings/cache_backed.cjs +2 -5
  20. package/dist/embeddings/cache_backed.js +2 -2
  21. package/dist/embeddings/voyage.cjs +120 -0
  22. package/dist/embeddings/voyage.d.ts +66 -0
  23. package/dist/embeddings/voyage.js +116 -0
  24. package/dist/llms/bedrock/index.cjs +17 -0
  25. package/dist/llms/bedrock/index.d.ts +7 -0
  26. package/dist/llms/bedrock/index.js +13 -0
  27. package/dist/llms/{bedrock.cjs → bedrock/web.cjs} +46 -12
  28. package/dist/llms/{bedrock.d.ts → bedrock/web.d.ts} +17 -4
  29. package/dist/llms/{bedrock.js → bedrock/web.js} +46 -12
  30. package/dist/load/import_constants.cjs +3 -0
  31. package/dist/load/import_constants.js +3 -0
  32. package/dist/load/import_map.cjs +3 -2
  33. package/dist/load/import_map.d.ts +1 -0
  34. package/dist/load/import_map.js +1 -0
  35. package/dist/stores/message/cassandra.cjs +135 -0
  36. package/dist/stores/message/cassandra.d.ts +44 -0
  37. package/dist/stores/message/cassandra.js +131 -0
  38. package/dist/util/bedrock.cjs +13 -1
  39. package/dist/util/bedrock.d.ts +5 -2
  40. package/dist/util/bedrock.js +13 -1
  41. package/dist/util/js-sha1/hash.cjs +358 -0
  42. package/dist/util/js-sha1/hash.d.ts +1 -0
  43. package/dist/util/js-sha1/hash.js +355 -0
  44. package/dist/util/stream.cjs +4 -1
  45. package/dist/util/stream.d.ts +4 -1
  46. package/dist/util/stream.js +4 -1
  47. package/dist/vectorstores/cassandra.cjs +197 -47
  48. package/dist/vectorstores/cassandra.d.ts +47 -4
  49. package/dist/vectorstores/cassandra.js +197 -47
  50. package/embeddings/voyage.cjs +1 -0
  51. package/embeddings/voyage.d.ts +1 -0
  52. package/embeddings/voyage.js +1 -0
  53. package/llms/bedrock/web.cjs +1 -0
  54. package/llms/bedrock/web.d.ts +1 -0
  55. package/llms/bedrock/web.js +1 -0
  56. package/llms/bedrock.cjs +1 -1
  57. package/llms/bedrock.d.ts +1 -1
  58. package/llms/bedrock.js +1 -1
  59. package/package.json +34 -4
  60. package/stores/message/cassandra.cjs +1 -0
  61. package/stores/message/cassandra.d.ts +1 -0
  62. package/stores/message/cassandra.js +1 -0
  63. package/dist/schema/runnable/remote.cjs +0 -225
  64. package/dist/schema/runnable/remote.d.ts +0 -28
  65. package/dist/schema/runnable/remote.js +0 -221
@@ -14,19 +14,19 @@ export class CassandraStore extends VectorStore {
14
14
  return "cassandra";
15
15
  }
16
16
  constructor(embeddings, args) {
17
- const argsWithDefaults = {
18
- indices: [],
19
- maxConcurrency: 25,
20
- batchSize: 1,
21
- ...args,
22
- };
23
- super(embeddings, argsWithDefaults);
17
+ super(embeddings, args);
24
18
  Object.defineProperty(this, "client", {
25
19
  enumerable: true,
26
20
  configurable: true,
27
21
  writable: true,
28
22
  value: void 0
29
23
  });
24
+ Object.defineProperty(this, "vectorType", {
25
+ enumerable: true,
26
+ configurable: true,
27
+ writable: true,
28
+ value: void 0
29
+ });
30
30
  Object.defineProperty(this, "dimensions", {
31
31
  enumerable: true,
32
32
  configurable: true,
@@ -51,6 +51,18 @@ export class CassandraStore extends VectorStore {
51
51
  writable: true,
52
52
  value: void 0
53
53
  });
54
+ Object.defineProperty(this, "withClause", {
55
+ enumerable: true,
56
+ configurable: true,
57
+ writable: true,
58
+ value: void 0
59
+ });
60
+ Object.defineProperty(this, "selectColumns", {
61
+ enumerable: true,
62
+ configurable: true,
63
+ writable: true,
64
+ value: void 0
65
+ });
54
66
  Object.defineProperty(this, "table", {
55
67
  enumerable: true,
56
68
  configurable: true,
@@ -81,19 +93,27 @@ export class CassandraStore extends VectorStore {
81
93
  writable: true,
82
94
  value: void 0
83
95
  });
84
- this.asyncCaller = new AsyncCaller(argsWithDefaults ?? {});
96
+ const { indices = [], maxConcurrency = 25, withClause = "", batchSize = 1, vectorType = "cosine", dimensions, keyspace, table, primaryKey, metadataColumns, } = args;
97
+ const argsWithDefaults = {
98
+ ...args,
99
+ indices,
100
+ maxConcurrency,
101
+ withClause,
102
+ batchSize,
103
+ vectorType,
104
+ };
105
+ this.asyncCaller = new AsyncCaller(argsWithDefaults);
85
106
  this.client = new CassandraClient(argsWithDefaults);
86
- this.dimensions = argsWithDefaults.dimensions;
87
- this.keyspace = argsWithDefaults.keyspace;
88
- this.table = argsWithDefaults.table;
89
- this.primaryKey = argsWithDefaults.primaryKey;
90
- this.metadataColumns = argsWithDefaults.metadataColumns;
91
- this.indices = argsWithDefaults.indices;
92
- this.batchSize = argsWithDefaults.batchSize;
93
- if (this.batchSize < 1) {
94
- console.warn("batchSize must be greater than or equal to 1, defaulting to 1");
95
- this.batchSize = 1;
96
- }
107
+ // Assign properties
108
+ this.vectorType = vectorType;
109
+ this.dimensions = dimensions;
110
+ this.keyspace = keyspace;
111
+ this.table = table;
112
+ this.primaryKey = Array.isArray(primaryKey) ? primaryKey : [primaryKey];
113
+ this.metadataColumns = metadataColumns;
114
+ this.withClause = withClause.trim().replace(/^with\s*/i, "");
115
+ this.indices = indices;
116
+ this.batchSize = batchSize >= 1 ? batchSize : 1;
97
117
  }
98
118
  /**
99
119
  * Method to save vectors to the Cassandra database.
@@ -129,16 +149,45 @@ export class CassandraStore extends VectorStore {
129
149
  if (!this.isInitialized) {
130
150
  await this.initialize();
131
151
  }
132
- const queryStr = this.buildSearchQuery(query, k, filter);
133
- const queryResultSet = await this.client.execute(queryStr);
134
- return queryResultSet?.rows.map((row, index) => {
152
+ // Ensure we have an array of Filter from the public interface
153
+ const filters = this.asFilters(filter);
154
+ const queryStr = this.buildSearchQuery(filters);
155
+ // Search query will be of format:
156
+ // SELECT ..., text, similarity_x(?) AS similarity_score
157
+ // FROM ...
158
+ // <WHERE ...>
159
+ // ORDER BY vector ANN OF ?
160
+ // LIMIT ?
161
+ // If any filter values are specified, they will be in the WHERE clause as
162
+ // filter.name filter.operator ?
163
+ // queryParams is a list of bind variables sent with the prepared statement
164
+ const queryParams = [];
165
+ const vectorAsFloat32Array = new Float32Array(query);
166
+ queryParams.push(vectorAsFloat32Array);
167
+ if (filters) {
168
+ const values = filters.map(({ value }) => value);
169
+ queryParams.push(...values);
170
+ }
171
+ queryParams.push(vectorAsFloat32Array);
172
+ queryParams.push(k);
173
+ const queryResultSet = await this.client.execute(queryStr, queryParams, {
174
+ prepare: true,
175
+ });
176
+ return queryResultSet?.rows.map((row) => {
135
177
  const textContent = row.text;
136
- const sanitizedRow = Object.assign(row, {});
137
- delete sanitizedRow.vector;
178
+ const sanitizedRow = { ...row };
138
179
  delete sanitizedRow.text;
180
+ delete sanitizedRow.similarity_score;
181
+ // A null value in Cassandra evaluates to a deleted column
182
+ // as this is treated as a tombstone record for the cell.
183
+ Object.keys(sanitizedRow).forEach((key) => {
184
+ if (sanitizedRow[key] === null) {
185
+ delete sanitizedRow[key];
186
+ }
187
+ });
139
188
  return [
140
189
  new Document({ pageContent: textContent, metadata: sanitizedRow }),
141
- index,
190
+ row.similarity_score,
142
191
  ];
143
192
  });
144
193
  }
@@ -191,41 +240,142 @@ export class CassandraStore extends VectorStore {
191
240
  * @returns Promise that resolves when the database has been initialized.
192
241
  */
193
242
  async initialize() {
194
- await this.client.execute(`CREATE TABLE IF NOT EXISTS ${this.keyspace}.${this.table} (
195
- ${this.primaryKey.name} ${this.primaryKey.type} PRIMARY KEY,
196
- text TEXT,
243
+ let cql = "";
244
+ cql = `CREATE TABLE IF NOT EXISTS ${this.keyspace}.${this.table} (
245
+ ${this.primaryKey.map((col) => `${col.name} ${col.type}`).join(", ")}
246
+ , text TEXT
197
247
  ${this.metadataColumns.length > 0
198
- ? this.metadataColumns.map((col) => `${col.name} ${col.type},`)
248
+ ? ", " +
249
+ this.metadataColumns
250
+ .map((col) => `${col.name} ${col.type}`)
251
+ .join(", ")
199
252
  : ""}
200
- vector VECTOR<FLOAT, ${this.dimensions}>
201
- );`);
202
- await this.client
203
- .execute(`CREATE CUSTOM INDEX IF NOT EXISTS idx_vector_${this.table}
204
- ON ${this.keyspace}.${this.table}(vector) USING 'StorageAttachedIndex';`);
253
+ , vector VECTOR<FLOAT, ${this.dimensions}>
254
+ , ${this.buildPrimaryKey(this.primaryKey)}
255
+ ) ${this.withClause ? `WITH ${this.withClause}` : ""};`;
256
+ await this.client.execute(cql);
257
+ this.selectColumns = `${this.primaryKey
258
+ .map((col) => `${col.name}`)
259
+ .join(", ")}
260
+ ${this.metadataColumns.length > 0
261
+ ? ", " +
262
+ this.metadataColumns
263
+ .map((col) => `${col.name}`)
264
+ .join(", ")
265
+ : ""}`;
266
+ cql = `CREATE CUSTOM INDEX IF NOT EXISTS idx_vector_${this.table}
267
+ ON ${this.keyspace}.${this.table}(vector) USING 'StorageAttachedIndex' WITH OPTIONS = {'similarity_function': '${this.vectorType.toUpperCase()}'};`;
268
+ await this.client.execute(cql);
205
269
  for await (const { name, value } of this.indices) {
206
- await this.client
207
- .execute(`CREATE CUSTOM INDEX IF NOT EXISTS idx_${this.table}_${name}
208
- ON ${this.keyspace}.${this.table} ${value} USING 'StorageAttachedIndex';`);
270
+ cql = `CREATE CUSTOM INDEX IF NOT EXISTS idx_${this.table}_${name}
271
+ ON ${this.keyspace}.${this.table} ${value} USING 'StorageAttachedIndex';`;
272
+ await this.client.execute(cql);
209
273
  }
210
274
  this.isInitialized = true;
211
275
  }
212
- buildWhereClause(filter) {
213
- const whereClause = Object.entries(filter)
214
- .map(([key, value]) => `${key} = '${value}'`)
215
- .join(" AND ");
216
- return `WHERE ${whereClause}`;
276
+ /**
277
+ * Method to build the PRIMARY KEY clause for CREATE TABLE.
278
+ * @param columns: list of Column to include in the key
279
+ * @returns The clause, including PRIMARY KEY
280
+ */
281
+ buildPrimaryKey(columns) {
282
+ // Partition columns may be specified with optional attribute col.partition
283
+ const partitionColumns = columns
284
+ .filter((col) => col.partition)
285
+ .map((col) => col.name)
286
+ .join(", ");
287
+ // All columns not part of the partition key are clustering columns
288
+ const clusteringColumns = columns
289
+ .filter((col) => !col.partition)
290
+ .map((col) => col.name)
291
+ .join(", ");
292
+ let primaryKey = "";
293
+ // If partition columns are specified, they are included in a () wrapper
294
+ // If not, the clustering columns are used, and the first clustering column
295
+ // is the partition key per normal Cassandra behaviour.
296
+ if (partitionColumns) {
297
+ primaryKey = `PRIMARY KEY ((${partitionColumns}), ${clusteringColumns})`;
298
+ }
299
+ else {
300
+ primaryKey = `PRIMARY KEY (${clusteringColumns})`;
301
+ }
302
+ return primaryKey;
303
+ }
304
+ /**
305
+ * Type guard to check if an object is a Filter.
306
+ * @param obj: the object to check
307
+ * @returns boolean indicating if the object is a Filter
308
+ */
309
+ isFilter(obj) {
310
+ return (typeof obj === "object" && obj !== null && "name" in obj && "value" in obj);
311
+ }
312
+ /**
313
+ * Helper to convert Record<string,unknown> to a Filter[]
314
+ * @param record: a key-value Record collection
315
+ * @returns Record as a Filter[]
316
+ */
317
+ convertToFilters(record) {
318
+ return Object.entries(record).map(([name, value]) => ({
319
+ name,
320
+ value,
321
+ operator: "=",
322
+ }));
323
+ }
324
+ /**
325
+ * Input santisation method for filters, as FilterType is not required to be
326
+ * Filter[], but we want to use Filter[] internally.
327
+ * @param record: the proposed filter
328
+ * @returns A Filter[], which may be empty
329
+ */
330
+ asFilters(record) {
331
+ if (!record) {
332
+ return [];
333
+ }
334
+ // If record is already an array
335
+ if (Array.isArray(record)) {
336
+ return record.flatMap((item) => {
337
+ // Check if item is a Filter before passing it to convertToFilters
338
+ if (this.isFilter(item)) {
339
+ return [item];
340
+ }
341
+ else {
342
+ // Here item is treated as Record<string, unknown>
343
+ return this.convertToFilters(item);
344
+ }
345
+ });
346
+ }
347
+ // If record is a single Filter object, return it in an array
348
+ if (this.isFilter(record)) {
349
+ return [record];
350
+ }
351
+ // If record is a Record<string, unknown>, convert it to an array of Filter
352
+ return this.convertToFilters(record);
353
+ }
354
+ /**
355
+ * Method to build the WHERE clause of a CQL query, using bind variable ?
356
+ * @param filters list of filters to include in the WHERE clause
357
+ * @returns The WHERE clause
358
+ */
359
+ buildWhereClause(filters) {
360
+ if (!filters || filters.length === 0) {
361
+ return "";
362
+ }
363
+ const whereConditions = filters.map(({ name, operator = "=" }) => `${name} ${operator} ?`);
364
+ return `WHERE ${whereConditions.join(" AND ")}`;
217
365
  }
218
366
  /**
219
367
  * Method to build an CQL query for searching for similar vectors in the
220
368
  * Cassandra database.
221
369
  * @param query The query vector.
222
370
  * @param k The number of similar vectors to return.
223
- * @param filter
371
+ * @param filters
224
372
  * @returns The CQL query string.
225
373
  */
226
- buildSearchQuery(query, k = 1, filter = undefined) {
227
- const whereClause = filter ? this.buildWhereClause(filter) : "";
228
- return `SELECT * FROM ${this.keyspace}.${this.table} ${whereClause} ORDER BY vector ANN OF [${query}] LIMIT ${k}`;
374
+ buildSearchQuery(filters) {
375
+ const whereClause = filters ? this.buildWhereClause(filters) : "";
376
+ const cqlQuery = `SELECT ${this.selectColumns}, text, similarity_${this.vectorType}(vector, ?) AS similarity_score
377
+ FROM ${this.keyspace}.${this.table} ${whereClause} ORDER BY vector ANN OF ? LIMIT ?`;
378
+ return cqlQuery;
229
379
  }
230
380
  /**
231
381
  * Method for inserting vectors and documents into the Cassandra database in a batch.
@@ -253,7 +403,7 @@ export class CassandraStore extends VectorStore {
253
403
  const metadataInsert = metadataColNames.length > 0 ? ", " + metadataColNames.join(", ") : "";
254
404
  // Construct the query string and parameters
255
405
  const query = {
256
- query: `INSERT INTO ${this.keyspace}.${this.table} (vector, text${metadataInsert})
406
+ query: `INSERT INTO ${this.keyspace}.${this.table} (vector, text${metadataInsert})
257
407
  VALUES (?, ?${", ?".repeat(metadataColNames.length)})`,
258
408
  params: [preparedVector, document.pageContent, ...metadataVals],
259
409
  };
@@ -0,0 +1 @@
1
+ module.exports = require('../dist/embeddings/voyage.cjs');
@@ -0,0 +1 @@
1
+ export * from '../dist/embeddings/voyage.js'
@@ -0,0 +1 @@
1
+ export * from '../dist/embeddings/voyage.js'
@@ -0,0 +1 @@
1
+ module.exports = require('../../dist/llms/bedrock/web.cjs');
@@ -0,0 +1 @@
1
+ export * from '../../dist/llms/bedrock/web.js'
@@ -0,0 +1 @@
1
+ export * from '../../dist/llms/bedrock/web.js'
package/llms/bedrock.cjs CHANGED
@@ -1 +1 @@
1
- module.exports = require('../dist/llms/bedrock.cjs');
1
+ module.exports = require('../dist/llms/bedrock/index.cjs');
package/llms/bedrock.d.ts CHANGED
@@ -1 +1 @@
1
- export * from '../dist/llms/bedrock.js'
1
+ export * from '../dist/llms/bedrock/index.js'
package/llms/bedrock.js CHANGED
@@ -1 +1 @@
1
- export * from '../dist/llms/bedrock.js'
1
+ export * from '../dist/llms/bedrock/index.js'
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "langchain",
3
- "version": "0.0.179",
3
+ "version": "0.0.181",
4
4
  "description": "Typescript bindings for langchain",
5
5
  "type": "module",
6
6
  "engines": {
@@ -145,6 +145,9 @@
145
145
  "embeddings/minimax.cjs",
146
146
  "embeddings/minimax.js",
147
147
  "embeddings/minimax.d.ts",
148
+ "embeddings/voyage.cjs",
149
+ "embeddings/voyage.js",
150
+ "embeddings/voyage.d.ts",
148
151
  "embeddings/llama_cpp.cjs",
149
152
  "embeddings/llama_cpp.js",
150
153
  "embeddings/llama_cpp.d.ts",
@@ -199,6 +202,9 @@
199
202
  "llms/bedrock.cjs",
200
203
  "llms/bedrock.js",
201
204
  "llms/bedrock.d.ts",
205
+ "llms/bedrock/web.cjs",
206
+ "llms/bedrock/web.js",
207
+ "llms/bedrock/web.d.ts",
202
208
  "llms/llama_cpp.cjs",
203
209
  "llms/llama_cpp.js",
204
210
  "llms/llama_cpp.d.ts",
@@ -481,6 +487,9 @@
481
487
  "chat_models/bedrock.cjs",
482
488
  "chat_models/bedrock.js",
483
489
  "chat_models/bedrock.d.ts",
490
+ "chat_models/bedrock/web.cjs",
491
+ "chat_models/bedrock/web.js",
492
+ "chat_models/bedrock/web.d.ts",
484
493
  "chat_models/cloudflare_workersai.cjs",
485
494
  "chat_models/cloudflare_workersai.js",
486
495
  "chat_models/cloudflare_workersai.d.ts",
@@ -664,6 +673,9 @@
664
673
  "stores/file/node.cjs",
665
674
  "stores/file/node.js",
666
675
  "stores/file/node.d.ts",
676
+ "stores/message/cassandra.cjs",
677
+ "stores/message/cassandra.js",
678
+ "stores/message/cassandra.d.ts",
667
679
  "stores/message/convex.cjs",
668
680
  "stores/message/convex.js",
669
681
  "stores/message/convex.d.ts",
@@ -856,7 +868,6 @@
856
868
  "@types/jsdom": "^21.1.1",
857
869
  "@types/lodash": "^4",
858
870
  "@types/mozilla-readability": "^0.2.1",
859
- "@types/object-hash": "^3.0.2",
860
871
  "@types/pdf-parse": "^1.1.1",
861
872
  "@types/pg": "^8",
862
873
  "@types/pg-copy-streams": "^1.2.2",
@@ -1347,9 +1358,8 @@
1347
1358
  "js-yaml": "^4.1.0",
1348
1359
  "jsonpointer": "^5.0.1",
1349
1360
  "langchainhub": "~0.0.6",
1350
- "langsmith": "~0.0.31",
1361
+ "langsmith": "~0.0.48",
1351
1362
  "ml-distance": "^4.0.0",
1352
- "object-hash": "^3.0.0",
1353
1363
  "openai": "~4.4.0",
1354
1364
  "openapi-types": "^12.1.3",
1355
1365
  "p-queue": "^6.6.2",
@@ -1602,6 +1612,11 @@
1602
1612
  "import": "./embeddings/minimax.js",
1603
1613
  "require": "./embeddings/minimax.cjs"
1604
1614
  },
1615
+ "./embeddings/voyage": {
1616
+ "types": "./embeddings/voyage.d.ts",
1617
+ "import": "./embeddings/voyage.js",
1618
+ "require": "./embeddings/voyage.cjs"
1619
+ },
1605
1620
  "./embeddings/llama_cpp": {
1606
1621
  "types": "./embeddings/llama_cpp.d.ts",
1607
1622
  "import": "./embeddings/llama_cpp.js",
@@ -1692,6 +1707,11 @@
1692
1707
  "import": "./llms/bedrock.js",
1693
1708
  "require": "./llms/bedrock.cjs"
1694
1709
  },
1710
+ "./llms/bedrock/web": {
1711
+ "types": "./llms/bedrock/web.d.ts",
1712
+ "import": "./llms/bedrock/web.js",
1713
+ "require": "./llms/bedrock/web.cjs"
1714
+ },
1695
1715
  "./llms/llama_cpp": {
1696
1716
  "types": "./llms/llama_cpp.d.ts",
1697
1717
  "import": "./llms/llama_cpp.js",
@@ -2162,6 +2182,11 @@
2162
2182
  "import": "./chat_models/bedrock.js",
2163
2183
  "require": "./chat_models/bedrock.cjs"
2164
2184
  },
2185
+ "./chat_models/bedrock/web": {
2186
+ "types": "./chat_models/bedrock/web.d.ts",
2187
+ "import": "./chat_models/bedrock/web.js",
2188
+ "require": "./chat_models/bedrock/web.cjs"
2189
+ },
2165
2190
  "./chat_models/cloudflare_workersai": {
2166
2191
  "types": "./chat_models/cloudflare_workersai.d.ts",
2167
2192
  "import": "./chat_models/cloudflare_workersai.js",
@@ -2467,6 +2492,11 @@
2467
2492
  "import": "./stores/file/node.js",
2468
2493
  "require": "./stores/file/node.cjs"
2469
2494
  },
2495
+ "./stores/message/cassandra": {
2496
+ "types": "./stores/message/cassandra.d.ts",
2497
+ "import": "./stores/message/cassandra.js",
2498
+ "require": "./stores/message/cassandra.cjs"
2499
+ },
2470
2500
  "./stores/message/convex": {
2471
2501
  "types": "./stores/message/convex.d.ts",
2472
2502
  "import": "./stores/message/convex.js",
@@ -0,0 +1 @@
1
+ module.exports = require('../../dist/stores/message/cassandra.cjs');
@@ -0,0 +1 @@
1
+ export * from '../../dist/stores/message/cassandra.js'
@@ -0,0 +1 @@
1
+ export * from '../../dist/stores/message/cassandra.js'