@astrojs/db 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (56) hide show
  1. package/LICENSE +59 -0
  2. package/components/Renderer.astro +14 -0
  3. package/components/astro-env.d.ts +1 -0
  4. package/components/index.ts +2 -0
  5. package/components/tsconfig.json +7 -0
  6. package/config-augment.d.ts +4 -0
  7. package/dist/cli/commands/push/index.d.ts +6 -0
  8. package/dist/cli/commands/push/index.js +144 -0
  9. package/dist/cli/commands/sync/index.d.ts +6 -0
  10. package/dist/cli/commands/sync/index.js +45 -0
  11. package/dist/cli/commands/verify/index.d.ts +6 -0
  12. package/dist/cli/commands/verify/index.js +25 -0
  13. package/dist/cli/index.d.ts +6 -0
  14. package/dist/cli/index.js +24 -0
  15. package/dist/cli/queries.d.ts +19 -0
  16. package/dist/cli/queries.js +453 -0
  17. package/dist/cli/seed.d.ts +6 -0
  18. package/dist/cli/sync/admin.d.ts +33 -0
  19. package/dist/cli/sync/index.d.ts +1 -0
  20. package/dist/cli/sync/index.js +0 -0
  21. package/dist/cli/sync/migrate.d.ts +1 -0
  22. package/dist/cli/sync/migrate.js +0 -0
  23. package/dist/cli/sync/queries.d.ts +19 -0
  24. package/dist/cli/sync/remote-db.d.ts +1 -0
  25. package/dist/config.d.ts +1149 -0
  26. package/dist/config.js +53 -0
  27. package/dist/consts.d.ts +6 -0
  28. package/dist/consts.js +19 -0
  29. package/dist/error-map.d.ts +6 -0
  30. package/dist/error-map.js +79 -0
  31. package/dist/errors.d.ts +3 -0
  32. package/dist/errors.js +15 -0
  33. package/dist/index.d.ts +3 -0
  34. package/dist/index.js +10 -0
  35. package/dist/integration.d.ts +2 -0
  36. package/dist/integration.js +68 -0
  37. package/dist/internal-drizzle.d.ts +1 -0
  38. package/dist/internal-drizzle.js +48 -0
  39. package/dist/internal.d.ts +50 -0
  40. package/dist/internal.js +250 -0
  41. package/dist/load-astro-config.d.ts +6 -0
  42. package/dist/load-astro-config.js +79 -0
  43. package/dist/migrations.d.ts +9 -0
  44. package/dist/migrations.js +41 -0
  45. package/dist/typegen.d.ts +5 -0
  46. package/dist/typegen.js +57 -0
  47. package/dist/types.d.ts +1367 -0
  48. package/dist/types.js +58 -0
  49. package/dist/utils.d.ts +59 -0
  50. package/dist/utils.js +84 -0
  51. package/dist/vite-plugin-db.d.ts +19 -0
  52. package/dist/vite-plugin-db.js +66 -0
  53. package/dist/vite-plugin-inject-env-ts.d.ts +9 -0
  54. package/dist/vite-plugin-inject-env-ts.js +49 -0
  55. package/index.d.ts +3 -0
  56. package/package.json +72 -0
@@ -0,0 +1,1149 @@
1
+ import { type BooleanField, type DBFieldInput, type DateFieldInput, type JsonField, type NumberField, type TextField, type collectionSchema } from './types.js';
2
+ import { z } from 'zod';
3
+ export declare const dbConfigSchema: z.ZodObject<{
4
+ studio: z.ZodOptional<z.ZodBoolean>;
5
+ collections: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnion<[z.ZodObject<{
6
+ fields: z.ZodRecord<z.ZodString, z.ZodUnion<[z.ZodObject<{
7
+ label: z.ZodOptional<z.ZodString>;
8
+ optional: z.ZodOptional<z.ZodBoolean>;
9
+ unique: z.ZodOptional<z.ZodBoolean>;
10
+ type: z.ZodLiteral<"boolean">;
11
+ default: z.ZodOptional<z.ZodBoolean>;
12
+ }, "strip", z.ZodTypeAny, {
13
+ type: "boolean";
14
+ label?: string | undefined;
15
+ optional?: boolean | undefined;
16
+ unique?: boolean | undefined;
17
+ default?: boolean | undefined;
18
+ }, {
19
+ type: "boolean";
20
+ label?: string | undefined;
21
+ optional?: boolean | undefined;
22
+ unique?: boolean | undefined;
23
+ default?: boolean | undefined;
24
+ }>, z.ZodObject<{
25
+ label: z.ZodOptional<z.ZodString>;
26
+ optional: z.ZodOptional<z.ZodBoolean>;
27
+ unique: z.ZodOptional<z.ZodBoolean>;
28
+ type: z.ZodLiteral<"number">;
29
+ default: z.ZodOptional<z.ZodNumber>;
30
+ }, "strip", z.ZodTypeAny, {
31
+ type: "number";
32
+ label?: string | undefined;
33
+ optional?: boolean | undefined;
34
+ unique?: boolean | undefined;
35
+ default?: number | undefined;
36
+ }, {
37
+ type: "number";
38
+ label?: string | undefined;
39
+ optional?: boolean | undefined;
40
+ unique?: boolean | undefined;
41
+ default?: number | undefined;
42
+ }>, z.ZodObject<{
43
+ label: z.ZodOptional<z.ZodString>;
44
+ optional: z.ZodOptional<z.ZodBoolean>;
45
+ unique: z.ZodOptional<z.ZodBoolean>;
46
+ type: z.ZodLiteral<"text">;
47
+ multiline: z.ZodOptional<z.ZodBoolean>;
48
+ default: z.ZodOptional<z.ZodString>;
49
+ }, "strip", z.ZodTypeAny, {
50
+ type: "text";
51
+ label?: string | undefined;
52
+ optional?: boolean | undefined;
53
+ unique?: boolean | undefined;
54
+ multiline?: boolean | undefined;
55
+ default?: string | undefined;
56
+ }, {
57
+ type: "text";
58
+ label?: string | undefined;
59
+ optional?: boolean | undefined;
60
+ unique?: boolean | undefined;
61
+ multiline?: boolean | undefined;
62
+ default?: string | undefined;
63
+ }>, z.ZodObject<{
64
+ label: z.ZodOptional<z.ZodString>;
65
+ optional: z.ZodOptional<z.ZodBoolean>;
66
+ unique: z.ZodOptional<z.ZodBoolean>;
67
+ type: z.ZodLiteral<"date">;
68
+ default: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<"now">, z.ZodEffects<z.ZodDate, string, Date>]>>;
69
+ }, "strip", z.ZodTypeAny, {
70
+ type: "date";
71
+ label?: string | undefined;
72
+ optional?: boolean | undefined;
73
+ unique?: boolean | undefined;
74
+ default?: string | undefined;
75
+ }, {
76
+ type: "date";
77
+ label?: string | undefined;
78
+ optional?: boolean | undefined;
79
+ unique?: boolean | undefined;
80
+ default?: Date | "now" | undefined;
81
+ }>, z.ZodObject<{
82
+ label: z.ZodOptional<z.ZodString>;
83
+ optional: z.ZodOptional<z.ZodBoolean>;
84
+ unique: z.ZodOptional<z.ZodBoolean>;
85
+ type: z.ZodLiteral<"json">;
86
+ default: z.ZodOptional<z.ZodUnknown>;
87
+ }, "strip", z.ZodTypeAny, {
88
+ type: "json";
89
+ label?: string | undefined;
90
+ optional?: boolean | undefined;
91
+ unique?: boolean | undefined;
92
+ default?: unknown;
93
+ }, {
94
+ type: "json";
95
+ label?: string | undefined;
96
+ optional?: boolean | undefined;
97
+ unique?: boolean | undefined;
98
+ default?: unknown;
99
+ }>]>>;
100
+ data: z.ZodOptional<z.ZodFunction<z.ZodTuple<[], z.ZodUnknown>, z.ZodArray<z.ZodRecord<z.ZodString, z.ZodUnknown>, "many">>>;
101
+ writable: z.ZodLiteral<false>;
102
+ }, "strip", z.ZodTypeAny, {
103
+ fields: Record<string, {
104
+ type: "boolean";
105
+ label?: string | undefined;
106
+ optional?: boolean | undefined;
107
+ unique?: boolean | undefined;
108
+ default?: boolean | undefined;
109
+ } | {
110
+ type: "number";
111
+ label?: string | undefined;
112
+ optional?: boolean | undefined;
113
+ unique?: boolean | undefined;
114
+ default?: number | undefined;
115
+ } | {
116
+ type: "text";
117
+ label?: string | undefined;
118
+ optional?: boolean | undefined;
119
+ unique?: boolean | undefined;
120
+ multiline?: boolean | undefined;
121
+ default?: string | undefined;
122
+ } | {
123
+ type: "date";
124
+ label?: string | undefined;
125
+ optional?: boolean | undefined;
126
+ unique?: boolean | undefined;
127
+ default?: string | undefined;
128
+ } | {
129
+ type: "json";
130
+ label?: string | undefined;
131
+ optional?: boolean | undefined;
132
+ unique?: boolean | undefined;
133
+ default?: unknown;
134
+ }>;
135
+ writable: false;
136
+ data?: ((...args: unknown[]) => Record<string, unknown>[]) | undefined;
137
+ }, {
138
+ fields: Record<string, {
139
+ type: "boolean";
140
+ label?: string | undefined;
141
+ optional?: boolean | undefined;
142
+ unique?: boolean | undefined;
143
+ default?: boolean | undefined;
144
+ } | {
145
+ type: "number";
146
+ label?: string | undefined;
147
+ optional?: boolean | undefined;
148
+ unique?: boolean | undefined;
149
+ default?: number | undefined;
150
+ } | {
151
+ type: "text";
152
+ label?: string | undefined;
153
+ optional?: boolean | undefined;
154
+ unique?: boolean | undefined;
155
+ multiline?: boolean | undefined;
156
+ default?: string | undefined;
157
+ } | {
158
+ type: "date";
159
+ label?: string | undefined;
160
+ optional?: boolean | undefined;
161
+ unique?: boolean | undefined;
162
+ default?: Date | "now" | undefined;
163
+ } | {
164
+ type: "json";
165
+ label?: string | undefined;
166
+ optional?: boolean | undefined;
167
+ unique?: boolean | undefined;
168
+ default?: unknown;
169
+ }>;
170
+ writable: false;
171
+ data?: ((...args: unknown[]) => Record<string, unknown>[]) | undefined;
172
+ }>, z.ZodObject<{
173
+ fields: z.ZodRecord<z.ZodString, z.ZodUnion<[z.ZodObject<{
174
+ label: z.ZodOptional<z.ZodString>;
175
+ optional: z.ZodOptional<z.ZodBoolean>;
176
+ unique: z.ZodOptional<z.ZodBoolean>;
177
+ type: z.ZodLiteral<"boolean">;
178
+ default: z.ZodOptional<z.ZodBoolean>;
179
+ }, "strip", z.ZodTypeAny, {
180
+ type: "boolean";
181
+ label?: string | undefined;
182
+ optional?: boolean | undefined;
183
+ unique?: boolean | undefined;
184
+ default?: boolean | undefined;
185
+ }, {
186
+ type: "boolean";
187
+ label?: string | undefined;
188
+ optional?: boolean | undefined;
189
+ unique?: boolean | undefined;
190
+ default?: boolean | undefined;
191
+ }>, z.ZodObject<{
192
+ label: z.ZodOptional<z.ZodString>;
193
+ optional: z.ZodOptional<z.ZodBoolean>;
194
+ unique: z.ZodOptional<z.ZodBoolean>;
195
+ type: z.ZodLiteral<"number">;
196
+ default: z.ZodOptional<z.ZodNumber>;
197
+ }, "strip", z.ZodTypeAny, {
198
+ type: "number";
199
+ label?: string | undefined;
200
+ optional?: boolean | undefined;
201
+ unique?: boolean | undefined;
202
+ default?: number | undefined;
203
+ }, {
204
+ type: "number";
205
+ label?: string | undefined;
206
+ optional?: boolean | undefined;
207
+ unique?: boolean | undefined;
208
+ default?: number | undefined;
209
+ }>, z.ZodObject<{
210
+ label: z.ZodOptional<z.ZodString>;
211
+ optional: z.ZodOptional<z.ZodBoolean>;
212
+ unique: z.ZodOptional<z.ZodBoolean>;
213
+ type: z.ZodLiteral<"text">;
214
+ multiline: z.ZodOptional<z.ZodBoolean>;
215
+ default: z.ZodOptional<z.ZodString>;
216
+ }, "strip", z.ZodTypeAny, {
217
+ type: "text";
218
+ label?: string | undefined;
219
+ optional?: boolean | undefined;
220
+ unique?: boolean | undefined;
221
+ multiline?: boolean | undefined;
222
+ default?: string | undefined;
223
+ }, {
224
+ type: "text";
225
+ label?: string | undefined;
226
+ optional?: boolean | undefined;
227
+ unique?: boolean | undefined;
228
+ multiline?: boolean | undefined;
229
+ default?: string | undefined;
230
+ }>, z.ZodObject<{
231
+ label: z.ZodOptional<z.ZodString>;
232
+ optional: z.ZodOptional<z.ZodBoolean>;
233
+ unique: z.ZodOptional<z.ZodBoolean>;
234
+ type: z.ZodLiteral<"date">;
235
+ default: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<"now">, z.ZodEffects<z.ZodDate, string, Date>]>>;
236
+ }, "strip", z.ZodTypeAny, {
237
+ type: "date";
238
+ label?: string | undefined;
239
+ optional?: boolean | undefined;
240
+ unique?: boolean | undefined;
241
+ default?: string | undefined;
242
+ }, {
243
+ type: "date";
244
+ label?: string | undefined;
245
+ optional?: boolean | undefined;
246
+ unique?: boolean | undefined;
247
+ default?: Date | "now" | undefined;
248
+ }>, z.ZodObject<{
249
+ label: z.ZodOptional<z.ZodString>;
250
+ optional: z.ZodOptional<z.ZodBoolean>;
251
+ unique: z.ZodOptional<z.ZodBoolean>;
252
+ type: z.ZodLiteral<"json">;
253
+ default: z.ZodOptional<z.ZodUnknown>;
254
+ }, "strip", z.ZodTypeAny, {
255
+ type: "json";
256
+ label?: string | undefined;
257
+ optional?: boolean | undefined;
258
+ unique?: boolean | undefined;
259
+ default?: unknown;
260
+ }, {
261
+ type: "json";
262
+ label?: string | undefined;
263
+ optional?: boolean | undefined;
264
+ unique?: boolean | undefined;
265
+ default?: unknown;
266
+ }>]>>;
267
+ seed: z.ZodOptional<z.ZodFunction<z.ZodTuple<[], z.ZodUnknown>, z.ZodArray<z.ZodRecord<z.ZodString, z.ZodUnknown>, "many">>>;
268
+ writable: z.ZodLiteral<true>;
269
+ }, "strip", z.ZodTypeAny, {
270
+ fields: Record<string, {
271
+ type: "boolean";
272
+ label?: string | undefined;
273
+ optional?: boolean | undefined;
274
+ unique?: boolean | undefined;
275
+ default?: boolean | undefined;
276
+ } | {
277
+ type: "number";
278
+ label?: string | undefined;
279
+ optional?: boolean | undefined;
280
+ unique?: boolean | undefined;
281
+ default?: number | undefined;
282
+ } | {
283
+ type: "text";
284
+ label?: string | undefined;
285
+ optional?: boolean | undefined;
286
+ unique?: boolean | undefined;
287
+ multiline?: boolean | undefined;
288
+ default?: string | undefined;
289
+ } | {
290
+ type: "date";
291
+ label?: string | undefined;
292
+ optional?: boolean | undefined;
293
+ unique?: boolean | undefined;
294
+ default?: string | undefined;
295
+ } | {
296
+ type: "json";
297
+ label?: string | undefined;
298
+ optional?: boolean | undefined;
299
+ unique?: boolean | undefined;
300
+ default?: unknown;
301
+ }>;
302
+ writable: true;
303
+ seed?: ((...args: unknown[]) => Record<string, unknown>[]) | undefined;
304
+ }, {
305
+ fields: Record<string, {
306
+ type: "boolean";
307
+ label?: string | undefined;
308
+ optional?: boolean | undefined;
309
+ unique?: boolean | undefined;
310
+ default?: boolean | undefined;
311
+ } | {
312
+ type: "number";
313
+ label?: string | undefined;
314
+ optional?: boolean | undefined;
315
+ unique?: boolean | undefined;
316
+ default?: number | undefined;
317
+ } | {
318
+ type: "text";
319
+ label?: string | undefined;
320
+ optional?: boolean | undefined;
321
+ unique?: boolean | undefined;
322
+ multiline?: boolean | undefined;
323
+ default?: string | undefined;
324
+ } | {
325
+ type: "date";
326
+ label?: string | undefined;
327
+ optional?: boolean | undefined;
328
+ unique?: boolean | undefined;
329
+ default?: Date | "now" | undefined;
330
+ } | {
331
+ type: "json";
332
+ label?: string | undefined;
333
+ optional?: boolean | undefined;
334
+ unique?: boolean | undefined;
335
+ default?: unknown;
336
+ }>;
337
+ writable: true;
338
+ seed?: ((...args: unknown[]) => Record<string, unknown>[]) | undefined;
339
+ }>]>>>;
340
+ }, "strip", z.ZodTypeAny, {
341
+ studio?: boolean | undefined;
342
+ collections?: Record<string, {
343
+ fields: Record<string, {
344
+ type: "boolean";
345
+ label?: string | undefined;
346
+ optional?: boolean | undefined;
347
+ unique?: boolean | undefined;
348
+ default?: boolean | undefined;
349
+ } | {
350
+ type: "number";
351
+ label?: string | undefined;
352
+ optional?: boolean | undefined;
353
+ unique?: boolean | undefined;
354
+ default?: number | undefined;
355
+ } | {
356
+ type: "text";
357
+ label?: string | undefined;
358
+ optional?: boolean | undefined;
359
+ unique?: boolean | undefined;
360
+ multiline?: boolean | undefined;
361
+ default?: string | undefined;
362
+ } | {
363
+ type: "date";
364
+ label?: string | undefined;
365
+ optional?: boolean | undefined;
366
+ unique?: boolean | undefined;
367
+ default?: string | undefined;
368
+ } | {
369
+ type: "json";
370
+ label?: string | undefined;
371
+ optional?: boolean | undefined;
372
+ unique?: boolean | undefined;
373
+ default?: unknown;
374
+ }>;
375
+ writable: false;
376
+ data?: ((...args: unknown[]) => Record<string, unknown>[]) | undefined;
377
+ } | {
378
+ fields: Record<string, {
379
+ type: "boolean";
380
+ label?: string | undefined;
381
+ optional?: boolean | undefined;
382
+ unique?: boolean | undefined;
383
+ default?: boolean | undefined;
384
+ } | {
385
+ type: "number";
386
+ label?: string | undefined;
387
+ optional?: boolean | undefined;
388
+ unique?: boolean | undefined;
389
+ default?: number | undefined;
390
+ } | {
391
+ type: "text";
392
+ label?: string | undefined;
393
+ optional?: boolean | undefined;
394
+ unique?: boolean | undefined;
395
+ multiline?: boolean | undefined;
396
+ default?: string | undefined;
397
+ } | {
398
+ type: "date";
399
+ label?: string | undefined;
400
+ optional?: boolean | undefined;
401
+ unique?: boolean | undefined;
402
+ default?: string | undefined;
403
+ } | {
404
+ type: "json";
405
+ label?: string | undefined;
406
+ optional?: boolean | undefined;
407
+ unique?: boolean | undefined;
408
+ default?: unknown;
409
+ }>;
410
+ writable: true;
411
+ seed?: ((...args: unknown[]) => Record<string, unknown>[]) | undefined;
412
+ }> | undefined;
413
+ }, {
414
+ studio?: boolean | undefined;
415
+ collections?: Record<string, {
416
+ fields: Record<string, {
417
+ type: "boolean";
418
+ label?: string | undefined;
419
+ optional?: boolean | undefined;
420
+ unique?: boolean | undefined;
421
+ default?: boolean | undefined;
422
+ } | {
423
+ type: "number";
424
+ label?: string | undefined;
425
+ optional?: boolean | undefined;
426
+ unique?: boolean | undefined;
427
+ default?: number | undefined;
428
+ } | {
429
+ type: "text";
430
+ label?: string | undefined;
431
+ optional?: boolean | undefined;
432
+ unique?: boolean | undefined;
433
+ multiline?: boolean | undefined;
434
+ default?: string | undefined;
435
+ } | {
436
+ type: "date";
437
+ label?: string | undefined;
438
+ optional?: boolean | undefined;
439
+ unique?: boolean | undefined;
440
+ default?: Date | "now" | undefined;
441
+ } | {
442
+ type: "json";
443
+ label?: string | undefined;
444
+ optional?: boolean | undefined;
445
+ unique?: boolean | undefined;
446
+ default?: unknown;
447
+ }>;
448
+ writable: false;
449
+ data?: ((...args: unknown[]) => Record<string, unknown>[]) | undefined;
450
+ } | {
451
+ fields: Record<string, {
452
+ type: "boolean";
453
+ label?: string | undefined;
454
+ optional?: boolean | undefined;
455
+ unique?: boolean | undefined;
456
+ default?: boolean | undefined;
457
+ } | {
458
+ type: "number";
459
+ label?: string | undefined;
460
+ optional?: boolean | undefined;
461
+ unique?: boolean | undefined;
462
+ default?: number | undefined;
463
+ } | {
464
+ type: "text";
465
+ label?: string | undefined;
466
+ optional?: boolean | undefined;
467
+ unique?: boolean | undefined;
468
+ multiline?: boolean | undefined;
469
+ default?: string | undefined;
470
+ } | {
471
+ type: "date";
472
+ label?: string | undefined;
473
+ optional?: boolean | undefined;
474
+ unique?: boolean | undefined;
475
+ default?: Date | "now" | undefined;
476
+ } | {
477
+ type: "json";
478
+ label?: string | undefined;
479
+ optional?: boolean | undefined;
480
+ unique?: boolean | undefined;
481
+ default?: unknown;
482
+ }>;
483
+ writable: true;
484
+ seed?: ((...args: unknown[]) => Record<string, unknown>[]) | undefined;
485
+ }> | undefined;
486
+ }>;
487
+ export type DBUserConfig = z.input<typeof dbConfigSchema>;
488
+ export declare const astroConfigWithDbSchema: z.ZodObject<{
489
+ db: z.ZodOptional<z.ZodObject<{
490
+ studio: z.ZodOptional<z.ZodBoolean>;
491
+ collections: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnion<[z.ZodObject<{
492
+ fields: z.ZodRecord<z.ZodString, z.ZodUnion<[z.ZodObject<{
493
+ label: z.ZodOptional<z.ZodString>;
494
+ optional: z.ZodOptional<z.ZodBoolean>;
495
+ unique: z.ZodOptional<z.ZodBoolean>;
496
+ type: z.ZodLiteral<"boolean">;
497
+ default: z.ZodOptional<z.ZodBoolean>;
498
+ }, "strip", z.ZodTypeAny, {
499
+ type: "boolean";
500
+ label?: string | undefined;
501
+ optional?: boolean | undefined;
502
+ unique?: boolean | undefined;
503
+ default?: boolean | undefined;
504
+ }, {
505
+ type: "boolean";
506
+ label?: string | undefined;
507
+ optional?: boolean | undefined;
508
+ unique?: boolean | undefined;
509
+ default?: boolean | undefined;
510
+ }>, z.ZodObject<{
511
+ label: z.ZodOptional<z.ZodString>;
512
+ optional: z.ZodOptional<z.ZodBoolean>;
513
+ unique: z.ZodOptional<z.ZodBoolean>;
514
+ type: z.ZodLiteral<"number">;
515
+ default: z.ZodOptional<z.ZodNumber>;
516
+ }, "strip", z.ZodTypeAny, {
517
+ type: "number";
518
+ label?: string | undefined;
519
+ optional?: boolean | undefined;
520
+ unique?: boolean | undefined;
521
+ default?: number | undefined;
522
+ }, {
523
+ type: "number";
524
+ label?: string | undefined;
525
+ optional?: boolean | undefined;
526
+ unique?: boolean | undefined;
527
+ default?: number | undefined;
528
+ }>, z.ZodObject<{
529
+ label: z.ZodOptional<z.ZodString>;
530
+ optional: z.ZodOptional<z.ZodBoolean>;
531
+ unique: z.ZodOptional<z.ZodBoolean>;
532
+ type: z.ZodLiteral<"text">;
533
+ multiline: z.ZodOptional<z.ZodBoolean>;
534
+ default: z.ZodOptional<z.ZodString>;
535
+ }, "strip", z.ZodTypeAny, {
536
+ type: "text";
537
+ label?: string | undefined;
538
+ optional?: boolean | undefined;
539
+ unique?: boolean | undefined;
540
+ multiline?: boolean | undefined;
541
+ default?: string | undefined;
542
+ }, {
543
+ type: "text";
544
+ label?: string | undefined;
545
+ optional?: boolean | undefined;
546
+ unique?: boolean | undefined;
547
+ multiline?: boolean | undefined;
548
+ default?: string | undefined;
549
+ }>, z.ZodObject<{
550
+ label: z.ZodOptional<z.ZodString>;
551
+ optional: z.ZodOptional<z.ZodBoolean>;
552
+ unique: z.ZodOptional<z.ZodBoolean>;
553
+ type: z.ZodLiteral<"date">;
554
+ default: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<"now">, z.ZodEffects<z.ZodDate, string, Date>]>>;
555
+ }, "strip", z.ZodTypeAny, {
556
+ type: "date";
557
+ label?: string | undefined;
558
+ optional?: boolean | undefined;
559
+ unique?: boolean | undefined;
560
+ default?: string | undefined;
561
+ }, {
562
+ type: "date";
563
+ label?: string | undefined;
564
+ optional?: boolean | undefined;
565
+ unique?: boolean | undefined;
566
+ default?: Date | "now" | undefined;
567
+ }>, z.ZodObject<{
568
+ label: z.ZodOptional<z.ZodString>;
569
+ optional: z.ZodOptional<z.ZodBoolean>;
570
+ unique: z.ZodOptional<z.ZodBoolean>;
571
+ type: z.ZodLiteral<"json">;
572
+ default: z.ZodOptional<z.ZodUnknown>;
573
+ }, "strip", z.ZodTypeAny, {
574
+ type: "json";
575
+ label?: string | undefined;
576
+ optional?: boolean | undefined;
577
+ unique?: boolean | undefined;
578
+ default?: unknown;
579
+ }, {
580
+ type: "json";
581
+ label?: string | undefined;
582
+ optional?: boolean | undefined;
583
+ unique?: boolean | undefined;
584
+ default?: unknown;
585
+ }>]>>;
586
+ data: z.ZodOptional<z.ZodFunction<z.ZodTuple<[], z.ZodUnknown>, z.ZodArray<z.ZodRecord<z.ZodString, z.ZodUnknown>, "many">>>;
587
+ writable: z.ZodLiteral<false>;
588
+ }, "strip", z.ZodTypeAny, {
589
+ fields: Record<string, {
590
+ type: "boolean";
591
+ label?: string | undefined;
592
+ optional?: boolean | undefined;
593
+ unique?: boolean | undefined;
594
+ default?: boolean | undefined;
595
+ } | {
596
+ type: "number";
597
+ label?: string | undefined;
598
+ optional?: boolean | undefined;
599
+ unique?: boolean | undefined;
600
+ default?: number | undefined;
601
+ } | {
602
+ type: "text";
603
+ label?: string | undefined;
604
+ optional?: boolean | undefined;
605
+ unique?: boolean | undefined;
606
+ multiline?: boolean | undefined;
607
+ default?: string | undefined;
608
+ } | {
609
+ type: "date";
610
+ label?: string | undefined;
611
+ optional?: boolean | undefined;
612
+ unique?: boolean | undefined;
613
+ default?: string | undefined;
614
+ } | {
615
+ type: "json";
616
+ label?: string | undefined;
617
+ optional?: boolean | undefined;
618
+ unique?: boolean | undefined;
619
+ default?: unknown;
620
+ }>;
621
+ writable: false;
622
+ data?: ((...args: unknown[]) => Record<string, unknown>[]) | undefined;
623
+ }, {
624
+ fields: Record<string, {
625
+ type: "boolean";
626
+ label?: string | undefined;
627
+ optional?: boolean | undefined;
628
+ unique?: boolean | undefined;
629
+ default?: boolean | undefined;
630
+ } | {
631
+ type: "number";
632
+ label?: string | undefined;
633
+ optional?: boolean | undefined;
634
+ unique?: boolean | undefined;
635
+ default?: number | undefined;
636
+ } | {
637
+ type: "text";
638
+ label?: string | undefined;
639
+ optional?: boolean | undefined;
640
+ unique?: boolean | undefined;
641
+ multiline?: boolean | undefined;
642
+ default?: string | undefined;
643
+ } | {
644
+ type: "date";
645
+ label?: string | undefined;
646
+ optional?: boolean | undefined;
647
+ unique?: boolean | undefined;
648
+ default?: Date | "now" | undefined;
649
+ } | {
650
+ type: "json";
651
+ label?: string | undefined;
652
+ optional?: boolean | undefined;
653
+ unique?: boolean | undefined;
654
+ default?: unknown;
655
+ }>;
656
+ writable: false;
657
+ data?: ((...args: unknown[]) => Record<string, unknown>[]) | undefined;
658
+ }>, z.ZodObject<{
659
+ fields: z.ZodRecord<z.ZodString, z.ZodUnion<[z.ZodObject<{
660
+ label: z.ZodOptional<z.ZodString>;
661
+ optional: z.ZodOptional<z.ZodBoolean>;
662
+ unique: z.ZodOptional<z.ZodBoolean>;
663
+ type: z.ZodLiteral<"boolean">;
664
+ default: z.ZodOptional<z.ZodBoolean>;
665
+ }, "strip", z.ZodTypeAny, {
666
+ type: "boolean";
667
+ label?: string | undefined;
668
+ optional?: boolean | undefined;
669
+ unique?: boolean | undefined;
670
+ default?: boolean | undefined;
671
+ }, {
672
+ type: "boolean";
673
+ label?: string | undefined;
674
+ optional?: boolean | undefined;
675
+ unique?: boolean | undefined;
676
+ default?: boolean | undefined;
677
+ }>, z.ZodObject<{
678
+ label: z.ZodOptional<z.ZodString>;
679
+ optional: z.ZodOptional<z.ZodBoolean>;
680
+ unique: z.ZodOptional<z.ZodBoolean>;
681
+ type: z.ZodLiteral<"number">;
682
+ default: z.ZodOptional<z.ZodNumber>;
683
+ }, "strip", z.ZodTypeAny, {
684
+ type: "number";
685
+ label?: string | undefined;
686
+ optional?: boolean | undefined;
687
+ unique?: boolean | undefined;
688
+ default?: number | undefined;
689
+ }, {
690
+ type: "number";
691
+ label?: string | undefined;
692
+ optional?: boolean | undefined;
693
+ unique?: boolean | undefined;
694
+ default?: number | undefined;
695
+ }>, z.ZodObject<{
696
+ label: z.ZodOptional<z.ZodString>;
697
+ optional: z.ZodOptional<z.ZodBoolean>;
698
+ unique: z.ZodOptional<z.ZodBoolean>;
699
+ type: z.ZodLiteral<"text">;
700
+ multiline: z.ZodOptional<z.ZodBoolean>;
701
+ default: z.ZodOptional<z.ZodString>;
702
+ }, "strip", z.ZodTypeAny, {
703
+ type: "text";
704
+ label?: string | undefined;
705
+ optional?: boolean | undefined;
706
+ unique?: boolean | undefined;
707
+ multiline?: boolean | undefined;
708
+ default?: string | undefined;
709
+ }, {
710
+ type: "text";
711
+ label?: string | undefined;
712
+ optional?: boolean | undefined;
713
+ unique?: boolean | undefined;
714
+ multiline?: boolean | undefined;
715
+ default?: string | undefined;
716
+ }>, z.ZodObject<{
717
+ label: z.ZodOptional<z.ZodString>;
718
+ optional: z.ZodOptional<z.ZodBoolean>;
719
+ unique: z.ZodOptional<z.ZodBoolean>;
720
+ type: z.ZodLiteral<"date">;
721
+ default: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<"now">, z.ZodEffects<z.ZodDate, string, Date>]>>;
722
+ }, "strip", z.ZodTypeAny, {
723
+ type: "date";
724
+ label?: string | undefined;
725
+ optional?: boolean | undefined;
726
+ unique?: boolean | undefined;
727
+ default?: string | undefined;
728
+ }, {
729
+ type: "date";
730
+ label?: string | undefined;
731
+ optional?: boolean | undefined;
732
+ unique?: boolean | undefined;
733
+ default?: Date | "now" | undefined;
734
+ }>, z.ZodObject<{
735
+ label: z.ZodOptional<z.ZodString>;
736
+ optional: z.ZodOptional<z.ZodBoolean>;
737
+ unique: z.ZodOptional<z.ZodBoolean>;
738
+ type: z.ZodLiteral<"json">;
739
+ default: z.ZodOptional<z.ZodUnknown>;
740
+ }, "strip", z.ZodTypeAny, {
741
+ type: "json";
742
+ label?: string | undefined;
743
+ optional?: boolean | undefined;
744
+ unique?: boolean | undefined;
745
+ default?: unknown;
746
+ }, {
747
+ type: "json";
748
+ label?: string | undefined;
749
+ optional?: boolean | undefined;
750
+ unique?: boolean | undefined;
751
+ default?: unknown;
752
+ }>]>>;
753
+ seed: z.ZodOptional<z.ZodFunction<z.ZodTuple<[], z.ZodUnknown>, z.ZodArray<z.ZodRecord<z.ZodString, z.ZodUnknown>, "many">>>;
754
+ writable: z.ZodLiteral<true>;
755
+ }, "strip", z.ZodTypeAny, {
756
+ fields: Record<string, {
757
+ type: "boolean";
758
+ label?: string | undefined;
759
+ optional?: boolean | undefined;
760
+ unique?: boolean | undefined;
761
+ default?: boolean | undefined;
762
+ } | {
763
+ type: "number";
764
+ label?: string | undefined;
765
+ optional?: boolean | undefined;
766
+ unique?: boolean | undefined;
767
+ default?: number | undefined;
768
+ } | {
769
+ type: "text";
770
+ label?: string | undefined;
771
+ optional?: boolean | undefined;
772
+ unique?: boolean | undefined;
773
+ multiline?: boolean | undefined;
774
+ default?: string | undefined;
775
+ } | {
776
+ type: "date";
777
+ label?: string | undefined;
778
+ optional?: boolean | undefined;
779
+ unique?: boolean | undefined;
780
+ default?: string | undefined;
781
+ } | {
782
+ type: "json";
783
+ label?: string | undefined;
784
+ optional?: boolean | undefined;
785
+ unique?: boolean | undefined;
786
+ default?: unknown;
787
+ }>;
788
+ writable: true;
789
+ seed?: ((...args: unknown[]) => Record<string, unknown>[]) | undefined;
790
+ }, {
791
+ fields: Record<string, {
792
+ type: "boolean";
793
+ label?: string | undefined;
794
+ optional?: boolean | undefined;
795
+ unique?: boolean | undefined;
796
+ default?: boolean | undefined;
797
+ } | {
798
+ type: "number";
799
+ label?: string | undefined;
800
+ optional?: boolean | undefined;
801
+ unique?: boolean | undefined;
802
+ default?: number | undefined;
803
+ } | {
804
+ type: "text";
805
+ label?: string | undefined;
806
+ optional?: boolean | undefined;
807
+ unique?: boolean | undefined;
808
+ multiline?: boolean | undefined;
809
+ default?: string | undefined;
810
+ } | {
811
+ type: "date";
812
+ label?: string | undefined;
813
+ optional?: boolean | undefined;
814
+ unique?: boolean | undefined;
815
+ default?: Date | "now" | undefined;
816
+ } | {
817
+ type: "json";
818
+ label?: string | undefined;
819
+ optional?: boolean | undefined;
820
+ unique?: boolean | undefined;
821
+ default?: unknown;
822
+ }>;
823
+ writable: true;
824
+ seed?: ((...args: unknown[]) => Record<string, unknown>[]) | undefined;
825
+ }>]>>>;
826
+ }, "strip", z.ZodTypeAny, {
827
+ studio?: boolean | undefined;
828
+ collections?: Record<string, {
829
+ fields: Record<string, {
830
+ type: "boolean";
831
+ label?: string | undefined;
832
+ optional?: boolean | undefined;
833
+ unique?: boolean | undefined;
834
+ default?: boolean | undefined;
835
+ } | {
836
+ type: "number";
837
+ label?: string | undefined;
838
+ optional?: boolean | undefined;
839
+ unique?: boolean | undefined;
840
+ default?: number | undefined;
841
+ } | {
842
+ type: "text";
843
+ label?: string | undefined;
844
+ optional?: boolean | undefined;
845
+ unique?: boolean | undefined;
846
+ multiline?: boolean | undefined;
847
+ default?: string | undefined;
848
+ } | {
849
+ type: "date";
850
+ label?: string | undefined;
851
+ optional?: boolean | undefined;
852
+ unique?: boolean | undefined;
853
+ default?: string | undefined;
854
+ } | {
855
+ type: "json";
856
+ label?: string | undefined;
857
+ optional?: boolean | undefined;
858
+ unique?: boolean | undefined;
859
+ default?: unknown;
860
+ }>;
861
+ writable: false;
862
+ data?: ((...args: unknown[]) => Record<string, unknown>[]) | undefined;
863
+ } | {
864
+ fields: Record<string, {
865
+ type: "boolean";
866
+ label?: string | undefined;
867
+ optional?: boolean | undefined;
868
+ unique?: boolean | undefined;
869
+ default?: boolean | undefined;
870
+ } | {
871
+ type: "number";
872
+ label?: string | undefined;
873
+ optional?: boolean | undefined;
874
+ unique?: boolean | undefined;
875
+ default?: number | undefined;
876
+ } | {
877
+ type: "text";
878
+ label?: string | undefined;
879
+ optional?: boolean | undefined;
880
+ unique?: boolean | undefined;
881
+ multiline?: boolean | undefined;
882
+ default?: string | undefined;
883
+ } | {
884
+ type: "date";
885
+ label?: string | undefined;
886
+ optional?: boolean | undefined;
887
+ unique?: boolean | undefined;
888
+ default?: string | undefined;
889
+ } | {
890
+ type: "json";
891
+ label?: string | undefined;
892
+ optional?: boolean | undefined;
893
+ unique?: boolean | undefined;
894
+ default?: unknown;
895
+ }>;
896
+ writable: true;
897
+ seed?: ((...args: unknown[]) => Record<string, unknown>[]) | undefined;
898
+ }> | undefined;
899
+ }, {
900
+ studio?: boolean | undefined;
901
+ collections?: Record<string, {
902
+ fields: Record<string, {
903
+ type: "boolean";
904
+ label?: string | undefined;
905
+ optional?: boolean | undefined;
906
+ unique?: boolean | undefined;
907
+ default?: boolean | undefined;
908
+ } | {
909
+ type: "number";
910
+ label?: string | undefined;
911
+ optional?: boolean | undefined;
912
+ unique?: boolean | undefined;
913
+ default?: number | undefined;
914
+ } | {
915
+ type: "text";
916
+ label?: string | undefined;
917
+ optional?: boolean | undefined;
918
+ unique?: boolean | undefined;
919
+ multiline?: boolean | undefined;
920
+ default?: string | undefined;
921
+ } | {
922
+ type: "date";
923
+ label?: string | undefined;
924
+ optional?: boolean | undefined;
925
+ unique?: boolean | undefined;
926
+ default?: Date | "now" | undefined;
927
+ } | {
928
+ type: "json";
929
+ label?: string | undefined;
930
+ optional?: boolean | undefined;
931
+ unique?: boolean | undefined;
932
+ default?: unknown;
933
+ }>;
934
+ writable: false;
935
+ data?: ((...args: unknown[]) => Record<string, unknown>[]) | undefined;
936
+ } | {
937
+ fields: Record<string, {
938
+ type: "boolean";
939
+ label?: string | undefined;
940
+ optional?: boolean | undefined;
941
+ unique?: boolean | undefined;
942
+ default?: boolean | undefined;
943
+ } | {
944
+ type: "number";
945
+ label?: string | undefined;
946
+ optional?: boolean | undefined;
947
+ unique?: boolean | undefined;
948
+ default?: number | undefined;
949
+ } | {
950
+ type: "text";
951
+ label?: string | undefined;
952
+ optional?: boolean | undefined;
953
+ unique?: boolean | undefined;
954
+ multiline?: boolean | undefined;
955
+ default?: string | undefined;
956
+ } | {
957
+ type: "date";
958
+ label?: string | undefined;
959
+ optional?: boolean | undefined;
960
+ unique?: boolean | undefined;
961
+ default?: Date | "now" | undefined;
962
+ } | {
963
+ type: "json";
964
+ label?: string | undefined;
965
+ optional?: boolean | undefined;
966
+ unique?: boolean | undefined;
967
+ default?: unknown;
968
+ }>;
969
+ writable: true;
970
+ seed?: ((...args: unknown[]) => Record<string, unknown>[]) | undefined;
971
+ }> | undefined;
972
+ }>>;
973
+ }, "strip", z.ZodTypeAny, {
974
+ db?: {
975
+ studio?: boolean | undefined;
976
+ collections?: Record<string, {
977
+ fields: Record<string, {
978
+ type: "boolean";
979
+ label?: string | undefined;
980
+ optional?: boolean | undefined;
981
+ unique?: boolean | undefined;
982
+ default?: boolean | undefined;
983
+ } | {
984
+ type: "number";
985
+ label?: string | undefined;
986
+ optional?: boolean | undefined;
987
+ unique?: boolean | undefined;
988
+ default?: number | undefined;
989
+ } | {
990
+ type: "text";
991
+ label?: string | undefined;
992
+ optional?: boolean | undefined;
993
+ unique?: boolean | undefined;
994
+ multiline?: boolean | undefined;
995
+ default?: string | undefined;
996
+ } | {
997
+ type: "date";
998
+ label?: string | undefined;
999
+ optional?: boolean | undefined;
1000
+ unique?: boolean | undefined;
1001
+ default?: string | undefined;
1002
+ } | {
1003
+ type: "json";
1004
+ label?: string | undefined;
1005
+ optional?: boolean | undefined;
1006
+ unique?: boolean | undefined;
1007
+ default?: unknown;
1008
+ }>;
1009
+ writable: false;
1010
+ data?: ((...args: unknown[]) => Record<string, unknown>[]) | undefined;
1011
+ } | {
1012
+ fields: Record<string, {
1013
+ type: "boolean";
1014
+ label?: string | undefined;
1015
+ optional?: boolean | undefined;
1016
+ unique?: boolean | undefined;
1017
+ default?: boolean | undefined;
1018
+ } | {
1019
+ type: "number";
1020
+ label?: string | undefined;
1021
+ optional?: boolean | undefined;
1022
+ unique?: boolean | undefined;
1023
+ default?: number | undefined;
1024
+ } | {
1025
+ type: "text";
1026
+ label?: string | undefined;
1027
+ optional?: boolean | undefined;
1028
+ unique?: boolean | undefined;
1029
+ multiline?: boolean | undefined;
1030
+ default?: string | undefined;
1031
+ } | {
1032
+ type: "date";
1033
+ label?: string | undefined;
1034
+ optional?: boolean | undefined;
1035
+ unique?: boolean | undefined;
1036
+ default?: string | undefined;
1037
+ } | {
1038
+ type: "json";
1039
+ label?: string | undefined;
1040
+ optional?: boolean | undefined;
1041
+ unique?: boolean | undefined;
1042
+ default?: unknown;
1043
+ }>;
1044
+ writable: true;
1045
+ seed?: ((...args: unknown[]) => Record<string, unknown>[]) | undefined;
1046
+ }> | undefined;
1047
+ } | undefined;
1048
+ }, {
1049
+ db?: {
1050
+ studio?: boolean | undefined;
1051
+ collections?: Record<string, {
1052
+ fields: Record<string, {
1053
+ type: "boolean";
1054
+ label?: string | undefined;
1055
+ optional?: boolean | undefined;
1056
+ unique?: boolean | undefined;
1057
+ default?: boolean | undefined;
1058
+ } | {
1059
+ type: "number";
1060
+ label?: string | undefined;
1061
+ optional?: boolean | undefined;
1062
+ unique?: boolean | undefined;
1063
+ default?: number | undefined;
1064
+ } | {
1065
+ type: "text";
1066
+ label?: string | undefined;
1067
+ optional?: boolean | undefined;
1068
+ unique?: boolean | undefined;
1069
+ multiline?: boolean | undefined;
1070
+ default?: string | undefined;
1071
+ } | {
1072
+ type: "date";
1073
+ label?: string | undefined;
1074
+ optional?: boolean | undefined;
1075
+ unique?: boolean | undefined;
1076
+ default?: Date | "now" | undefined;
1077
+ } | {
1078
+ type: "json";
1079
+ label?: string | undefined;
1080
+ optional?: boolean | undefined;
1081
+ unique?: boolean | undefined;
1082
+ default?: unknown;
1083
+ }>;
1084
+ writable: false;
1085
+ data?: ((...args: unknown[]) => Record<string, unknown>[]) | undefined;
1086
+ } | {
1087
+ fields: Record<string, {
1088
+ type: "boolean";
1089
+ label?: string | undefined;
1090
+ optional?: boolean | undefined;
1091
+ unique?: boolean | undefined;
1092
+ default?: boolean | undefined;
1093
+ } | {
1094
+ type: "number";
1095
+ label?: string | undefined;
1096
+ optional?: boolean | undefined;
1097
+ unique?: boolean | undefined;
1098
+ default?: number | undefined;
1099
+ } | {
1100
+ type: "text";
1101
+ label?: string | undefined;
1102
+ optional?: boolean | undefined;
1103
+ unique?: boolean | undefined;
1104
+ multiline?: boolean | undefined;
1105
+ default?: string | undefined;
1106
+ } | {
1107
+ type: "date";
1108
+ label?: string | undefined;
1109
+ optional?: boolean | undefined;
1110
+ unique?: boolean | undefined;
1111
+ default?: Date | "now" | undefined;
1112
+ } | {
1113
+ type: "json";
1114
+ label?: string | undefined;
1115
+ optional?: boolean | undefined;
1116
+ unique?: boolean | undefined;
1117
+ default?: unknown;
1118
+ }>;
1119
+ writable: true;
1120
+ seed?: ((...args: unknown[]) => Record<string, unknown>[]) | undefined;
1121
+ }> | undefined;
1122
+ } | undefined;
1123
+ }>;
1124
+ type CollectionConfig<TFields extends z.input<typeof collectionSchema>['fields'], Writable extends boolean> = Writable extends true ? {
1125
+ fields: TFields;
1126
+ seed?: Writable extends false ? never : () => Array<Record<keyof TFields, any> & {
1127
+ id?: string;
1128
+ }>;
1129
+ } : {
1130
+ fields: TFields;
1131
+ data?: Writable extends true ? never : () => Array<Record<keyof TFields, any> & {
1132
+ id?: string;
1133
+ }>;
1134
+ };
1135
+ type ResolvedCollectionConfig<TFields extends z.input<typeof collectionSchema>['fields'], Writable extends boolean> = CollectionConfig<TFields, Writable> & {
1136
+ writable: Writable;
1137
+ };
1138
+ export declare function defineCollection<TFields extends z.input<typeof collectionSchema>['fields']>(userConfig: CollectionConfig<TFields, false>): ResolvedCollectionConfig<TFields, false>;
1139
+ export declare function defineWritableCollection<TFields extends z.input<typeof collectionSchema>['fields']>(userConfig: CollectionConfig<TFields, true>): ResolvedCollectionConfig<TFields, true>;
1140
+ export type AstroConfigWithDB = z.infer<typeof astroConfigWithDbSchema>;
1141
+ type FieldOpts<T extends DBFieldInput> = Omit<T, 'type'>;
1142
+ export declare const field: {
1143
+ number(opts?: FieldOpts<NumberField>): NumberField;
1144
+ boolean(opts?: FieldOpts<BooleanField>): BooleanField;
1145
+ text(opts?: FieldOpts<TextField>): TextField;
1146
+ date(opts?: FieldOpts<DateFieldInput>): DateFieldInput;
1147
+ json(opts?: FieldOpts<JsonField>): JsonField;
1148
+ };
1149
+ export {};