@boltapp/bolt-app-db 0.0.16 → 0.0.17

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,702 @@
1
+ /**
2
+ * Auth tables for local (SQLite) apps.
3
+ *
4
+ * These tables mirror the Better Auth core model names and field names so we
5
+ * can keep local-to-cloud migration straightforward.
6
+ */
7
+ export declare const users: import("drizzle-orm/sqlite-core").SQLiteTableWithColumns<{
8
+ name: "users";
9
+ schema: undefined;
10
+ columns: {
11
+ id: import("drizzle-orm/sqlite-core").SQLiteColumn<{
12
+ name: "id";
13
+ tableName: "users";
14
+ dataType: "string";
15
+ columnType: "SQLiteText";
16
+ data: string;
17
+ driverParam: string;
18
+ notNull: true;
19
+ hasDefault: true;
20
+ isPrimaryKey: true;
21
+ isAutoincrement: false;
22
+ hasRuntimeDefault: true;
23
+ enumValues: [string, ...string[]];
24
+ baseColumn: never;
25
+ identity: undefined;
26
+ generated: undefined;
27
+ }, {}, {
28
+ length: undefined;
29
+ }>;
30
+ first_name: import("drizzle-orm/sqlite-core").SQLiteColumn<{
31
+ name: "first_name";
32
+ tableName: "users";
33
+ dataType: "string";
34
+ columnType: "SQLiteText";
35
+ data: string;
36
+ driverParam: string;
37
+ notNull: true;
38
+ hasDefault: false;
39
+ isPrimaryKey: false;
40
+ isAutoincrement: false;
41
+ hasRuntimeDefault: false;
42
+ enumValues: [string, ...string[]];
43
+ baseColumn: never;
44
+ identity: undefined;
45
+ generated: undefined;
46
+ }, {}, {
47
+ length: undefined;
48
+ }>;
49
+ last_name: import("drizzle-orm/sqlite-core").SQLiteColumn<{
50
+ name: "last_name";
51
+ tableName: "users";
52
+ dataType: "string";
53
+ columnType: "SQLiteText";
54
+ data: string;
55
+ driverParam: string;
56
+ notNull: true;
57
+ hasDefault: false;
58
+ isPrimaryKey: false;
59
+ isAutoincrement: false;
60
+ hasRuntimeDefault: false;
61
+ enumValues: [string, ...string[]];
62
+ baseColumn: never;
63
+ identity: undefined;
64
+ generated: undefined;
65
+ }, {}, {
66
+ length: undefined;
67
+ }>;
68
+ name: import("drizzle-orm/sqlite-core").SQLiteColumn<{
69
+ name: "name";
70
+ tableName: "users";
71
+ dataType: "string";
72
+ columnType: "SQLiteText";
73
+ data: string;
74
+ driverParam: string;
75
+ notNull: false;
76
+ hasDefault: false;
77
+ isPrimaryKey: false;
78
+ isAutoincrement: false;
79
+ hasRuntimeDefault: false;
80
+ enumValues: [string, ...string[]];
81
+ baseColumn: never;
82
+ identity: undefined;
83
+ generated: undefined;
84
+ }, {}, {
85
+ length: undefined;
86
+ }>;
87
+ email: import("drizzle-orm/sqlite-core").SQLiteColumn<{
88
+ name: "email";
89
+ tableName: "users";
90
+ dataType: "string";
91
+ columnType: "SQLiteText";
92
+ data: string;
93
+ driverParam: string;
94
+ notNull: true;
95
+ hasDefault: false;
96
+ isPrimaryKey: false;
97
+ isAutoincrement: false;
98
+ hasRuntimeDefault: false;
99
+ enumValues: [string, ...string[]];
100
+ baseColumn: never;
101
+ identity: undefined;
102
+ generated: undefined;
103
+ }, {}, {
104
+ length: undefined;
105
+ }>;
106
+ emailVerified: import("drizzle-orm/sqlite-core").SQLiteColumn<{
107
+ name: "emailVerified";
108
+ tableName: "users";
109
+ dataType: "boolean";
110
+ columnType: "SQLiteBoolean";
111
+ data: boolean;
112
+ driverParam: number;
113
+ notNull: true;
114
+ hasDefault: true;
115
+ isPrimaryKey: false;
116
+ isAutoincrement: false;
117
+ hasRuntimeDefault: false;
118
+ enumValues: undefined;
119
+ baseColumn: never;
120
+ identity: undefined;
121
+ generated: undefined;
122
+ }, {}, {}>;
123
+ image: import("drizzle-orm/sqlite-core").SQLiteColumn<{
124
+ name: "image";
125
+ tableName: "users";
126
+ dataType: "string";
127
+ columnType: "SQLiteText";
128
+ data: string;
129
+ driverParam: string;
130
+ notNull: false;
131
+ hasDefault: false;
132
+ isPrimaryKey: false;
133
+ isAutoincrement: false;
134
+ hasRuntimeDefault: false;
135
+ enumValues: [string, ...string[]];
136
+ baseColumn: never;
137
+ identity: undefined;
138
+ generated: undefined;
139
+ }, {}, {
140
+ length: undefined;
141
+ }>;
142
+ createdAt: import("drizzle-orm/sqlite-core").SQLiteColumn<{
143
+ name: "createdAt";
144
+ tableName: "users";
145
+ dataType: "date";
146
+ columnType: "SQLiteTimestamp";
147
+ data: Date;
148
+ driverParam: number;
149
+ notNull: false;
150
+ hasDefault: false;
151
+ isPrimaryKey: false;
152
+ isAutoincrement: false;
153
+ hasRuntimeDefault: false;
154
+ enumValues: undefined;
155
+ baseColumn: never;
156
+ identity: undefined;
157
+ generated: undefined;
158
+ }, {}, {}>;
159
+ updatedAt: import("drizzle-orm/sqlite-core").SQLiteColumn<{
160
+ name: "updatedAt";
161
+ tableName: "users";
162
+ dataType: "date";
163
+ columnType: "SQLiteTimestamp";
164
+ data: Date;
165
+ driverParam: number;
166
+ notNull: false;
167
+ hasDefault: false;
168
+ isPrimaryKey: false;
169
+ isAutoincrement: false;
170
+ hasRuntimeDefault: false;
171
+ enumValues: undefined;
172
+ baseColumn: never;
173
+ identity: undefined;
174
+ generated: undefined;
175
+ }, {}, {}>;
176
+ };
177
+ dialect: "sqlite";
178
+ }>;
179
+ export declare const sessions: import("drizzle-orm/sqlite-core").SQLiteTableWithColumns<{
180
+ name: "sessions";
181
+ schema: undefined;
182
+ columns: {
183
+ id: import("drizzle-orm/sqlite-core").SQLiteColumn<{
184
+ name: "id";
185
+ tableName: "sessions";
186
+ dataType: "string";
187
+ columnType: "SQLiteText";
188
+ data: string;
189
+ driverParam: string;
190
+ notNull: true;
191
+ hasDefault: true;
192
+ isPrimaryKey: true;
193
+ isAutoincrement: false;
194
+ hasRuntimeDefault: true;
195
+ enumValues: [string, ...string[]];
196
+ baseColumn: never;
197
+ identity: undefined;
198
+ generated: undefined;
199
+ }, {}, {
200
+ length: undefined;
201
+ }>;
202
+ expiresAt: import("drizzle-orm/sqlite-core").SQLiteColumn<{
203
+ name: "expiresAt";
204
+ tableName: "sessions";
205
+ dataType: "date";
206
+ columnType: "SQLiteTimestamp";
207
+ data: Date;
208
+ driverParam: number;
209
+ notNull: true;
210
+ hasDefault: false;
211
+ isPrimaryKey: false;
212
+ isAutoincrement: false;
213
+ hasRuntimeDefault: false;
214
+ enumValues: undefined;
215
+ baseColumn: never;
216
+ identity: undefined;
217
+ generated: undefined;
218
+ }, {}, {}>;
219
+ token: import("drizzle-orm/sqlite-core").SQLiteColumn<{
220
+ name: "token";
221
+ tableName: "sessions";
222
+ dataType: "string";
223
+ columnType: "SQLiteText";
224
+ data: string;
225
+ driverParam: string;
226
+ notNull: true;
227
+ hasDefault: false;
228
+ isPrimaryKey: false;
229
+ isAutoincrement: false;
230
+ hasRuntimeDefault: false;
231
+ enumValues: [string, ...string[]];
232
+ baseColumn: never;
233
+ identity: undefined;
234
+ generated: undefined;
235
+ }, {}, {
236
+ length: undefined;
237
+ }>;
238
+ ipAddress: import("drizzle-orm/sqlite-core").SQLiteColumn<{
239
+ name: "ipAddress";
240
+ tableName: "sessions";
241
+ dataType: "string";
242
+ columnType: "SQLiteText";
243
+ data: string;
244
+ driverParam: string;
245
+ notNull: false;
246
+ hasDefault: false;
247
+ isPrimaryKey: false;
248
+ isAutoincrement: false;
249
+ hasRuntimeDefault: false;
250
+ enumValues: [string, ...string[]];
251
+ baseColumn: never;
252
+ identity: undefined;
253
+ generated: undefined;
254
+ }, {}, {
255
+ length: undefined;
256
+ }>;
257
+ userAgent: import("drizzle-orm/sqlite-core").SQLiteColumn<{
258
+ name: "userAgent";
259
+ tableName: "sessions";
260
+ dataType: "string";
261
+ columnType: "SQLiteText";
262
+ data: string;
263
+ driverParam: string;
264
+ notNull: false;
265
+ hasDefault: false;
266
+ isPrimaryKey: false;
267
+ isAutoincrement: false;
268
+ hasRuntimeDefault: false;
269
+ enumValues: [string, ...string[]];
270
+ baseColumn: never;
271
+ identity: undefined;
272
+ generated: undefined;
273
+ }, {}, {
274
+ length: undefined;
275
+ }>;
276
+ userId: import("drizzle-orm/sqlite-core").SQLiteColumn<{
277
+ name: "userId";
278
+ tableName: "sessions";
279
+ dataType: "string";
280
+ columnType: "SQLiteText";
281
+ data: string;
282
+ driverParam: string;
283
+ notNull: true;
284
+ hasDefault: false;
285
+ isPrimaryKey: false;
286
+ isAutoincrement: false;
287
+ hasRuntimeDefault: false;
288
+ enumValues: [string, ...string[]];
289
+ baseColumn: never;
290
+ identity: undefined;
291
+ generated: undefined;
292
+ }, {}, {
293
+ length: undefined;
294
+ }>;
295
+ createdAt: import("drizzle-orm/sqlite-core").SQLiteColumn<{
296
+ name: "createdAt";
297
+ tableName: "sessions";
298
+ dataType: "date";
299
+ columnType: "SQLiteTimestamp";
300
+ data: Date;
301
+ driverParam: number;
302
+ notNull: false;
303
+ hasDefault: false;
304
+ isPrimaryKey: false;
305
+ isAutoincrement: false;
306
+ hasRuntimeDefault: false;
307
+ enumValues: undefined;
308
+ baseColumn: never;
309
+ identity: undefined;
310
+ generated: undefined;
311
+ }, {}, {}>;
312
+ updatedAt: import("drizzle-orm/sqlite-core").SQLiteColumn<{
313
+ name: "updatedAt";
314
+ tableName: "sessions";
315
+ dataType: "date";
316
+ columnType: "SQLiteTimestamp";
317
+ data: Date;
318
+ driverParam: number;
319
+ notNull: false;
320
+ hasDefault: false;
321
+ isPrimaryKey: false;
322
+ isAutoincrement: false;
323
+ hasRuntimeDefault: false;
324
+ enumValues: undefined;
325
+ baseColumn: never;
326
+ identity: undefined;
327
+ generated: undefined;
328
+ }, {}, {}>;
329
+ };
330
+ dialect: "sqlite";
331
+ }>;
332
+ export declare const accounts: import("drizzle-orm/sqlite-core").SQLiteTableWithColumns<{
333
+ name: "accounts";
334
+ schema: undefined;
335
+ columns: {
336
+ id: import("drizzle-orm/sqlite-core").SQLiteColumn<{
337
+ name: "id";
338
+ tableName: "accounts";
339
+ dataType: "string";
340
+ columnType: "SQLiteText";
341
+ data: string;
342
+ driverParam: string;
343
+ notNull: true;
344
+ hasDefault: true;
345
+ isPrimaryKey: true;
346
+ isAutoincrement: false;
347
+ hasRuntimeDefault: true;
348
+ enumValues: [string, ...string[]];
349
+ baseColumn: never;
350
+ identity: undefined;
351
+ generated: undefined;
352
+ }, {}, {
353
+ length: undefined;
354
+ }>;
355
+ accountId: import("drizzle-orm/sqlite-core").SQLiteColumn<{
356
+ name: "accountId";
357
+ tableName: "accounts";
358
+ dataType: "string";
359
+ columnType: "SQLiteText";
360
+ data: string;
361
+ driverParam: string;
362
+ notNull: true;
363
+ hasDefault: false;
364
+ isPrimaryKey: false;
365
+ isAutoincrement: false;
366
+ hasRuntimeDefault: false;
367
+ enumValues: [string, ...string[]];
368
+ baseColumn: never;
369
+ identity: undefined;
370
+ generated: undefined;
371
+ }, {}, {
372
+ length: undefined;
373
+ }>;
374
+ providerId: import("drizzle-orm/sqlite-core").SQLiteColumn<{
375
+ name: "providerId";
376
+ tableName: "accounts";
377
+ dataType: "string";
378
+ columnType: "SQLiteText";
379
+ data: string;
380
+ driverParam: string;
381
+ notNull: true;
382
+ hasDefault: false;
383
+ isPrimaryKey: false;
384
+ isAutoincrement: false;
385
+ hasRuntimeDefault: false;
386
+ enumValues: [string, ...string[]];
387
+ baseColumn: never;
388
+ identity: undefined;
389
+ generated: undefined;
390
+ }, {}, {
391
+ length: undefined;
392
+ }>;
393
+ userId: import("drizzle-orm/sqlite-core").SQLiteColumn<{
394
+ name: "userId";
395
+ tableName: "accounts";
396
+ dataType: "string";
397
+ columnType: "SQLiteText";
398
+ data: string;
399
+ driverParam: string;
400
+ notNull: true;
401
+ hasDefault: false;
402
+ isPrimaryKey: false;
403
+ isAutoincrement: false;
404
+ hasRuntimeDefault: false;
405
+ enumValues: [string, ...string[]];
406
+ baseColumn: never;
407
+ identity: undefined;
408
+ generated: undefined;
409
+ }, {}, {
410
+ length: undefined;
411
+ }>;
412
+ accessToken: import("drizzle-orm/sqlite-core").SQLiteColumn<{
413
+ name: "accessToken";
414
+ tableName: "accounts";
415
+ dataType: "string";
416
+ columnType: "SQLiteText";
417
+ data: string;
418
+ driverParam: string;
419
+ notNull: false;
420
+ hasDefault: false;
421
+ isPrimaryKey: false;
422
+ isAutoincrement: false;
423
+ hasRuntimeDefault: false;
424
+ enumValues: [string, ...string[]];
425
+ baseColumn: never;
426
+ identity: undefined;
427
+ generated: undefined;
428
+ }, {}, {
429
+ length: undefined;
430
+ }>;
431
+ refreshToken: import("drizzle-orm/sqlite-core").SQLiteColumn<{
432
+ name: "refreshToken";
433
+ tableName: "accounts";
434
+ dataType: "string";
435
+ columnType: "SQLiteText";
436
+ data: string;
437
+ driverParam: string;
438
+ notNull: false;
439
+ hasDefault: false;
440
+ isPrimaryKey: false;
441
+ isAutoincrement: false;
442
+ hasRuntimeDefault: false;
443
+ enumValues: [string, ...string[]];
444
+ baseColumn: never;
445
+ identity: undefined;
446
+ generated: undefined;
447
+ }, {}, {
448
+ length: undefined;
449
+ }>;
450
+ idToken: import("drizzle-orm/sqlite-core").SQLiteColumn<{
451
+ name: "idToken";
452
+ tableName: "accounts";
453
+ dataType: "string";
454
+ columnType: "SQLiteText";
455
+ data: string;
456
+ driverParam: string;
457
+ notNull: false;
458
+ hasDefault: false;
459
+ isPrimaryKey: false;
460
+ isAutoincrement: false;
461
+ hasRuntimeDefault: false;
462
+ enumValues: [string, ...string[]];
463
+ baseColumn: never;
464
+ identity: undefined;
465
+ generated: undefined;
466
+ }, {}, {
467
+ length: undefined;
468
+ }>;
469
+ accessTokenExpiresAt: import("drizzle-orm/sqlite-core").SQLiteColumn<{
470
+ name: "accessTokenExpiresAt";
471
+ tableName: "accounts";
472
+ dataType: "date";
473
+ columnType: "SQLiteTimestamp";
474
+ data: Date;
475
+ driverParam: number;
476
+ notNull: false;
477
+ hasDefault: false;
478
+ isPrimaryKey: false;
479
+ isAutoincrement: false;
480
+ hasRuntimeDefault: false;
481
+ enumValues: undefined;
482
+ baseColumn: never;
483
+ identity: undefined;
484
+ generated: undefined;
485
+ }, {}, {}>;
486
+ refreshTokenExpiresAt: import("drizzle-orm/sqlite-core").SQLiteColumn<{
487
+ name: "refreshTokenExpiresAt";
488
+ tableName: "accounts";
489
+ dataType: "date";
490
+ columnType: "SQLiteTimestamp";
491
+ data: Date;
492
+ driverParam: number;
493
+ notNull: false;
494
+ hasDefault: false;
495
+ isPrimaryKey: false;
496
+ isAutoincrement: false;
497
+ hasRuntimeDefault: false;
498
+ enumValues: undefined;
499
+ baseColumn: never;
500
+ identity: undefined;
501
+ generated: undefined;
502
+ }, {}, {}>;
503
+ scope: import("drizzle-orm/sqlite-core").SQLiteColumn<{
504
+ name: "scope";
505
+ tableName: "accounts";
506
+ dataType: "string";
507
+ columnType: "SQLiteText";
508
+ data: string;
509
+ driverParam: string;
510
+ notNull: false;
511
+ hasDefault: false;
512
+ isPrimaryKey: false;
513
+ isAutoincrement: false;
514
+ hasRuntimeDefault: false;
515
+ enumValues: [string, ...string[]];
516
+ baseColumn: never;
517
+ identity: undefined;
518
+ generated: undefined;
519
+ }, {}, {
520
+ length: undefined;
521
+ }>;
522
+ password: import("drizzle-orm/sqlite-core").SQLiteColumn<{
523
+ name: "password";
524
+ tableName: "accounts";
525
+ dataType: "string";
526
+ columnType: "SQLiteText";
527
+ data: string;
528
+ driverParam: string;
529
+ notNull: false;
530
+ hasDefault: false;
531
+ isPrimaryKey: false;
532
+ isAutoincrement: false;
533
+ hasRuntimeDefault: false;
534
+ enumValues: [string, ...string[]];
535
+ baseColumn: never;
536
+ identity: undefined;
537
+ generated: undefined;
538
+ }, {}, {
539
+ length: undefined;
540
+ }>;
541
+ createdAt: import("drizzle-orm/sqlite-core").SQLiteColumn<{
542
+ name: "createdAt";
543
+ tableName: "accounts";
544
+ dataType: "date";
545
+ columnType: "SQLiteTimestamp";
546
+ data: Date;
547
+ driverParam: number;
548
+ notNull: false;
549
+ hasDefault: false;
550
+ isPrimaryKey: false;
551
+ isAutoincrement: false;
552
+ hasRuntimeDefault: false;
553
+ enumValues: undefined;
554
+ baseColumn: never;
555
+ identity: undefined;
556
+ generated: undefined;
557
+ }, {}, {}>;
558
+ updatedAt: import("drizzle-orm/sqlite-core").SQLiteColumn<{
559
+ name: "updatedAt";
560
+ tableName: "accounts";
561
+ dataType: "date";
562
+ columnType: "SQLiteTimestamp";
563
+ data: Date;
564
+ driverParam: number;
565
+ notNull: false;
566
+ hasDefault: false;
567
+ isPrimaryKey: false;
568
+ isAutoincrement: false;
569
+ hasRuntimeDefault: false;
570
+ enumValues: undefined;
571
+ baseColumn: never;
572
+ identity: undefined;
573
+ generated: undefined;
574
+ }, {}, {}>;
575
+ };
576
+ dialect: "sqlite";
577
+ }>;
578
+ export declare const verifications: import("drizzle-orm/sqlite-core").SQLiteTableWithColumns<{
579
+ name: "verifications";
580
+ schema: undefined;
581
+ columns: {
582
+ id: import("drizzle-orm/sqlite-core").SQLiteColumn<{
583
+ name: "id";
584
+ tableName: "verifications";
585
+ dataType: "string";
586
+ columnType: "SQLiteText";
587
+ data: string;
588
+ driverParam: string;
589
+ notNull: true;
590
+ hasDefault: true;
591
+ isPrimaryKey: true;
592
+ isAutoincrement: false;
593
+ hasRuntimeDefault: true;
594
+ enumValues: [string, ...string[]];
595
+ baseColumn: never;
596
+ identity: undefined;
597
+ generated: undefined;
598
+ }, {}, {
599
+ length: undefined;
600
+ }>;
601
+ identifier: import("drizzle-orm/sqlite-core").SQLiteColumn<{
602
+ name: "identifier";
603
+ tableName: "verifications";
604
+ dataType: "string";
605
+ columnType: "SQLiteText";
606
+ data: string;
607
+ driverParam: string;
608
+ notNull: true;
609
+ hasDefault: false;
610
+ isPrimaryKey: false;
611
+ isAutoincrement: false;
612
+ hasRuntimeDefault: false;
613
+ enumValues: [string, ...string[]];
614
+ baseColumn: never;
615
+ identity: undefined;
616
+ generated: undefined;
617
+ }, {}, {
618
+ length: undefined;
619
+ }>;
620
+ value: import("drizzle-orm/sqlite-core").SQLiteColumn<{
621
+ name: "value";
622
+ tableName: "verifications";
623
+ dataType: "string";
624
+ columnType: "SQLiteText";
625
+ data: string;
626
+ driverParam: string;
627
+ notNull: true;
628
+ hasDefault: false;
629
+ isPrimaryKey: false;
630
+ isAutoincrement: false;
631
+ hasRuntimeDefault: false;
632
+ enumValues: [string, ...string[]];
633
+ baseColumn: never;
634
+ identity: undefined;
635
+ generated: undefined;
636
+ }, {}, {
637
+ length: undefined;
638
+ }>;
639
+ expiresAt: import("drizzle-orm/sqlite-core").SQLiteColumn<{
640
+ name: "expiresAt";
641
+ tableName: "verifications";
642
+ dataType: "date";
643
+ columnType: "SQLiteTimestamp";
644
+ data: Date;
645
+ driverParam: number;
646
+ notNull: true;
647
+ hasDefault: false;
648
+ isPrimaryKey: false;
649
+ isAutoincrement: false;
650
+ hasRuntimeDefault: false;
651
+ enumValues: undefined;
652
+ baseColumn: never;
653
+ identity: undefined;
654
+ generated: undefined;
655
+ }, {}, {}>;
656
+ createdAt: import("drizzle-orm/sqlite-core").SQLiteColumn<{
657
+ name: "createdAt";
658
+ tableName: "verifications";
659
+ dataType: "date";
660
+ columnType: "SQLiteTimestamp";
661
+ data: Date;
662
+ driverParam: number;
663
+ notNull: false;
664
+ hasDefault: false;
665
+ isPrimaryKey: false;
666
+ isAutoincrement: false;
667
+ hasRuntimeDefault: false;
668
+ enumValues: undefined;
669
+ baseColumn: never;
670
+ identity: undefined;
671
+ generated: undefined;
672
+ }, {}, {}>;
673
+ updatedAt: import("drizzle-orm/sqlite-core").SQLiteColumn<{
674
+ name: "updatedAt";
675
+ tableName: "verifications";
676
+ dataType: "date";
677
+ columnType: "SQLiteTimestamp";
678
+ data: Date;
679
+ driverParam: number;
680
+ notNull: false;
681
+ hasDefault: false;
682
+ isPrimaryKey: false;
683
+ isAutoincrement: false;
684
+ hasRuntimeDefault: false;
685
+ enumValues: undefined;
686
+ baseColumn: never;
687
+ identity: undefined;
688
+ generated: undefined;
689
+ }, {}, {}>;
690
+ };
691
+ dialect: "sqlite";
692
+ }>;
693
+ export declare const usersRelations: import("drizzle-orm").Relations<"users", {
694
+ sessions: import("drizzle-orm").Many<"sessions">;
695
+ accounts: import("drizzle-orm").Many<"accounts">;
696
+ }>;
697
+ export declare const sessionsRelations: import("drizzle-orm").Relations<"sessions", {
698
+ user: import("drizzle-orm").One<"users", true>;
699
+ }>;
700
+ export declare const accountsRelations: import("drizzle-orm").Relations<"accounts", {
701
+ user: import("drizzle-orm").One<"users", true>;
702
+ }>;
@@ -0,0 +1,87 @@
1
+ import { relations } from "drizzle-orm";
2
+ import { index, integer, sqliteTable, text, uniqueIndex } from "drizzle-orm/sqlite-core";
3
+ import { nanoid } from "nanoid";
4
+ /**
5
+ * Auth tables for local (SQLite) apps.
6
+ *
7
+ * These tables mirror the Better Auth core model names and field names so we
8
+ * can keep local-to-cloud migration straightforward.
9
+ */
10
+ export const users = sqliteTable("users", {
11
+ id: text()
12
+ .primaryKey()
13
+ .$defaultFn(() => nanoid()),
14
+ first_name: text().notNull(),
15
+ last_name: text().notNull(),
16
+ name: text(),
17
+ email: text().notNull(),
18
+ emailVerified: integer({ mode: "boolean" }).default(false).notNull(),
19
+ image: text(),
20
+ createdAt: integer({ mode: "timestamp" }),
21
+ updatedAt: integer({ mode: "timestamp" }),
22
+ }, (table) => [uniqueIndex("users_email_unique_idx").on(table.email)]);
23
+ export const sessions = sqliteTable("sessions", {
24
+ id: text()
25
+ .primaryKey()
26
+ .$defaultFn(() => nanoid()),
27
+ expiresAt: integer({ mode: "timestamp" }).notNull(),
28
+ token: text().notNull(),
29
+ ipAddress: text(),
30
+ userAgent: text(),
31
+ userId: text()
32
+ .notNull()
33
+ .references(() => users.id, { onDelete: "cascade" }),
34
+ createdAt: integer({ mode: "timestamp" }),
35
+ updatedAt: integer({ mode: "timestamp" }),
36
+ }, (table) => [
37
+ uniqueIndex("sessions_token_unique_idx").on(table.token),
38
+ index("sessions_user_id_idx").on(table.userId),
39
+ ]);
40
+ export const accounts = sqliteTable("accounts", {
41
+ id: text()
42
+ .primaryKey()
43
+ .$defaultFn(() => nanoid()),
44
+ accountId: text().notNull(),
45
+ providerId: text().notNull(),
46
+ userId: text()
47
+ .notNull()
48
+ .references(() => users.id, { onDelete: "cascade" }),
49
+ accessToken: text(),
50
+ refreshToken: text(),
51
+ idToken: text(),
52
+ accessTokenExpiresAt: integer({ mode: "timestamp" }),
53
+ refreshTokenExpiresAt: integer({ mode: "timestamp" }),
54
+ scope: text(),
55
+ password: text(),
56
+ createdAt: integer({ mode: "timestamp" }),
57
+ updatedAt: integer({ mode: "timestamp" }),
58
+ }, (table) => [
59
+ index("accounts_user_id_idx").on(table.userId),
60
+ uniqueIndex("accounts_provider_account_unique_idx").on(table.providerId, table.accountId),
61
+ ]);
62
+ export const verifications = sqliteTable("verifications", {
63
+ id: text()
64
+ .primaryKey()
65
+ .$defaultFn(() => nanoid()),
66
+ identifier: text().notNull(),
67
+ value: text().notNull(),
68
+ expiresAt: integer({ mode: "timestamp" }).notNull(),
69
+ createdAt: integer({ mode: "timestamp" }),
70
+ updatedAt: integer({ mode: "timestamp" }),
71
+ }, (table) => [index("verifications_identifier_idx").on(table.identifier)]);
72
+ export const usersRelations = relations(users, ({ many }) => ({
73
+ sessions: many(sessions),
74
+ accounts: many(accounts),
75
+ }));
76
+ export const sessionsRelations = relations(sessions, ({ one }) => ({
77
+ user: one(users, {
78
+ fields: [sessions.userId],
79
+ references: [users.id],
80
+ }),
81
+ }));
82
+ export const accountsRelations = relations(accounts, ({ one }) => ({
83
+ user: one(users, {
84
+ fields: [accounts.userId],
85
+ references: [users.id],
86
+ }),
87
+ }));
@@ -1,4 +1,5 @@
1
1
  export * from "./app-schema.js";
2
+ export * from "./auth-schema.js";
2
3
  export * from "./data-store-schema.js";
3
4
  export * from "./file-schema.js";
4
5
  export * from "./project-schema.js";
@@ -1,4 +1,5 @@
1
1
  export * from "./app-schema.js";
2
+ export * from "./auth-schema.js";
2
3
  export * from "./data-store-schema.js";
3
4
  export * from "./file-schema.js";
4
5
  export * from "./project-schema.js";
@@ -0,0 +1,213 @@
1
+ -- AUTO-GENERATED FILE - DO NOT EDIT MANUALLY.
2
+ -- Generated by helpers/scripts/bolt-cli-generate-client-schema.ts
3
+ -- Tag: 0003_client_schema
4
+ -- Schema Version: 4
5
+ -- Bolt Version Range: *
6
+ -- Generated at: 2026-03-05T15:17:58.456Z
7
+ CREATE TABLE `bolt_app_versions` (
8
+ `id` text PRIMARY KEY NOT NULL,
9
+ `appId` text NOT NULL,
10
+ `incrementalId` integer NOT NULL,
11
+ `publishedAt` integer,
12
+ `notes` text,
13
+ `model` text,
14
+ `s3Url` text,
15
+ `createdAt` integer,
16
+ `updatedAt` integer,
17
+ `createdBy` text DEFAULT 'system' NOT NULL,
18
+ `updatedBy` text DEFAULT 'system' NOT NULL,
19
+ FOREIGN KEY (`appId`) REFERENCES `bolt_apps`(`id`) ON UPDATE no action ON DELETE cascade
20
+ );
21
+
22
+ CREATE INDEX `bolt_app_versions_app_id_idx` ON `bolt_app_versions` (`appId`);
23
+ CREATE UNIQUE INDEX `bolt_app_versions_app_incremental_idx` ON `bolt_app_versions` (`appId`,`incrementalId`);
24
+ CREATE TABLE `bolt_apps` (
25
+ `id` text PRIMARY KEY NOT NULL,
26
+ `name` text NOT NULL,
27
+ `title` text NOT NULL,
28
+ `description` text,
29
+ `status` text DEFAULT 'draft' NOT NULL,
30
+ `projectId` text NOT NULL,
31
+ `createdAt` integer,
32
+ `updatedAt` integer,
33
+ `createdBy` text DEFAULT 'system' NOT NULL,
34
+ `updatedBy` text DEFAULT 'system' NOT NULL,
35
+ FOREIGN KEY (`projectId`) REFERENCES `bolt_projects`(`id`) ON UPDATE no action ON DELETE cascade
36
+ );
37
+
38
+ CREATE UNIQUE INDEX `bolt_apps_name_unique_idx` ON `bolt_apps` (`name`);
39
+ CREATE INDEX `bolt_apps_project_id_idx` ON `bolt_apps` (`projectId`);
40
+ CREATE INDEX `bolt_apps_status_idx` ON `bolt_apps` (`status`);
41
+ CREATE TABLE `accounts` (
42
+ `id` text PRIMARY KEY NOT NULL,
43
+ `accountId` text NOT NULL,
44
+ `providerId` text NOT NULL,
45
+ `userId` text NOT NULL,
46
+ `accessToken` text,
47
+ `refreshToken` text,
48
+ `idToken` text,
49
+ `accessTokenExpiresAt` integer,
50
+ `refreshTokenExpiresAt` integer,
51
+ `scope` text,
52
+ `password` text,
53
+ `createdAt` integer,
54
+ `updatedAt` integer,
55
+ FOREIGN KEY (`userId`) REFERENCES `users`(`id`) ON UPDATE no action ON DELETE cascade
56
+ );
57
+
58
+ CREATE INDEX `accounts_user_id_idx` ON `accounts` (`userId`);
59
+ CREATE UNIQUE INDEX `accounts_provider_account_unique_idx` ON `accounts` (`providerId`,`accountId`);
60
+ CREATE TABLE `sessions` (
61
+ `id` text PRIMARY KEY NOT NULL,
62
+ `expiresAt` integer NOT NULL,
63
+ `token` text NOT NULL,
64
+ `ipAddress` text,
65
+ `userAgent` text,
66
+ `userId` text NOT NULL,
67
+ `createdAt` integer,
68
+ `updatedAt` integer,
69
+ FOREIGN KEY (`userId`) REFERENCES `users`(`id`) ON UPDATE no action ON DELETE cascade
70
+ );
71
+
72
+ CREATE UNIQUE INDEX `sessions_token_unique_idx` ON `sessions` (`token`);
73
+ CREATE INDEX `sessions_user_id_idx` ON `sessions` (`userId`);
74
+ CREATE TABLE `users` (
75
+ `id` text PRIMARY KEY NOT NULL,
76
+ `first_name` text NOT NULL,
77
+ `last_name` text NOT NULL,
78
+ `name` text,
79
+ `email` text NOT NULL,
80
+ `emailVerified` integer DEFAULT false NOT NULL,
81
+ `image` text,
82
+ `createdAt` integer,
83
+ `updatedAt` integer
84
+ );
85
+
86
+ CREATE UNIQUE INDEX `users_email_unique_idx` ON `users` (`email`);
87
+ CREATE TABLE `verifications` (
88
+ `id` text PRIMARY KEY NOT NULL,
89
+ `identifier` text NOT NULL,
90
+ `value` text NOT NULL,
91
+ `expiresAt` integer NOT NULL,
92
+ `createdAt` integer,
93
+ `updatedAt` integer
94
+ );
95
+
96
+ CREATE INDEX `verifications_identifier_idx` ON `verifications` (`identifier`);
97
+ CREATE TABLE `bolt_data_stores` (
98
+ `id` text PRIMARY KEY NOT NULL,
99
+ `name` text NOT NULL,
100
+ `label` text DEFAULT 'Untitled Store' NOT NULL,
101
+ `description` text,
102
+ `items` text,
103
+ `data` text NOT NULL,
104
+ `app_id` text NOT NULL,
105
+ `organization_id` text,
106
+ `createdBy` text DEFAULT 'system' NOT NULL,
107
+ `updatedBy` text DEFAULT 'system' NOT NULL,
108
+ `createdAt` integer,
109
+ `updatedAt` integer
110
+ );
111
+
112
+ CREATE UNIQUE INDEX `bolt_data_stores_app_name_unique_idx` ON `bolt_data_stores` (`app_id`,`name`);
113
+ CREATE INDEX `bolt_data_stores_app_idx` ON `bolt_data_stores` (`app_id`);
114
+ CREATE TABLE `bolt_files` (
115
+ `id` text PRIMARY KEY NOT NULL,
116
+ `app_id` text NOT NULL,
117
+ `organization_id` text,
118
+ `name` text NOT NULL,
119
+ `url` text NOT NULL,
120
+ `mime_type` text NOT NULL,
121
+ `extension` text,
122
+ `size` integer,
123
+ `width` integer,
124
+ `height` integer,
125
+ `alt` text,
126
+ `source` text DEFAULT 'local',
127
+ `storage_path` text NOT NULL,
128
+ `created_by` text DEFAULT 'system' NOT NULL,
129
+ `updated_by` text DEFAULT 'system',
130
+ `created_at` integer,
131
+ `updated_at` integer
132
+ );
133
+
134
+ CREATE INDEX `bolt_files_app_idx` ON `bolt_files` (`app_id`);
135
+ CREATE INDEX `bolt_files_name_idx` ON `bolt_files` (`name`);
136
+ CREATE TABLE `bolt_projects` (
137
+ `id` text PRIMARY KEY NOT NULL,
138
+ `name` text NOT NULL,
139
+ `description` text,
140
+ `slug` text NOT NULL,
141
+ `createdAt` integer,
142
+ `updatedAt` integer,
143
+ `createdBy` text DEFAULT 'system' NOT NULL,
144
+ `updatedBy` text DEFAULT 'system' NOT NULL
145
+ );
146
+
147
+ CREATE UNIQUE INDEX `bolt_projects_name_unique_idx` ON `bolt_projects` (`name`);
148
+ CREATE UNIQUE INDEX `bolt_projects_slug_unique_idx` ON `bolt_projects` (`slug`);
149
+ CREATE TABLE `bolt_table_ops` (
150
+ `id` text,
151
+ `server_seq` integer PRIMARY KEY AUTOINCREMENT NOT NULL,
152
+ `clientActionId` text,
153
+ `type` text NOT NULL,
154
+ `rowId` text,
155
+ `colId` text,
156
+ `tableId` text NOT NULL,
157
+ `source` text DEFAULT 'server' NOT NULL,
158
+ `payload` text NOT NULL,
159
+ `basis_row_version` integer,
160
+ `basis_table_version` integer,
161
+ `userId` text NOT NULL,
162
+ `createdAt` integer,
163
+ FOREIGN KEY (`tableId`) REFERENCES `bolt_tables`(`id`) ON UPDATE no action ON DELETE cascade
164
+ );
165
+
166
+ CREATE INDEX `bolt_table_ops_table_seq_idx` ON `bolt_table_ops` (`tableId`,`server_seq`);
167
+ CREATE INDEX `bolt_table_ops_table_idx` ON `bolt_table_ops` (`tableId`);
168
+ CREATE INDEX `bolt_table_ops_row_idx` ON `bolt_table_ops` (`rowId`);
169
+ CREATE INDEX `bolt_table_ops_col_idx` ON `bolt_table_ops` (`colId`);
170
+ CREATE INDEX `bolt_table_ops_type_idx` ON `bolt_table_ops` (`type`);
171
+ CREATE TABLE `bolt_table_views` (
172
+ `id` text PRIMARY KEY NOT NULL,
173
+ `name` text NOT NULL,
174
+ `label` text DEFAULT 'Untitled View' NOT NULL,
175
+ `tableId` text NOT NULL,
176
+ `description` text,
177
+ `display` text DEFAULT 'table' NOT NULL,
178
+ `visibleColumnIds` text NOT NULL,
179
+ `sorting` text,
180
+ `showRowNumbers` integer,
181
+ `rowHeight` integer,
182
+ `displayConfig` text NOT NULL,
183
+ `projectId` text,
184
+ `organizationId` text,
185
+ `createdBy` text,
186
+ `createdAt` integer,
187
+ `updatedAt` integer,
188
+ FOREIGN KEY (`tableId`) REFERENCES `bolt_tables`(`id`) ON UPDATE no action ON DELETE cascade,
189
+ FOREIGN KEY (`projectId`) REFERENCES `bolt_projects`(`id`) ON UPDATE no action ON DELETE cascade
190
+ );
191
+
192
+ CREATE INDEX `bolt_table_views_table_id_idx` ON `bolt_table_views` (`tableId`);
193
+ CREATE INDEX `bolt_table_views_project_idx` ON `bolt_table_views` (`projectId`);
194
+ CREATE TABLE `bolt_tables` (
195
+ `id` text PRIMARY KEY NOT NULL,
196
+ `name` text NOT NULL,
197
+ `label` text DEFAULT 'Untitled Table' NOT NULL,
198
+ `description` text,
199
+ `idField` text DEFAULT 'id' NOT NULL,
200
+ `displayColumn` text NOT NULL,
201
+ `columns` text,
202
+ `rows` text,
203
+ `projectId` text NOT NULL,
204
+ `organizationId` text,
205
+ `createdBy` text DEFAULT 'system' NOT NULL,
206
+ `updatedBy` text DEFAULT 'system' NOT NULL,
207
+ `createdAt` integer,
208
+ `updatedAt` integer,
209
+ FOREIGN KEY (`projectId`) REFERENCES `bolt_projects`(`id`) ON UPDATE no action ON DELETE cascade
210
+ );
211
+
212
+ CREATE UNIQUE INDEX `bolt_tables_project_name_unique_idx` ON `bolt_tables` (`projectId`,`name`);
213
+ CREATE INDEX `bolt_tables_project_idx` ON `bolt_tables` (`projectId`);
@@ -28,6 +28,15 @@
28
28
  "dialect": "sqlite",
29
29
  "when": 1772723238190,
30
30
  "checksum": "sha256:bd7919d45f2ab219d322c42fcc9dbda0ee5f7d81e88f03465c992866f82d4a8e"
31
+ },
32
+ {
33
+ "idx": 3,
34
+ "tag": "0003_client_schema",
35
+ "schemaVersion": 4,
36
+ "boltVersionRange": "*",
37
+ "dialect": "sqlite",
38
+ "when": 1772723878457,
39
+ "checksum": "sha256:1694ab3dbff5c95ba8e7b883d27810dfed60a3265f51cdc21ca50807940436d6"
31
40
  }
32
41
  ]
33
42
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@boltapp/bolt-app-db",
3
- "version": "0.0.16",
3
+ "version": "0.0.17",
4
4
  "private": false,
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",