@databridgeai/core 1.0.0 → 1.1.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.
@@ -0,0 +1,58 @@
1
+ import { QueryDSL, QueryResult, DbAdapter } from "./types";
2
+ /**
3
+ * Couchbase configuration for the adapter.
4
+ * Couchbase uses: Cluster → Bucket → Scope → Collection
5
+ */
6
+ export interface CouchbaseConfig {
7
+ /** Couchbase connection string (e.g., "couchbase://localhost") */
8
+ connectionString: string;
9
+ /** Username for authentication */
10
+ username: string;
11
+ /** Password for authentication */
12
+ password: string;
13
+ /** Bucket name to query against */
14
+ bucketName: string;
15
+ /** Scope name (defaults to "_default") */
16
+ scopeName?: string;
17
+ }
18
+ /**
19
+ * Couchbase adapter — builds N1QL (SQL++) queries from QueryDSL and executes them.
20
+ *
21
+ * Couchbase's N1QL is SQL-like, so the translation is similar to Postgres
22
+ * but with Couchbase-specific syntax (backtick quoting, USE KEYS, etc.).
23
+ */
24
+ export declare class CouchbaseAdapter implements DbAdapter {
25
+ private cluster;
26
+ private bucket;
27
+ private scope;
28
+ private bucketName;
29
+ private scopeName;
30
+ private connected;
31
+ constructor(config: CouchbaseConfig);
32
+ private _config;
33
+ /**
34
+ * Connects to the Couchbase cluster. Must be called before execute().
35
+ */
36
+ connect(): Promise<void>;
37
+ execute(query: QueryDSL): Promise<QueryResult>;
38
+ /**
39
+ * Builds a parameterized N1QL (SQL++) query from QueryDSL.
40
+ *
41
+ * Couchbase N1QL uses:
42
+ * - Backtick quoting for identifiers
43
+ * - $-prefixed named parameters or positional $1, $2, etc.
44
+ * - Collections within bucket.scope.collection
45
+ */
46
+ buildN1QL(query: QueryDSL): {
47
+ statement: string;
48
+ parameters: Record<string, any>;
49
+ };
50
+ private buildAggregationSelect;
51
+ /**
52
+ * Couchbase uses backtick quoting for identifiers.
53
+ * Strip non-alphanumeric/underscore chars to prevent injection.
54
+ */
55
+ private quoteIdentifier;
56
+ close(): Promise<void>;
57
+ }
58
+ //# sourceMappingURL=couchbase-adapter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"couchbase-adapter.d.ts","sourceRoot":"","sources":["../src/couchbase-adapter.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,QAAQ,EACR,WAAW,EACX,SAAS,EAEV,MAAM,SAAS,CAAC;AAEjB;;;GAGG;AACH,MAAM,WAAW,eAAe;IAC9B,kEAAkE;IAClE,gBAAgB,EAAE,MAAM,CAAC;IACzB,kCAAkC;IAClC,QAAQ,EAAE,MAAM,CAAC;IACjB,kCAAkC;IAClC,QAAQ,EAAE,MAAM,CAAC;IACjB,mCAAmC;IACnC,UAAU,EAAE,MAAM,CAAC;IACnB,0CAA0C;IAC1C,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;;;;GAKG;AACH,qBAAa,gBAAiB,YAAW,SAAS;IAChD,OAAO,CAAC,OAAO,CAAM;IACrB,OAAO,CAAC,MAAM,CAAM;IACpB,OAAO,CAAC,KAAK,CAAM;IACnB,OAAO,CAAC,UAAU,CAAS;IAC3B,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,SAAS,CAAS;gBAEd,MAAM,EAAE,eAAe;IAQnC,OAAO,CAAC,OAAO,CAAkB;IAEjC;;OAEG;IACG,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAgBxB,OAAO,CAAC,KAAK,EAAE,QAAQ,GAAG,OAAO,CAAC,WAAW,CAAC;IAiCpD;;;;;;;OAOG;IACH,SAAS,CAAC,KAAK,EAAE,QAAQ,GAAG;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;KAAE;IA8HlF,OAAO,CAAC,sBAAsB;IAgC9B;;;OAGG;IACH,OAAO,CAAC,eAAe;IAKjB,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;CAM7B"}
@@ -0,0 +1,261 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ Object.defineProperty(exports, "__esModule", { value: true });
36
+ exports.CouchbaseAdapter = void 0;
37
+ const types_1 = require("./types");
38
+ /**
39
+ * Couchbase adapter — builds N1QL (SQL++) queries from QueryDSL and executes them.
40
+ *
41
+ * Couchbase's N1QL is SQL-like, so the translation is similar to Postgres
42
+ * but with Couchbase-specific syntax (backtick quoting, USE KEYS, etc.).
43
+ */
44
+ class CouchbaseAdapter {
45
+ cluster; // couchbase.Cluster
46
+ bucket; // couchbase.Bucket
47
+ scope; // couchbase.Scope
48
+ bucketName;
49
+ scopeName;
50
+ connected = false;
51
+ constructor(config) {
52
+ this.bucketName = config.bucketName;
53
+ this.scopeName = config.scopeName || "_default";
54
+ // Lazy-load couchbase SDK to keep it as an optional peer dependency
55
+ this._config = config;
56
+ }
57
+ _config;
58
+ /**
59
+ * Connects to the Couchbase cluster. Must be called before execute().
60
+ */
61
+ async connect() {
62
+ if (this.connected)
63
+ return;
64
+ // Dynamic import of couchbase SDK
65
+ const couchbase = await Promise.resolve().then(() => __importStar(require("couchbase")));
66
+ this.cluster = await couchbase.connect(this._config.connectionString, {
67
+ username: this._config.username,
68
+ password: this._config.password,
69
+ });
70
+ this.bucket = this.cluster.bucket(this.bucketName);
71
+ this.scope = this.bucket.scope(this.scopeName);
72
+ this.connected = true;
73
+ }
74
+ async execute(query) {
75
+ if (!this.connected) {
76
+ await this.connect();
77
+ }
78
+ const start = Date.now();
79
+ const { statement, parameters } = this.buildN1QL(query);
80
+ const result = await this.cluster.query(statement, {
81
+ parameters,
82
+ });
83
+ const rows = result.rows;
84
+ // Couchbase wraps results in the collection name — unwrap if needed
85
+ const unwrappedRows = rows.map((row) => {
86
+ // If the row has a single key matching the collection name, unwrap it
87
+ const keys = Object.keys(row);
88
+ if (keys.length === 1 && keys[0] === query.source.name) {
89
+ return row[keys[0]];
90
+ }
91
+ return row;
92
+ });
93
+ const executionTimeMs = Date.now() - start;
94
+ return {
95
+ rows: unwrappedRows,
96
+ rowCount: unwrappedRows.length,
97
+ executionTimeMs,
98
+ };
99
+ }
100
+ /**
101
+ * Builds a parameterized N1QL (SQL++) query from QueryDSL.
102
+ *
103
+ * Couchbase N1QL uses:
104
+ * - Backtick quoting for identifiers
105
+ * - $-prefixed named parameters or positional $1, $2, etc.
106
+ * - Collections within bucket.scope.collection
107
+ */
108
+ buildN1QL(query) {
109
+ const parameters = {};
110
+ let paramIdx = 1;
111
+ const collection = this.quoteIdentifier(query.source.name);
112
+ const qualifiedCollection = `\`${this.bucketName}\`.\`${this.scopeName}\`.${collection}`;
113
+ // ─── SELECT / Aggregation ─────────────────────────────
114
+ let selectClause;
115
+ if (query.aggregation) {
116
+ selectClause = this.buildAggregationSelect(query, collection);
117
+ }
118
+ else if (query.select && query.select.length > 0) {
119
+ selectClause = query.select
120
+ .map((f) => {
121
+ if (f.includes(".")) {
122
+ const [table, field] = f.split(".");
123
+ return `${this.quoteIdentifier(table)}.${this.quoteIdentifier(field)}`;
124
+ }
125
+ return `${collection}.${this.quoteIdentifier(f)}`;
126
+ })
127
+ .join(", ");
128
+ }
129
+ else {
130
+ selectClause = `${collection}.*`;
131
+ }
132
+ // ─── FROM ─────────────────────────────────────────────
133
+ let fromClause = `${qualifiedCollection} AS ${collection}`;
134
+ // ─── JOINS ────────────────────────────────────────────
135
+ const joinClauses = [];
136
+ if (query.joins) {
137
+ for (const join of query.joins) {
138
+ const joinType = join.type === "inner" ? "INNER JOIN" : "LEFT JOIN";
139
+ const joinCollection = this.quoteIdentifier(join.table);
140
+ const qualifiedJoin = `\`${this.bucketName}\`.\`${this.scopeName}\`.${joinCollection}`;
141
+ joinClauses.push(`${joinType} ${qualifiedJoin} AS ${joinCollection} ON ${collection}.${this.quoteIdentifier(join.on.localField)} = ${joinCollection}.${this.quoteIdentifier(join.on.foreignField)}`);
142
+ }
143
+ }
144
+ // ─── WHERE ────────────────────────────────────────────
145
+ const whereParts = [];
146
+ if (query.filters) {
147
+ for (const filter of query.filters) {
148
+ const col = `${collection}.${this.quoteIdentifier(filter.field)}`;
149
+ const paramName = `p${paramIdx++}`;
150
+ switch (filter.operator) {
151
+ case "eq":
152
+ whereParts.push(`${col} = $${paramName}`);
153
+ parameters[paramName] = filter.value;
154
+ break;
155
+ case "neq":
156
+ whereParts.push(`${col} != $${paramName}`);
157
+ parameters[paramName] = filter.value;
158
+ break;
159
+ case "gt":
160
+ whereParts.push(`${col} > $${paramName}`);
161
+ parameters[paramName] = filter.value;
162
+ break;
163
+ case "gte":
164
+ whereParts.push(`${col} >= $${paramName}`);
165
+ parameters[paramName] = filter.value;
166
+ break;
167
+ case "lt":
168
+ whereParts.push(`${col} < $${paramName}`);
169
+ parameters[paramName] = filter.value;
170
+ break;
171
+ case "lte":
172
+ whereParts.push(`${col} <= $${paramName}`);
173
+ parameters[paramName] = filter.value;
174
+ break;
175
+ case "in":
176
+ whereParts.push(`${col} IN $${paramName}`);
177
+ parameters[paramName] = filter.value;
178
+ break;
179
+ case "contains":
180
+ // N1QL uses LIKE with LOWER() for case-insensitive matching
181
+ whereParts.push(`LOWER(${col}) LIKE $${paramName}`);
182
+ parameters[paramName] = `%${String(filter.value).toLowerCase()}%`;
183
+ break;
184
+ }
185
+ }
186
+ }
187
+ // ─── GROUP BY ─────────────────────────────────────────
188
+ let groupByClause = "";
189
+ if (query.aggregation?.groupBy) {
190
+ groupByClause = `GROUP BY ${collection}.${this.quoteIdentifier(query.aggregation.groupBy)}`;
191
+ }
192
+ // ─── ORDER BY ─────────────────────────────────────────
193
+ let orderByClause = "";
194
+ if (query.sort) {
195
+ const dir = query.sort.direction === "desc" ? "DESC" : "ASC";
196
+ orderByClause = `ORDER BY ${collection}.${this.quoteIdentifier(query.sort.field)} ${dir}`;
197
+ }
198
+ // ─── LIMIT / OFFSET ──────────────────────────────────
199
+ const limit = query.pagination?.limit ?? types_1.DEFAULT_LIMIT;
200
+ const offset = query.pagination?.offset ?? 0;
201
+ // ─── Assemble ─────────────────────────────────────────
202
+ const parts = [
203
+ `SELECT ${selectClause}`,
204
+ `FROM ${fromClause}`,
205
+ ...joinClauses,
206
+ whereParts.length > 0
207
+ ? `WHERE ${whereParts.join(" AND ")}`
208
+ : "",
209
+ groupByClause,
210
+ orderByClause,
211
+ `LIMIT ${limit}`,
212
+ offset > 0 ? `OFFSET ${offset}` : "",
213
+ ].filter(Boolean);
214
+ return { statement: parts.join(" "), parameters };
215
+ }
216
+ buildAggregationSelect(query, collection) {
217
+ const agg = query.aggregation;
218
+ let aggExpr;
219
+ switch (agg.type) {
220
+ case "count":
221
+ aggExpr = agg.field
222
+ ? `COUNT(${collection}.${this.quoteIdentifier(agg.field)})`
223
+ : `COUNT(*)`;
224
+ break;
225
+ case "sum":
226
+ aggExpr = `SUM(${collection}.${this.quoteIdentifier(agg.field)})`;
227
+ break;
228
+ case "avg":
229
+ aggExpr = `AVG(${collection}.${this.quoteIdentifier(agg.field)})`;
230
+ break;
231
+ case "min":
232
+ aggExpr = `MIN(${collection}.${this.quoteIdentifier(agg.field)})`;
233
+ break;
234
+ case "max":
235
+ aggExpr = `MAX(${collection}.${this.quoteIdentifier(agg.field)})`;
236
+ break;
237
+ default:
238
+ aggExpr = `COUNT(*)`;
239
+ }
240
+ if (agg.groupBy) {
241
+ return `${collection}.${this.quoteIdentifier(agg.groupBy)}, ${aggExpr} AS result`;
242
+ }
243
+ return `${aggExpr} AS result`;
244
+ }
245
+ /**
246
+ * Couchbase uses backtick quoting for identifiers.
247
+ * Strip non-alphanumeric/underscore chars to prevent injection.
248
+ */
249
+ quoteIdentifier(identifier) {
250
+ const safe = identifier.replace(/[^a-zA-Z0-9_]/g, "");
251
+ return `\`${safe}\``;
252
+ }
253
+ async close() {
254
+ if (this.cluster) {
255
+ await this.cluster.close();
256
+ this.connected = false;
257
+ }
258
+ }
259
+ }
260
+ exports.CouchbaseAdapter = CouchbaseAdapter;
261
+ //# sourceMappingURL=couchbase-adapter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"couchbase-adapter.js","sourceRoot":"","sources":["../src/couchbase-adapter.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -2,5 +2,7 @@ export { type QueryDSL, type QueryFilter, type QuerySort, type QueryPagination,
2
2
  export { validateQuery, injectTenantFilter, applyDefaults, } from "./validator";
3
3
  export { PostgresAdapter } from "./postgres-adapter";
4
4
  export { MongoAdapter } from "./mongo-adapter";
5
+ export { CouchbaseAdapter } from "./couchbase-adapter";
6
+ export type { CouchbaseConfig } from "./couchbase-adapter";
5
7
  export { formatResultForLLM, formatResultForResponse } from "./formatter";
6
8
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,KAAK,QAAQ,EACb,KAAK,WAAW,EAChB,KAAK,SAAS,EACd,KAAK,eAAe,EACpB,KAAK,SAAS,EACd,KAAK,gBAAgB,EACrB,KAAK,cAAc,EACnB,KAAK,QAAQ,EACb,KAAK,eAAe,EACpB,KAAK,aAAa,EAClB,KAAK,cAAc,EACnB,KAAK,aAAa,EAClB,KAAK,aAAa,EAClB,KAAK,gBAAgB,EACrB,KAAK,WAAW,EAChB,KAAK,WAAW,EAChB,KAAK,YAAY,EACjB,KAAK,WAAW,EAChB,KAAK,eAAe,EACpB,KAAK,mBAAmB,EACxB,KAAK,aAAa,EAClB,KAAK,SAAS,EAEd,SAAS,EACT,SAAS,EACT,aAAa,EACb,aAAa,GACd,MAAM,SAAS,CAAC;AAEjB,OAAO,EACL,aAAa,EACb,kBAAkB,EAClB,aAAa,GACd,MAAM,aAAa,CAAC;AAErB,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AACrD,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,kBAAkB,EAAE,uBAAuB,EAAE,MAAM,aAAa,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,KAAK,QAAQ,EACb,KAAK,WAAW,EAChB,KAAK,SAAS,EACd,KAAK,eAAe,EACpB,KAAK,SAAS,EACd,KAAK,gBAAgB,EACrB,KAAK,cAAc,EACnB,KAAK,QAAQ,EACb,KAAK,eAAe,EACpB,KAAK,aAAa,EAClB,KAAK,cAAc,EACnB,KAAK,aAAa,EAClB,KAAK,aAAa,EAClB,KAAK,gBAAgB,EACrB,KAAK,WAAW,EAChB,KAAK,WAAW,EAChB,KAAK,YAAY,EACjB,KAAK,WAAW,EAChB,KAAK,eAAe,EACpB,KAAK,mBAAmB,EACxB,KAAK,aAAa,EAClB,KAAK,SAAS,EAEd,SAAS,EACT,SAAS,EACT,aAAa,EACb,aAAa,GACd,MAAM,SAAS,CAAC;AAEjB,OAAO,EACL,aAAa,EACb,kBAAkB,EAClB,aAAa,GACd,MAAM,aAAa,CAAC;AAErB,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AACrD,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACvD,YAAY,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAC3D,OAAO,EAAE,kBAAkB,EAAE,uBAAuB,EAAE,MAAM,aAAa,CAAC"}
package/dist/index.js CHANGED
@@ -2,7 +2,7 @@
2
2
  // ─── @databridgeai/core ───────────────────────────────────────────
3
3
  // Shared types, validation, adapters, and utilities.
4
4
  Object.defineProperty(exports, "__esModule", { value: true });
5
- exports.formatResultForResponse = exports.formatResultForLLM = exports.MongoAdapter = exports.PostgresAdapter = exports.applyDefaults = exports.injectTenantFilter = exports.validateQuery = exports.NUMERIC_TYPES = exports.DEFAULT_LIMIT = exports.MAX_LIMIT = exports.MAX_JOINS = void 0;
5
+ exports.formatResultForResponse = exports.formatResultForLLM = exports.CouchbaseAdapter = exports.MongoAdapter = exports.PostgresAdapter = exports.applyDefaults = exports.injectTenantFilter = exports.validateQuery = exports.NUMERIC_TYPES = exports.DEFAULT_LIMIT = exports.MAX_LIMIT = exports.MAX_JOINS = void 0;
6
6
  var types_1 = require("./types");
7
7
  // Constants
8
8
  Object.defineProperty(exports, "MAX_JOINS", { enumerable: true, get: function () { return types_1.MAX_JOINS; } });
@@ -17,6 +17,8 @@ var postgres_adapter_1 = require("./postgres-adapter");
17
17
  Object.defineProperty(exports, "PostgresAdapter", { enumerable: true, get: function () { return postgres_adapter_1.PostgresAdapter; } });
18
18
  var mongo_adapter_1 = require("./mongo-adapter");
19
19
  Object.defineProperty(exports, "MongoAdapter", { enumerable: true, get: function () { return mongo_adapter_1.MongoAdapter; } });
20
+ var couchbase_adapter_1 = require("./couchbase-adapter");
21
+ Object.defineProperty(exports, "CouchbaseAdapter", { enumerable: true, get: function () { return couchbase_adapter_1.CouchbaseAdapter; } });
20
22
  var formatter_1 = require("./formatter");
21
23
  Object.defineProperty(exports, "formatResultForLLM", { enumerable: true, get: function () { return formatter_1.formatResultForLLM; } });
22
24
  Object.defineProperty(exports, "formatResultForResponse", { enumerable: true, get: function () { return formatter_1.formatResultForResponse; } });
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAAA,qEAAqE;AACrE,qDAAqD;;;AAErD,iCA6BiB;AALf,YAAY;AACZ,kGAAA,SAAS,OAAA;AACT,kGAAA,SAAS,OAAA;AACT,sGAAA,aAAa,OAAA;AACb,sGAAA,aAAa,OAAA;AAGf,yCAIqB;AAHnB,0GAAA,aAAa,OAAA;AACb,+GAAA,kBAAkB,OAAA;AAClB,0GAAA,aAAa,OAAA;AAGf,uDAAqD;AAA5C,mHAAA,eAAe,OAAA;AACxB,iDAA+C;AAAtC,6GAAA,YAAY,OAAA;AACrB,yCAA0E;AAAjE,+GAAA,kBAAkB,OAAA;AAAE,oHAAA,uBAAuB,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAAA,qEAAqE;AACrE,qDAAqD;;;AAErD,iCA6BiB;AALf,YAAY;AACZ,kGAAA,SAAS,OAAA;AACT,kGAAA,SAAS,OAAA;AACT,sGAAA,aAAa,OAAA;AACb,sGAAA,aAAa,OAAA;AAGf,yCAIqB;AAHnB,0GAAA,aAAa,OAAA;AACb,+GAAA,kBAAkB,OAAA;AAClB,0GAAA,aAAa,OAAA;AAGf,uDAAqD;AAA5C,mHAAA,eAAe,OAAA;AACxB,iDAA+C;AAAtC,6GAAA,YAAY,OAAA;AACrB,yDAAuD;AAA9C,qHAAA,gBAAgB,OAAA;AAEzB,yCAA0E;AAAjE,+GAAA,kBAAkB,OAAA;AAAE,oHAAA,uBAAuB,OAAA"}
package/dist/types.d.ts CHANGED
@@ -85,7 +85,7 @@ export interface ValidationError {
85
85
  export interface ProjectRegistration {
86
86
  projectId: string;
87
87
  apiKey: string;
88
- dbType: "postgres" | "mongo";
88
+ dbType: "postgres" | "mongo" | "couchbase";
89
89
  schema: SchemaMetadata;
90
90
  tenantField?: string;
91
91
  }
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@databridgeai/core",
3
- "version": "1.0.0",
3
+ "version": "1.1.0",
4
4
  "description": "Core types, validators, and database adapters for DataBridge AI",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -10,7 +10,8 @@
10
10
  },
11
11
  "dependencies": {
12
12
  "pg": "^8.11.3",
13
- "mongodb": "^6.3.0"
13
+ "mongodb": "^6.3.0",
14
+ "couchbase": "^4.4.0"
14
15
  },
15
16
  "devDependencies": {
16
17
  "@types/pg": "^8.10.9",