@xata.io/client 0.0.0-alpha.vf350c0a → 0.0.0-alpha.vf38b6da
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/.eslintrc.cjs +1 -2
- package/CHANGELOG.md +170 -0
- package/README.md +273 -1
- package/Usage.md +442 -0
- package/dist/index.cjs +611 -336
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.ts +954 -231
- package/dist/index.mjs +585 -337
- package/dist/index.mjs.map +1 -1
- package/package.json +8 -4
- package/tsconfig.json +1 -0
package/dist/index.d.ts
CHANGED
@@ -6,6 +6,9 @@ declare type FetchImpl = (url: string, init?: {
|
|
6
6
|
ok: boolean;
|
7
7
|
status: number;
|
8
8
|
json(): Promise<any>;
|
9
|
+
headers?: {
|
10
|
+
get(name: string): string | null;
|
11
|
+
};
|
9
12
|
}>;
|
10
13
|
declare type WorkspaceApiUrlBuilder = (path: string, pathParams: Record<string, string>) => string;
|
11
14
|
declare type FetcherExtraProps = {
|
@@ -20,7 +23,6 @@ declare type ErrorWrapper<TError> = TError | {
|
|
20
23
|
};
|
21
24
|
|
22
25
|
interface CacheImpl {
|
23
|
-
cacheRecords: boolean;
|
24
26
|
defaultQueryTTL: number;
|
25
27
|
getAll(): Promise<Record<string, unknown>>;
|
26
28
|
get: <T>(key: string) => Promise<T | null>;
|
@@ -30,13 +32,11 @@ interface CacheImpl {
|
|
30
32
|
}
|
31
33
|
interface SimpleCacheOptions {
|
32
34
|
max?: number;
|
33
|
-
cacheRecords?: boolean;
|
34
35
|
defaultQueryTTL?: number;
|
35
36
|
}
|
36
37
|
declare class SimpleCache implements CacheImpl {
|
37
38
|
#private;
|
38
39
|
capacity: number;
|
39
|
-
cacheRecords: boolean;
|
40
40
|
defaultQueryTTL: number;
|
41
41
|
constructor(options?: SimpleCacheOptions);
|
42
42
|
getAll(): Promise<Record<string, unknown>>;
|
@@ -122,16 +122,20 @@ declare type WorkspaceMembers = {
|
|
122
122
|
* @pattern ^ik_[a-zA-Z0-9]+
|
123
123
|
*/
|
124
124
|
declare type InviteKey = string;
|
125
|
+
/**
|
126
|
+
* Metadata of databases
|
127
|
+
*/
|
128
|
+
declare type DatabaseMetadata = {
|
129
|
+
name: string;
|
130
|
+
displayName: string;
|
131
|
+
createdAt: DateTime;
|
132
|
+
numberOfBranches: number;
|
133
|
+
ui?: {
|
134
|
+
color?: string;
|
135
|
+
};
|
136
|
+
};
|
125
137
|
declare type ListDatabasesResponse = {
|
126
|
-
databases?:
|
127
|
-
name: string;
|
128
|
-
displayName: string;
|
129
|
-
createdAt: DateTime;
|
130
|
-
numberOfBranches: number;
|
131
|
-
ui?: {
|
132
|
-
color?: string;
|
133
|
-
};
|
134
|
-
}[];
|
138
|
+
databases?: DatabaseMetadata[];
|
135
139
|
};
|
136
140
|
declare type ListBranchesResponse = {
|
137
141
|
databaseName: string;
|
@@ -268,6 +272,21 @@ declare type SortExpression = string[] | {
|
|
268
272
|
[key: string]: SortOrder;
|
269
273
|
}[];
|
270
274
|
declare type SortOrder = 'asc' | 'desc';
|
275
|
+
/**
|
276
|
+
* Maximum [Levenshtein distance](https://en.wikipedia.org/wiki/Levenshtein_distance) for the search terms. The Levenshtein
|
277
|
+
* distance is the number of one charcter changes needed to make two strings equal. The default is 1, meaning that single
|
278
|
+
* character typos per word are tollerated by search. You can set it to 0 to remove the typo tollerance or set it to 2
|
279
|
+
* to allow two typos in a word.
|
280
|
+
*
|
281
|
+
* @default 1
|
282
|
+
* @maximum 2
|
283
|
+
* @minimum 0
|
284
|
+
*/
|
285
|
+
declare type FuzzinessExpression = number;
|
286
|
+
/**
|
287
|
+
* If the prefix type is set to "disabled" (the default), the search only matches full words. If the prefix type is set to "phrase", the search will return results that match prefixes of the search phrase.
|
288
|
+
*/
|
289
|
+
declare type PrefixExpression = 'phrase' | 'disabled';
|
271
290
|
/**
|
272
291
|
* @minProperties 1
|
273
292
|
*/
|
@@ -281,6 +300,48 @@ declare type FilterExpression = {
|
|
281
300
|
} & {
|
282
301
|
[key: string]: FilterColumn;
|
283
302
|
};
|
303
|
+
declare type HighlightExpression = {
|
304
|
+
enabled?: boolean;
|
305
|
+
encodeHTML?: boolean;
|
306
|
+
};
|
307
|
+
/**
|
308
|
+
* Booster Expression
|
309
|
+
*
|
310
|
+
* @x-go-type xata.BoosterExpression
|
311
|
+
*/
|
312
|
+
declare type BoosterExpression = {
|
313
|
+
valueBooster?: ValueBooster$1;
|
314
|
+
} | {
|
315
|
+
numericBooster?: NumericBooster$1;
|
316
|
+
} | {
|
317
|
+
dateBooster?: DateBooster$1;
|
318
|
+
};
|
319
|
+
/**
|
320
|
+
* Boost records with a particular value for a column.
|
321
|
+
*/
|
322
|
+
declare type ValueBooster$1 = {
|
323
|
+
column: string;
|
324
|
+
value: string | number | boolean;
|
325
|
+
factor: number;
|
326
|
+
};
|
327
|
+
/**
|
328
|
+
* Boost records based on the value of a numeric column.
|
329
|
+
*/
|
330
|
+
declare type NumericBooster$1 = {
|
331
|
+
column: string;
|
332
|
+
factor: number;
|
333
|
+
};
|
334
|
+
/**
|
335
|
+
* Boost records based on the value of a datetime column. It is configured via "origin", "scale", and "decay". The further away from the "origin",
|
336
|
+
* the more the score is decayed. The decay function uses an exponential function. For example if origin is "now", and scale is 10 days and decay is 0.5, it
|
337
|
+
* should be interpreted as: a record with a date 10 days before/after origin will score 2 times less than a record with the date at origin.
|
338
|
+
*/
|
339
|
+
declare type DateBooster$1 = {
|
340
|
+
column: string;
|
341
|
+
origin?: string;
|
342
|
+
scale: string;
|
343
|
+
decay: number;
|
344
|
+
};
|
284
345
|
declare type FilterList = FilterExpression | FilterExpression[];
|
285
346
|
declare type FilterColumn = FilterColumnIncludes | FilterPredicate | FilterList;
|
286
347
|
/**
|
@@ -337,7 +398,24 @@ declare type PageConfig = {
|
|
337
398
|
size?: number;
|
338
399
|
offset?: number;
|
339
400
|
};
|
340
|
-
declare type
|
401
|
+
declare type ColumnsProjection = string[];
|
402
|
+
/**
|
403
|
+
* Xata Table Record Metadata
|
404
|
+
*/
|
405
|
+
declare type RecordMeta = {
|
406
|
+
id: RecordID;
|
407
|
+
xata: {
|
408
|
+
version: number;
|
409
|
+
table?: string;
|
410
|
+
highlight?: {
|
411
|
+
[key: string]: string[] | {
|
412
|
+
[key: string]: any;
|
413
|
+
};
|
414
|
+
};
|
415
|
+
score?: number;
|
416
|
+
warnings?: string[];
|
417
|
+
};
|
418
|
+
};
|
341
419
|
/**
|
342
420
|
* @pattern [a-zA-Z0-9_-~:]+
|
343
421
|
*/
|
@@ -359,16 +437,9 @@ declare type RecordsMetadata = {
|
|
359
437
|
};
|
360
438
|
};
|
361
439
|
/**
|
362
|
-
* Xata Table Record
|
440
|
+
* Xata Table Record Metadata
|
363
441
|
*/
|
364
|
-
declare type XataRecord$1 = {
|
365
|
-
id: RecordID;
|
366
|
-
xata: {
|
367
|
-
version: number;
|
368
|
-
table?: string;
|
369
|
-
warnings?: string[];
|
370
|
-
};
|
371
|
-
} & {
|
442
|
+
declare type XataRecord$1 = RecordMeta & {
|
372
443
|
[key: string]: any;
|
373
444
|
};
|
374
445
|
|
@@ -386,6 +457,7 @@ type schemas_InviteID = InviteID;
|
|
386
457
|
type schemas_WorkspaceInvite = WorkspaceInvite;
|
387
458
|
type schemas_WorkspaceMembers = WorkspaceMembers;
|
388
459
|
type schemas_InviteKey = InviteKey;
|
460
|
+
type schemas_DatabaseMetadata = DatabaseMetadata;
|
389
461
|
type schemas_ListDatabasesResponse = ListDatabasesResponse;
|
390
462
|
type schemas_ListBranchesResponse = ListBranchesResponse;
|
391
463
|
type schemas_ListGitBranchesResponse = ListGitBranchesResponse;
|
@@ -409,7 +481,11 @@ type schemas_TableMigration = TableMigration;
|
|
409
481
|
type schemas_ColumnMigration = ColumnMigration;
|
410
482
|
type schemas_SortExpression = SortExpression;
|
411
483
|
type schemas_SortOrder = SortOrder;
|
484
|
+
type schemas_FuzzinessExpression = FuzzinessExpression;
|
485
|
+
type schemas_PrefixExpression = PrefixExpression;
|
412
486
|
type schemas_FilterExpression = FilterExpression;
|
487
|
+
type schemas_HighlightExpression = HighlightExpression;
|
488
|
+
type schemas_BoosterExpression = BoosterExpression;
|
413
489
|
type schemas_FilterList = FilterList;
|
414
490
|
type schemas_FilterColumn = FilterColumn;
|
415
491
|
type schemas_FilterColumnIncludes = FilterColumnIncludes;
|
@@ -419,7 +495,8 @@ type schemas_FilterPredicateRangeOp = FilterPredicateRangeOp;
|
|
419
495
|
type schemas_FilterRangeValue = FilterRangeValue;
|
420
496
|
type schemas_FilterValue = FilterValue;
|
421
497
|
type schemas_PageConfig = PageConfig;
|
422
|
-
type
|
498
|
+
type schemas_ColumnsProjection = ColumnsProjection;
|
499
|
+
type schemas_RecordMeta = RecordMeta;
|
423
500
|
type schemas_RecordID = RecordID;
|
424
501
|
type schemas_TableRename = TableRename;
|
425
502
|
type schemas_RecordsMetadata = RecordsMetadata;
|
@@ -439,6 +516,7 @@ declare namespace schemas {
|
|
439
516
|
schemas_WorkspaceInvite as WorkspaceInvite,
|
440
517
|
schemas_WorkspaceMembers as WorkspaceMembers,
|
441
518
|
schemas_InviteKey as InviteKey,
|
519
|
+
schemas_DatabaseMetadata as DatabaseMetadata,
|
442
520
|
schemas_ListDatabasesResponse as ListDatabasesResponse,
|
443
521
|
schemas_ListBranchesResponse as ListBranchesResponse,
|
444
522
|
schemas_ListGitBranchesResponse as ListGitBranchesResponse,
|
@@ -462,7 +540,14 @@ declare namespace schemas {
|
|
462
540
|
schemas_ColumnMigration as ColumnMigration,
|
463
541
|
schemas_SortExpression as SortExpression,
|
464
542
|
schemas_SortOrder as SortOrder,
|
543
|
+
schemas_FuzzinessExpression as FuzzinessExpression,
|
544
|
+
schemas_PrefixExpression as PrefixExpression,
|
465
545
|
schemas_FilterExpression as FilterExpression,
|
546
|
+
schemas_HighlightExpression as HighlightExpression,
|
547
|
+
schemas_BoosterExpression as BoosterExpression,
|
548
|
+
ValueBooster$1 as ValueBooster,
|
549
|
+
NumericBooster$1 as NumericBooster,
|
550
|
+
DateBooster$1 as DateBooster,
|
466
551
|
schemas_FilterList as FilterList,
|
467
552
|
schemas_FilterColumn as FilterColumn,
|
468
553
|
schemas_FilterColumnIncludes as FilterColumnIncludes,
|
@@ -472,7 +557,8 @@ declare namespace schemas {
|
|
472
557
|
schemas_FilterRangeValue as FilterRangeValue,
|
473
558
|
schemas_FilterValue as FilterValue,
|
474
559
|
schemas_PageConfig as PageConfig,
|
475
|
-
|
560
|
+
schemas_ColumnsProjection as ColumnsProjection,
|
561
|
+
schemas_RecordMeta as RecordMeta,
|
476
562
|
schemas_RecordID as RecordID,
|
477
563
|
schemas_TableRename as TableRename,
|
478
564
|
schemas_RecordsMetadata as RecordsMetadata,
|
@@ -507,11 +593,17 @@ declare type BulkError = {
|
|
507
593
|
status?: number;
|
508
594
|
}[];
|
509
595
|
};
|
596
|
+
declare type BulkInsertResponse = {
|
597
|
+
recordIDs: string[];
|
598
|
+
} | {
|
599
|
+
records: XataRecord$1[];
|
600
|
+
};
|
510
601
|
declare type BranchMigrationPlan = {
|
511
602
|
version: number;
|
512
603
|
migration: BranchMigration;
|
513
604
|
};
|
514
|
-
declare type
|
605
|
+
declare type RecordResponse = XataRecord$1;
|
606
|
+
declare type RecordUpdateResponse = XataRecord$1 | {
|
515
607
|
id: string;
|
516
608
|
xata: {
|
517
609
|
version: number;
|
@@ -535,7 +627,9 @@ type responses_SimpleError = SimpleError;
|
|
535
627
|
type responses_BadRequestError = BadRequestError;
|
536
628
|
type responses_AuthError = AuthError;
|
537
629
|
type responses_BulkError = BulkError;
|
630
|
+
type responses_BulkInsertResponse = BulkInsertResponse;
|
538
631
|
type responses_BranchMigrationPlan = BranchMigrationPlan;
|
632
|
+
type responses_RecordResponse = RecordResponse;
|
539
633
|
type responses_RecordUpdateResponse = RecordUpdateResponse;
|
540
634
|
type responses_QueryResponse = QueryResponse;
|
541
635
|
type responses_SearchResponse = SearchResponse;
|
@@ -546,7 +640,9 @@ declare namespace responses {
|
|
546
640
|
responses_BadRequestError as BadRequestError,
|
547
641
|
responses_AuthError as AuthError,
|
548
642
|
responses_BulkError as BulkError,
|
643
|
+
responses_BulkInsertResponse as BulkInsertResponse,
|
549
644
|
responses_BranchMigrationPlan as BranchMigrationPlan,
|
645
|
+
responses_RecordResponse as RecordResponse,
|
550
646
|
responses_RecordUpdateResponse as RecordUpdateResponse,
|
551
647
|
responses_QueryResponse as QueryResponse,
|
552
648
|
responses_SearchResponse as SearchResponse,
|
@@ -852,6 +948,9 @@ declare type InviteWorkspaceMemberError = ErrorWrapper<{
|
|
852
948
|
} | {
|
853
949
|
status: 404;
|
854
950
|
payload: SimpleError;
|
951
|
+
} | {
|
952
|
+
status: 409;
|
953
|
+
payload: SimpleError;
|
855
954
|
}>;
|
856
955
|
declare type InviteWorkspaceMemberRequestBody = {
|
857
956
|
email: string;
|
@@ -865,6 +964,34 @@ declare type InviteWorkspaceMemberVariables = {
|
|
865
964
|
* Invite some user to join the workspace with the given role
|
866
965
|
*/
|
867
966
|
declare const inviteWorkspaceMember: (variables: InviteWorkspaceMemberVariables) => Promise<WorkspaceInvite>;
|
967
|
+
declare type UpdateWorkspaceMemberInvitePathParams = {
|
968
|
+
workspaceId: WorkspaceID;
|
969
|
+
inviteId: InviteID;
|
970
|
+
};
|
971
|
+
declare type UpdateWorkspaceMemberInviteError = ErrorWrapper<{
|
972
|
+
status: 400;
|
973
|
+
payload: BadRequestError;
|
974
|
+
} | {
|
975
|
+
status: 401;
|
976
|
+
payload: AuthError;
|
977
|
+
} | {
|
978
|
+
status: 404;
|
979
|
+
payload: SimpleError;
|
980
|
+
} | {
|
981
|
+
status: 422;
|
982
|
+
payload: SimpleError;
|
983
|
+
}>;
|
984
|
+
declare type UpdateWorkspaceMemberInviteRequestBody = {
|
985
|
+
role: Role;
|
986
|
+
};
|
987
|
+
declare type UpdateWorkspaceMemberInviteVariables = {
|
988
|
+
body: UpdateWorkspaceMemberInviteRequestBody;
|
989
|
+
pathParams: UpdateWorkspaceMemberInvitePathParams;
|
990
|
+
} & FetcherExtraProps;
|
991
|
+
/**
|
992
|
+
* This operation provides a way to update an existing invite. Updates are performed in-place; they do not change the invite link, the expiry time, nor do they re-notify the recipient of the invite.
|
993
|
+
*/
|
994
|
+
declare const updateWorkspaceMemberInvite: (variables: UpdateWorkspaceMemberInviteVariables) => Promise<WorkspaceInvite>;
|
868
995
|
declare type CancelWorkspaceMemberInvitePathParams = {
|
869
996
|
workspaceId: WorkspaceID;
|
870
997
|
inviteId: InviteID;
|
@@ -1018,6 +1145,27 @@ declare type DeleteDatabaseVariables = {
|
|
1018
1145
|
* Delete a database and all of its branches and tables permanently.
|
1019
1146
|
*/
|
1020
1147
|
declare const deleteDatabase: (variables: DeleteDatabaseVariables) => Promise<undefined>;
|
1148
|
+
declare type GetDatabaseMetadataPathParams = {
|
1149
|
+
dbName: DBName;
|
1150
|
+
workspace: string;
|
1151
|
+
};
|
1152
|
+
declare type GetDatabaseMetadataError = ErrorWrapper<{
|
1153
|
+
status: 400;
|
1154
|
+
payload: BadRequestError;
|
1155
|
+
} | {
|
1156
|
+
status: 401;
|
1157
|
+
payload: AuthError;
|
1158
|
+
} | {
|
1159
|
+
status: 404;
|
1160
|
+
payload: SimpleError;
|
1161
|
+
}>;
|
1162
|
+
declare type GetDatabaseMetadataVariables = {
|
1163
|
+
pathParams: GetDatabaseMetadataPathParams;
|
1164
|
+
} & FetcherExtraProps;
|
1165
|
+
/**
|
1166
|
+
* Retrieve metadata of the given database
|
1167
|
+
*/
|
1168
|
+
declare const getDatabaseMetadata: (variables: GetDatabaseMetadataVariables) => Promise<DatabaseMetadata>;
|
1021
1169
|
declare type GetGitBranchesMappingPathParams = {
|
1022
1170
|
dbName: DBName;
|
1023
1171
|
workspace: string;
|
@@ -1151,14 +1299,15 @@ declare type ResolveBranchVariables = {
|
|
1151
1299
|
} & FetcherExtraProps;
|
1152
1300
|
/**
|
1153
1301
|
* In order to resolve the database branch, the following algorithm is used:
|
1154
|
-
* * if the `gitBranch` is found in the [git branches mapping](), the associated Xata branch is returned
|
1302
|
+
* * if the `gitBranch` was provided and is found in the [git branches mapping](/api-reference/dbs/db_name/gitBranches), the associated Xata branch is returned
|
1155
1303
|
* * else, if a Xata branch with the exact same name as `gitBranch` exists, return it
|
1156
|
-
* * else,
|
1304
|
+
* * else, if `fallbackBranch` is provided and a branch with that name exists, return it
|
1305
|
+
* * else, return the default branch of the DB (`main` or the first branch)
|
1157
1306
|
*
|
1158
1307
|
* Example call:
|
1159
1308
|
*
|
1160
1309
|
* ```json
|
1161
|
-
* // GET https://tutorial-ng7s8c.xata.sh/dbs/demo/dbs/demo/resolveBranch?gitBranch=test
|
1310
|
+
* // GET https://tutorial-ng7s8c.xata.sh/dbs/demo/dbs/demo/resolveBranch?gitBranch=test&fallbackBranch=tsg
|
1162
1311
|
* ```
|
1163
1312
|
*
|
1164
1313
|
* Example response:
|
@@ -1209,6 +1358,10 @@ declare type CreateBranchError = ErrorWrapper<{
|
|
1209
1358
|
status: 404;
|
1210
1359
|
payload: SimpleError;
|
1211
1360
|
}>;
|
1361
|
+
declare type CreateBranchResponse = {
|
1362
|
+
databaseName: string;
|
1363
|
+
branchName: string;
|
1364
|
+
};
|
1212
1365
|
declare type CreateBranchRequestBody = {
|
1213
1366
|
from?: string;
|
1214
1367
|
metadata?: BranchMetadata;
|
@@ -1218,7 +1371,7 @@ declare type CreateBranchVariables = {
|
|
1218
1371
|
pathParams: CreateBranchPathParams;
|
1219
1372
|
queryParams?: CreateBranchQueryParams;
|
1220
1373
|
} & FetcherExtraProps;
|
1221
|
-
declare const createBranch: (variables: CreateBranchVariables) => Promise<
|
1374
|
+
declare const createBranch: (variables: CreateBranchVariables) => Promise<CreateBranchResponse>;
|
1222
1375
|
declare type DeleteBranchPathParams = {
|
1223
1376
|
dbBranchName: DBBranchName;
|
1224
1377
|
workspace: string;
|
@@ -1405,13 +1558,17 @@ declare type CreateTableError = ErrorWrapper<{
|
|
1405
1558
|
status: 422;
|
1406
1559
|
payload: SimpleError;
|
1407
1560
|
}>;
|
1561
|
+
declare type CreateTableResponse = {
|
1562
|
+
branchName: string;
|
1563
|
+
tableName: string;
|
1564
|
+
};
|
1408
1565
|
declare type CreateTableVariables = {
|
1409
1566
|
pathParams: CreateTablePathParams;
|
1410
1567
|
} & FetcherExtraProps;
|
1411
1568
|
/**
|
1412
1569
|
* Creates a new table with the given name. Returns 422 if a table with the same name already exists.
|
1413
1570
|
*/
|
1414
|
-
declare const createTable: (variables: CreateTableVariables) => Promise<
|
1571
|
+
declare const createTable: (variables: CreateTableVariables) => Promise<CreateTableResponse>;
|
1415
1572
|
declare type DeleteTablePathParams = {
|
1416
1573
|
dbBranchName: DBBranchName;
|
1417
1574
|
tableName: TableName;
|
@@ -1458,8 +1615,9 @@ declare type UpdateTableVariables = {
|
|
1458
1615
|
*
|
1459
1616
|
* In the example below, we rename a table from “users” to “people”:
|
1460
1617
|
*
|
1461
|
-
* ```
|
1462
|
-
* PATCH /db/test:main/tables/users
|
1618
|
+
* ```json
|
1619
|
+
* // PATCH /db/test:main/tables/users
|
1620
|
+
*
|
1463
1621
|
* {
|
1464
1622
|
* "name": "people"
|
1465
1623
|
* }
|
@@ -1643,6 +1801,9 @@ declare type InsertRecordPathParams = {
|
|
1643
1801
|
tableName: TableName;
|
1644
1802
|
workspace: string;
|
1645
1803
|
};
|
1804
|
+
declare type InsertRecordQueryParams = {
|
1805
|
+
columns?: ColumnsProjection;
|
1806
|
+
};
|
1646
1807
|
declare type InsertRecordError = ErrorWrapper<{
|
1647
1808
|
status: 400;
|
1648
1809
|
payload: BadRequestError;
|
@@ -1653,20 +1814,15 @@ declare type InsertRecordError = ErrorWrapper<{
|
|
1653
1814
|
status: 404;
|
1654
1815
|
payload: SimpleError;
|
1655
1816
|
}>;
|
1656
|
-
declare type InsertRecordResponse = {
|
1657
|
-
id: string;
|
1658
|
-
xata: {
|
1659
|
-
version: number;
|
1660
|
-
};
|
1661
|
-
};
|
1662
1817
|
declare type InsertRecordVariables = {
|
1663
1818
|
body?: Record<string, any>;
|
1664
1819
|
pathParams: InsertRecordPathParams;
|
1820
|
+
queryParams?: InsertRecordQueryParams;
|
1665
1821
|
} & FetcherExtraProps;
|
1666
1822
|
/**
|
1667
1823
|
* Insert a new Record into the Table
|
1668
1824
|
*/
|
1669
|
-
declare const insertRecord: (variables: InsertRecordVariables) => Promise<
|
1825
|
+
declare const insertRecord: (variables: InsertRecordVariables) => Promise<RecordUpdateResponse>;
|
1670
1826
|
declare type InsertRecordWithIDPathParams = {
|
1671
1827
|
dbBranchName: DBBranchName;
|
1672
1828
|
tableName: TableName;
|
@@ -1674,6 +1830,7 @@ declare type InsertRecordWithIDPathParams = {
|
|
1674
1830
|
workspace: string;
|
1675
1831
|
};
|
1676
1832
|
declare type InsertRecordWithIDQueryParams = {
|
1833
|
+
columns?: ColumnsProjection;
|
1677
1834
|
createOnly?: boolean;
|
1678
1835
|
ifVersion?: number;
|
1679
1836
|
};
|
@@ -1706,6 +1863,7 @@ declare type UpdateRecordWithIDPathParams = {
|
|
1706
1863
|
workspace: string;
|
1707
1864
|
};
|
1708
1865
|
declare type UpdateRecordWithIDQueryParams = {
|
1866
|
+
columns?: ColumnsProjection;
|
1709
1867
|
ifVersion?: number;
|
1710
1868
|
};
|
1711
1869
|
declare type UpdateRecordWithIDError = ErrorWrapper<{
|
@@ -1734,6 +1892,7 @@ declare type UpsertRecordWithIDPathParams = {
|
|
1734
1892
|
workspace: string;
|
1735
1893
|
};
|
1736
1894
|
declare type UpsertRecordWithIDQueryParams = {
|
1895
|
+
columns?: ColumnsProjection;
|
1737
1896
|
ifVersion?: number;
|
1738
1897
|
};
|
1739
1898
|
declare type UpsertRecordWithIDError = ErrorWrapper<{
|
@@ -1761,6 +1920,9 @@ declare type DeleteRecordPathParams = {
|
|
1761
1920
|
recordId: RecordID;
|
1762
1921
|
workspace: string;
|
1763
1922
|
};
|
1923
|
+
declare type DeleteRecordQueryParams = {
|
1924
|
+
columns?: ColumnsProjection;
|
1925
|
+
};
|
1764
1926
|
declare type DeleteRecordError = ErrorWrapper<{
|
1765
1927
|
status: 400;
|
1766
1928
|
payload: BadRequestError;
|
@@ -1773,14 +1935,18 @@ declare type DeleteRecordError = ErrorWrapper<{
|
|
1773
1935
|
}>;
|
1774
1936
|
declare type DeleteRecordVariables = {
|
1775
1937
|
pathParams: DeleteRecordPathParams;
|
1938
|
+
queryParams?: DeleteRecordQueryParams;
|
1776
1939
|
} & FetcherExtraProps;
|
1777
|
-
declare const deleteRecord: (variables: DeleteRecordVariables) => Promise<
|
1940
|
+
declare const deleteRecord: (variables: DeleteRecordVariables) => Promise<XataRecord$1>;
|
1778
1941
|
declare type GetRecordPathParams = {
|
1779
1942
|
dbBranchName: DBBranchName;
|
1780
1943
|
tableName: TableName;
|
1781
1944
|
recordId: RecordID;
|
1782
1945
|
workspace: string;
|
1783
1946
|
};
|
1947
|
+
declare type GetRecordQueryParams = {
|
1948
|
+
columns?: ColumnsProjection;
|
1949
|
+
};
|
1784
1950
|
declare type GetRecordError = ErrorWrapper<{
|
1785
1951
|
status: 400;
|
1786
1952
|
payload: BadRequestError;
|
@@ -1791,12 +1957,9 @@ declare type GetRecordError = ErrorWrapper<{
|
|
1791
1957
|
status: 404;
|
1792
1958
|
payload: SimpleError;
|
1793
1959
|
}>;
|
1794
|
-
declare type GetRecordRequestBody = {
|
1795
|
-
columns?: ColumnsFilter;
|
1796
|
-
};
|
1797
1960
|
declare type GetRecordVariables = {
|
1798
|
-
body?: GetRecordRequestBody;
|
1799
1961
|
pathParams: GetRecordPathParams;
|
1962
|
+
queryParams?: GetRecordQueryParams;
|
1800
1963
|
} & FetcherExtraProps;
|
1801
1964
|
/**
|
1802
1965
|
* Retrieve record by ID
|
@@ -1807,6 +1970,9 @@ declare type BulkInsertTableRecordsPathParams = {
|
|
1807
1970
|
tableName: TableName;
|
1808
1971
|
workspace: string;
|
1809
1972
|
};
|
1973
|
+
declare type BulkInsertTableRecordsQueryParams = {
|
1974
|
+
columns?: ColumnsProjection;
|
1975
|
+
};
|
1810
1976
|
declare type BulkInsertTableRecordsError = ErrorWrapper<{
|
1811
1977
|
status: 400;
|
1812
1978
|
payload: BulkError;
|
@@ -1816,21 +1982,22 @@ declare type BulkInsertTableRecordsError = ErrorWrapper<{
|
|
1816
1982
|
} | {
|
1817
1983
|
status: 404;
|
1818
1984
|
payload: SimpleError;
|
1985
|
+
} | {
|
1986
|
+
status: 422;
|
1987
|
+
payload: SimpleError;
|
1819
1988
|
}>;
|
1820
|
-
declare type BulkInsertTableRecordsResponse = {
|
1821
|
-
recordIDs: string[];
|
1822
|
-
};
|
1823
1989
|
declare type BulkInsertTableRecordsRequestBody = {
|
1824
1990
|
records: Record<string, any>[];
|
1825
1991
|
};
|
1826
1992
|
declare type BulkInsertTableRecordsVariables = {
|
1827
1993
|
body: BulkInsertTableRecordsRequestBody;
|
1828
1994
|
pathParams: BulkInsertTableRecordsPathParams;
|
1995
|
+
queryParams?: BulkInsertTableRecordsQueryParams;
|
1829
1996
|
} & FetcherExtraProps;
|
1830
1997
|
/**
|
1831
1998
|
* Bulk insert records
|
1832
1999
|
*/
|
1833
|
-
declare const bulkInsertTableRecords: (variables: BulkInsertTableRecordsVariables) => Promise<
|
2000
|
+
declare const bulkInsertTableRecords: (variables: BulkInsertTableRecordsVariables) => Promise<BulkInsertResponse>;
|
1834
2001
|
declare type QueryTablePathParams = {
|
1835
2002
|
dbBranchName: DBBranchName;
|
1836
2003
|
tableName: TableName;
|
@@ -1850,7 +2017,7 @@ declare type QueryTableRequestBody = {
|
|
1850
2017
|
filter?: FilterExpression;
|
1851
2018
|
sort?: SortExpression;
|
1852
2019
|
page?: PageConfig;
|
1853
|
-
columns?:
|
2020
|
+
columns?: ColumnsProjection;
|
1854
2021
|
};
|
1855
2022
|
declare type QueryTableVariables = {
|
1856
2023
|
body?: QueryTableRequestBody;
|
@@ -1867,7 +2034,7 @@ declare type QueryTableVariables = {
|
|
1867
2034
|
* {
|
1868
2035
|
* "columns": [...],
|
1869
2036
|
* "filter": {
|
1870
|
-
* "$all": [...]
|
2037
|
+
* "$all": [...],
|
1871
2038
|
* "$any": [...]
|
1872
2039
|
* ...
|
1873
2040
|
* },
|
@@ -2005,7 +2172,7 @@ declare type QueryTableVariables = {
|
|
2005
2172
|
* {
|
2006
2173
|
* "name": "Kilian",
|
2007
2174
|
* "address": {
|
2008
|
-
* "street": "New street"
|
2175
|
+
* "street": "New street"
|
2009
2176
|
* }
|
2010
2177
|
* }
|
2011
2178
|
* ```
|
@@ -2014,10 +2181,7 @@ declare type QueryTableVariables = {
|
|
2014
2181
|
*
|
2015
2182
|
* ```json
|
2016
2183
|
* {
|
2017
|
-
* "columns": [
|
2018
|
-
* "*",
|
2019
|
-
* "team.name"
|
2020
|
-
* ]
|
2184
|
+
* "columns": ["*", "team.name"]
|
2021
2185
|
* }
|
2022
2186
|
* ```
|
2023
2187
|
*
|
@@ -2035,7 +2199,7 @@ declare type QueryTableVariables = {
|
|
2035
2199
|
* "team": {
|
2036
2200
|
* "id": "XX",
|
2037
2201
|
* "xata": {
|
2038
|
-
* "version": 0
|
2202
|
+
* "version": 0
|
2039
2203
|
* },
|
2040
2204
|
* "name": "first team"
|
2041
2205
|
* }
|
@@ -2046,10 +2210,7 @@ declare type QueryTableVariables = {
|
|
2046
2210
|
*
|
2047
2211
|
* ```json
|
2048
2212
|
* {
|
2049
|
-
* "columns": [
|
2050
|
-
* "*",
|
2051
|
-
* "team.*"
|
2052
|
-
* ]
|
2213
|
+
* "columns": ["*", "team.*"]
|
2053
2214
|
* }
|
2054
2215
|
* ```
|
2055
2216
|
*
|
@@ -2067,7 +2228,7 @@ declare type QueryTableVariables = {
|
|
2067
2228
|
* "team": {
|
2068
2229
|
* "id": "XX",
|
2069
2230
|
* "xata": {
|
2070
|
-
* "version": 0
|
2231
|
+
* "version": 0
|
2071
2232
|
* },
|
2072
2233
|
* "name": "first team",
|
2073
2234
|
* "code": "A1",
|
@@ -2117,7 +2278,7 @@ declare type QueryTableVariables = {
|
|
2117
2278
|
* ```json
|
2118
2279
|
* {
|
2119
2280
|
* "filter": {
|
2120
|
-
*
|
2281
|
+
* "name": "r2"
|
2121
2282
|
* }
|
2122
2283
|
* }
|
2123
2284
|
* ```
|
@@ -2139,7 +2300,7 @@ declare type QueryTableVariables = {
|
|
2139
2300
|
* ```json
|
2140
2301
|
* {
|
2141
2302
|
* "filter": {
|
2142
|
-
*
|
2303
|
+
* "settings.plan": "free"
|
2143
2304
|
* }
|
2144
2305
|
* }
|
2145
2306
|
* ```
|
@@ -2149,8 +2310,8 @@ declare type QueryTableVariables = {
|
|
2149
2310
|
* "filter": {
|
2150
2311
|
* "settings": {
|
2151
2312
|
* "plan": "free"
|
2152
|
-
* }
|
2153
|
-
* }
|
2313
|
+
* }
|
2314
|
+
* }
|
2154
2315
|
* }
|
2155
2316
|
* ```
|
2156
2317
|
*
|
@@ -2159,8 +2320,8 @@ declare type QueryTableVariables = {
|
|
2159
2320
|
* ```json
|
2160
2321
|
* {
|
2161
2322
|
* "filter": {
|
2162
|
-
* "settings.plan": {"$any": ["free", "paid"]}
|
2163
|
-
* }
|
2323
|
+
* "settings.plan": { "$any": ["free", "paid"] }
|
2324
|
+
* }
|
2164
2325
|
* }
|
2165
2326
|
* ```
|
2166
2327
|
*
|
@@ -2169,9 +2330,9 @@ declare type QueryTableVariables = {
|
|
2169
2330
|
* ```json
|
2170
2331
|
* {
|
2171
2332
|
* "filter": {
|
2172
|
-
*
|
2173
|
-
*
|
2174
|
-
* }
|
2333
|
+
* "settings.dark": true,
|
2334
|
+
* "settings.plan": "free"
|
2335
|
+
* }
|
2175
2336
|
* }
|
2176
2337
|
* ```
|
2177
2338
|
*
|
@@ -2182,11 +2343,11 @@ declare type QueryTableVariables = {
|
|
2182
2343
|
* ```json
|
2183
2344
|
* {
|
2184
2345
|
* "filter": {
|
2185
|
-
*
|
2186
|
-
*
|
2187
|
-
*
|
2188
|
-
*
|
2189
|
-
* }
|
2346
|
+
* "$any": {
|
2347
|
+
* "settings.dark": true,
|
2348
|
+
* "settings.plan": "free"
|
2349
|
+
* }
|
2350
|
+
* }
|
2190
2351
|
* }
|
2191
2352
|
* ```
|
2192
2353
|
*
|
@@ -2197,10 +2358,10 @@ declare type QueryTableVariables = {
|
|
2197
2358
|
* "filter": {
|
2198
2359
|
* "$any": [
|
2199
2360
|
* {
|
2200
|
-
* "name": "r1"
|
2361
|
+
* "name": "r1"
|
2201
2362
|
* },
|
2202
2363
|
* {
|
2203
|
-
* "name": "r2"
|
2364
|
+
* "name": "r2"
|
2204
2365
|
* }
|
2205
2366
|
* ]
|
2206
2367
|
* }
|
@@ -2212,7 +2373,7 @@ declare type QueryTableVariables = {
|
|
2212
2373
|
* ```json
|
2213
2374
|
* {
|
2214
2375
|
* "filter": {
|
2215
|
-
* "$exists": "settings"
|
2376
|
+
* "$exists": "settings"
|
2216
2377
|
* }
|
2217
2378
|
* }
|
2218
2379
|
* ```
|
@@ -2224,10 +2385,10 @@ declare type QueryTableVariables = {
|
|
2224
2385
|
* "filter": {
|
2225
2386
|
* "$all": [
|
2226
2387
|
* {
|
2227
|
-
* "$exists": "settings"
|
2388
|
+
* "$exists": "settings"
|
2228
2389
|
* },
|
2229
2390
|
* {
|
2230
|
-
* "$exists": "name"
|
2391
|
+
* "$exists": "name"
|
2231
2392
|
* }
|
2232
2393
|
* ]
|
2233
2394
|
* }
|
@@ -2239,7 +2400,7 @@ declare type QueryTableVariables = {
|
|
2239
2400
|
* ```json
|
2240
2401
|
* {
|
2241
2402
|
* "filter": {
|
2242
|
-
* "$notExists": "settings"
|
2403
|
+
* "$notExists": "settings"
|
2243
2404
|
* }
|
2244
2405
|
* }
|
2245
2406
|
* ```
|
@@ -2266,22 +2427,28 @@ declare type QueryTableVariables = {
|
|
2266
2427
|
* {
|
2267
2428
|
* "filter": {
|
2268
2429
|
* "<column_name>": {
|
2269
|
-
*
|
2430
|
+
* "$pattern": "v*alu?"
|
2270
2431
|
* }
|
2271
2432
|
* }
|
2272
2433
|
* }
|
2273
2434
|
* ```
|
2274
2435
|
*
|
2436
|
+
* The `$pattern` operator accepts two wildcard characters:
|
2437
|
+
* * `*` matches zero or more characters
|
2438
|
+
* * `?` matches exactly one character
|
2439
|
+
*
|
2440
|
+
* If you want to match a string that contains a wildcard character, you can escape them using a backslash (`\`). You can escape a backslash by usign another backslash.
|
2441
|
+
*
|
2275
2442
|
* We could also have `$endsWith` and `$startsWith` operators:
|
2276
2443
|
*
|
2277
2444
|
* ```json
|
2278
2445
|
* {
|
2279
2446
|
* "filter": {
|
2280
2447
|
* "<column_name>": {
|
2281
|
-
*
|
2448
|
+
* "$endsWith": ".gz"
|
2282
2449
|
* },
|
2283
2450
|
* "<column_name>": {
|
2284
|
-
*
|
2451
|
+
* "$startsWith": "tmp-"
|
2285
2452
|
* }
|
2286
2453
|
* }
|
2287
2454
|
* }
|
@@ -2292,10 +2459,10 @@ declare type QueryTableVariables = {
|
|
2292
2459
|
* ```json
|
2293
2460
|
* {
|
2294
2461
|
* "filter": {
|
2295
|
-
*
|
2296
|
-
*
|
2297
|
-
*
|
2298
|
-
*
|
2462
|
+
* "<column_name>": {
|
2463
|
+
* "$ge": 0,
|
2464
|
+
* "$lt": 100
|
2465
|
+
* }
|
2299
2466
|
* }
|
2300
2467
|
* }
|
2301
2468
|
* ```
|
@@ -2313,7 +2480,6 @@ declare type QueryTableVariables = {
|
|
2313
2480
|
* ```
|
2314
2481
|
* The supported operators are `$gt`, `$lt`, `$ge`, `$le`.
|
2315
2482
|
*
|
2316
|
-
*
|
2317
2483
|
* #### Negations
|
2318
2484
|
*
|
2319
2485
|
* A general `$not` operator can inverse any operation.
|
@@ -2338,15 +2504,21 @@ declare type QueryTableVariables = {
|
|
2338
2504
|
* {
|
2339
2505
|
* "filter": {
|
2340
2506
|
* "$not": {
|
2341
|
-
* "$any": [
|
2342
|
-
*
|
2343
|
-
*
|
2344
|
-
*
|
2345
|
-
*
|
2346
|
-
*
|
2347
|
-
*
|
2348
|
-
*
|
2349
|
-
*
|
2507
|
+
* "$any": [
|
2508
|
+
* {
|
2509
|
+
* "<column_name1>": "value1"
|
2510
|
+
* },
|
2511
|
+
* {
|
2512
|
+
* "$all": [
|
2513
|
+
* {
|
2514
|
+
* "<column_name2>": "value2"
|
2515
|
+
* },
|
2516
|
+
* {
|
2517
|
+
* "<column_name3>": "value3"
|
2518
|
+
* }
|
2519
|
+
* ]
|
2520
|
+
* }
|
2521
|
+
* ]
|
2350
2522
|
* }
|
2351
2523
|
* }
|
2352
2524
|
* }
|
@@ -2401,8 +2573,8 @@ declare type QueryTableVariables = {
|
|
2401
2573
|
* "<array name>": {
|
2402
2574
|
* "$includes": {
|
2403
2575
|
* "$all": [
|
2404
|
-
* {"$contains": "label"},
|
2405
|
-
* {"$not": {"$endsWith": "-debug"}}
|
2576
|
+
* { "$contains": "label" },
|
2577
|
+
* { "$not": { "$endsWith": "-debug" } }
|
2406
2578
|
* ]
|
2407
2579
|
* }
|
2408
2580
|
* }
|
@@ -2422,9 +2594,7 @@ declare type QueryTableVariables = {
|
|
2422
2594
|
* {
|
2423
2595
|
* "filter": {
|
2424
2596
|
* "settings.labels": {
|
2425
|
-
* "$includesAll": [
|
2426
|
-
* {"$contains": "label"},
|
2427
|
-
* ]
|
2597
|
+
* "$includesAll": [{ "$contains": "label" }]
|
2428
2598
|
* }
|
2429
2599
|
* }
|
2430
2600
|
* }
|
@@ -2472,7 +2642,6 @@ declare type QueryTableVariables = {
|
|
2472
2642
|
* }
|
2473
2643
|
* ```
|
2474
2644
|
*
|
2475
|
-
*
|
2476
2645
|
* ### Pagination
|
2477
2646
|
*
|
2478
2647
|
* We offer cursor pagination and offset pagination. The offset pagination is limited
|
@@ -2538,8 +2707,8 @@ declare type QueryTableVariables = {
|
|
2538
2707
|
* can be queried by update `page.after` to the returned cursor while keeping the
|
2539
2708
|
* `page.before` cursor from the first range query.
|
2540
2709
|
*
|
2541
|
-
* The `filter` , `columns`,
|
2542
|
-
* encoded with the cursor.
|
2710
|
+
* The `filter` , `columns`, `sort` , and `page.size` configuration will be
|
2711
|
+
* encoded with the cursor. The pagination request will be invalid if
|
2543
2712
|
* `filter` or `sort` is set. The columns returned and page size can be changed
|
2544
2713
|
* anytime by passing the `columns` or `page.size` settings to the next query.
|
2545
2714
|
*
|
@@ -2576,6 +2745,41 @@ declare type QueryTableVariables = {
|
|
2576
2745
|
* ```
|
2577
2746
|
*/
|
2578
2747
|
declare const queryTable: (variables: QueryTableVariables) => Promise<QueryResponse>;
|
2748
|
+
declare type SearchTablePathParams = {
|
2749
|
+
dbBranchName: DBBranchName;
|
2750
|
+
tableName: TableName;
|
2751
|
+
workspace: string;
|
2752
|
+
};
|
2753
|
+
declare type SearchTableError = ErrorWrapper<{
|
2754
|
+
status: 400;
|
2755
|
+
payload: BadRequestError;
|
2756
|
+
} | {
|
2757
|
+
status: 401;
|
2758
|
+
payload: AuthError;
|
2759
|
+
} | {
|
2760
|
+
status: 404;
|
2761
|
+
payload: SimpleError;
|
2762
|
+
}>;
|
2763
|
+
declare type SearchTableRequestBody = {
|
2764
|
+
query: string;
|
2765
|
+
fuzziness?: FuzzinessExpression;
|
2766
|
+
prefix?: PrefixExpression;
|
2767
|
+
filter?: FilterExpression;
|
2768
|
+
highlight?: HighlightExpression;
|
2769
|
+
boosters?: BoosterExpression[];
|
2770
|
+
};
|
2771
|
+
declare type SearchTableVariables = {
|
2772
|
+
body: SearchTableRequestBody;
|
2773
|
+
pathParams: SearchTablePathParams;
|
2774
|
+
} & FetcherExtraProps;
|
2775
|
+
/**
|
2776
|
+
* Run a free text search operation in a particular table.
|
2777
|
+
*
|
2778
|
+
* The endpoint accepts a `query` parameter that is used for the free text search and a set of structured filters (via the `filter` parameter) that are applied before the search. The `filter` parameter uses the same syntax as the [query endpoint](/api-reference/db/db_branch_name/tables/table_name/) with the following exceptions:
|
2779
|
+
* * filters `$contains`, `$startsWith`, `$endsWith` don't work on columns of type `text`
|
2780
|
+
* * filtering on columns of type `multiple` is currently unsupported
|
2781
|
+
*/
|
2782
|
+
declare const searchTable: (variables: SearchTableVariables) => Promise<SearchResponse>;
|
2579
2783
|
declare type SearchBranchPathParams = {
|
2580
2784
|
dbBranchName: DBBranchName;
|
2581
2785
|
workspace: string;
|
@@ -2591,9 +2795,14 @@ declare type SearchBranchError = ErrorWrapper<{
|
|
2591
2795
|
payload: SimpleError;
|
2592
2796
|
}>;
|
2593
2797
|
declare type SearchBranchRequestBody = {
|
2594
|
-
tables?: string
|
2798
|
+
tables?: (string | {
|
2799
|
+
table: string;
|
2800
|
+
filter?: FilterExpression;
|
2801
|
+
boosters?: BoosterExpression[];
|
2802
|
+
})[];
|
2595
2803
|
query: string;
|
2596
|
-
fuzziness?:
|
2804
|
+
fuzziness?: FuzzinessExpression;
|
2805
|
+
highlight?: HighlightExpression;
|
2597
2806
|
};
|
2598
2807
|
declare type SearchBranchVariables = {
|
2599
2808
|
body: SearchBranchRequestBody;
|
@@ -2622,6 +2831,7 @@ declare const operationsByTag: {
|
|
2622
2831
|
updateWorkspaceMemberRole: (variables: UpdateWorkspaceMemberRoleVariables) => Promise<undefined>;
|
2623
2832
|
removeWorkspaceMember: (variables: RemoveWorkspaceMemberVariables) => Promise<undefined>;
|
2624
2833
|
inviteWorkspaceMember: (variables: InviteWorkspaceMemberVariables) => Promise<WorkspaceInvite>;
|
2834
|
+
updateWorkspaceMemberInvite: (variables: UpdateWorkspaceMemberInviteVariables) => Promise<WorkspaceInvite>;
|
2625
2835
|
cancelWorkspaceMemberInvite: (variables: CancelWorkspaceMemberInviteVariables) => Promise<undefined>;
|
2626
2836
|
resendWorkspaceMemberInvite: (variables: ResendWorkspaceMemberInviteVariables) => Promise<undefined>;
|
2627
2837
|
acceptWorkspaceMemberInvite: (variables: AcceptWorkspaceMemberInviteVariables) => Promise<undefined>;
|
@@ -2630,6 +2840,7 @@ declare const operationsByTag: {
|
|
2630
2840
|
getDatabaseList: (variables: GetDatabaseListVariables) => Promise<ListDatabasesResponse>;
|
2631
2841
|
createDatabase: (variables: CreateDatabaseVariables) => Promise<CreateDatabaseResponse>;
|
2632
2842
|
deleteDatabase: (variables: DeleteDatabaseVariables) => Promise<undefined>;
|
2843
|
+
getDatabaseMetadata: (variables: GetDatabaseMetadataVariables) => Promise<DatabaseMetadata>;
|
2633
2844
|
getGitBranchesMapping: (variables: GetGitBranchesMappingVariables) => Promise<ListGitBranchesResponse>;
|
2634
2845
|
addGitBranchesEntry: (variables: AddGitBranchesEntryVariables) => Promise<AddGitBranchesEntryResponse>;
|
2635
2846
|
removeGitBranchesEntry: (variables: RemoveGitBranchesEntryVariables) => Promise<undefined>;
|
@@ -2638,7 +2849,7 @@ declare const operationsByTag: {
|
|
2638
2849
|
branch: {
|
2639
2850
|
getBranchList: (variables: GetBranchListVariables) => Promise<ListBranchesResponse>;
|
2640
2851
|
getBranchDetails: (variables: GetBranchDetailsVariables) => Promise<DBBranch>;
|
2641
|
-
createBranch: (variables: CreateBranchVariables) => Promise<
|
2852
|
+
createBranch: (variables: CreateBranchVariables) => Promise<CreateBranchResponse>;
|
2642
2853
|
deleteBranch: (variables: DeleteBranchVariables) => Promise<undefined>;
|
2643
2854
|
updateBranchMetadata: (variables: UpdateBranchMetadataVariables) => Promise<undefined>;
|
2644
2855
|
getBranchMetadata: (variables: GetBranchMetadataVariables) => Promise<BranchMetadata>;
|
@@ -2648,7 +2859,7 @@ declare const operationsByTag: {
|
|
2648
2859
|
getBranchStats: (variables: GetBranchStatsVariables) => Promise<GetBranchStatsResponse>;
|
2649
2860
|
};
|
2650
2861
|
table: {
|
2651
|
-
createTable: (variables: CreateTableVariables) => Promise<
|
2862
|
+
createTable: (variables: CreateTableVariables) => Promise<CreateTableResponse>;
|
2652
2863
|
deleteTable: (variables: DeleteTableVariables) => Promise<undefined>;
|
2653
2864
|
updateTable: (variables: UpdateTableVariables) => Promise<undefined>;
|
2654
2865
|
getTableSchema: (variables: GetTableSchemaVariables) => Promise<GetTableSchemaResponse>;
|
@@ -2660,14 +2871,15 @@ declare const operationsByTag: {
|
|
2660
2871
|
updateColumn: (variables: UpdateColumnVariables) => Promise<MigrationIdResponse>;
|
2661
2872
|
};
|
2662
2873
|
records: {
|
2663
|
-
insertRecord: (variables: InsertRecordVariables) => Promise<
|
2874
|
+
insertRecord: (variables: InsertRecordVariables) => Promise<RecordUpdateResponse>;
|
2664
2875
|
insertRecordWithID: (variables: InsertRecordWithIDVariables) => Promise<RecordUpdateResponse>;
|
2665
2876
|
updateRecordWithID: (variables: UpdateRecordWithIDVariables) => Promise<RecordUpdateResponse>;
|
2666
2877
|
upsertRecordWithID: (variables: UpsertRecordWithIDVariables) => Promise<RecordUpdateResponse>;
|
2667
|
-
deleteRecord: (variables: DeleteRecordVariables) => Promise<
|
2878
|
+
deleteRecord: (variables: DeleteRecordVariables) => Promise<XataRecord$1>;
|
2668
2879
|
getRecord: (variables: GetRecordVariables) => Promise<XataRecord$1>;
|
2669
|
-
bulkInsertTableRecords: (variables: BulkInsertTableRecordsVariables) => Promise<
|
2880
|
+
bulkInsertTableRecords: (variables: BulkInsertTableRecordsVariables) => Promise<BulkInsertResponse>;
|
2670
2881
|
queryTable: (variables: QueryTableVariables) => Promise<QueryResponse>;
|
2882
|
+
searchTable: (variables: SearchTableVariables) => Promise<SearchResponse>;
|
2671
2883
|
searchBranch: (variables: SearchBranchVariables) => Promise<SearchResponse>;
|
2672
2884
|
};
|
2673
2885
|
};
|
@@ -2719,6 +2931,7 @@ declare class WorkspaceApi {
|
|
2719
2931
|
updateWorkspaceMemberRole(workspaceId: WorkspaceID, userId: UserID, role: Role): Promise<void>;
|
2720
2932
|
removeWorkspaceMember(workspaceId: WorkspaceID, userId: UserID): Promise<void>;
|
2721
2933
|
inviteWorkspaceMember(workspaceId: WorkspaceID, email: string, role: Role): Promise<WorkspaceInvite>;
|
2934
|
+
updateWorkspaceMemberInvite(workspaceId: WorkspaceID, inviteId: InviteID, role: Role): Promise<WorkspaceInvite>;
|
2722
2935
|
cancelWorkspaceMemberInvite(workspaceId: WorkspaceID, inviteId: InviteID): Promise<void>;
|
2723
2936
|
resendWorkspaceMemberInvite(workspaceId: WorkspaceID, inviteId: InviteID): Promise<void>;
|
2724
2937
|
acceptWorkspaceMemberInvite(workspaceId: WorkspaceID, inviteKey: InviteKey): Promise<void>;
|
@@ -2729,17 +2942,18 @@ declare class DatabaseApi {
|
|
2729
2942
|
getDatabaseList(workspace: WorkspaceID): Promise<ListDatabasesResponse>;
|
2730
2943
|
createDatabase(workspace: WorkspaceID, dbName: DBName, options?: CreateDatabaseRequestBody): Promise<CreateDatabaseResponse>;
|
2731
2944
|
deleteDatabase(workspace: WorkspaceID, dbName: DBName): Promise<void>;
|
2945
|
+
getDatabaseMetadata(workspace: WorkspaceID, dbName: DBName): Promise<DatabaseMetadata>;
|
2732
2946
|
getGitBranchesMapping(workspace: WorkspaceID, dbName: DBName): Promise<ListGitBranchesResponse>;
|
2733
2947
|
addGitBranchesEntry(workspace: WorkspaceID, dbName: DBName, body: AddGitBranchesEntryRequestBody): Promise<AddGitBranchesEntryResponse>;
|
2734
2948
|
removeGitBranchesEntry(workspace: WorkspaceID, dbName: DBName, gitBranch: string): Promise<void>;
|
2735
|
-
resolveBranch(workspace: WorkspaceID, dbName: DBName, gitBranch
|
2949
|
+
resolveBranch(workspace: WorkspaceID, dbName: DBName, gitBranch?: string, fallbackBranch?: string): Promise<ResolveBranchResponse>;
|
2736
2950
|
}
|
2737
2951
|
declare class BranchApi {
|
2738
2952
|
private extraProps;
|
2739
2953
|
constructor(extraProps: FetcherExtraProps);
|
2740
2954
|
getBranchList(workspace: WorkspaceID, dbName: DBName): Promise<ListBranchesResponse>;
|
2741
2955
|
getBranchDetails(workspace: WorkspaceID, database: DBName, branch: BranchName): Promise<DBBranch>;
|
2742
|
-
createBranch(workspace: WorkspaceID, database: DBName, branch: BranchName, from?: string, options?: CreateBranchRequestBody): Promise<
|
2956
|
+
createBranch(workspace: WorkspaceID, database: DBName, branch: BranchName, from?: string, options?: CreateBranchRequestBody): Promise<CreateBranchResponse>;
|
2743
2957
|
deleteBranch(workspace: WorkspaceID, database: DBName, branch: BranchName): Promise<void>;
|
2744
2958
|
updateBranchMetadata(workspace: WorkspaceID, database: DBName, branch: BranchName, metadata?: BranchMetadata): Promise<void>;
|
2745
2959
|
getBranchMetadata(workspace: WorkspaceID, database: DBName, branch: BranchName): Promise<BranchMetadata>;
|
@@ -2751,7 +2965,7 @@ declare class BranchApi {
|
|
2751
2965
|
declare class TableApi {
|
2752
2966
|
private extraProps;
|
2753
2967
|
constructor(extraProps: FetcherExtraProps);
|
2754
|
-
createTable(workspace: WorkspaceID, database: DBName, branch: BranchName, tableName: TableName): Promise<
|
2968
|
+
createTable(workspace: WorkspaceID, database: DBName, branch: BranchName, tableName: TableName): Promise<CreateTableResponse>;
|
2755
2969
|
deleteTable(workspace: WorkspaceID, database: DBName, branch: BranchName, tableName: TableName): Promise<void>;
|
2756
2970
|
updateTable(workspace: WorkspaceID, database: DBName, branch: BranchName, tableName: TableName, options: UpdateTableRequestBody): Promise<void>;
|
2757
2971
|
getTableSchema(workspace: WorkspaceID, database: DBName, branch: BranchName, tableName: TableName): Promise<GetTableSchemaResponse>;
|
@@ -2765,14 +2979,15 @@ declare class TableApi {
|
|
2765
2979
|
declare class RecordsApi {
|
2766
2980
|
private extraProps;
|
2767
2981
|
constructor(extraProps: FetcherExtraProps);
|
2768
|
-
insertRecord(workspace: WorkspaceID, database: DBName, branch: BranchName, tableName: TableName, record: Record<string, any
|
2982
|
+
insertRecord(workspace: WorkspaceID, database: DBName, branch: BranchName, tableName: TableName, record: Record<string, any>, options?: InsertRecordQueryParams): Promise<RecordUpdateResponse>;
|
2769
2983
|
insertRecordWithID(workspace: WorkspaceID, database: DBName, branch: BranchName, tableName: TableName, recordId: RecordID, record: Record<string, any>, options?: InsertRecordWithIDQueryParams): Promise<RecordUpdateResponse>;
|
2770
2984
|
updateRecordWithID(workspace: WorkspaceID, database: DBName, branch: BranchName, tableName: TableName, recordId: RecordID, record: Record<string, any>, options?: UpdateRecordWithIDQueryParams): Promise<RecordUpdateResponse>;
|
2771
2985
|
upsertRecordWithID(workspace: WorkspaceID, database: DBName, branch: BranchName, tableName: TableName, recordId: RecordID, record: Record<string, any>, options?: UpsertRecordWithIDQueryParams): Promise<RecordUpdateResponse>;
|
2772
|
-
deleteRecord(workspace: WorkspaceID, database: DBName, branch: BranchName, tableName: TableName, recordId: RecordID): Promise<
|
2773
|
-
getRecord(workspace: WorkspaceID, database: DBName, branch: BranchName, tableName: TableName, recordId: RecordID, options?:
|
2774
|
-
bulkInsertTableRecords(workspace: WorkspaceID, database: DBName, branch: BranchName, tableName: TableName, records: Record<string, any>[]): Promise<
|
2986
|
+
deleteRecord(workspace: WorkspaceID, database: DBName, branch: BranchName, tableName: TableName, recordId: RecordID, options?: DeleteRecordQueryParams): Promise<RecordUpdateResponse>;
|
2987
|
+
getRecord(workspace: WorkspaceID, database: DBName, branch: BranchName, tableName: TableName, recordId: RecordID, options?: GetRecordQueryParams): Promise<XataRecord$1>;
|
2988
|
+
bulkInsertTableRecords(workspace: WorkspaceID, database: DBName, branch: BranchName, tableName: TableName, records: Record<string, any>[], options?: BulkInsertTableRecordsQueryParams): Promise<BulkInsertResponse>;
|
2775
2989
|
queryTable(workspace: WorkspaceID, database: DBName, branch: BranchName, tableName: TableName, query: QueryTableRequestBody): Promise<QueryResponse>;
|
2990
|
+
searchTable(workspace: WorkspaceID, database: DBName, branch: BranchName, tableName: TableName, query: SearchTableRequestBody): Promise<SearchResponse>;
|
2776
2991
|
searchBranch(workspace: WorkspaceID, database: DBName, branch: BranchName, query: SearchBranchRequestBody): Promise<SearchResponse>;
|
2777
2992
|
}
|
2778
2993
|
|
@@ -2786,27 +3001,29 @@ declare type UnionToIntersection<T> = (T extends any ? (x: T) => any : never) ex
|
|
2786
3001
|
declare type If<Condition, Then, Else> = Condition extends true ? Then : Else;
|
2787
3002
|
declare type IsObject<T> = T extends Record<string, any> ? true : false;
|
2788
3003
|
declare type IsArray<T> = T extends Array<any> ? true : false;
|
2789
|
-
declare type NonEmptyArray<T> = T[] & {
|
2790
|
-
0: T;
|
2791
|
-
};
|
2792
3004
|
declare type RequiredBy<T, K extends keyof T> = T & {
|
2793
3005
|
[P in K]-?: NonNullable<T[P]>;
|
2794
3006
|
};
|
2795
3007
|
declare type GetArrayInnerType<T extends readonly any[]> = T[number];
|
2796
3008
|
declare type SingleOrArray<T> = T | T[];
|
3009
|
+
declare type OmitBy<T, K extends keyof T> = T extends any ? Omit<T, K> : never;
|
3010
|
+
declare type Without<T, U> = {
|
3011
|
+
[P in Exclude<keyof T, keyof U>]?: never;
|
3012
|
+
};
|
3013
|
+
declare type ExclusiveOr<T, U> = T | U extends object ? (Without<T, U> & U) | (Without<U, T> & T) : T | U;
|
2797
3014
|
|
2798
3015
|
declare type SelectableColumn<O, RecursivePath extends any[] = []> = '*' | 'id' | DataProps<O> | NestedColumns<O, RecursivePath>;
|
2799
|
-
declare type SelectedPick<O extends XataRecord, Key extends SelectableColumn<O>[]> = XataRecord & UnionToIntersection<Values<{
|
2800
|
-
[K in Key[number]]: NestedValueAtColumn<O, K> & XataRecord
|
3016
|
+
declare type SelectedPick<O extends XataRecord, Key extends SelectableColumn<O>[]> = XataRecord<O> & UnionToIntersection<Values<{
|
3017
|
+
[K in Key[number]]: NestedValueAtColumn<O, K> & XataRecord<O>;
|
2801
3018
|
}>>;
|
2802
|
-
declare type ValueAtColumn<O, P extends SelectableColumn<O>> = P extends '*' ? Values<O> : P extends 'id' ? string : P extends keyof O ? O[P] : P extends `${infer K}.${infer V}` ? K extends keyof O ? Values<O[K] extends
|
2803
|
-
V: ValueAtColumn<
|
2804
|
-
} : never
|
3019
|
+
declare type ValueAtColumn<O, P extends SelectableColumn<O>> = P extends '*' ? Values<O> : P extends 'id' ? string : P extends keyof O ? O[P] : P extends `${infer K}.${infer V}` ? K extends keyof O ? Values<NonNullable<O[K]> extends infer Item ? Item extends Record<string, any> ? V extends SelectableColumn<Item> ? {
|
3020
|
+
V: ValueAtColumn<Item, V>;
|
3021
|
+
} : never : O[K] : never> : never : never;
|
2805
3022
|
declare type MAX_RECURSION = 5;
|
2806
3023
|
declare type NestedColumns<O, RecursivePath extends any[]> = RecursivePath['length'] extends MAX_RECURSION ? never : If<IsObject<O>, Values<{
|
2807
|
-
[K in DataProps<O>]:
|
2808
|
-
If<IsObject<
|
2809
|
-
K
|
3024
|
+
[K in DataProps<O>]: NonNullable<O[K]> extends infer Item ? If<IsArray<Item>, K, // If the property is an array, we stop recursion. We don't support object arrays yet
|
3025
|
+
If<IsObject<Item>, Item extends XataRecord ? SelectableColumn<Item, [...RecursivePath, Item]> extends infer Column ? Column extends string ? K | `${K}.${Column}` : never : never : Item extends Date ? K : `${K}.${StringKeys<Item> | '*'}`, // This allows usage of objects that are not links
|
3026
|
+
K>> : never;
|
2810
3027
|
}>, never>;
|
2811
3028
|
declare type DataProps<O> = Exclude<StringKeys<O>, StringKeys<XataRecord>>;
|
2812
3029
|
declare type NestedValueAtColumn<O, Key extends SelectableColumn<O>> = Key extends `${infer N}.${infer M}` ? N extends DataProps<O> ? {
|
@@ -2833,27 +3050,37 @@ interface BaseData {
|
|
2833
3050
|
/**
|
2834
3051
|
* Represents a persisted record from the database.
|
2835
3052
|
*/
|
2836
|
-
interface XataRecord extends Identifiable {
|
3053
|
+
interface XataRecord<OriginalRecord extends XataRecord<any> = XataRecord<any>> extends Identifiable {
|
2837
3054
|
/**
|
2838
|
-
*
|
3055
|
+
* Get metadata of this record.
|
2839
3056
|
*/
|
2840
|
-
|
2841
|
-
/**
|
2842
|
-
* Number that is increased every time the record is updated.
|
2843
|
-
*/
|
2844
|
-
version: number;
|
2845
|
-
};
|
3057
|
+
getMetadata(): XataRecordMetadata;
|
2846
3058
|
/**
|
2847
3059
|
* Retrieves a refreshed copy of the current record from the database.
|
3060
|
+
* @param columns The columns to retrieve. If not specified, all first level properties are retrieved.
|
3061
|
+
* @returns The persisted record with the selected columns.
|
2848
3062
|
*/
|
2849
|
-
read(): Promise<Readonly<SelectedPick<
|
3063
|
+
read<K extends SelectableColumn<OriginalRecord>>(columns: K[]): Promise<Readonly<SelectedPick<OriginalRecord, typeof columns>> | null>;
|
3064
|
+
/**
|
3065
|
+
* Retrieves a refreshed copy of the current record from the database.
|
3066
|
+
* @returns The persisted record with all first level properties.
|
3067
|
+
*/
|
3068
|
+
read(): Promise<Readonly<SelectedPick<OriginalRecord, ['*']>> | null>;
|
2850
3069
|
/**
|
2851
3070
|
* Performs a partial update of the current record. On success a new object is
|
2852
3071
|
* returned and the current object is not mutated.
|
2853
|
-
* @param
|
2854
|
-
* @
|
3072
|
+
* @param partialUpdate The columns and their values that have to be updated.
|
3073
|
+
* @param columns The columns to retrieve. If not specified, all first level properties are retrieved.
|
3074
|
+
* @returns The persisted record with the selected columns.
|
2855
3075
|
*/
|
2856
|
-
update(partialUpdate: Partial<EditableData<Omit<
|
3076
|
+
update<K extends SelectableColumn<OriginalRecord>>(partialUpdate: Partial<EditableData<Omit<OriginalRecord, keyof XataRecord>>>, columns: K[]): Promise<Readonly<SelectedPick<OriginalRecord, typeof columns>>>;
|
3077
|
+
/**
|
3078
|
+
* Performs a partial update of the current record. On success a new object is
|
3079
|
+
* returned and the current object is not mutated.
|
3080
|
+
* @param partialUpdate The columns and their values that have to be updated.
|
3081
|
+
* @returns The persisted record with all first level properties.
|
3082
|
+
*/
|
3083
|
+
update(partialUpdate: Partial<EditableData<Omit<OriginalRecord, keyof XataRecord>>>): Promise<Readonly<SelectedPick<OriginalRecord, ['*']>>>;
|
2857
3084
|
/**
|
2858
3085
|
* Performs a deletion of the current record in the database.
|
2859
3086
|
*
|
@@ -2865,23 +3092,36 @@ declare type Link<Record extends XataRecord> = Omit<XataRecord, 'read' | 'update
|
|
2865
3092
|
/**
|
2866
3093
|
* Retrieves a refreshed copy of the current record from the database.
|
2867
3094
|
*/
|
2868
|
-
read(): Promise<Readonly<SelectedPick<Record, ['*']>> | null>;
|
3095
|
+
read<K extends SelectableColumn<Record>>(columns?: K[]): Promise<Readonly<SelectedPick<Record, typeof columns extends SelectableColumn<Record>[] ? typeof columns : ['*']>> | null>;
|
2869
3096
|
/**
|
2870
3097
|
* Performs a partial update of the current record. On success a new object is
|
2871
3098
|
* returned and the current object is not mutated.
|
2872
|
-
* @param
|
3099
|
+
* @param partialUpdate The columns and their values that have to be updated.
|
2873
3100
|
* @returns A new record containing the latest values for all the columns of the current record.
|
2874
3101
|
*/
|
2875
|
-
update(partialUpdate: Partial<EditableData<Omit<Record, keyof XataRecord
|
3102
|
+
update<K extends SelectableColumn<Record>>(partialUpdate: Partial<EditableData<Omit<Record, keyof XataRecord>>>, columns?: K[]): Promise<Readonly<SelectedPick<Record, typeof columns extends SelectableColumn<Record>[] ? typeof columns : ['*']>>>;
|
3103
|
+
/**
|
3104
|
+
* Performs a deletion of the current record in the database.
|
3105
|
+
*
|
3106
|
+
* @throws If the record was already deleted or if an error happened while performing the deletion.
|
3107
|
+
*/
|
3108
|
+
delete(): Promise<void>;
|
3109
|
+
};
|
3110
|
+
declare type XataRecordMetadata = {
|
3111
|
+
/**
|
3112
|
+
* Number that is increased every time the record is updated.
|
3113
|
+
*/
|
3114
|
+
version: number;
|
3115
|
+
warnings?: string[];
|
2876
3116
|
};
|
2877
3117
|
declare function isIdentifiable(x: any): x is Identifiable & Record<string, unknown>;
|
2878
3118
|
declare function isXataRecord(x: any): x is XataRecord & Record<string, unknown>;
|
2879
3119
|
declare type EditableData<O extends BaseData> = {
|
2880
3120
|
[K in keyof O]: O[K] extends XataRecord ? {
|
2881
3121
|
id: string;
|
2882
|
-
} : NonNullable<O[K]> extends XataRecord ? {
|
3122
|
+
} | string : NonNullable<O[K]> extends XataRecord ? {
|
2883
3123
|
id: string;
|
2884
|
-
} | null | undefined : O[K];
|
3124
|
+
} | string | null | undefined : O[K];
|
2885
3125
|
};
|
2886
3126
|
|
2887
3127
|
/**
|
@@ -2957,8 +3197,8 @@ declare type ValueTypeFilters<T> = T | T extends string ? StringTypeFilter : T e
|
|
2957
3197
|
],
|
2958
3198
|
}
|
2959
3199
|
*/
|
2960
|
-
declare type AggregatorFilter<
|
2961
|
-
[key in '$all' | '$any' | '$not' | '$none']?: SingleOrArray<Filter<
|
3200
|
+
declare type AggregatorFilter<T> = {
|
3201
|
+
[key in '$all' | '$any' | '$not' | '$none']?: SingleOrArray<Filter<T>>;
|
2962
3202
|
};
|
2963
3203
|
/**
|
2964
3204
|
* Existance filter
|
@@ -2973,10 +3213,88 @@ declare type BaseApiFilter<Record> = PropertyAccessFilter<Record> | AggregatorFi
|
|
2973
3213
|
* Injects the Api filters on nested properties
|
2974
3214
|
* Example: { filter: { settings: { plan: { $any: ['free', 'trial'] } } } }
|
2975
3215
|
*/
|
2976
|
-
declare type NestedApiFilter<T> =
|
3216
|
+
declare type NestedApiFilter<T> = {
|
2977
3217
|
[key in keyof T]?: T[key] extends Record<string, any> ? SingleOrArray<Filter<T[key]>> : PropertyFilter<T[key]>;
|
2978
|
-
}
|
2979
|
-
declare type Filter<
|
3218
|
+
};
|
3219
|
+
declare type Filter<T> = T extends Record<string, any> ? BaseApiFilter<T> | NestedApiFilter<T> : PropertyFilter<T>;
|
3220
|
+
|
3221
|
+
declare type DateBooster = {
|
3222
|
+
origin?: string;
|
3223
|
+
scale: string;
|
3224
|
+
decay: number;
|
3225
|
+
};
|
3226
|
+
declare type NumericBooster = {
|
3227
|
+
factor: number;
|
3228
|
+
};
|
3229
|
+
declare type ValueBooster<T extends string | number | boolean> = {
|
3230
|
+
value: T;
|
3231
|
+
factor: number;
|
3232
|
+
};
|
3233
|
+
declare type Boosters<O extends XataRecord> = Values<{
|
3234
|
+
[K in SelectableColumn<O>]: NonNullable<ValueAtColumn<O, K>> extends Date ? {
|
3235
|
+
dateBooster: {
|
3236
|
+
column: K;
|
3237
|
+
} & DateBooster;
|
3238
|
+
} : NonNullable<ValueAtColumn<O, K>> extends number ? ExclusiveOr<{
|
3239
|
+
numericBooster?: {
|
3240
|
+
column: K;
|
3241
|
+
} & NumericBooster;
|
3242
|
+
}, {
|
3243
|
+
valueBooster?: {
|
3244
|
+
column: K;
|
3245
|
+
} & ValueBooster<number>;
|
3246
|
+
}> : NonNullable<ValueAtColumn<O, K>> extends string | boolean ? {
|
3247
|
+
valueBooster: {
|
3248
|
+
column: K;
|
3249
|
+
} & ValueBooster<NonNullable<ValueAtColumn<O, K>>>;
|
3250
|
+
} : never;
|
3251
|
+
}>;
|
3252
|
+
|
3253
|
+
declare type SearchOptions<Schemas extends Record<string, BaseData>, Tables extends StringKeys<Schemas>> = {
|
3254
|
+
fuzziness?: FuzzinessExpression;
|
3255
|
+
prefix?: PrefixExpression;
|
3256
|
+
highlight?: HighlightExpression;
|
3257
|
+
tables?: Array<Tables | Values<{
|
3258
|
+
[Model in GetArrayInnerType<NonNullable<Tables[]>>]: {
|
3259
|
+
table: Model;
|
3260
|
+
filter?: Filter<SelectedPick<Schemas[Model] & XataRecord, ['*']>>;
|
3261
|
+
boosters?: Boosters<Schemas[Model] & XataRecord>[];
|
3262
|
+
};
|
3263
|
+
}>>;
|
3264
|
+
};
|
3265
|
+
declare type SearchPluginResult<Schemas extends Record<string, BaseData>> = {
|
3266
|
+
all: <Tables extends StringKeys<Schemas>>(query: string, options?: SearchOptions<Schemas, Tables>) => Promise<Values<{
|
3267
|
+
[Model in ExtractTables<Schemas, Tables, GetArrayInnerType<NonNullable<NonNullable<typeof options>['tables']>>>]: {
|
3268
|
+
table: Model;
|
3269
|
+
record: Awaited<SearchXataRecord<SelectedPick<Schemas[Model] & XataRecord, ['*']>>>;
|
3270
|
+
};
|
3271
|
+
}>[]>;
|
3272
|
+
byTable: <Tables extends StringKeys<Schemas>>(query: string, options?: SearchOptions<Schemas, Tables>) => Promise<{
|
3273
|
+
[Model in ExtractTables<Schemas, Tables, GetArrayInnerType<NonNullable<NonNullable<typeof options>['tables']>>>]?: Awaited<SearchXataRecord<SelectedPick<Schemas[Model] & XataRecord, ['*']>>[]>;
|
3274
|
+
}>;
|
3275
|
+
};
|
3276
|
+
declare class SearchPlugin<Schemas extends Record<string, BaseData>> extends XataPlugin {
|
3277
|
+
#private;
|
3278
|
+
private db;
|
3279
|
+
constructor(db: SchemaPluginResult<Schemas>, schemaTables?: Schemas.Table[]);
|
3280
|
+
build({ getFetchProps }: XataPluginOptions): SearchPluginResult<Schemas>;
|
3281
|
+
}
|
3282
|
+
declare type SearchXataRecord<Record extends XataRecord> = Omit<Record, 'getMetadata'> & {
|
3283
|
+
getMetadata: () => XataRecordMetadata & SearchExtraProperties;
|
3284
|
+
};
|
3285
|
+
declare type SearchExtraProperties = {
|
3286
|
+
table: string;
|
3287
|
+
highlight?: {
|
3288
|
+
[key: string]: string[] | {
|
3289
|
+
[key: string]: any;
|
3290
|
+
};
|
3291
|
+
};
|
3292
|
+
score?: number;
|
3293
|
+
};
|
3294
|
+
declare type ReturnTable<Table, Tables> = Table extends Tables ? Table : never;
|
3295
|
+
declare type ExtractTables<Schemas extends Record<string, BaseData>, Tables extends StringKeys<Schemas>, TableOptions extends GetArrayInnerType<NonNullable<NonNullable<SearchOptions<Schemas, Tables>>['tables']>>> = TableOptions extends `${infer Table}` ? ReturnTable<Table, Tables> : TableOptions extends {
|
3296
|
+
table: infer Table;
|
3297
|
+
} ? ReturnTable<Table, Tables> : never;
|
2980
3298
|
|
2981
3299
|
declare type SortDirection = 'asc' | 'desc';
|
2982
3300
|
declare type SortFilterExtended<T extends XataRecord> = {
|
@@ -2988,13 +3306,21 @@ declare type SortFilterBase<T extends XataRecord> = {
|
|
2988
3306
|
[Key in StringKeys<T>]: SortDirection;
|
2989
3307
|
};
|
2990
3308
|
|
2991
|
-
declare type
|
2992
|
-
|
2993
|
-
|
3309
|
+
declare type BaseOptions<T extends XataRecord> = {
|
3310
|
+
columns?: SelectableColumn<T>[];
|
3311
|
+
cache?: number;
|
3312
|
+
};
|
3313
|
+
declare type CursorQueryOptions = {
|
3314
|
+
pagination?: CursorNavigationOptions & OffsetNavigationOptions;
|
3315
|
+
filter?: never;
|
3316
|
+
sort?: never;
|
3317
|
+
};
|
3318
|
+
declare type OffsetQueryOptions<T extends XataRecord> = {
|
3319
|
+
pagination?: OffsetNavigationOptions;
|
2994
3320
|
filter?: FilterExpression;
|
2995
3321
|
sort?: SortFilter<T> | SortFilter<T>[];
|
2996
|
-
cache?: number;
|
2997
3322
|
};
|
3323
|
+
declare type QueryOptions<T extends XataRecord> = BaseOptions<T> & (CursorQueryOptions | OffsetQueryOptions<T>);
|
2998
3324
|
/**
|
2999
3325
|
* Query objects contain the information of all filters, sorting, etc. to be included in the database query.
|
3000
3326
|
*
|
@@ -3004,8 +3330,8 @@ declare type QueryOptions<T extends XataRecord> = {
|
|
3004
3330
|
declare class Query<Record extends XataRecord, Result extends XataRecord = Record> implements Paginable<Record, Result> {
|
3005
3331
|
#private;
|
3006
3332
|
readonly meta: PaginationQueryMeta;
|
3007
|
-
readonly records: Result
|
3008
|
-
constructor(repository: Repository<Record> | null, table: string, data: Partial<QueryOptions<Record>>,
|
3333
|
+
readonly records: RecordArray<Result>;
|
3334
|
+
constructor(repository: Repository<Record> | null, table: string, data: Partial<QueryOptions<Record>>, rawParent?: Partial<QueryOptions<Record>>);
|
3009
3335
|
getQueryOptions(): QueryOptions<Record>;
|
3010
3336
|
key(): string;
|
3011
3337
|
/**
|
@@ -3037,73 +3363,183 @@ declare class Query<Record extends XataRecord, Result extends XataRecord = Recor
|
|
3037
3363
|
*
|
3038
3364
|
* ```
|
3039
3365
|
* query.filter("columnName", columnValue)
|
3040
|
-
* query.filter(
|
3041
|
-
*
|
3042
|
-
*
|
3366
|
+
* query.filter("columnName", operator(columnValue)) // Use gt, gte, lt, lte, startsWith,...
|
3367
|
+
* ```
|
3368
|
+
*
|
3369
|
+
* @param column The name of the column to filter.
|
3370
|
+
* @param value The value to filter.
|
3371
|
+
* @returns A new Query object.
|
3372
|
+
*/
|
3373
|
+
filter<F extends SelectableColumn<Record>>(column: F, value: Filter<ValueAtColumn<Record, F>>): Query<Record, Result>;
|
3374
|
+
/**
|
3375
|
+
* Builds a new query object adding one or more constraints. Examples:
|
3376
|
+
*
|
3377
|
+
* ```
|
3378
|
+
* query.filter({ "columnName": columnValue })
|
3043
3379
|
* query.filter({
|
3044
3380
|
* "columnName": operator(columnValue) // Use gt, gte, lt, lte, startsWith,...
|
3045
3381
|
* })
|
3046
3382
|
* ```
|
3047
3383
|
*
|
3384
|
+
* @param filters A filter object
|
3048
3385
|
* @returns A new Query object.
|
3049
3386
|
*/
|
3050
3387
|
filter(filters: Filter<Record>): Query<Record, Result>;
|
3051
|
-
filter<F extends SelectableColumn<Record>>(column: F, value: Filter<ValueAtColumn<Record, F>>): Query<Record, Result>;
|
3052
3388
|
/**
|
3053
3389
|
* Builds a new query with a new sort option.
|
3054
3390
|
* @param column The column name.
|
3055
3391
|
* @param direction The direction. Either ascending or descending.
|
3056
3392
|
* @returns A new Query object.
|
3057
3393
|
*/
|
3058
|
-
sort<F extends SelectableColumn<Record>>(column: F, direction
|
3394
|
+
sort<F extends SelectableColumn<Record>>(column: F, direction?: SortDirection): Query<Record, Result>;
|
3059
3395
|
/**
|
3060
3396
|
* Builds a new query specifying the set of columns to be returned in the query response.
|
3061
3397
|
* @param columns Array of column names to be returned by the query.
|
3062
3398
|
* @returns A new Query object.
|
3063
3399
|
*/
|
3064
|
-
select<K extends SelectableColumn<Record>>(columns:
|
3400
|
+
select<K extends SelectableColumn<Record>>(columns: K[]): Query<Record, SelectedPick<Record, K[]>>;
|
3401
|
+
/**
|
3402
|
+
* Get paginated results
|
3403
|
+
*
|
3404
|
+
* @returns A page of results
|
3405
|
+
*/
|
3065
3406
|
getPaginated(): Promise<Page<Record, Result>>;
|
3066
|
-
|
3407
|
+
/**
|
3408
|
+
* Get paginated results
|
3409
|
+
*
|
3410
|
+
* @param options Pagination options
|
3411
|
+
* @returns A page of results
|
3412
|
+
*/
|
3413
|
+
getPaginated(options: OmitBy<QueryOptions<Record>, 'columns'>): Promise<Page<Record, Result>>;
|
3414
|
+
/**
|
3415
|
+
* Get paginated results
|
3416
|
+
*
|
3417
|
+
* @param options Pagination options
|
3418
|
+
* @returns A page of results
|
3419
|
+
*/
|
3067
3420
|
getPaginated<Options extends RequiredBy<QueryOptions<Record>, 'columns'>>(options: Options): Promise<Page<Record, SelectedPick<Record, typeof options['columns']>>>;
|
3421
|
+
/**
|
3422
|
+
* Get results in an iterator
|
3423
|
+
*
|
3424
|
+
* @async
|
3425
|
+
* @returns Async interable of results
|
3426
|
+
*/
|
3068
3427
|
[Symbol.asyncIterator](): AsyncIterableIterator<Result>;
|
3069
|
-
|
3070
|
-
|
3071
|
-
|
3428
|
+
/**
|
3429
|
+
* Build an iterator of results
|
3430
|
+
*
|
3431
|
+
* @returns Async generator of results array
|
3432
|
+
*/
|
3433
|
+
getIterator(): AsyncGenerator<Result[]>;
|
3434
|
+
/**
|
3435
|
+
* Build an iterator of results
|
3436
|
+
*
|
3437
|
+
* @param options Pagination options with batchSize
|
3438
|
+
* @returns Async generator of results array
|
3439
|
+
*/
|
3440
|
+
getIterator(options: OmitBy<QueryOptions<Record>, 'columns' | 'pagination'> & {
|
3441
|
+
batchSize?: number;
|
3442
|
+
}): AsyncGenerator<Result[]>;
|
3443
|
+
/**
|
3444
|
+
* Build an iterator of results
|
3445
|
+
*
|
3446
|
+
* @param options Pagination options with batchSize
|
3447
|
+
* @returns Async generator of results array
|
3448
|
+
*/
|
3449
|
+
getIterator<Options extends RequiredBy<OmitBy<QueryOptions<Record>, 'pagination'>, 'columns'> & {
|
3450
|
+
batchSize?: number;
|
3451
|
+
}>(options: Options): AsyncGenerator<SelectedPick<Record, typeof options['columns']>[]>;
|
3072
3452
|
/**
|
3073
3453
|
* Performs the query in the database and returns a set of results.
|
3454
|
+
* @returns An array of records from the database.
|
3455
|
+
*/
|
3456
|
+
getMany(): Promise<RecordArray<Result>>;
|
3457
|
+
/**
|
3458
|
+
* Performs the query in the database and returns a set of results.
|
3459
|
+
* @param options Additional options to be used when performing the query.
|
3460
|
+
* @returns An array of records from the database.
|
3461
|
+
*/
|
3462
|
+
getMany<Options extends RequiredBy<QueryOptions<Record>, 'columns'>>(options: Options): Promise<RecordArray<SelectedPick<Record, typeof options['columns']>>>;
|
3463
|
+
/**
|
3464
|
+
* Performs the query in the database and returns a set of results.
|
3465
|
+
* @param options Additional options to be used when performing the query.
|
3466
|
+
* @returns An array of records from the database.
|
3467
|
+
*/
|
3468
|
+
getMany(options: OmitBy<QueryOptions<Record>, 'columns'>): Promise<RecordArray<Result>>;
|
3469
|
+
/**
|
3470
|
+
* Performs the query in the database and returns all the results.
|
3471
|
+
* Warning: If there are a large number of results, this method can have performance implications.
|
3472
|
+
* @returns An array of records from the database.
|
3473
|
+
*/
|
3474
|
+
getAll(): Promise<Result[]>;
|
3475
|
+
/**
|
3476
|
+
* Performs the query in the database and returns all the results.
|
3477
|
+
* Warning: If there are a large number of results, this method can have performance implications.
|
3074
3478
|
* @param options Additional options to be used when performing the query.
|
3075
3479
|
* @returns An array of records from the database.
|
3076
3480
|
*/
|
3077
|
-
|
3078
|
-
|
3079
|
-
|
3481
|
+
getAll<Options extends RequiredBy<OmitBy<QueryOptions<Record>, 'pagination'>, 'columns'> & {
|
3482
|
+
batchSize?: number;
|
3483
|
+
}>(options: Options): Promise<SelectedPick<Record, typeof options['columns']>[]>;
|
3080
3484
|
/**
|
3081
3485
|
* Performs the query in the database and returns all the results.
|
3082
3486
|
* Warning: If there are a large number of results, this method can have performance implications.
|
3083
3487
|
* @param options Additional options to be used when performing the query.
|
3084
3488
|
* @returns An array of records from the database.
|
3085
3489
|
*/
|
3086
|
-
getAll(
|
3087
|
-
|
3088
|
-
|
3490
|
+
getAll(options: OmitBy<QueryOptions<Record>, 'columns' | 'pagination'> & {
|
3491
|
+
batchSize?: number;
|
3492
|
+
}): Promise<Result[]>;
|
3089
3493
|
/**
|
3090
3494
|
* Performs the query in the database and returns the first result.
|
3091
|
-
* @param options Additional options to be used when performing the query.
|
3092
3495
|
* @returns The first record that matches the query, or null if no record matched the query.
|
3093
3496
|
*/
|
3094
3497
|
getFirst(): Promise<Result | null>;
|
3095
|
-
|
3096
|
-
|
3498
|
+
/**
|
3499
|
+
* Performs the query in the database and returns the first result.
|
3500
|
+
* @param options Additional options to be used when performing the query.
|
3501
|
+
* @returns The first record that matches the query, or null if no record matched the query.
|
3502
|
+
*/
|
3503
|
+
getFirst<Options extends RequiredBy<OmitBy<QueryOptions<Record>, 'pagination'>, 'columns'>>(options: Options): Promise<SelectedPick<Record, typeof options['columns']> | null>;
|
3504
|
+
/**
|
3505
|
+
* Performs the query in the database and returns the first result.
|
3506
|
+
* @param options Additional options to be used when performing the query.
|
3507
|
+
* @returns The first record that matches the query, or null if no record matched the query.
|
3508
|
+
*/
|
3509
|
+
getFirst(options: OmitBy<QueryOptions<Record>, 'columns' | 'pagination'>): Promise<Result | null>;
|
3097
3510
|
/**
|
3098
3511
|
* Builds a new query object adding a cache TTL in milliseconds.
|
3099
3512
|
* @param ttl The cache TTL in milliseconds.
|
3100
3513
|
* @returns A new Query object.
|
3101
3514
|
*/
|
3102
3515
|
cache(ttl: number): Query<Record, Result>;
|
3516
|
+
/**
|
3517
|
+
* Retrieve next page of records
|
3518
|
+
*
|
3519
|
+
* @returns A new page object.
|
3520
|
+
*/
|
3103
3521
|
nextPage(size?: number, offset?: number): Promise<Page<Record, Result>>;
|
3522
|
+
/**
|
3523
|
+
* Retrieve previous page of records
|
3524
|
+
*
|
3525
|
+
* @returns A new page object
|
3526
|
+
*/
|
3104
3527
|
previousPage(size?: number, offset?: number): Promise<Page<Record, Result>>;
|
3528
|
+
/**
|
3529
|
+
* Retrieve first page of records
|
3530
|
+
*
|
3531
|
+
* @returns A new page object
|
3532
|
+
*/
|
3105
3533
|
firstPage(size?: number, offset?: number): Promise<Page<Record, Result>>;
|
3534
|
+
/**
|
3535
|
+
* Retrieve last page of records
|
3536
|
+
*
|
3537
|
+
* @returns A new page object
|
3538
|
+
*/
|
3106
3539
|
lastPage(size?: number, offset?: number): Promise<Page<Record, Result>>;
|
3540
|
+
/**
|
3541
|
+
* @returns Boolean indicating if there is a next page
|
3542
|
+
*/
|
3107
3543
|
hasNextPage(): boolean;
|
3108
3544
|
}
|
3109
3545
|
|
@@ -3115,7 +3551,7 @@ declare type PaginationQueryMeta = {
|
|
3115
3551
|
};
|
3116
3552
|
interface Paginable<Record extends XataRecord, Result extends XataRecord = Record> {
|
3117
3553
|
meta: PaginationQueryMeta;
|
3118
|
-
records: Result
|
3554
|
+
records: RecordArray<Result>;
|
3119
3555
|
nextPage(size?: number, offset?: number): Promise<Page<Record, Result>>;
|
3120
3556
|
previousPage(size?: number, offset?: number): Promise<Page<Record, Result>>;
|
3121
3557
|
firstPage(size?: number, offset?: number): Promise<Page<Record, Result>>;
|
@@ -3135,7 +3571,7 @@ declare class Page<Record extends XataRecord, Result extends XataRecord = Record
|
|
3135
3571
|
/**
|
3136
3572
|
* The set of results for this page.
|
3137
3573
|
*/
|
3138
|
-
readonly records: Result
|
3574
|
+
readonly records: RecordArray<Result>;
|
3139
3575
|
constructor(query: Query<Record, Result>, meta: PaginationQueryMeta, records?: Result[]);
|
3140
3576
|
/**
|
3141
3577
|
* Retrieves the next page of results.
|
@@ -3183,42 +3619,154 @@ declare type OffsetNavigationOptions = {
|
|
3183
3619
|
size?: number;
|
3184
3620
|
offset?: number;
|
3185
3621
|
};
|
3186
|
-
declare type PaginationOptions = CursorNavigationOptions & OffsetNavigationOptions;
|
3187
3622
|
declare const PAGINATION_MAX_SIZE = 200;
|
3188
|
-
declare const PAGINATION_DEFAULT_SIZE =
|
3623
|
+
declare const PAGINATION_DEFAULT_SIZE = 20;
|
3189
3624
|
declare const PAGINATION_MAX_OFFSET = 800;
|
3190
3625
|
declare const PAGINATION_DEFAULT_OFFSET = 0;
|
3626
|
+
declare function isCursorPaginationOptions(options: Record<string, unknown> | undefined | null): options is CursorNavigationOptions;
|
3627
|
+
declare class RecordArray<Result extends XataRecord> extends Array<Result> {
|
3628
|
+
#private;
|
3629
|
+
constructor(page: Paginable<any, Result>, overrideRecords?: Result[]);
|
3630
|
+
static parseConstructorParams(...args: any[]): any[];
|
3631
|
+
toArray(): Result[];
|
3632
|
+
map<U>(callbackfn: (value: Result, index: number, array: Result[]) => U, thisArg?: any): U[];
|
3633
|
+
/**
|
3634
|
+
* Retrieve next page of records
|
3635
|
+
*
|
3636
|
+
* @returns A new array of objects
|
3637
|
+
*/
|
3638
|
+
nextPage(size?: number, offset?: number): Promise<RecordArray<Result>>;
|
3639
|
+
/**
|
3640
|
+
* Retrieve previous page of records
|
3641
|
+
*
|
3642
|
+
* @returns A new array of objects
|
3643
|
+
*/
|
3644
|
+
previousPage(size?: number, offset?: number): Promise<RecordArray<Result>>;
|
3645
|
+
/**
|
3646
|
+
* Retrieve first page of records
|
3647
|
+
*
|
3648
|
+
* @returns A new array of objects
|
3649
|
+
*/
|
3650
|
+
firstPage(size?: number, offset?: number): Promise<RecordArray<Result>>;
|
3651
|
+
/**
|
3652
|
+
* Retrieve last page of records
|
3653
|
+
*
|
3654
|
+
* @returns A new array of objects
|
3655
|
+
*/
|
3656
|
+
lastPage(size?: number, offset?: number): Promise<RecordArray<Result>>;
|
3657
|
+
/**
|
3658
|
+
* @returns Boolean indicating if there is a next page
|
3659
|
+
*/
|
3660
|
+
hasNextPage(): boolean;
|
3661
|
+
}
|
3191
3662
|
|
3192
3663
|
/**
|
3193
3664
|
* Common interface for performing operations on a table.
|
3194
3665
|
*/
|
3195
3666
|
declare abstract class Repository<Data extends BaseData, Record extends XataRecord = Data & XataRecord> extends Query<Record, Readonly<SelectedPick<Record, ['*']>>> {
|
3196
|
-
abstract create(object: EditableData<Data> & Partial<Identifiable
|
3667
|
+
abstract create<K extends SelectableColumn<Record>>(object: Omit<EditableData<Data>, 'id'> & Partial<Identifiable>, columns: K[]): Promise<Readonly<SelectedPick<Record, typeof columns>>>;
|
3668
|
+
abstract create(object: Omit<EditableData<Data>, 'id'> & Partial<Identifiable>): Promise<Readonly<SelectedPick<Record, ['*']>>>;
|
3669
|
+
/**
|
3670
|
+
* Creates a single record in the table with a unique id.
|
3671
|
+
* @param id The unique id.
|
3672
|
+
* @param object Object containing the column names with their values to be stored in the table.
|
3673
|
+
* @param columns Array of columns to be returned. If not specified, first level columns will be returned.
|
3674
|
+
* @returns The full persisted record.
|
3675
|
+
*/
|
3676
|
+
abstract create<K extends SelectableColumn<Record>>(id: string, object: Omit<EditableData<Data>, 'id'>, columns: K[]): Promise<Readonly<SelectedPick<Record, typeof columns>>>;
|
3197
3677
|
/**
|
3198
3678
|
* Creates a single record in the table with a unique id.
|
3199
3679
|
* @param id The unique id.
|
3200
3680
|
* @param object Object containing the column names with their values to be stored in the table.
|
3201
3681
|
* @returns The full persisted record.
|
3202
3682
|
*/
|
3203
|
-
abstract create(id: string, object: EditableData<Data>): Promise<Readonly<SelectedPick<Record, ['*']>>>;
|
3683
|
+
abstract create(id: string, object: Omit<EditableData<Data>, 'id'>): Promise<Readonly<SelectedPick<Record, ['*']>>>;
|
3204
3684
|
/**
|
3205
3685
|
* Creates multiple records in the table.
|
3206
3686
|
* @param objects Array of objects with the column names and the values to be stored in the table.
|
3207
|
-
* @
|
3687
|
+
* @param columns Array of columns to be returned. If not specified, first level columns will be returned.
|
3688
|
+
* @returns Array of the persisted records in order.
|
3689
|
+
*/
|
3690
|
+
abstract create<K extends SelectableColumn<Record>>(objects: Array<Omit<EditableData<Data>, 'id'> & Partial<Identifiable>>, columns: K[]): Promise<Readonly<SelectedPick<Record, typeof columns>>[]>;
|
3691
|
+
/**
|
3692
|
+
* Creates multiple records in the table.
|
3693
|
+
* @param objects Array of objects with the column names and the values to be stored in the table.
|
3694
|
+
* @returns Array of the persisted records in order.
|
3695
|
+
*/
|
3696
|
+
abstract create(objects: Array<Omit<EditableData<Data>, 'id'> & Partial<Identifiable>>): Promise<Readonly<SelectedPick<Record, ['*']>>[]>;
|
3697
|
+
/**
|
3698
|
+
* Queries a single record from the table given its unique id.
|
3699
|
+
* @param id The unique id.
|
3700
|
+
* @param columns Array of columns to be returned. If not specified, first level columns will be returned.
|
3701
|
+
* @returns The persisted record for the given id or null if the record could not be found.
|
3208
3702
|
*/
|
3209
|
-
abstract
|
3703
|
+
abstract read<K extends SelectableColumn<Record>>(id: string, columns: K[]): Promise<Readonly<SelectedPick<Record, typeof columns> | null>>;
|
3210
3704
|
/**
|
3211
3705
|
* Queries a single record from the table given its unique id.
|
3212
3706
|
* @param id The unique id.
|
3213
3707
|
* @returns The persisted record for the given id or null if the record could not be found.
|
3214
3708
|
*/
|
3215
3709
|
abstract read(id: string): Promise<Readonly<SelectedPick<Record, ['*']> | null>>;
|
3710
|
+
/**
|
3711
|
+
* Queries multiple records from the table given their unique id.
|
3712
|
+
* @param ids The unique ids array.
|
3713
|
+
* @param columns Array of columns to be returned. If not specified, first level columns will be returned.
|
3714
|
+
* @returns The persisted records for the given ids in order (if a record could not be found null is returned).
|
3715
|
+
*/
|
3716
|
+
abstract read<K extends SelectableColumn<Record>>(ids: string[], columns: K[]): Promise<Array<Readonly<SelectedPick<Record, typeof columns>> | null>>;
|
3717
|
+
/**
|
3718
|
+
* Queries multiple records from the table given their unique id.
|
3719
|
+
* @param ids The unique ids array.
|
3720
|
+
* @returns The persisted records for the given ids in order (if a record could not be found null is returned).
|
3721
|
+
*/
|
3722
|
+
abstract read(ids: string[]): Promise<Array<Readonly<SelectedPick<Record, ['*']>> | null>>;
|
3723
|
+
/**
|
3724
|
+
* Queries a single record from the table by the id in the object.
|
3725
|
+
* @param object Object containing the id of the record.
|
3726
|
+
* @param columns Array of columns to be returned. If not specified, first level columns will be returned.
|
3727
|
+
* @returns The persisted record for the given id or null if the record could not be found.
|
3728
|
+
*/
|
3729
|
+
abstract read<K extends SelectableColumn<Record>>(object: Identifiable, columns: K[]): Promise<Readonly<SelectedPick<Record, typeof columns> | null>>;
|
3730
|
+
/**
|
3731
|
+
* Queries a single record from the table by the id in the object.
|
3732
|
+
* @param object Object containing the id of the record.
|
3733
|
+
* @returns The persisted record for the given id or null if the record could not be found.
|
3734
|
+
*/
|
3735
|
+
abstract read(object: Identifiable): Promise<Readonly<SelectedPick<Record, ['*']> | null>>;
|
3736
|
+
/**
|
3737
|
+
* Queries multiple records from the table by the ids in the objects.
|
3738
|
+
* @param objects Array of objects containing the ids of the records.
|
3739
|
+
* @param columns Array of columns to be returned. If not specified, first level columns will be returned.
|
3740
|
+
* @returns The persisted records for the given ids in order (if a record could not be found null is returned).
|
3741
|
+
*/
|
3742
|
+
abstract read<K extends SelectableColumn<Record>>(objects: Identifiable[], columns: K[]): Promise<Array<Readonly<SelectedPick<Record, typeof columns>> | null>>;
|
3743
|
+
/**
|
3744
|
+
* Queries multiple records from the table by the ids in the objects.
|
3745
|
+
* @param objects Array of objects containing the ids of the records.
|
3746
|
+
* @returns The persisted records for the given ids in order (if a record could not be found null is returned).
|
3747
|
+
*/
|
3748
|
+
abstract read(objects: Identifiable[]): Promise<Array<Readonly<SelectedPick<Record, ['*']>> | null>>;
|
3749
|
+
/**
|
3750
|
+
* Partially update a single record.
|
3751
|
+
* @param object An object with its id and the columns to be updated.
|
3752
|
+
* @param columns Array of columns to be returned. If not specified, first level columns will be returned.
|
3753
|
+
* @returns The full persisted record.
|
3754
|
+
*/
|
3755
|
+
abstract update<K extends SelectableColumn<Record>>(object: Partial<EditableData<Data>> & Identifiable, columns: K[]): Promise<Readonly<SelectedPick<Record, typeof columns>>>;
|
3216
3756
|
/**
|
3217
3757
|
* Partially update a single record.
|
3218
3758
|
* @param object An object with its id and the columns to be updated.
|
3219
3759
|
* @returns The full persisted record.
|
3220
3760
|
*/
|
3221
3761
|
abstract update(object: Partial<EditableData<Data>> & Identifiable): Promise<Readonly<SelectedPick<Record, ['*']>>>;
|
3762
|
+
/**
|
3763
|
+
* Partially update a single record given its unique id.
|
3764
|
+
* @param id The unique id.
|
3765
|
+
* @param object The column names and their values that have to be updated.
|
3766
|
+
* @param columns Array of columns to be returned. If not specified, first level columns will be returned.
|
3767
|
+
* @returns The full persisted record.
|
3768
|
+
*/
|
3769
|
+
abstract update<K extends SelectableColumn<Record>>(id: string, object: Partial<EditableData<Data>>, columns: K[]): Promise<Readonly<SelectedPick<Record, typeof columns>>>;
|
3222
3770
|
/**
|
3223
3771
|
* Partially update a single record given its unique id.
|
3224
3772
|
* @param id The unique id.
|
@@ -3229,9 +3777,24 @@ declare abstract class Repository<Data extends BaseData, Record extends XataReco
|
|
3229
3777
|
/**
|
3230
3778
|
* Partially updates multiple records.
|
3231
3779
|
* @param objects An array of objects with their ids and columns to be updated.
|
3232
|
-
* @
|
3780
|
+
* @param columns Array of columns to be returned. If not specified, first level columns will be returned.
|
3781
|
+
* @returns Array of the persisted records in order.
|
3782
|
+
*/
|
3783
|
+
abstract update<K extends SelectableColumn<Record>>(objects: Array<Partial<EditableData<Data>> & Identifiable>, columns: K[]): Promise<Readonly<SelectedPick<Record, typeof columns>>[]>;
|
3784
|
+
/**
|
3785
|
+
* Partially updates multiple records.
|
3786
|
+
* @param objects An array of objects with their ids and columns to be updated.
|
3787
|
+
* @returns Array of the persisted records in order.
|
3233
3788
|
*/
|
3234
3789
|
abstract update(objects: Array<Partial<EditableData<Data>> & Identifiable>): Promise<Readonly<SelectedPick<Record, ['*']>>[]>;
|
3790
|
+
/**
|
3791
|
+
* Creates or updates a single record. If a record exists with the given id,
|
3792
|
+
* it will be update, otherwise a new record will be created.
|
3793
|
+
* @param object Object containing the column names with their values to be persisted in the table.
|
3794
|
+
* @param columns Array of columns to be returned. If not specified, first level columns will be returned.
|
3795
|
+
* @returns The full persisted record.
|
3796
|
+
*/
|
3797
|
+
abstract createOrUpdate<K extends SelectableColumn<Record>>(object: EditableData<Data> & Identifiable, columns: K[]): Promise<Readonly<SelectedPick<Record, typeof columns>>>;
|
3235
3798
|
/**
|
3236
3799
|
* Creates or updates a single record. If a record exists with the given id,
|
3237
3800
|
* it will be update, otherwise a new record will be created.
|
@@ -3239,6 +3802,15 @@ declare abstract class Repository<Data extends BaseData, Record extends XataReco
|
|
3239
3802
|
* @returns The full persisted record.
|
3240
3803
|
*/
|
3241
3804
|
abstract createOrUpdate(object: EditableData<Data> & Identifiable): Promise<Readonly<SelectedPick<Record, ['*']>>>;
|
3805
|
+
/**
|
3806
|
+
* Creates or updates a single record. If a record exists with the given id,
|
3807
|
+
* it will be update, otherwise a new record will be created.
|
3808
|
+
* @param id A unique id.
|
3809
|
+
* @param object The column names and the values to be persisted.
|
3810
|
+
* @param columns Array of columns to be returned. If not specified, first level columns will be returned.
|
3811
|
+
* @returns The full persisted record.
|
3812
|
+
*/
|
3813
|
+
abstract createOrUpdate<K extends SelectableColumn<Record>>(id: string, object: Omit<EditableData<Data>, 'id'>, columns: K[]): Promise<Readonly<SelectedPick<Record, typeof columns>>>;
|
3242
3814
|
/**
|
3243
3815
|
* Creates or updates a single record. If a record exists with the given id,
|
3244
3816
|
* it will be update, otherwise a new record will be created.
|
@@ -3246,7 +3818,15 @@ declare abstract class Repository<Data extends BaseData, Record extends XataReco
|
|
3246
3818
|
* @param object The column names and the values to be persisted.
|
3247
3819
|
* @returns The full persisted record.
|
3248
3820
|
*/
|
3249
|
-
abstract createOrUpdate(id: string, object: EditableData<Data>): Promise<Readonly<SelectedPick<Record, ['*']>>>;
|
3821
|
+
abstract createOrUpdate(id: string, object: Omit<EditableData<Data>, 'id'>): Promise<Readonly<SelectedPick<Record, ['*']>>>;
|
3822
|
+
/**
|
3823
|
+
* Creates or updates a single record. If a record exists with the given id,
|
3824
|
+
* it will be update, otherwise a new record will be created.
|
3825
|
+
* @param objects Array of objects with the column names and the values to be stored in the table.
|
3826
|
+
* @param columns Array of columns to be returned. If not specified, first level columns will be returned.
|
3827
|
+
* @returns Array of the persisted records.
|
3828
|
+
*/
|
3829
|
+
abstract createOrUpdate<K extends SelectableColumn<Record>>(objects: Array<EditableData<Data> & Identifiable>, columns: K[]): Promise<Readonly<SelectedPick<Record, typeof columns>>[]>;
|
3250
3830
|
/**
|
3251
3831
|
* Creates or updates a single record. If a record exists with the given id,
|
3252
3832
|
* it will be update, otherwise a new record will be created.
|
@@ -3285,35 +3865,112 @@ declare abstract class Repository<Data extends BaseData, Record extends XataReco
|
|
3285
3865
|
* @returns The found records.
|
3286
3866
|
*/
|
3287
3867
|
abstract search(query: string, options?: {
|
3288
|
-
fuzziness?:
|
3289
|
-
|
3868
|
+
fuzziness?: FuzzinessExpression;
|
3869
|
+
prefix?: PrefixExpression;
|
3870
|
+
highlight?: HighlightExpression;
|
3871
|
+
filter?: Filter<Record>;
|
3872
|
+
boosters?: Boosters<Record>[];
|
3873
|
+
}): Promise<SearchXataRecord<SelectedPick<Record, ['*']>>[]>;
|
3290
3874
|
abstract query<Result extends XataRecord>(query: Query<Record, Result>): Promise<Page<Record, Result>>;
|
3291
3875
|
}
|
3292
3876
|
declare class RestRepository<Data extends BaseData, Record extends XataRecord = Data & XataRecord> extends Query<Record, SelectedPick<Record, ['*']>> implements Repository<Data, Record> {
|
3293
3877
|
#private;
|
3294
|
-
db: SchemaPluginResult<any>;
|
3295
3878
|
constructor(options: {
|
3296
3879
|
table: string;
|
3297
3880
|
db: SchemaPluginResult<any>;
|
3298
3881
|
pluginOptions: XataPluginOptions;
|
3882
|
+
schemaTables?: Table[];
|
3299
3883
|
});
|
3300
|
-
create(object: EditableData<Data>): Promise<SelectedPick<Record, ['*']
|
3301
|
-
create(recordId: string, object: EditableData<Data>): Promise<SelectedPick<Record, ['*']
|
3302
|
-
create(objects: EditableData<Data>[]): Promise<SelectedPick<Record, ['*']
|
3303
|
-
|
3884
|
+
create(object: EditableData<Data>): Promise<Readonly<SelectedPick<Record, ['*']>>>;
|
3885
|
+
create(recordId: string, object: EditableData<Data>): Promise<Readonly<SelectedPick<Record, ['*']>>>;
|
3886
|
+
create(objects: EditableData<Data>[]): Promise<Readonly<SelectedPick<Record, ['*']>>[]>;
|
3887
|
+
create<K extends SelectableColumn<Record>>(object: EditableData<Data>, columns: K[]): Promise<Readonly<SelectedPick<Record, typeof columns>>>;
|
3888
|
+
create<K extends SelectableColumn<Record>>(recordId: string, object: EditableData<Data>, columns: K[]): Promise<Readonly<SelectedPick<Record, typeof columns>>>;
|
3889
|
+
create<K extends SelectableColumn<Record>>(objects: EditableData<Data>[], columns: K[]): Promise<Readonly<SelectedPick<Record, typeof columns>>[]>;
|
3890
|
+
read(recordId: string): Promise<Readonly<SelectedPick<Record, ['*']>> | null>;
|
3891
|
+
read(recordIds: string[]): Promise<Array<Readonly<SelectedPick<Record, ['*']>>>>;
|
3892
|
+
read(object: Identifiable): Promise<Readonly<SelectedPick<Record, ['*']>> | null>;
|
3893
|
+
read(objects: Identifiable[]): Promise<Array<Readonly<SelectedPick<Record, ['*']>>>>;
|
3894
|
+
read<K extends SelectableColumn<Record>>(recordId: string, columns: K[]): Promise<Readonly<SelectedPick<Record, typeof columns>> | null>;
|
3895
|
+
read<K extends SelectableColumn<Record>>(recordIds: string[], columns: K[]): Promise<Array<Readonly<SelectedPick<Record, typeof columns>>>>;
|
3896
|
+
read<K extends SelectableColumn<Record>>(object: Identifiable, columns: K[]): Promise<Readonly<SelectedPick<Record, typeof columns>> | null>;
|
3897
|
+
read<K extends SelectableColumn<Record>>(objects: Identifiable[], columns: K[]): Promise<Array<Readonly<SelectedPick<Record, typeof columns>>>>;
|
3304
3898
|
update(object: Partial<EditableData<Data>> & Identifiable): Promise<SelectedPick<Record, ['*']>>;
|
3305
3899
|
update(recordId: string, object: Partial<EditableData<Data>>): Promise<SelectedPick<Record, ['*']>>;
|
3306
3900
|
update(objects: Array<Partial<EditableData<Data>> & Identifiable>): Promise<SelectedPick<Record, ['*']>[]>;
|
3901
|
+
update<K extends SelectableColumn<Record>>(object: Partial<EditableData<Data>> & Identifiable, columns: K[]): Promise<SelectedPick<Record, typeof columns>>;
|
3902
|
+
update<K extends SelectableColumn<Record>>(recordId: string, object: Partial<EditableData<Data>>, columns: K[]): Promise<SelectedPick<Record, typeof columns>>;
|
3903
|
+
update<K extends SelectableColumn<Record>>(objects: Array<Partial<EditableData<Data>> & Identifiable>, columns: K[]): Promise<SelectedPick<Record, typeof columns>[]>;
|
3307
3904
|
createOrUpdate(object: EditableData<Data>): Promise<SelectedPick<Record, ['*']>>;
|
3308
3905
|
createOrUpdate(recordId: string, object: EditableData<Data>): Promise<SelectedPick<Record, ['*']>>;
|
3309
3906
|
createOrUpdate(objects: EditableData<Data>[]): Promise<SelectedPick<Record, ['*']>[]>;
|
3907
|
+
createOrUpdate<K extends SelectableColumn<Record>>(object: EditableData<Data>, columns: K[]): Promise<SelectedPick<Record, typeof columns>>;
|
3908
|
+
createOrUpdate<K extends SelectableColumn<Record>>(recordId: string, object: EditableData<Data>, columns: K[]): Promise<SelectedPick<Record, typeof columns>>;
|
3909
|
+
createOrUpdate<K extends SelectableColumn<Record>>(objects: EditableData<Data>[], columns: K[]): Promise<SelectedPick<Record, typeof columns>[]>;
|
3310
3910
|
delete(a: string | Identifiable | Array<string | Identifiable>): Promise<void>;
|
3311
3911
|
search(query: string, options?: {
|
3312
|
-
fuzziness?:
|
3313
|
-
|
3912
|
+
fuzziness?: FuzzinessExpression;
|
3913
|
+
prefix?: PrefixExpression;
|
3914
|
+
highlight?: HighlightExpression;
|
3915
|
+
filter?: Filter<Record>;
|
3916
|
+
boosters?: Boosters<Record>[];
|
3917
|
+
}): Promise<any>;
|
3314
3918
|
query<Result extends XataRecord>(query: Query<Record, Result>): Promise<Page<Record, Result>>;
|
3315
3919
|
}
|
3316
3920
|
|
3921
|
+
declare type BaseSchema = {
|
3922
|
+
name: string;
|
3923
|
+
columns: readonly ({
|
3924
|
+
name: string;
|
3925
|
+
type: Column['type'];
|
3926
|
+
} | {
|
3927
|
+
name: string;
|
3928
|
+
type: 'link';
|
3929
|
+
link: {
|
3930
|
+
table: string;
|
3931
|
+
};
|
3932
|
+
} | {
|
3933
|
+
name: string;
|
3934
|
+
type: 'object';
|
3935
|
+
columns: {
|
3936
|
+
name: string;
|
3937
|
+
type: string;
|
3938
|
+
}[];
|
3939
|
+
})[];
|
3940
|
+
};
|
3941
|
+
declare type SchemaInference<T extends readonly BaseSchema[]> = T extends never[] ? Record<string, Record<string, any>> : T extends readonly unknown[] ? T[number] extends {
|
3942
|
+
name: string;
|
3943
|
+
columns: readonly unknown[];
|
3944
|
+
} ? {
|
3945
|
+
[K in T[number]['name']]: TableType<T[number], K>;
|
3946
|
+
} : never : never;
|
3947
|
+
declare type TableType<Tables, TableName> = Tables & {
|
3948
|
+
name: TableName;
|
3949
|
+
} extends infer Table ? Table extends {
|
3950
|
+
name: string;
|
3951
|
+
columns: infer Columns;
|
3952
|
+
} ? Columns extends readonly unknown[] ? Columns[number] extends {
|
3953
|
+
name: string;
|
3954
|
+
type: string;
|
3955
|
+
} ? Identifiable & {
|
3956
|
+
[K in Columns[number]['name']]?: PropertyType<Tables, Columns[number], K>;
|
3957
|
+
} : never : never : never : never;
|
3958
|
+
declare type PropertyType<Tables, Properties, PropertyName> = Properties & {
|
3959
|
+
name: PropertyName;
|
3960
|
+
} extends infer Property ? Property extends {
|
3961
|
+
name: string;
|
3962
|
+
type: infer Type;
|
3963
|
+
link?: {
|
3964
|
+
table: infer LinkedTable;
|
3965
|
+
};
|
3966
|
+
columns?: infer ObjectColumns;
|
3967
|
+
} ? (Type extends 'string' | 'text' | 'email' ? string : Type extends 'int' | 'float' ? number : Type extends 'bool' ? boolean : Type extends 'datetime' ? Date : Type extends 'multiple' ? string[] : Type extends 'object' ? ObjectColumns extends readonly unknown[] ? ObjectColumns[number] extends {
|
3968
|
+
name: string;
|
3969
|
+
type: string;
|
3970
|
+
} ? {
|
3971
|
+
[K in ObjectColumns[number]['name']]?: PropertyType<Tables, ObjectColumns[number], K>;
|
3972
|
+
} : never : never : Type extends 'link' ? TableType<Tables, LinkedTable> & XataRecord : never) | null : never : never;
|
3973
|
+
|
3317
3974
|
/**
|
3318
3975
|
* Operator to restrict results to only values that are greater than the given value.
|
3319
3976
|
*/
|
@@ -3397,38 +4054,10 @@ declare type SchemaPluginResult<Schemas extends Record<string, BaseData>> = {
|
|
3397
4054
|
};
|
3398
4055
|
declare class SchemaPlugin<Schemas extends Record<string, BaseData>> extends XataPlugin {
|
3399
4056
|
#private;
|
3400
|
-
|
3401
|
-
constructor(tableNames?: string[] | undefined);
|
4057
|
+
constructor(schemaTables?: Schemas.Table[]);
|
3402
4058
|
build(pluginOptions: XataPluginOptions): SchemaPluginResult<Schemas>;
|
3403
4059
|
}
|
3404
4060
|
|
3405
|
-
declare type SearchOptions<Schemas extends Record<string, BaseData>, Tables extends StringKeys<Schemas>> = {
|
3406
|
-
fuzziness?: number;
|
3407
|
-
tables?: Tables[];
|
3408
|
-
};
|
3409
|
-
declare type SearchPluginResult<Schemas extends Record<string, BaseData>> = {
|
3410
|
-
all: <Tables extends StringKeys<Schemas>>(query: string, options?: SearchOptions<Schemas, Tables>) => Promise<Values<{
|
3411
|
-
[Model in GetArrayInnerType<NonNullable<NonNullable<typeof options>['tables']>>]: {
|
3412
|
-
table: Model;
|
3413
|
-
record: Awaited<SelectedPick<Schemas[Model] & SearchXataRecord, ['*']>>;
|
3414
|
-
};
|
3415
|
-
}>[]>;
|
3416
|
-
byTable: <Tables extends StringKeys<Schemas>>(query: string, options?: SearchOptions<Schemas, Tables>) => Promise<{
|
3417
|
-
[Model in GetArrayInnerType<NonNullable<NonNullable<typeof options>['tables']>>]?: Awaited<SelectedPick<Schemas[Model] & SearchXataRecord, ['*']>[]>;
|
3418
|
-
}>;
|
3419
|
-
};
|
3420
|
-
declare class SearchPlugin<Schemas extends Record<string, BaseData>> extends XataPlugin {
|
3421
|
-
#private;
|
3422
|
-
private db;
|
3423
|
-
constructor(db: SchemaPluginResult<Schemas>);
|
3424
|
-
build({ getFetchProps }: XataPluginOptions): SearchPluginResult<Schemas>;
|
3425
|
-
}
|
3426
|
-
declare type SearchXataRecord = XataRecord & {
|
3427
|
-
xata: {
|
3428
|
-
table: string;
|
3429
|
-
};
|
3430
|
-
};
|
3431
|
-
|
3432
4061
|
declare type BranchStrategyValue = string | undefined | null;
|
3433
4062
|
declare type BranchStrategyBuilder = () => BranchStrategyValue | Promise<BranchStrategyValue>;
|
3434
4063
|
declare type BranchStrategy = BranchStrategyValue | BranchStrategyBuilder;
|
@@ -3443,17 +4072,31 @@ declare type BaseClientOptions = {
|
|
3443
4072
|
};
|
3444
4073
|
declare const buildClient: <Plugins extends Record<string, XataPlugin> = {}>(plugins?: Plugins | undefined) => ClientConstructor<Plugins>;
|
3445
4074
|
interface ClientConstructor<Plugins extends Record<string, XataPlugin>> {
|
3446
|
-
new <
|
3447
|
-
db: Awaited<ReturnType<SchemaPlugin<
|
3448
|
-
search: Awaited<ReturnType<SearchPlugin<
|
4075
|
+
new <T extends readonly BaseSchema[]>(options?: Partial<BaseClientOptions>, schemaTables?: T): Omit<{
|
4076
|
+
db: Awaited<ReturnType<SchemaPlugin<SchemaInference<NonNullable<typeof schemaTables>>>['build']>>;
|
4077
|
+
search: Awaited<ReturnType<SearchPlugin<SchemaInference<NonNullable<typeof schemaTables>>>['build']>>;
|
3449
4078
|
}, keyof Plugins> & {
|
3450
4079
|
[Key in StringKeys<NonNullable<Plugins>>]: Awaited<ReturnType<NonNullable<Plugins>[Key]['build']>>;
|
4080
|
+
} & {
|
4081
|
+
getConfig(): Promise<{
|
4082
|
+
databaseURL: string;
|
4083
|
+
branch: string;
|
4084
|
+
}>;
|
3451
4085
|
};
|
3452
4086
|
}
|
3453
4087
|
declare const BaseClient_base: ClientConstructor<{}>;
|
3454
|
-
declare class BaseClient extends BaseClient_base<
|
4088
|
+
declare class BaseClient extends BaseClient_base<[]> {
|
3455
4089
|
}
|
3456
4090
|
|
4091
|
+
declare class Serializer {
|
4092
|
+
classes: Record<string, any>;
|
4093
|
+
add(clazz: any): void;
|
4094
|
+
toJSON<T>(data: T): string;
|
4095
|
+
fromJSON<T>(json: string): T;
|
4096
|
+
}
|
4097
|
+
declare const serialize: <T>(data: T) => string;
|
4098
|
+
declare const deserialize: <T>(json: string) => T;
|
4099
|
+
|
3457
4100
|
declare type BranchResolutionOptions = {
|
3458
4101
|
databaseURL?: string;
|
3459
4102
|
apiKey?: string;
|
@@ -3465,9 +4108,89 @@ declare function getDatabaseURL(): string | undefined;
|
|
3465
4108
|
|
3466
4109
|
declare function getAPIKey(): string | undefined;
|
3467
4110
|
|
4111
|
+
interface Body {
|
4112
|
+
arrayBuffer(): Promise<ArrayBuffer>;
|
4113
|
+
blob(): Promise<Blob>;
|
4114
|
+
formData(): Promise<FormData>;
|
4115
|
+
json(): Promise<any>;
|
4116
|
+
text(): Promise<string>;
|
4117
|
+
}
|
4118
|
+
interface Blob {
|
4119
|
+
readonly size: number;
|
4120
|
+
readonly type: string;
|
4121
|
+
arrayBuffer(): Promise<ArrayBuffer>;
|
4122
|
+
slice(start?: number, end?: number, contentType?: string): Blob;
|
4123
|
+
text(): Promise<string>;
|
4124
|
+
}
|
4125
|
+
/** Provides information about files and allows JavaScript in a web page to access their content. */
|
4126
|
+
interface File extends Blob {
|
4127
|
+
readonly lastModified: number;
|
4128
|
+
readonly name: string;
|
4129
|
+
readonly webkitRelativePath: string;
|
4130
|
+
}
|
4131
|
+
declare type FormDataEntryValue = File | string;
|
4132
|
+
/** Provides a way to easily construct a set of key/value pairs representing form fields and their values, which can then be easily sent using the XMLHttpRequest.send() method. It uses the same format a form would use if the encoding type were set to "multipart/form-data". */
|
4133
|
+
interface FormData {
|
4134
|
+
append(name: string, value: string | Blob, fileName?: string): void;
|
4135
|
+
delete(name: string): void;
|
4136
|
+
get(name: string): FormDataEntryValue | null;
|
4137
|
+
getAll(name: string): FormDataEntryValue[];
|
4138
|
+
has(name: string): boolean;
|
4139
|
+
set(name: string, value: string | Blob, fileName?: string): void;
|
4140
|
+
forEach(callbackfn: (value: FormDataEntryValue, key: string, parent: FormData) => void, thisArg?: any): void;
|
4141
|
+
}
|
4142
|
+
/** This Fetch API interface allows you to perform various actions on HTTP request and response headers. These actions include retrieving, setting, adding to, and removing. A Headers object has an associated header list, which is initially empty and consists of zero or more name and value pairs. You can add to this using methods like append() (see Examples.) In all methods of this interface, header names are matched by case-insensitive byte sequence. */
|
4143
|
+
interface Headers {
|
4144
|
+
append(name: string, value: string): void;
|
4145
|
+
delete(name: string): void;
|
4146
|
+
get(name: string): string | null;
|
4147
|
+
has(name: string): boolean;
|
4148
|
+
set(name: string, value: string): void;
|
4149
|
+
forEach(callbackfn: (value: string, key: string, parent: Headers) => void, thisArg?: any): void;
|
4150
|
+
}
|
4151
|
+
interface Request extends Body {
|
4152
|
+
/** Returns the cache mode associated with request, which is a string indicating how the request will interact with the browser's cache when fetching. */
|
4153
|
+
readonly cache: 'default' | 'force-cache' | 'no-cache' | 'no-store' | 'only-if-cached' | 'reload';
|
4154
|
+
/** Returns the credentials mode associated with request, which is a string indicating whether credentials will be sent with the request always, never, or only when sent to a same-origin URL. */
|
4155
|
+
readonly credentials: 'include' | 'omit' | 'same-origin';
|
4156
|
+
/** Returns the kind of resource requested by request, e.g., "document" or "script". */
|
4157
|
+
readonly destination: '' | 'audio' | 'audioworklet' | 'document' | 'embed' | 'font' | 'frame' | 'iframe' | 'image' | 'manifest' | 'object' | 'paintworklet' | 'report' | 'script' | 'sharedworker' | 'style' | 'track' | 'video' | 'worker' | 'xslt';
|
4158
|
+
/** Returns a Headers object consisting of the headers associated with request. Note that headers added in the network layer by the user agent will not be accounted for in this object, e.g., the "Host" header. */
|
4159
|
+
readonly headers: Headers;
|
4160
|
+
/** Returns request's subresource integrity metadata, which is a cryptographic hash of the resource being fetched. Its value consists of multiple hashes separated by whitespace. [SRI] */
|
4161
|
+
readonly integrity: string;
|
4162
|
+
/** Returns a boolean indicating whether or not request can outlive the global in which it was created. */
|
4163
|
+
readonly keepalive: boolean;
|
4164
|
+
/** Returns request's HTTP method, which is "GET" by default. */
|
4165
|
+
readonly method: string;
|
4166
|
+
/** Returns the mode associated with request, which is a string indicating whether the request will use CORS, or will be restricted to same-origin URLs. */
|
4167
|
+
readonly mode: 'cors' | 'navigate' | 'no-cors' | 'same-origin';
|
4168
|
+
/** Returns the redirect mode associated with request, which is a string indicating how redirects for the request will be handled during fetching. A request will follow redirects by default. */
|
4169
|
+
readonly redirect: 'error' | 'follow' | 'manual';
|
4170
|
+
/** Returns the referrer of request. Its value can be a same-origin URL if explicitly set in init, the empty string to indicate no referrer, and "about:client" when defaulting to the global's default. This is used during fetching to determine the value of the `Referer` header of the request being made. */
|
4171
|
+
readonly referrer: string;
|
4172
|
+
/** Returns the referrer policy associated with request. This is used during fetching to compute the value of the request's referrer. */
|
4173
|
+
readonly referrerPolicy: '' | 'no-referrer' | 'no-referrer-when-downgrade' | 'origin' | 'origin-when-cross-origin' | 'same-origin' | 'strict-origin' | 'strict-origin-when-cross-origin' | 'unsafe-url';
|
4174
|
+
/** Returns the URL of request as a string. */
|
4175
|
+
readonly url: string;
|
4176
|
+
clone(): Request;
|
4177
|
+
}
|
4178
|
+
|
4179
|
+
declare type XataWorkerContext<XataClient> = {
|
4180
|
+
xata: XataClient;
|
4181
|
+
request: Request;
|
4182
|
+
env: Record<string, string | undefined>;
|
4183
|
+
};
|
4184
|
+
declare type RemoveFirst<T> = T extends [any, ...infer U] ? U : never;
|
4185
|
+
declare type WorkerRunnerConfig = {
|
4186
|
+
workspace: string;
|
4187
|
+
worker: string;
|
4188
|
+
};
|
4189
|
+
declare function buildWorkerRunner<XataClient>(config: WorkerRunnerConfig): <WorkerFunction extends (ctx: XataWorkerContext<XataClient>, ...args: any[]) => any>(name: string, _worker: WorkerFunction) => (...args: RemoveFirst<Parameters<WorkerFunction>>) => Promise<Awaited<ReturnType<WorkerFunction>>>;
|
4190
|
+
|
3468
4191
|
declare class XataError extends Error {
|
3469
4192
|
readonly status: number;
|
3470
4193
|
constructor(message: string, status: number);
|
3471
4194
|
}
|
3472
4195
|
|
3473
|
-
export { AcceptWorkspaceMemberInviteError, AcceptWorkspaceMemberInvitePathParams, AcceptWorkspaceMemberInviteVariables, AddGitBranchesEntryError, AddGitBranchesEntryPathParams, AddGitBranchesEntryRequestBody, AddGitBranchesEntryResponse, AddGitBranchesEntryVariables, AddTableColumnError, AddTableColumnPathParams, AddTableColumnVariables, BaseClient, BaseClientOptions, BaseData, BulkInsertTableRecordsError, BulkInsertTableRecordsPathParams,
|
4196
|
+
export { AcceptWorkspaceMemberInviteError, AcceptWorkspaceMemberInvitePathParams, AcceptWorkspaceMemberInviteVariables, AddGitBranchesEntryError, AddGitBranchesEntryPathParams, AddGitBranchesEntryRequestBody, AddGitBranchesEntryResponse, AddGitBranchesEntryVariables, AddTableColumnError, AddTableColumnPathParams, AddTableColumnVariables, BaseClient, BaseClientOptions, BaseData, BaseSchema, BulkInsertTableRecordsError, BulkInsertTableRecordsPathParams, BulkInsertTableRecordsQueryParams, BulkInsertTableRecordsRequestBody, BulkInsertTableRecordsVariables, CacheImpl, CancelWorkspaceMemberInviteError, CancelWorkspaceMemberInvitePathParams, CancelWorkspaceMemberInviteVariables, ClientConstructor, CreateBranchError, CreateBranchPathParams, CreateBranchQueryParams, CreateBranchRequestBody, CreateBranchResponse, CreateBranchVariables, CreateDatabaseError, CreateDatabasePathParams, CreateDatabaseRequestBody, CreateDatabaseResponse, CreateDatabaseVariables, CreateTableError, CreateTablePathParams, CreateTableResponse, CreateTableVariables, CreateUserAPIKeyError, CreateUserAPIKeyPathParams, CreateUserAPIKeyResponse, CreateUserAPIKeyVariables, CreateWorkspaceError, CreateWorkspaceVariables, CursorNavigationOptions, DeleteBranchError, DeleteBranchPathParams, DeleteBranchVariables, DeleteColumnError, DeleteColumnPathParams, DeleteColumnVariables, DeleteDatabaseError, DeleteDatabasePathParams, DeleteDatabaseVariables, DeleteRecordError, DeleteRecordPathParams, DeleteRecordQueryParams, DeleteRecordVariables, DeleteTableError, DeleteTablePathParams, DeleteTableVariables, DeleteUserAPIKeyError, DeleteUserAPIKeyPathParams, DeleteUserAPIKeyVariables, DeleteUserError, DeleteUserVariables, DeleteWorkspaceError, DeleteWorkspacePathParams, DeleteWorkspaceVariables, EditableData, ExecuteBranchMigrationPlanError, ExecuteBranchMigrationPlanPathParams, ExecuteBranchMigrationPlanRequestBody, ExecuteBranchMigrationPlanVariables, FetchImpl, FetcherExtraProps, GetBranchDetailsError, GetBranchDetailsPathParams, GetBranchDetailsVariables, GetBranchListError, GetBranchListPathParams, GetBranchListVariables, GetBranchMetadataError, GetBranchMetadataPathParams, GetBranchMetadataVariables, GetBranchMigrationHistoryError, GetBranchMigrationHistoryPathParams, GetBranchMigrationHistoryRequestBody, GetBranchMigrationHistoryResponse, GetBranchMigrationHistoryVariables, GetBranchMigrationPlanError, GetBranchMigrationPlanPathParams, GetBranchMigrationPlanVariables, GetBranchStatsError, GetBranchStatsPathParams, GetBranchStatsResponse, GetBranchStatsVariables, GetColumnError, GetColumnPathParams, GetColumnVariables, GetDatabaseListError, GetDatabaseListPathParams, GetDatabaseListVariables, GetDatabaseMetadataError, GetDatabaseMetadataPathParams, GetDatabaseMetadataVariables, GetGitBranchesMappingError, GetGitBranchesMappingPathParams, GetGitBranchesMappingVariables, GetRecordError, GetRecordPathParams, GetRecordQueryParams, GetRecordVariables, GetTableColumnsError, GetTableColumnsPathParams, GetTableColumnsResponse, GetTableColumnsVariables, GetTableSchemaError, GetTableSchemaPathParams, GetTableSchemaResponse, GetTableSchemaVariables, GetUserAPIKeysError, GetUserAPIKeysResponse, GetUserAPIKeysVariables, GetUserError, GetUserVariables, GetWorkspaceError, GetWorkspaceMembersListError, GetWorkspaceMembersListPathParams, GetWorkspaceMembersListVariables, GetWorkspacePathParams, GetWorkspaceVariables, GetWorkspacesListError, GetWorkspacesListResponse, GetWorkspacesListVariables, Identifiable, InsertRecordError, InsertRecordPathParams, InsertRecordQueryParams, InsertRecordVariables, InsertRecordWithIDError, InsertRecordWithIDPathParams, InsertRecordWithIDQueryParams, InsertRecordWithIDVariables, InviteWorkspaceMemberError, InviteWorkspaceMemberPathParams, InviteWorkspaceMemberRequestBody, InviteWorkspaceMemberVariables, Link, OffsetNavigationOptions, operationsByTag as Operations, PAGINATION_DEFAULT_OFFSET, PAGINATION_DEFAULT_SIZE, PAGINATION_MAX_OFFSET, PAGINATION_MAX_SIZE, Page, Paginable, PaginationQueryMeta, Query, QueryTableError, QueryTablePathParams, QueryTableRequestBody, QueryTableVariables, RecordArray, RemoveGitBranchesEntryError, RemoveGitBranchesEntryPathParams, RemoveGitBranchesEntryQueryParams, RemoveGitBranchesEntryVariables, RemoveWorkspaceMemberError, RemoveWorkspaceMemberPathParams, RemoveWorkspaceMemberVariables, Repository, ResendWorkspaceMemberInviteError, ResendWorkspaceMemberInvitePathParams, ResendWorkspaceMemberInviteVariables, ResolveBranchError, ResolveBranchPathParams, ResolveBranchQueryParams, ResolveBranchResponse, ResolveBranchVariables, responses as Responses, RestRepository, SchemaDefinition, SchemaInference, SchemaPlugin, SchemaPluginResult, schemas as Schemas, SearchBranchError, SearchBranchPathParams, SearchBranchRequestBody, SearchBranchVariables, SearchOptions, SearchPlugin, SearchPluginResult, SearchTableError, SearchTablePathParams, SearchTableRequestBody, SearchTableVariables, SearchXataRecord, SelectableColumn, SelectedPick, Serializer, SetTableSchemaError, SetTableSchemaPathParams, SetTableSchemaRequestBody, SetTableSchemaVariables, SimpleCache, SimpleCacheOptions, UpdateBranchMetadataError, UpdateBranchMetadataPathParams, UpdateBranchMetadataVariables, UpdateColumnError, UpdateColumnPathParams, UpdateColumnRequestBody, UpdateColumnVariables, UpdateRecordWithIDError, UpdateRecordWithIDPathParams, UpdateRecordWithIDQueryParams, UpdateRecordWithIDVariables, UpdateTableError, UpdateTablePathParams, UpdateTableRequestBody, UpdateTableVariables, UpdateUserError, UpdateUserVariables, UpdateWorkspaceError, UpdateWorkspaceMemberInviteError, UpdateWorkspaceMemberInvitePathParams, UpdateWorkspaceMemberInviteRequestBody, UpdateWorkspaceMemberInviteVariables, UpdateWorkspaceMemberRoleError, UpdateWorkspaceMemberRolePathParams, UpdateWorkspaceMemberRoleRequestBody, UpdateWorkspaceMemberRoleVariables, UpdateWorkspacePathParams, UpdateWorkspaceVariables, UpsertRecordWithIDError, UpsertRecordWithIDPathParams, UpsertRecordWithIDQueryParams, UpsertRecordWithIDVariables, ValueAtColumn, XataApiClient, XataApiClientOptions, XataApiPlugin, XataError, XataPlugin, XataPluginOptions, XataRecord, acceptWorkspaceMemberInvite, addGitBranchesEntry, addTableColumn, buildClient, buildWorkerRunner, bulkInsertTableRecords, cancelWorkspaceMemberInvite, contains, createBranch, createDatabase, createTable, createUserAPIKey, createWorkspace, deleteBranch, deleteColumn, deleteDatabase, deleteRecord, deleteTable, deleteUser, deleteUserAPIKey, deleteWorkspace, deserialize, endsWith, executeBranchMigrationPlan, exists, ge, getAPIKey, getBranchDetails, getBranchList, getBranchMetadata, getBranchMigrationHistory, getBranchMigrationPlan, getBranchStats, getColumn, getCurrentBranchDetails, getCurrentBranchName, getDatabaseList, getDatabaseMetadata, getDatabaseURL, getGitBranchesMapping, getRecord, getTableColumns, getTableSchema, getUser, getUserAPIKeys, getWorkspace, getWorkspaceMembersList, getWorkspacesList, gt, gte, includes, includesAll, includesAny, includesNone, insertRecord, insertRecordWithID, inviteWorkspaceMember, is, isCursorPaginationOptions, isIdentifiable, isNot, isXataRecord, le, lt, lte, notExists, operationsByTag, pattern, queryTable, removeGitBranchesEntry, removeWorkspaceMember, resendWorkspaceMemberInvite, resolveBranch, searchBranch, searchTable, serialize, setTableSchema, startsWith, updateBranchMetadata, updateColumn, updateRecordWithID, updateTable, updateUser, updateWorkspace, updateWorkspaceMemberInvite, updateWorkspaceMemberRole, upsertRecordWithID };
|