@syntropix/database 0.1.0 → 0.2.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/dist/index.d.ts CHANGED
@@ -1,9 +1,582 @@
1
- export { Client } from './core/client';
2
- export * from './core/config';
3
- export { SyntropixClient } from './core/syntropix';
4
- export { BaseModel, Column, ForeignKey } from './types/basemodel';
5
- export * from './types/common';
6
- export { ColumnType } from './types/data-type';
7
- export * from './types/field';
8
- export * from './types/filter';
9
- export * from './types/requests';
1
+ import { ObjectId } from 'bson';
2
+
3
+ interface StringType {
4
+ String: number;
5
+ }
6
+ interface VectorType {
7
+ Vector: number;
8
+ }
9
+ interface EnumType {
10
+ Enum: {
11
+ name: string;
12
+ variants: string[];
13
+ };
14
+ }
15
+ interface MoneyType {
16
+ Money: [number, number] | null;
17
+ }
18
+ interface DecimalType {
19
+ Decimal: [number, number] | null;
20
+ }
21
+ interface ArrayType {
22
+ Array: ArrayDataTypeSchema;
23
+ }
24
+ type ArrayDataTypeSchema = StringType | DecimalType | MoneyType | EnumType | 'Text' | 'Integer' | 'BigInteger' | 'Double' | 'DateTime' | 'Timestamp' | 'Date' | 'Boolean' | 'Uuid' | 'Json';
25
+ type ColumnDataTypeSchema = StringType | VectorType | ArrayType | EnumType | MoneyType | DecimalType | 'Text' | 'Integer' | 'BigInteger' | 'Double' | 'DateTime' | 'Timestamp' | 'Date' | 'Boolean' | 'Uuid' | 'Json';
26
+
27
+ declare const AccessType: {
28
+ readonly None: "None";
29
+ readonly Read: "Read";
30
+ readonly Write: "Write";
31
+ readonly Admin: "Admin";
32
+ };
33
+ type AccessType = (typeof AccessType)[keyof typeof AccessType];
34
+
35
+ interface SyntropixDBColumn {
36
+ id: string;
37
+ name: string;
38
+ displayName: string;
39
+ description: string;
40
+ columnType: ColumnDataTypeSchema;
41
+ isPrimaryKey: boolean;
42
+ isNullable: boolean;
43
+ autoIncrement: boolean;
44
+ default: any | null;
45
+ defaultAccess: AccessType | null;
46
+ }
47
+ interface ColumnCreateOptions {
48
+ type?: ColumnDataTypeSchema;
49
+ name?: string;
50
+ displayName?: string;
51
+ description?: string;
52
+ primary?: boolean;
53
+ nullable?: boolean;
54
+ autoIncrement?: boolean;
55
+ default?: any;
56
+ defaultAccess?: AccessType;
57
+ }
58
+
59
+ interface Index {
60
+ name?: string;
61
+ columns: string[];
62
+ unique?: boolean;
63
+ }
64
+
65
+ declare const ForeignKeyAction: {
66
+ readonly Cascade: "Cascade";
67
+ readonly Restrict: "Restrict";
68
+ readonly SetNull: "SetNull";
69
+ readonly NoAction: "NoAction";
70
+ readonly SetDefault: "SetDefault";
71
+ };
72
+ type ForeignKeyAction = (typeof ForeignKeyAction)[keyof typeof ForeignKeyAction];
73
+ interface SyntropixDBForeignKey {
74
+ name?: string;
75
+ fromTableName: string;
76
+ fromColumnName: string;
77
+ toTableName: string;
78
+ toColumnName: string;
79
+ onDelete?: ForeignKeyAction;
80
+ onUpdate?: ForeignKeyAction;
81
+ }
82
+
83
+ interface FieldOptions {
84
+ name?: string;
85
+ displayName?: string;
86
+ description?: string;
87
+ isPrimaryKey?: boolean;
88
+ isNullable?: boolean;
89
+ autoIncrement?: boolean;
90
+ default?: any;
91
+ defaultAccess?: AccessType;
92
+ }
93
+ interface ForeignKeyFieldOptions extends FieldOptions {
94
+ onDelete?: ForeignKeyAction;
95
+ onUpdate?: ForeignKeyAction;
96
+ }
97
+
98
+ declare const SortType: {
99
+ readonly Descending: "Descending";
100
+ readonly Ascending: "Ascending";
101
+ };
102
+ type SortType = (typeof SortType)[keyof typeof SortType];
103
+ declare enum AggregateFunction {
104
+ Count = "Count",
105
+ Sum = "Sum",
106
+ Avg = "Avg",
107
+ Min = "Min",
108
+ Max = "Max",
109
+ CountDistinct = "CountDistinct"
110
+ }
111
+ interface Join {
112
+ table: string;
113
+ on: any;
114
+ }
115
+ interface Aggregate {
116
+ column: string;
117
+ function: AggregateFunction;
118
+ alias: string;
119
+ }
120
+ interface GroupBy {
121
+ columns: string[];
122
+ }
123
+ interface Sort {
124
+ column: string;
125
+ direction: SortType;
126
+ }
127
+ interface SimilarityOptions {
128
+ threshold: number;
129
+ order?: SortType;
130
+ alias?: string;
131
+ }
132
+ declare enum FilterOperation {
133
+ LT = "LT",
134
+ LTE = "LTE",
135
+ GT = "GT",
136
+ GTE = "GTE",
137
+ EQ = "EQ",
138
+ NEQ = "NEQ",
139
+ Between = "Between",
140
+ In = "In",
141
+ Contains = "Contains",
142
+ Overlap = "Overlap",
143
+ NotIn = "NotIn",
144
+ Like = "Like",
145
+ NotLike = "NotLike",
146
+ ILike = "ILike",
147
+ NotILike = "NotILike",
148
+ IsNull = "IsNull",
149
+ IsNotNull = "IsNotNull",
150
+ Similarity = "Similarity",
151
+ SimilarityDistance = "SimilarityDistance",
152
+ WordSimilarity = "WordSimilarity",
153
+ WordSimilarityDistance = "WordSimilarityDistance",
154
+ StrictWordSimilarity = "StrictWordSimilarity",
155
+ StrictWordSimilarityDistance = "StrictWordSimilarityDistance",
156
+ EuclideanDistance = "EuclideanDistance",
157
+ NegativeInnerProduct = "NegativeInnerProduct",
158
+ CosineDistance = "CosineDistance"
159
+ }
160
+ interface FilterItem {
161
+ columnName: string;
162
+ operator: FilterOperation;
163
+ staticValue?: any;
164
+ columnValue?: string;
165
+ simiarityOptions?: SimilarityOptions;
166
+ }
167
+ type FilterGroup = FilterItem[];
168
+ type Filter = FilterGroup[];
169
+
170
+ interface SyntropixDBTable {
171
+ id: string;
172
+ name: string;
173
+ displayName: string;
174
+ description: string;
175
+ createdAt: Date;
176
+ schema: string;
177
+ defaultAccess: AccessType | null;
178
+ columns: SyntropixDBColumn[];
179
+ foreignKeys: SyntropixDBForeignKey[];
180
+ indexes: Index[];
181
+ }
182
+ interface SyntropixDBTableSchema {
183
+ id: string;
184
+ column_access: Record<string, AccessType>;
185
+ metadata: Record<string, any>;
186
+ path: string;
187
+ table: SyntropixDBTable;
188
+ visible: boolean;
189
+ table_access: AccessType;
190
+ }
191
+ interface SyntropixDBTableListItem {
192
+ id: string;
193
+ name: string;
194
+ description: string;
195
+ metadata: Record<string, any>;
196
+ path: string;
197
+ visible: boolean;
198
+ access: AccessType;
199
+ }
200
+
201
+ interface ColumnCreateDto {
202
+ name: string;
203
+ displayName?: string;
204
+ description: string;
205
+ columnType: ColumnDataTypeSchema;
206
+ isPrimaryKey: boolean;
207
+ isNullable: boolean;
208
+ autoIncrement: boolean;
209
+ default?: any;
210
+ defaultAccess?: AccessType;
211
+ }
212
+
213
+ interface TableCreateDto {
214
+ name: string;
215
+ displayName?: string;
216
+ description: string;
217
+ columns: ColumnCreateDto[];
218
+ foreignKeys: SyntropixDBForeignKey[];
219
+ indexes: Index[];
220
+ defaultAccess?: AccessType;
221
+ metadata?: Record<string, any>;
222
+ visible?: boolean;
223
+ path?: string;
224
+ }
225
+ interface TableGetSchemaDto {
226
+ tableName: string;
227
+ }
228
+ interface TableDropDto {
229
+ tableName: string;
230
+ }
231
+ interface TableRenameDto {
232
+ tableName: string;
233
+ newTableName: string;
234
+ }
235
+ interface TableTruncateDto {
236
+ tableName: string;
237
+ }
238
+ interface TableAddColumnDto {
239
+ tableName: string;
240
+ column: SyntropixDBColumn;
241
+ }
242
+ interface TableDropColumnDto {
243
+ tableName: string;
244
+ columnName: string;
245
+ }
246
+ interface TableModifyColumnDto {
247
+ tableName: string;
248
+ column: SyntropixDBColumn;
249
+ }
250
+ interface TableGetListDto {
251
+ search?: string;
252
+ path?: string;
253
+ page?: number;
254
+ pageSize?: number;
255
+ }
256
+ interface InsertDataDto {
257
+ columns: string[];
258
+ values: any[][];
259
+ }
260
+ interface InsertDto {
261
+ tableName: string;
262
+ data: InsertDataDto;
263
+ }
264
+ interface UpdatePayloadDto {
265
+ filter: Filter;
266
+ columns: string[];
267
+ values: any[];
268
+ }
269
+ interface UpdateDto {
270
+ tableName: string;
271
+ payload: UpdatePayloadDto;
272
+ }
273
+ interface DeleteDataPayloadDto {
274
+ filter: Filter;
275
+ }
276
+ interface DeleteDataDto {
277
+ tableName: string;
278
+ payload: DeleteDataPayloadDto;
279
+ }
280
+ interface QueryPayloadDto {
281
+ filter?: Filter | FilterGroup | FilterItem;
282
+ sort?: Sort[];
283
+ aggregate?: Aggregate[];
284
+ join?: Join[];
285
+ limit?: number;
286
+ offset?: number;
287
+ groupBy?: GroupBy;
288
+ select?: string[];
289
+ }
290
+ interface QueryDto {
291
+ tableName: string;
292
+ query: QueryPayloadDto;
293
+ }
294
+
295
+ interface ColumnCreateResponse {
296
+ id: string;
297
+ name: string;
298
+ displayName: string;
299
+ description: string;
300
+ columnType: ColumnDataTypeSchema;
301
+ isPrimaryKey: boolean;
302
+ isNullable: boolean;
303
+ autoIncrement: boolean;
304
+ default: any | null;
305
+ defaultAccess: AccessType | null;
306
+ }
307
+
308
+ interface SyntropixSuccessResponse<T> {
309
+ status: 'success';
310
+ data: T;
311
+ }
312
+ interface SyntropixErrorResponse {
313
+ status: 'error';
314
+ message: string;
315
+ }
316
+ type SyntropixResponse<T> = SyntropixSuccessResponse<T> | SyntropixErrorResponse;
317
+
318
+ interface TableCreateResponse {
319
+ _id: ObjectId;
320
+ table: SyntropixDBTable;
321
+ createdAt: Date;
322
+ updatedAt: Date;
323
+ createdBy: string;
324
+ metadata: Record<string, any>;
325
+ path: string;
326
+ visible: boolean;
327
+ }
328
+ type TableSchemaResponse = SyntropixDBTableSchema;
329
+ type TableListResponse = SyntropixDBTableListItem[];
330
+
331
+ declare class ClientConfig {
332
+ apiKey?: string;
333
+ baseUrl?: string;
334
+ timeout?: number;
335
+ retries?: number;
336
+ constructor(config?: any);
337
+ }
338
+
339
+ declare class BaseClient {
340
+ protected config: ClientConfig;
341
+ constructor(config: ClientConfig);
342
+ private headers;
343
+ private url;
344
+ get<T>(path: string, data?: Record<string, any>): Promise<T>;
345
+ post<T>(path: string, data?: Record<string, any>): Promise<T>;
346
+ }
347
+
348
+ declare class DataClient {
349
+ private client;
350
+ constructor(config?: ClientConfig);
351
+ insertData(data: InsertDto): Promise<any>;
352
+ insertOne(data: InsertDto): Promise<any>;
353
+ updateByPrimaryKey(pk: string, data: UpdateDto): Promise<any>;
354
+ queryOne(data: QueryDto, model?: any): Promise<any>;
355
+ queryMany(data: QueryDto, model?: any): Promise<any>;
356
+ updateData(data: UpdateDto): Promise<any>;
357
+ deleteData(data: DeleteDataDto): Promise<any>;
358
+ }
359
+
360
+ declare class TableClient {
361
+ private client;
362
+ constructor(config?: ClientConfig);
363
+ createTable(data: TableCreateDto): Promise<TableCreateResponse>;
364
+ dropTable(data: TableDropDto): Promise<any>;
365
+ renameTable(data: TableRenameDto): Promise<any>;
366
+ truncateTable(data: TableTruncateDto): Promise<any>;
367
+ addColumn(data: TableAddColumnDto): Promise<any>;
368
+ dropColumn(data: TableDropColumnDto): Promise<any>;
369
+ modifyColumn(data: TableModifyColumnDto): Promise<any>;
370
+ getTableSchema(data: TableGetSchemaDto): Promise<TableSchemaResponse>;
371
+ getTableList(data: TableGetListDto): Promise<TableListResponse>;
372
+ }
373
+
374
+ declare class SyntropixClient {
375
+ private config;
376
+ private _tableClient?;
377
+ private _dataClient?;
378
+ constructor(config?: ClientConfig);
379
+ get table(): TableClient;
380
+ get data(): DataClient;
381
+ }
382
+
383
+ declare abstract class Field {
384
+ name: string;
385
+ displayName: string;
386
+ description: string;
387
+ columnType: ColumnDataTypeSchema;
388
+ isPrimaryKey: boolean;
389
+ isNullable: boolean;
390
+ autoIncrement: boolean;
391
+ default?: any;
392
+ defaultAccess?: AccessType;
393
+ constructor(columnType: ColumnDataTypeSchema, options?: FieldOptions);
394
+ intoColumnCreateDto(): ColumnCreateDto;
395
+ }
396
+ declare class ForeignKeyField extends Field {
397
+ tableName: string;
398
+ columnName: string;
399
+ onDelete: ForeignKeyAction;
400
+ onUpdate: ForeignKeyAction;
401
+ constructor(columnType: ColumnDataTypeSchema, tableName: string, columnName: string, options?: ForeignKeyFieldOptions);
402
+ }
403
+ declare class StringField extends Field {
404
+ constructor(maxLength: number, options?: FieldOptions);
405
+ }
406
+ declare class TextField extends Field {
407
+ constructor(options?: FieldOptions);
408
+ }
409
+ declare class IntegerField extends Field {
410
+ constructor(options?: FieldOptions);
411
+ }
412
+ declare class BooleanField extends Field {
413
+ constructor(options?: FieldOptions);
414
+ }
415
+ declare class DateTimeField extends Field {
416
+ constructor(options?: FieldOptions);
417
+ }
418
+ declare class TimestampField extends Field {
419
+ constructor(options?: FieldOptions);
420
+ }
421
+ declare class DateField extends Field {
422
+ constructor(options?: FieldOptions);
423
+ }
424
+ declare class JsonField extends Field {
425
+ constructor(options?: FieldOptions);
426
+ }
427
+ declare class UuidField extends Field {
428
+ constructor(options?: FieldOptions);
429
+ }
430
+ declare class VectorField extends Field {
431
+ constructor(dimensions: number, options?: FieldOptions);
432
+ }
433
+ declare class ArrayField extends Field {
434
+ constructor(dataType: ArrayDataTypeSchema, options?: FieldOptions);
435
+ }
436
+ declare class EnumField extends Field {
437
+ constructor(name: string, variants: string[], options?: FieldOptions);
438
+ }
439
+ declare class MoneyField extends Field {
440
+ constructor(precision: number, scale: number, options?: FieldOptions);
441
+ }
442
+ declare class DecimalField extends Field {
443
+ constructor(precision: number, scale: number, options?: FieldOptions);
444
+ }
445
+ declare class DoubleField extends Field {
446
+ constructor(options?: FieldOptions);
447
+ }
448
+
449
+ declare function Column(options?: ColumnCreateOptions): (target: any, propertyKey: string) => void;
450
+ declare function Description(description: string): (target: any) => void;
451
+ declare function ForeignKey(tableName: string, columnName: string, options?: {
452
+ type?: ColumnDataTypeSchema;
453
+ displayName?: string;
454
+ name?: string;
455
+ onDelete?: ForeignKeyAction;
456
+ onUpdate?: ForeignKeyAction;
457
+ description?: string;
458
+ nullable?: boolean;
459
+ default?: any;
460
+ }): (target: any, propertyKey: string) => void;
461
+ declare class BaseModel {
462
+ private _client?;
463
+ private _extra;
464
+ constructor(data?: Record<string, any>);
465
+ protected static getTableName(): string;
466
+ protected static getDisplayName(): string;
467
+ static getDescription(): string;
468
+ protected static getIndexes(): Index[];
469
+ protected static getFields(): Record<string, Field>;
470
+ protected static getPrimaryKeyName(): string;
471
+ protected static getAssociations(): ForeignKeyField[];
472
+ protected getFields(): Record<string, Field>;
473
+ protected getTableName(): string;
474
+ protected getDisplayName(): string;
475
+ protected getPrimaryKeyName(): string;
476
+ protected getPrimaryKey(): Field | undefined;
477
+ protected get client(): SyntropixClient;
478
+ static createTable(client?: SyntropixClient): Promise<TableCreateResponse>;
479
+ static dropTable(client?: SyntropixClient): Promise<any>;
480
+ static renameTable(newName: string, client?: SyntropixClient): Promise<any>;
481
+ static truncateTable(client?: SyntropixClient): Promise<any>;
482
+ static getTableSchema(client?: SyntropixClient): Promise<TableSchemaResponse>;
483
+ static create<T extends BaseModel>(this: new (data?: any) => T, data: Record<string, any>, client?: SyntropixClient): Promise<any>;
484
+ save(client?: SyntropixClient): Promise<any>;
485
+ remove(filter?: Filter, _client?: SyntropixClient | null): Promise<number>;
486
+ static bulkCreate<T extends BaseModel>(this: new (data?: any) => T, datas: Record<string, any>[], batchSize?: number, _client?: SyntropixClient | null): Promise<number>;
487
+ static update<T extends BaseModel>(this: new (data?: any) => T, filter: Filter, data: Record<string, any>, _client?: SyntropixClient | null): Promise<number>;
488
+ static delete<T extends BaseModel>(this: new (data?: any) => T, filter: Filter, _client?: SyntropixClient | null): Promise<number>;
489
+ static get<T extends BaseModel>(this: new (data?: any) => T, filter: Filter, select?: string[], _client?: SyntropixClient | null): Promise<T>;
490
+ static filter<T extends BaseModel>(this: new (data?: any) => T, options: {
491
+ filter: Filter;
492
+ sort?: Sort[];
493
+ aggregate?: Aggregate[];
494
+ join?: Join;
495
+ limit?: number;
496
+ offset?: number;
497
+ groupBy?: GroupBy;
498
+ select?: string[];
499
+ _client?: SyntropixClient | null;
500
+ }): Promise<T[]>;
501
+ static count<T extends BaseModel>(this: new (data?: any) => T, options?: {
502
+ filter?: Filter;
503
+ join?: Join;
504
+ groupBy?: GroupBy;
505
+ _client?: SyntropixClient | null;
506
+ }): Promise<number>;
507
+ toString(): string;
508
+ toJSON(): Record<string, any>;
509
+ }
510
+
511
+ declare const ArrayDataType: {
512
+ readonly String: (maxLength: number) => StringType;
513
+ readonly Decimal: (precision: number, scale: number) => DecimalType;
514
+ readonly Text: "Text";
515
+ readonly Integer: "Integer";
516
+ readonly BigInteger: "BigInteger";
517
+ readonly Double: "Double";
518
+ readonly DateTime: "DateTime";
519
+ readonly Timestamp: "Timestamp";
520
+ readonly Date: "Date";
521
+ readonly Boolean: "Boolean";
522
+ readonly Money: (precision: number, scale: number) => MoneyType;
523
+ readonly Uuid: "Uuid";
524
+ readonly Enum: (name: string, variants: string[]) => EnumType;
525
+ readonly Json: "Json";
526
+ };
527
+ declare const ColumnDataType: {
528
+ readonly Integer: "Integer";
529
+ readonly String: (maxLength: number) => StringType;
530
+ readonly Text: "Text";
531
+ readonly Boolean: "Boolean";
532
+ readonly DateTime: "DateTime";
533
+ readonly Timestamp: "Timestamp";
534
+ readonly Date: "Date";
535
+ readonly Json: "Json";
536
+ readonly Uuid: "Uuid";
537
+ readonly Double: "Double";
538
+ readonly Vector: (dimensions: number) => VectorType;
539
+ readonly Array: (dataType: ArrayDataTypeSchema) => ArrayType;
540
+ readonly Enum: (name: string, variants: string[]) => EnumType;
541
+ readonly Money: (precision: number, scale: number) => MoneyType;
542
+ readonly Decimal: (precision: number, scale: number) => DecimalType;
543
+ };
544
+
545
+ declare const AND: (...conditions: FilterItem[]) => FilterGroup;
546
+ declare const OR: (...conditions: FilterGroup[]) => Filter;
547
+ declare const EQ: (field: string, value: any) => FilterItem;
548
+ declare const NE: (field: string, value: any) => FilterItem;
549
+ declare const GT: (field: string, value: any) => FilterItem;
550
+ declare const GTE: (field: string, value: any) => FilterItem;
551
+ declare const LT: (field: string, value: any) => FilterItem;
552
+ declare const LTE: (field: string, value: any) => FilterItem;
553
+ declare const IN: (field: string, values: any[]) => FilterItem;
554
+ declare const CONTAINS: (field: string, value: any) => FilterItem;
555
+ declare const OVERLAP: (field: string, value: any) => FilterItem;
556
+ declare const I_LIKE: (field: string, pattern: string) => FilterItem;
557
+ declare const NOT_I_LIKE: (field: string, pattern: string) => FilterItem;
558
+ declare const NOT_IN: (field: string, values: any[]) => FilterItem;
559
+ declare const LIKE: (field: string, pattern: string) => FilterItem;
560
+ declare const NOT_LIKE: (field: string, pattern: string) => FilterItem;
561
+ declare const IS_NULL: (field: string) => FilterItem;
562
+ declare const IS_NOT_NULL: (field: string) => FilterItem;
563
+ declare const BETWEEN: (field: string, min: any, max: any) => FilterItem;
564
+ declare const EQ_COL: (field: string, otherField: string) => FilterItem;
565
+ declare const NE_COL: (field: string, otherField: string) => FilterItem;
566
+ declare const GT_COL: (field: string, otherField: string) => FilterItem;
567
+ declare const GTE_COL: (field: string, otherField: string) => FilterItem;
568
+ declare const LT_COL: (field: string, otherField: string) => FilterItem;
569
+ declare const LTE_COL: (field: string, otherField: string) => FilterItem;
570
+ declare const SIMILARITY: (field: string, value: any, options: SimilarityOptions) => FilterItem;
571
+ declare const SIMILARITY_DISTANCE: (field: string, value: any, options: SimilarityOptions) => FilterItem;
572
+ declare const WORD_SIMILARITY: (field: string, value: any, options: SimilarityOptions) => FilterItem;
573
+ declare const WORD_SIMILARITY_DISTANCE: (field: string, value: any, options: SimilarityOptions) => FilterItem;
574
+ declare const STRICT_WORD_SIMILARITY: (field: string, value: any, options: SimilarityOptions) => FilterItem;
575
+ declare const STRICT_WORD_SIMILARITY_DISTANCE: (field: string, value: any, options: SimilarityOptions) => FilterItem;
576
+ declare const EUCLIDEAN_DISTANCE: (field: string, value: any, options: SimilarityOptions) => FilterItem;
577
+ declare const NEGATIVE_INNER_PRODUCT: (field: string, value: any, options: SimilarityOptions) => FilterItem;
578
+ declare const COSINE_DISTANCE: (field: string, value: any, options: SimilarityOptions) => FilterItem;
579
+ declare const Value: (value: any) => any;
580
+ declare function FilterWrapper(filter: Filter | FilterGroup | FilterItem | undefined): Filter | undefined;
581
+
582
+ export { AND, AccessType, type Aggregate, AggregateFunction, ArrayDataType, type ArrayDataTypeSchema, ArrayField, type ArrayType, BETWEEN, BaseClient, BaseModel, BooleanField, CONTAINS, COSINE_DISTANCE, ClientConfig, Column, type ColumnCreateDto, type ColumnCreateOptions, type ColumnCreateResponse, ColumnDataType, type ColumnDataTypeSchema, DataClient, DateField, DateTimeField, DecimalField, type DecimalType, type DeleteDataDto, type DeleteDataPayloadDto, Description, DoubleField, EQ, EQ_COL, EUCLIDEAN_DISTANCE, EnumField, type EnumType, Field, type FieldOptions, type Filter, type FilterGroup, type FilterItem, FilterOperation, FilterWrapper, ForeignKey, ForeignKeyAction, ForeignKeyField, type ForeignKeyFieldOptions, GT, GTE, GTE_COL, GT_COL, type GroupBy, IN, IS_NOT_NULL, IS_NULL, I_LIKE, type Index, type InsertDataDto, type InsertDto, IntegerField, type Join, JsonField, LIKE, LT, LTE, LTE_COL, LT_COL, MoneyField, type MoneyType, NE, NEGATIVE_INNER_PRODUCT, NE_COL, NOT_IN, NOT_I_LIKE, NOT_LIKE, OR, OVERLAP, type QueryDto, type QueryPayloadDto, SIMILARITY, SIMILARITY_DISTANCE, STRICT_WORD_SIMILARITY, STRICT_WORD_SIMILARITY_DISTANCE, type SimilarityOptions, type Sort, SortType, StringField, type StringType, SyntropixClient, type SyntropixDBColumn, type SyntropixDBForeignKey, type SyntropixDBTable, type SyntropixDBTableListItem, type SyntropixDBTableSchema, type SyntropixErrorResponse, type SyntropixResponse, type SyntropixSuccessResponse, type TableAddColumnDto, TableClient, type TableCreateDto, type TableCreateResponse, type TableDropColumnDto, type TableDropDto, type TableGetListDto, type TableGetSchemaDto, type TableListResponse, type TableModifyColumnDto, type TableRenameDto, type TableSchemaResponse, type TableTruncateDto, TextField, TimestampField, type UpdateDto, type UpdatePayloadDto, UuidField, Value, VectorField, type VectorType, WORD_SIMILARITY, WORD_SIMILARITY_DISTANCE };