zitejs 0.9.39 → 0.9.40

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,1273 @@
1
+ import type { FieldType } from "../types/fields.js";
2
+ export type Record = {
3
+ id: string;
4
+ data: {
5
+ [key: string]: unknown;
6
+ };
7
+ fields: {
8
+ [key: string]: unknown;
9
+ };
10
+ createdAt: string;
11
+ updatedAt: string;
12
+ };
13
+ export type RecordListOutput = {
14
+ records: Record[];
15
+ total: number;
16
+ hasMore: boolean;
17
+ };
18
+ export type RecordListOptions = {
19
+ limit?: number;
20
+ offset?: number;
21
+ sort?: SortQuery[];
22
+ filter?: FilterQuery;
23
+ };
24
+ type SortQuery = {
25
+ field: string;
26
+ direction: "asc" | "desc";
27
+ };
28
+ type FilterQuery = ({
29
+ field: string;
30
+ } & FilterOperators) | {
31
+ and: FilterQuery[];
32
+ } | {
33
+ or: FilterQuery[];
34
+ };
35
+ type FilterOperators = {
36
+ equals: unknown;
37
+ } | {
38
+ does_not_equal: unknown;
39
+ } | {
40
+ contains: unknown;
41
+ } | {
42
+ does_not_contain: unknown;
43
+ } | {
44
+ starts_with: string;
45
+ } | {
46
+ ends_with: string;
47
+ } | {
48
+ is_empty: true;
49
+ } | {
50
+ is_not_empty: true;
51
+ } | {
52
+ in: unknown[];
53
+ } | {
54
+ not_in: unknown[];
55
+ } | {
56
+ greater_than: unknown;
57
+ } | {
58
+ greater_than_or_equal_to: unknown;
59
+ } | {
60
+ less_than: unknown;
61
+ } | {
62
+ less_than_or_equal_to: unknown;
63
+ };
64
+ export type FieldCreateInput = {
65
+ type: FieldType;
66
+ name: string;
67
+ template?: unknown;
68
+ };
69
+ export type FieldUpdateInput = {
70
+ name?: string;
71
+ template?: unknown;
72
+ };
73
+ export type TableCreateInput = {
74
+ name: string;
75
+ fields: FieldCreateInput[];
76
+ };
77
+ export type TableUpdateInput = {
78
+ name: string;
79
+ };
80
+ export type DatabaseCreateInput = {
81
+ name: string;
82
+ tables: TableCreateInput[];
83
+ };
84
+ export type DatabaseListOutput = {
85
+ id: string;
86
+ name: string;
87
+ url: string;
88
+ };
89
+ export declare class Zite {
90
+ private token;
91
+ private baseUrl;
92
+ constructor(token: string);
93
+ private request;
94
+ record: {
95
+ create: (databaseId: string, tableId: string, record: {
96
+ [key: string]: unknown;
97
+ }) => Promise<Record>;
98
+ bulkCreate: (databaseId: string, tableId: string, records: {
99
+ [key: string]: unknown;
100
+ }[], matchOn?: string[]) => Promise<Record>;
101
+ get: (databaseId: string, tableId: string, recordId: string) => Promise<Record>;
102
+ update: (databaseId: string, tableId: string, recordId: string, record: {
103
+ [key: string]: unknown;
104
+ }) => Promise<Record>;
105
+ bulkUpdate: (databaseId: string, tableId: string, records: {
106
+ recordId: string;
107
+ [key: string]: unknown;
108
+ }[]) => Promise<Record>;
109
+ delete: (databaseId: string, tableId: string, recordId: string) => Promise<{
110
+ deleted: true;
111
+ }>;
112
+ list: (databaseId: string, tableId: string, options?: RecordListOptions) => Promise<RecordListOutput>;
113
+ };
114
+ field: {
115
+ create: (databaseId: string, tableId: string, field: FieldCreateInput) => Promise<{
116
+ id: string;
117
+ order: number;
118
+ } & ({
119
+ type: "currency";
120
+ name: string;
121
+ template: {
122
+ currencySymbol: string;
123
+ decimalPlaces: number;
124
+ numberFormat: "local" | "comma_period" | "period_comma" | "space_comma" | "space_period" | "no_separator";
125
+ defaultValue?: number | null | undefined;
126
+ };
127
+ } | {
128
+ type: "single_line_text";
129
+ name: string;
130
+ template: {
131
+ defaultValue?: string | undefined;
132
+ };
133
+ } | {
134
+ type: "long_text";
135
+ name: string;
136
+ template: {
137
+ defaultValue?: string | undefined;
138
+ };
139
+ } | {
140
+ type: "rich_text";
141
+ name: string;
142
+ template: {
143
+ defaultValue?: string | undefined;
144
+ };
145
+ } | {
146
+ type: "number";
147
+ name: string;
148
+ template: {
149
+ decimalPlaces: number;
150
+ numberFormat: "local" | "comma_period" | "period_comma" | "space_comma" | "space_period" | "no_separator";
151
+ defaultValue?: number | null | undefined;
152
+ };
153
+ } | {
154
+ type: "single_select";
155
+ name: string;
156
+ template: {
157
+ options: {
158
+ value: string;
159
+ label: string;
160
+ color?: string | undefined;
161
+ }[];
162
+ disableColors: boolean;
163
+ defaultValue?: string | undefined;
164
+ };
165
+ } | {
166
+ type: "multiple_select";
167
+ name: string;
168
+ template: {
169
+ options: {
170
+ value: string;
171
+ label: string;
172
+ color?: string | undefined;
173
+ }[];
174
+ disableColors: boolean;
175
+ defaultValue?: string[] | undefined;
176
+ };
177
+ } | {
178
+ type: "date";
179
+ name: string;
180
+ template: {
181
+ dateFormat: "local" | "long" | "us" | "european" | "iso";
182
+ };
183
+ } | {
184
+ type: "datetime";
185
+ name: string;
186
+ template: {
187
+ dateFormat: "local" | "long" | "us" | "european" | "iso";
188
+ displayTimeZone: boolean;
189
+ timeFormat: "12h" | "24h";
190
+ timezone: string;
191
+ };
192
+ } | {
193
+ type: "checkbox";
194
+ name: string;
195
+ template: {
196
+ defaultValue?: boolean | undefined;
197
+ };
198
+ } | {
199
+ type: "attachments";
200
+ name: string;
201
+ template: {};
202
+ } | {
203
+ type: "email";
204
+ name: string;
205
+ template: {};
206
+ } | {
207
+ type: "url";
208
+ name: string;
209
+ template: {};
210
+ } | {
211
+ type: "phone_number";
212
+ name: string;
213
+ template: {};
214
+ } | {
215
+ type: "rating";
216
+ name: string;
217
+ template: {
218
+ maxRating: number;
219
+ defaultValue?: number | undefined;
220
+ };
221
+ } | {
222
+ type: "duration";
223
+ name: string;
224
+ template: {
225
+ format: "h:mm" | "h:mm:ss" | "h:mm:ss.s" | "h:mm:ss.ss" | "h:mm:ss.sss";
226
+ defaultValue?: number | undefined;
227
+ };
228
+ } | {
229
+ type: "percent";
230
+ name: string;
231
+ template: {
232
+ decimalPlaces: number;
233
+ numberFormat: "local" | "comma_period" | "period_comma" | "space_comma" | "space_period" | "no_separator";
234
+ showProgressBar: boolean;
235
+ allowNegative: boolean;
236
+ defaultValue?: number | null | undefined;
237
+ };
238
+ } | {
239
+ type: "linked_record";
240
+ name: string;
241
+ template: {
242
+ tableId: string;
243
+ allowMultiple?: boolean | undefined;
244
+ };
245
+ } | {
246
+ type: "lookup";
247
+ name: string;
248
+ template: {
249
+ linkedRecordFieldId: string;
250
+ lookupFieldId: string;
251
+ formulaExpression?: string | undefined;
252
+ resultType?: "number" | "boolean" | "date" | "text" | "array" | undefined;
253
+ };
254
+ } | {
255
+ type: "source";
256
+ name: string;
257
+ template: {};
258
+ } | {
259
+ type: "formula";
260
+ name: string;
261
+ template: {
262
+ expression: string;
263
+ resultType?: "number" | "boolean" | "date" | "text" | "array" | undefined;
264
+ formatting?: {
265
+ decimalPlaces?: number | undefined;
266
+ numberFormat?: "local" | "comma_period" | "period_comma" | "space_comma" | "space_period" | undefined;
267
+ numberDisplayType?: "number" | "currency" | "percent" | "duration" | undefined;
268
+ currencyCode?: string | undefined;
269
+ } | undefined;
270
+ };
271
+ } | {
272
+ type: "autonumber";
273
+ name: string;
274
+ template: {};
275
+ } | {
276
+ type: "created_at";
277
+ name: string;
278
+ template: {
279
+ dateFormat: "local" | "long" | "us" | "european" | "iso";
280
+ displayTimeZone: boolean;
281
+ timeFormat: "12h" | "24h";
282
+ timezone: string;
283
+ };
284
+ } | {
285
+ type: "updated_at";
286
+ name: string;
287
+ template: {
288
+ dateFormat: "local" | "long" | "us" | "european" | "iso";
289
+ displayTimeZone: boolean;
290
+ timeFormat: "12h" | "24h";
291
+ timezone: string;
292
+ };
293
+ })>;
294
+ update: (databaseId: string, tableId: string, fieldId: string, field: FieldUpdateInput) => Promise<{
295
+ id: string;
296
+ order: number;
297
+ } & ({
298
+ type: "currency";
299
+ name: string;
300
+ template: {
301
+ currencySymbol: string;
302
+ decimalPlaces: number;
303
+ numberFormat: "local" | "comma_period" | "period_comma" | "space_comma" | "space_period" | "no_separator";
304
+ defaultValue?: number | null | undefined;
305
+ };
306
+ } | {
307
+ type: "single_line_text";
308
+ name: string;
309
+ template: {
310
+ defaultValue?: string | undefined;
311
+ };
312
+ } | {
313
+ type: "long_text";
314
+ name: string;
315
+ template: {
316
+ defaultValue?: string | undefined;
317
+ };
318
+ } | {
319
+ type: "rich_text";
320
+ name: string;
321
+ template: {
322
+ defaultValue?: string | undefined;
323
+ };
324
+ } | {
325
+ type: "number";
326
+ name: string;
327
+ template: {
328
+ decimalPlaces: number;
329
+ numberFormat: "local" | "comma_period" | "period_comma" | "space_comma" | "space_period" | "no_separator";
330
+ defaultValue?: number | null | undefined;
331
+ };
332
+ } | {
333
+ type: "single_select";
334
+ name: string;
335
+ template: {
336
+ options: {
337
+ value: string;
338
+ label: string;
339
+ color?: string | undefined;
340
+ }[];
341
+ disableColors: boolean;
342
+ defaultValue?: string | undefined;
343
+ };
344
+ } | {
345
+ type: "multiple_select";
346
+ name: string;
347
+ template: {
348
+ options: {
349
+ value: string;
350
+ label: string;
351
+ color?: string | undefined;
352
+ }[];
353
+ disableColors: boolean;
354
+ defaultValue?: string[] | undefined;
355
+ };
356
+ } | {
357
+ type: "date";
358
+ name: string;
359
+ template: {
360
+ dateFormat: "local" | "long" | "us" | "european" | "iso";
361
+ };
362
+ } | {
363
+ type: "datetime";
364
+ name: string;
365
+ template: {
366
+ dateFormat: "local" | "long" | "us" | "european" | "iso";
367
+ displayTimeZone: boolean;
368
+ timeFormat: "12h" | "24h";
369
+ timezone: string;
370
+ };
371
+ } | {
372
+ type: "checkbox";
373
+ name: string;
374
+ template: {
375
+ defaultValue?: boolean | undefined;
376
+ };
377
+ } | {
378
+ type: "attachments";
379
+ name: string;
380
+ template: {};
381
+ } | {
382
+ type: "email";
383
+ name: string;
384
+ template: {};
385
+ } | {
386
+ type: "url";
387
+ name: string;
388
+ template: {};
389
+ } | {
390
+ type: "phone_number";
391
+ name: string;
392
+ template: {};
393
+ } | {
394
+ type: "rating";
395
+ name: string;
396
+ template: {
397
+ maxRating: number;
398
+ defaultValue?: number | undefined;
399
+ };
400
+ } | {
401
+ type: "duration";
402
+ name: string;
403
+ template: {
404
+ format: "h:mm" | "h:mm:ss" | "h:mm:ss.s" | "h:mm:ss.ss" | "h:mm:ss.sss";
405
+ defaultValue?: number | undefined;
406
+ };
407
+ } | {
408
+ type: "percent";
409
+ name: string;
410
+ template: {
411
+ decimalPlaces: number;
412
+ numberFormat: "local" | "comma_period" | "period_comma" | "space_comma" | "space_period" | "no_separator";
413
+ showProgressBar: boolean;
414
+ allowNegative: boolean;
415
+ defaultValue?: number | null | undefined;
416
+ };
417
+ } | {
418
+ type: "linked_record";
419
+ name: string;
420
+ template: {
421
+ tableId: string;
422
+ allowMultiple?: boolean | undefined;
423
+ };
424
+ } | {
425
+ type: "lookup";
426
+ name: string;
427
+ template: {
428
+ linkedRecordFieldId: string;
429
+ lookupFieldId: string;
430
+ formulaExpression?: string | undefined;
431
+ resultType?: "number" | "boolean" | "date" | "text" | "array" | undefined;
432
+ };
433
+ } | {
434
+ type: "source";
435
+ name: string;
436
+ template: {};
437
+ } | {
438
+ type: "formula";
439
+ name: string;
440
+ template: {
441
+ expression: string;
442
+ resultType?: "number" | "boolean" | "date" | "text" | "array" | undefined;
443
+ formatting?: {
444
+ decimalPlaces?: number | undefined;
445
+ numberFormat?: "local" | "comma_period" | "period_comma" | "space_comma" | "space_period" | undefined;
446
+ numberDisplayType?: "number" | "currency" | "percent" | "duration" | undefined;
447
+ currencyCode?: string | undefined;
448
+ } | undefined;
449
+ };
450
+ } | {
451
+ type: "autonumber";
452
+ name: string;
453
+ template: {};
454
+ } | {
455
+ type: "created_at";
456
+ name: string;
457
+ template: {
458
+ dateFormat: "local" | "long" | "us" | "european" | "iso";
459
+ displayTimeZone: boolean;
460
+ timeFormat: "12h" | "24h";
461
+ timezone: string;
462
+ };
463
+ } | {
464
+ type: "updated_at";
465
+ name: string;
466
+ template: {
467
+ dateFormat: "local" | "long" | "us" | "european" | "iso";
468
+ displayTimeZone: boolean;
469
+ timeFormat: "12h" | "24h";
470
+ timezone: string;
471
+ };
472
+ })>;
473
+ delete: (databaseId: string, tableId: string, fieldId: string) => Promise<{
474
+ deleted: true;
475
+ }>;
476
+ };
477
+ table: {
478
+ create: (databaseId: string, table: TableCreateInput) => Promise<{
479
+ url: string;
480
+ id: string;
481
+ name: string;
482
+ order: number;
483
+ primaryFieldId: string;
484
+ fields: ({
485
+ id: string;
486
+ order: number;
487
+ } & ({
488
+ type: "currency";
489
+ name: string;
490
+ template: {
491
+ currencySymbol: string;
492
+ decimalPlaces: number;
493
+ numberFormat: "local" | "comma_period" | "period_comma" | "space_comma" | "space_period" | "no_separator";
494
+ defaultValue?: number | null | undefined;
495
+ };
496
+ } | {
497
+ type: "single_line_text";
498
+ name: string;
499
+ template: {
500
+ defaultValue?: string | undefined;
501
+ };
502
+ } | {
503
+ type: "long_text";
504
+ name: string;
505
+ template: {
506
+ defaultValue?: string | undefined;
507
+ };
508
+ } | {
509
+ type: "rich_text";
510
+ name: string;
511
+ template: {
512
+ defaultValue?: string | undefined;
513
+ };
514
+ } | {
515
+ type: "number";
516
+ name: string;
517
+ template: {
518
+ decimalPlaces: number;
519
+ numberFormat: "local" | "comma_period" | "period_comma" | "space_comma" | "space_period" | "no_separator";
520
+ defaultValue?: number | null | undefined;
521
+ };
522
+ } | {
523
+ type: "single_select";
524
+ name: string;
525
+ template: {
526
+ options: {
527
+ value: string;
528
+ label: string;
529
+ color?: string | undefined;
530
+ }[];
531
+ disableColors: boolean;
532
+ defaultValue?: string | undefined;
533
+ };
534
+ } | {
535
+ type: "multiple_select";
536
+ name: string;
537
+ template: {
538
+ options: {
539
+ value: string;
540
+ label: string;
541
+ color?: string | undefined;
542
+ }[];
543
+ disableColors: boolean;
544
+ defaultValue?: string[] | undefined;
545
+ };
546
+ } | {
547
+ type: "date";
548
+ name: string;
549
+ template: {
550
+ dateFormat: "local" | "long" | "us" | "european" | "iso";
551
+ };
552
+ } | {
553
+ type: "datetime";
554
+ name: string;
555
+ template: {
556
+ dateFormat: "local" | "long" | "us" | "european" | "iso";
557
+ displayTimeZone: boolean;
558
+ timeFormat: "12h" | "24h";
559
+ timezone: string;
560
+ };
561
+ } | {
562
+ type: "checkbox";
563
+ name: string;
564
+ template: {
565
+ defaultValue?: boolean | undefined;
566
+ };
567
+ } | {
568
+ type: "attachments";
569
+ name: string;
570
+ template: {};
571
+ } | {
572
+ type: "email";
573
+ name: string;
574
+ template: {};
575
+ } | {
576
+ type: "url";
577
+ name: string;
578
+ template: {};
579
+ } | {
580
+ type: "phone_number";
581
+ name: string;
582
+ template: {};
583
+ } | {
584
+ type: "rating";
585
+ name: string;
586
+ template: {
587
+ maxRating: number;
588
+ defaultValue?: number | undefined;
589
+ };
590
+ } | {
591
+ type: "duration";
592
+ name: string;
593
+ template: {
594
+ format: "h:mm" | "h:mm:ss" | "h:mm:ss.s" | "h:mm:ss.ss" | "h:mm:ss.sss";
595
+ defaultValue?: number | undefined;
596
+ };
597
+ } | {
598
+ type: "percent";
599
+ name: string;
600
+ template: {
601
+ decimalPlaces: number;
602
+ numberFormat: "local" | "comma_period" | "period_comma" | "space_comma" | "space_period" | "no_separator";
603
+ showProgressBar: boolean;
604
+ allowNegative: boolean;
605
+ defaultValue?: number | null | undefined;
606
+ };
607
+ } | {
608
+ type: "linked_record";
609
+ name: string;
610
+ template: {
611
+ tableId: string;
612
+ allowMultiple?: boolean | undefined;
613
+ };
614
+ } | {
615
+ type: "lookup";
616
+ name: string;
617
+ template: {
618
+ linkedRecordFieldId: string;
619
+ lookupFieldId: string;
620
+ formulaExpression?: string | undefined;
621
+ resultType?: "number" | "boolean" | "date" | "text" | "array" | undefined;
622
+ };
623
+ } | {
624
+ type: "source";
625
+ name: string;
626
+ template: {};
627
+ } | {
628
+ type: "formula";
629
+ name: string;
630
+ template: {
631
+ expression: string;
632
+ resultType?: "number" | "boolean" | "date" | "text" | "array" | undefined;
633
+ formatting?: {
634
+ decimalPlaces?: number | undefined;
635
+ numberFormat?: "local" | "comma_period" | "period_comma" | "space_comma" | "space_period" | undefined;
636
+ numberDisplayType?: "number" | "currency" | "percent" | "duration" | undefined;
637
+ currencyCode?: string | undefined;
638
+ } | undefined;
639
+ };
640
+ } | {
641
+ type: "autonumber";
642
+ name: string;
643
+ template: {};
644
+ } | {
645
+ type: "created_at";
646
+ name: string;
647
+ template: {
648
+ dateFormat: "local" | "long" | "us" | "european" | "iso";
649
+ displayTimeZone: boolean;
650
+ timeFormat: "12h" | "24h";
651
+ timezone: string;
652
+ };
653
+ } | {
654
+ type: "updated_at";
655
+ name: string;
656
+ template: {
657
+ dateFormat: "local" | "long" | "us" | "european" | "iso";
658
+ displayTimeZone: boolean;
659
+ timeFormat: "12h" | "24h";
660
+ timezone: string;
661
+ };
662
+ }))[];
663
+ views: {
664
+ id: string;
665
+ type: string;
666
+ name: string;
667
+ config?: unknown;
668
+ }[];
669
+ }>;
670
+ update: (databaseId: string, tableId: string, table: TableUpdateInput) => Promise<{
671
+ url: string;
672
+ id: string;
673
+ name: string;
674
+ order: number;
675
+ primaryFieldId: string;
676
+ fields: ({
677
+ id: string;
678
+ order: number;
679
+ } & ({
680
+ type: "currency";
681
+ name: string;
682
+ template: {
683
+ currencySymbol: string;
684
+ decimalPlaces: number;
685
+ numberFormat: "local" | "comma_period" | "period_comma" | "space_comma" | "space_period" | "no_separator";
686
+ defaultValue?: number | null | undefined;
687
+ };
688
+ } | {
689
+ type: "single_line_text";
690
+ name: string;
691
+ template: {
692
+ defaultValue?: string | undefined;
693
+ };
694
+ } | {
695
+ type: "long_text";
696
+ name: string;
697
+ template: {
698
+ defaultValue?: string | undefined;
699
+ };
700
+ } | {
701
+ type: "rich_text";
702
+ name: string;
703
+ template: {
704
+ defaultValue?: string | undefined;
705
+ };
706
+ } | {
707
+ type: "number";
708
+ name: string;
709
+ template: {
710
+ decimalPlaces: number;
711
+ numberFormat: "local" | "comma_period" | "period_comma" | "space_comma" | "space_period" | "no_separator";
712
+ defaultValue?: number | null | undefined;
713
+ };
714
+ } | {
715
+ type: "single_select";
716
+ name: string;
717
+ template: {
718
+ options: {
719
+ value: string;
720
+ label: string;
721
+ color?: string | undefined;
722
+ }[];
723
+ disableColors: boolean;
724
+ defaultValue?: string | undefined;
725
+ };
726
+ } | {
727
+ type: "multiple_select";
728
+ name: string;
729
+ template: {
730
+ options: {
731
+ value: string;
732
+ label: string;
733
+ color?: string | undefined;
734
+ }[];
735
+ disableColors: boolean;
736
+ defaultValue?: string[] | undefined;
737
+ };
738
+ } | {
739
+ type: "date";
740
+ name: string;
741
+ template: {
742
+ dateFormat: "local" | "long" | "us" | "european" | "iso";
743
+ };
744
+ } | {
745
+ type: "datetime";
746
+ name: string;
747
+ template: {
748
+ dateFormat: "local" | "long" | "us" | "european" | "iso";
749
+ displayTimeZone: boolean;
750
+ timeFormat: "12h" | "24h";
751
+ timezone: string;
752
+ };
753
+ } | {
754
+ type: "checkbox";
755
+ name: string;
756
+ template: {
757
+ defaultValue?: boolean | undefined;
758
+ };
759
+ } | {
760
+ type: "attachments";
761
+ name: string;
762
+ template: {};
763
+ } | {
764
+ type: "email";
765
+ name: string;
766
+ template: {};
767
+ } | {
768
+ type: "url";
769
+ name: string;
770
+ template: {};
771
+ } | {
772
+ type: "phone_number";
773
+ name: string;
774
+ template: {};
775
+ } | {
776
+ type: "rating";
777
+ name: string;
778
+ template: {
779
+ maxRating: number;
780
+ defaultValue?: number | undefined;
781
+ };
782
+ } | {
783
+ type: "duration";
784
+ name: string;
785
+ template: {
786
+ format: "h:mm" | "h:mm:ss" | "h:mm:ss.s" | "h:mm:ss.ss" | "h:mm:ss.sss";
787
+ defaultValue?: number | undefined;
788
+ };
789
+ } | {
790
+ type: "percent";
791
+ name: string;
792
+ template: {
793
+ decimalPlaces: number;
794
+ numberFormat: "local" | "comma_period" | "period_comma" | "space_comma" | "space_period" | "no_separator";
795
+ showProgressBar: boolean;
796
+ allowNegative: boolean;
797
+ defaultValue?: number | null | undefined;
798
+ };
799
+ } | {
800
+ type: "linked_record";
801
+ name: string;
802
+ template: {
803
+ tableId: string;
804
+ allowMultiple?: boolean | undefined;
805
+ };
806
+ } | {
807
+ type: "lookup";
808
+ name: string;
809
+ template: {
810
+ linkedRecordFieldId: string;
811
+ lookupFieldId: string;
812
+ formulaExpression?: string | undefined;
813
+ resultType?: "number" | "boolean" | "date" | "text" | "array" | undefined;
814
+ };
815
+ } | {
816
+ type: "source";
817
+ name: string;
818
+ template: {};
819
+ } | {
820
+ type: "formula";
821
+ name: string;
822
+ template: {
823
+ expression: string;
824
+ resultType?: "number" | "boolean" | "date" | "text" | "array" | undefined;
825
+ formatting?: {
826
+ decimalPlaces?: number | undefined;
827
+ numberFormat?: "local" | "comma_period" | "period_comma" | "space_comma" | "space_period" | undefined;
828
+ numberDisplayType?: "number" | "currency" | "percent" | "duration" | undefined;
829
+ currencyCode?: string | undefined;
830
+ } | undefined;
831
+ };
832
+ } | {
833
+ type: "autonumber";
834
+ name: string;
835
+ template: {};
836
+ } | {
837
+ type: "created_at";
838
+ name: string;
839
+ template: {
840
+ dateFormat: "local" | "long" | "us" | "european" | "iso";
841
+ displayTimeZone: boolean;
842
+ timeFormat: "12h" | "24h";
843
+ timezone: string;
844
+ };
845
+ } | {
846
+ type: "updated_at";
847
+ name: string;
848
+ template: {
849
+ dateFormat: "local" | "long" | "us" | "european" | "iso";
850
+ displayTimeZone: boolean;
851
+ timeFormat: "12h" | "24h";
852
+ timezone: string;
853
+ };
854
+ }))[];
855
+ views: {
856
+ id: string;
857
+ type: string;
858
+ name: string;
859
+ config?: unknown;
860
+ }[];
861
+ }>;
862
+ delete: (databaseId: string, tableId: string) => Promise<{
863
+ deleted: true;
864
+ }>;
865
+ };
866
+ database: {
867
+ create: (database: DatabaseCreateInput) => Promise<{
868
+ url: string;
869
+ id: string;
870
+ name: string;
871
+ tables: {
872
+ url: string;
873
+ id: string;
874
+ name: string;
875
+ order: number;
876
+ primaryFieldId: string;
877
+ fields: ({
878
+ id: string;
879
+ order: number;
880
+ } & ({
881
+ type: "currency";
882
+ name: string;
883
+ template: {
884
+ currencySymbol: string;
885
+ decimalPlaces: number;
886
+ numberFormat: "local" | "comma_period" | "period_comma" | "space_comma" | "space_period" | "no_separator";
887
+ defaultValue?: number | null | undefined;
888
+ };
889
+ } | {
890
+ type: "single_line_text";
891
+ name: string;
892
+ template: {
893
+ defaultValue?: string | undefined;
894
+ };
895
+ } | {
896
+ type: "long_text";
897
+ name: string;
898
+ template: {
899
+ defaultValue?: string | undefined;
900
+ };
901
+ } | {
902
+ type: "rich_text";
903
+ name: string;
904
+ template: {
905
+ defaultValue?: string | undefined;
906
+ };
907
+ } | {
908
+ type: "number";
909
+ name: string;
910
+ template: {
911
+ decimalPlaces: number;
912
+ numberFormat: "local" | "comma_period" | "period_comma" | "space_comma" | "space_period" | "no_separator";
913
+ defaultValue?: number | null | undefined;
914
+ };
915
+ } | {
916
+ type: "single_select";
917
+ name: string;
918
+ template: {
919
+ options: {
920
+ value: string;
921
+ label: string;
922
+ color?: string | undefined;
923
+ }[];
924
+ disableColors: boolean;
925
+ defaultValue?: string | undefined;
926
+ };
927
+ } | {
928
+ type: "multiple_select";
929
+ name: string;
930
+ template: {
931
+ options: {
932
+ value: string;
933
+ label: string;
934
+ color?: string | undefined;
935
+ }[];
936
+ disableColors: boolean;
937
+ defaultValue?: string[] | undefined;
938
+ };
939
+ } | {
940
+ type: "date";
941
+ name: string;
942
+ template: {
943
+ dateFormat: "local" | "long" | "us" | "european" | "iso";
944
+ };
945
+ } | {
946
+ type: "datetime";
947
+ name: string;
948
+ template: {
949
+ dateFormat: "local" | "long" | "us" | "european" | "iso";
950
+ displayTimeZone: boolean;
951
+ timeFormat: "12h" | "24h";
952
+ timezone: string;
953
+ };
954
+ } | {
955
+ type: "checkbox";
956
+ name: string;
957
+ template: {
958
+ defaultValue?: boolean | undefined;
959
+ };
960
+ } | {
961
+ type: "attachments";
962
+ name: string;
963
+ template: {};
964
+ } | {
965
+ type: "email";
966
+ name: string;
967
+ template: {};
968
+ } | {
969
+ type: "url";
970
+ name: string;
971
+ template: {};
972
+ } | {
973
+ type: "phone_number";
974
+ name: string;
975
+ template: {};
976
+ } | {
977
+ type: "rating";
978
+ name: string;
979
+ template: {
980
+ maxRating: number;
981
+ defaultValue?: number | undefined;
982
+ };
983
+ } | {
984
+ type: "duration";
985
+ name: string;
986
+ template: {
987
+ format: "h:mm" | "h:mm:ss" | "h:mm:ss.s" | "h:mm:ss.ss" | "h:mm:ss.sss";
988
+ defaultValue?: number | undefined;
989
+ };
990
+ } | {
991
+ type: "percent";
992
+ name: string;
993
+ template: {
994
+ decimalPlaces: number;
995
+ numberFormat: "local" | "comma_period" | "period_comma" | "space_comma" | "space_period" | "no_separator";
996
+ showProgressBar: boolean;
997
+ allowNegative: boolean;
998
+ defaultValue?: number | null | undefined;
999
+ };
1000
+ } | {
1001
+ type: "linked_record";
1002
+ name: string;
1003
+ template: {
1004
+ tableId: string;
1005
+ allowMultiple?: boolean | undefined;
1006
+ };
1007
+ } | {
1008
+ type: "lookup";
1009
+ name: string;
1010
+ template: {
1011
+ linkedRecordFieldId: string;
1012
+ lookupFieldId: string;
1013
+ formulaExpression?: string | undefined;
1014
+ resultType?: "number" | "boolean" | "date" | "text" | "array" | undefined;
1015
+ };
1016
+ } | {
1017
+ type: "source";
1018
+ name: string;
1019
+ template: {};
1020
+ } | {
1021
+ type: "formula";
1022
+ name: string;
1023
+ template: {
1024
+ expression: string;
1025
+ resultType?: "number" | "boolean" | "date" | "text" | "array" | undefined;
1026
+ formatting?: {
1027
+ decimalPlaces?: number | undefined;
1028
+ numberFormat?: "local" | "comma_period" | "period_comma" | "space_comma" | "space_period" | undefined;
1029
+ numberDisplayType?: "number" | "currency" | "percent" | "duration" | undefined;
1030
+ currencyCode?: string | undefined;
1031
+ } | undefined;
1032
+ };
1033
+ } | {
1034
+ type: "autonumber";
1035
+ name: string;
1036
+ template: {};
1037
+ } | {
1038
+ type: "created_at";
1039
+ name: string;
1040
+ template: {
1041
+ dateFormat: "local" | "long" | "us" | "european" | "iso";
1042
+ displayTimeZone: boolean;
1043
+ timeFormat: "12h" | "24h";
1044
+ timezone: string;
1045
+ };
1046
+ } | {
1047
+ type: "updated_at";
1048
+ name: string;
1049
+ template: {
1050
+ dateFormat: "local" | "long" | "us" | "european" | "iso";
1051
+ displayTimeZone: boolean;
1052
+ timeFormat: "12h" | "24h";
1053
+ timezone: string;
1054
+ };
1055
+ }))[];
1056
+ views: {
1057
+ id: string;
1058
+ type: string;
1059
+ name: string;
1060
+ config?: unknown;
1061
+ }[];
1062
+ }[];
1063
+ createdAt: string;
1064
+ updatedAt: string;
1065
+ workspaceId?: string | undefined;
1066
+ }>;
1067
+ list: () => Promise<DatabaseListOutput[]>;
1068
+ get: (databaseId: string) => Promise<{
1069
+ url: string;
1070
+ id: string;
1071
+ name: string;
1072
+ tables: {
1073
+ url: string;
1074
+ id: string;
1075
+ name: string;
1076
+ order: number;
1077
+ primaryFieldId: string;
1078
+ fields: ({
1079
+ id: string;
1080
+ order: number;
1081
+ } & ({
1082
+ type: "currency";
1083
+ name: string;
1084
+ template: {
1085
+ currencySymbol: string;
1086
+ decimalPlaces: number;
1087
+ numberFormat: "local" | "comma_period" | "period_comma" | "space_comma" | "space_period" | "no_separator";
1088
+ defaultValue?: number | null | undefined;
1089
+ };
1090
+ } | {
1091
+ type: "single_line_text";
1092
+ name: string;
1093
+ template: {
1094
+ defaultValue?: string | undefined;
1095
+ };
1096
+ } | {
1097
+ type: "long_text";
1098
+ name: string;
1099
+ template: {
1100
+ defaultValue?: string | undefined;
1101
+ };
1102
+ } | {
1103
+ type: "rich_text";
1104
+ name: string;
1105
+ template: {
1106
+ defaultValue?: string | undefined;
1107
+ };
1108
+ } | {
1109
+ type: "number";
1110
+ name: string;
1111
+ template: {
1112
+ decimalPlaces: number;
1113
+ numberFormat: "local" | "comma_period" | "period_comma" | "space_comma" | "space_period" | "no_separator";
1114
+ defaultValue?: number | null | undefined;
1115
+ };
1116
+ } | {
1117
+ type: "single_select";
1118
+ name: string;
1119
+ template: {
1120
+ options: {
1121
+ value: string;
1122
+ label: string;
1123
+ color?: string | undefined;
1124
+ }[];
1125
+ disableColors: boolean;
1126
+ defaultValue?: string | undefined;
1127
+ };
1128
+ } | {
1129
+ type: "multiple_select";
1130
+ name: string;
1131
+ template: {
1132
+ options: {
1133
+ value: string;
1134
+ label: string;
1135
+ color?: string | undefined;
1136
+ }[];
1137
+ disableColors: boolean;
1138
+ defaultValue?: string[] | undefined;
1139
+ };
1140
+ } | {
1141
+ type: "date";
1142
+ name: string;
1143
+ template: {
1144
+ dateFormat: "local" | "long" | "us" | "european" | "iso";
1145
+ };
1146
+ } | {
1147
+ type: "datetime";
1148
+ name: string;
1149
+ template: {
1150
+ dateFormat: "local" | "long" | "us" | "european" | "iso";
1151
+ displayTimeZone: boolean;
1152
+ timeFormat: "12h" | "24h";
1153
+ timezone: string;
1154
+ };
1155
+ } | {
1156
+ type: "checkbox";
1157
+ name: string;
1158
+ template: {
1159
+ defaultValue?: boolean | undefined;
1160
+ };
1161
+ } | {
1162
+ type: "attachments";
1163
+ name: string;
1164
+ template: {};
1165
+ } | {
1166
+ type: "email";
1167
+ name: string;
1168
+ template: {};
1169
+ } | {
1170
+ type: "url";
1171
+ name: string;
1172
+ template: {};
1173
+ } | {
1174
+ type: "phone_number";
1175
+ name: string;
1176
+ template: {};
1177
+ } | {
1178
+ type: "rating";
1179
+ name: string;
1180
+ template: {
1181
+ maxRating: number;
1182
+ defaultValue?: number | undefined;
1183
+ };
1184
+ } | {
1185
+ type: "duration";
1186
+ name: string;
1187
+ template: {
1188
+ format: "h:mm" | "h:mm:ss" | "h:mm:ss.s" | "h:mm:ss.ss" | "h:mm:ss.sss";
1189
+ defaultValue?: number | undefined;
1190
+ };
1191
+ } | {
1192
+ type: "percent";
1193
+ name: string;
1194
+ template: {
1195
+ decimalPlaces: number;
1196
+ numberFormat: "local" | "comma_period" | "period_comma" | "space_comma" | "space_period" | "no_separator";
1197
+ showProgressBar: boolean;
1198
+ allowNegative: boolean;
1199
+ defaultValue?: number | null | undefined;
1200
+ };
1201
+ } | {
1202
+ type: "linked_record";
1203
+ name: string;
1204
+ template: {
1205
+ tableId: string;
1206
+ allowMultiple?: boolean | undefined;
1207
+ };
1208
+ } | {
1209
+ type: "lookup";
1210
+ name: string;
1211
+ template: {
1212
+ linkedRecordFieldId: string;
1213
+ lookupFieldId: string;
1214
+ formulaExpression?: string | undefined;
1215
+ resultType?: "number" | "boolean" | "date" | "text" | "array" | undefined;
1216
+ };
1217
+ } | {
1218
+ type: "source";
1219
+ name: string;
1220
+ template: {};
1221
+ } | {
1222
+ type: "formula";
1223
+ name: string;
1224
+ template: {
1225
+ expression: string;
1226
+ resultType?: "number" | "boolean" | "date" | "text" | "array" | undefined;
1227
+ formatting?: {
1228
+ decimalPlaces?: number | undefined;
1229
+ numberFormat?: "local" | "comma_period" | "period_comma" | "space_comma" | "space_period" | undefined;
1230
+ numberDisplayType?: "number" | "currency" | "percent" | "duration" | undefined;
1231
+ currencyCode?: string | undefined;
1232
+ } | undefined;
1233
+ };
1234
+ } | {
1235
+ type: "autonumber";
1236
+ name: string;
1237
+ template: {};
1238
+ } | {
1239
+ type: "created_at";
1240
+ name: string;
1241
+ template: {
1242
+ dateFormat: "local" | "long" | "us" | "european" | "iso";
1243
+ displayTimeZone: boolean;
1244
+ timeFormat: "12h" | "24h";
1245
+ timezone: string;
1246
+ };
1247
+ } | {
1248
+ type: "updated_at";
1249
+ name: string;
1250
+ template: {
1251
+ dateFormat: "local" | "long" | "us" | "european" | "iso";
1252
+ displayTimeZone: boolean;
1253
+ timeFormat: "12h" | "24h";
1254
+ timezone: string;
1255
+ };
1256
+ }))[];
1257
+ views: {
1258
+ id: string;
1259
+ type: string;
1260
+ name: string;
1261
+ config?: unknown;
1262
+ }[];
1263
+ }[];
1264
+ createdAt: string;
1265
+ updatedAt: string;
1266
+ workspaceId?: string | undefined;
1267
+ }>;
1268
+ delete: (databaseId: string) => Promise<{
1269
+ deleted: true;
1270
+ }>;
1271
+ };
1272
+ }
1273
+ export {};