@hogsend/db 0.0.1

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 (47) hide show
  1. package/LICENSE +93 -0
  2. package/README.md +14 -0
  3. package/drizzle/0000_nifty_songbird.sql +188 -0
  4. package/drizzle/0001_minor_shockwave.sql +13 -0
  5. package/drizzle/0002_early_owl.sql +1 -0
  6. package/drizzle/0003_bizarre_annihilus.sql +9 -0
  7. package/drizzle/0004_brave_betty_brant.sql +1 -0
  8. package/drizzle/0005_groovy_princess_powerful.sql +8 -0
  9. package/drizzle/0006_groovy_charles_xavier.sql +100 -0
  10. package/drizzle/0007_serious_captain_universe.sql +1 -0
  11. package/drizzle/0008_demonic_agent_brand.sql +5 -0
  12. package/drizzle/meta/0000_snapshot.json +1264 -0
  13. package/drizzle/meta/0001_snapshot.json +1353 -0
  14. package/drizzle/meta/0002_snapshot.json +1380 -0
  15. package/drizzle/meta/0003_snapshot.json +1443 -0
  16. package/drizzle/meta/0004_snapshot.json +1464 -0
  17. package/drizzle/meta/0005_snapshot.json +1588 -0
  18. package/drizzle/meta/0006_snapshot.json +2331 -0
  19. package/drizzle/meta/0007_snapshot.json +2346 -0
  20. package/drizzle/meta/0008_snapshot.json +2449 -0
  21. package/drizzle/meta/_journal.json +69 -0
  22. package/package.json +49 -0
  23. package/src/index.ts +35 -0
  24. package/src/migrate-client.ts +56 -0
  25. package/src/migrate.ts +173 -0
  26. package/src/schema/_shared.ts +10 -0
  27. package/src/schema/alert-history.ts +21 -0
  28. package/src/schema/alert-rules.ts +36 -0
  29. package/src/schema/api-keys.ts +30 -0
  30. package/src/schema/audit-logs.ts +22 -0
  31. package/src/schema/auth.ts +89 -0
  32. package/src/schema/contacts.ts +31 -0
  33. package/src/schema/dead-letter-queue.ts +31 -0
  34. package/src/schema/email-preferences.ts +35 -0
  35. package/src/schema/email-sends.ts +34 -0
  36. package/src/schema/enums.ts +47 -0
  37. package/src/schema/import-jobs.ts +26 -0
  38. package/src/schema/index.ts +18 -0
  39. package/src/schema/journey-configs.ts +15 -0
  40. package/src/schema/journey-logs.ts +21 -0
  41. package/src/schema/journey-states.ts +54 -0
  42. package/src/schema/link-clicks.ts +21 -0
  43. package/src/schema/relations.ts +160 -0
  44. package/src/schema/tracked-links.ts +17 -0
  45. package/src/schema/user-events.ts +35 -0
  46. package/src/seed.ts +91 -0
  47. package/src/version.ts +162 -0
@@ -0,0 +1,1588 @@
1
+ {
2
+ "id": "a5d48dc1-f365-4c9b-8691-222591ca68ba",
3
+ "prevId": "1e144f9d-44e3-48cb-b875-d6b9ed8c2a85",
4
+ "version": "7",
5
+ "dialect": "postgresql",
6
+ "tables": {
7
+ "public.account": {
8
+ "name": "account",
9
+ "schema": "",
10
+ "columns": {
11
+ "id": {
12
+ "name": "id",
13
+ "type": "text",
14
+ "primaryKey": true,
15
+ "notNull": true
16
+ },
17
+ "account_id": {
18
+ "name": "account_id",
19
+ "type": "text",
20
+ "primaryKey": false,
21
+ "notNull": true
22
+ },
23
+ "provider_id": {
24
+ "name": "provider_id",
25
+ "type": "text",
26
+ "primaryKey": false,
27
+ "notNull": true
28
+ },
29
+ "user_id": {
30
+ "name": "user_id",
31
+ "type": "text",
32
+ "primaryKey": false,
33
+ "notNull": true
34
+ },
35
+ "access_token": {
36
+ "name": "access_token",
37
+ "type": "text",
38
+ "primaryKey": false,
39
+ "notNull": false
40
+ },
41
+ "refresh_token": {
42
+ "name": "refresh_token",
43
+ "type": "text",
44
+ "primaryKey": false,
45
+ "notNull": false
46
+ },
47
+ "id_token": {
48
+ "name": "id_token",
49
+ "type": "text",
50
+ "primaryKey": false,
51
+ "notNull": false
52
+ },
53
+ "access_token_expires_at": {
54
+ "name": "access_token_expires_at",
55
+ "type": "timestamp with time zone",
56
+ "primaryKey": false,
57
+ "notNull": false
58
+ },
59
+ "refresh_token_expires_at": {
60
+ "name": "refresh_token_expires_at",
61
+ "type": "timestamp with time zone",
62
+ "primaryKey": false,
63
+ "notNull": false
64
+ },
65
+ "scope": {
66
+ "name": "scope",
67
+ "type": "text",
68
+ "primaryKey": false,
69
+ "notNull": false
70
+ },
71
+ "password": {
72
+ "name": "password",
73
+ "type": "text",
74
+ "primaryKey": false,
75
+ "notNull": false
76
+ },
77
+ "created_at": {
78
+ "name": "created_at",
79
+ "type": "timestamp with time zone",
80
+ "primaryKey": false,
81
+ "notNull": true,
82
+ "default": "now()"
83
+ },
84
+ "updated_at": {
85
+ "name": "updated_at",
86
+ "type": "timestamp with time zone",
87
+ "primaryKey": false,
88
+ "notNull": true,
89
+ "default": "now()"
90
+ }
91
+ },
92
+ "indexes": {},
93
+ "foreignKeys": {
94
+ "account_user_id_user_id_fk": {
95
+ "name": "account_user_id_user_id_fk",
96
+ "tableFrom": "account",
97
+ "tableTo": "user",
98
+ "columnsFrom": ["user_id"],
99
+ "columnsTo": ["id"],
100
+ "onDelete": "cascade",
101
+ "onUpdate": "no action"
102
+ }
103
+ },
104
+ "compositePrimaryKeys": {},
105
+ "uniqueConstraints": {},
106
+ "policies": {},
107
+ "checkConstraints": {},
108
+ "isRLSEnabled": false
109
+ },
110
+ "public.invitation": {
111
+ "name": "invitation",
112
+ "schema": "",
113
+ "columns": {
114
+ "id": {
115
+ "name": "id",
116
+ "type": "text",
117
+ "primaryKey": true,
118
+ "notNull": true
119
+ },
120
+ "organization_id": {
121
+ "name": "organization_id",
122
+ "type": "text",
123
+ "primaryKey": false,
124
+ "notNull": true
125
+ },
126
+ "email": {
127
+ "name": "email",
128
+ "type": "text",
129
+ "primaryKey": false,
130
+ "notNull": true
131
+ },
132
+ "role": {
133
+ "name": "role",
134
+ "type": "text",
135
+ "primaryKey": false,
136
+ "notNull": false
137
+ },
138
+ "status": {
139
+ "name": "status",
140
+ "type": "text",
141
+ "primaryKey": false,
142
+ "notNull": true,
143
+ "default": "'pending'"
144
+ },
145
+ "expires_at": {
146
+ "name": "expires_at",
147
+ "type": "timestamp with time zone",
148
+ "primaryKey": false,
149
+ "notNull": true
150
+ },
151
+ "inviter_id": {
152
+ "name": "inviter_id",
153
+ "type": "text",
154
+ "primaryKey": false,
155
+ "notNull": true
156
+ },
157
+ "created_at": {
158
+ "name": "created_at",
159
+ "type": "timestamp with time zone",
160
+ "primaryKey": false,
161
+ "notNull": true,
162
+ "default": "now()"
163
+ },
164
+ "updated_at": {
165
+ "name": "updated_at",
166
+ "type": "timestamp with time zone",
167
+ "primaryKey": false,
168
+ "notNull": true,
169
+ "default": "now()"
170
+ }
171
+ },
172
+ "indexes": {},
173
+ "foreignKeys": {
174
+ "invitation_organization_id_organization_id_fk": {
175
+ "name": "invitation_organization_id_organization_id_fk",
176
+ "tableFrom": "invitation",
177
+ "tableTo": "organization",
178
+ "columnsFrom": ["organization_id"],
179
+ "columnsTo": ["id"],
180
+ "onDelete": "cascade",
181
+ "onUpdate": "no action"
182
+ },
183
+ "invitation_inviter_id_user_id_fk": {
184
+ "name": "invitation_inviter_id_user_id_fk",
185
+ "tableFrom": "invitation",
186
+ "tableTo": "user",
187
+ "columnsFrom": ["inviter_id"],
188
+ "columnsTo": ["id"],
189
+ "onDelete": "cascade",
190
+ "onUpdate": "no action"
191
+ }
192
+ },
193
+ "compositePrimaryKeys": {},
194
+ "uniqueConstraints": {},
195
+ "policies": {},
196
+ "checkConstraints": {},
197
+ "isRLSEnabled": false
198
+ },
199
+ "public.member": {
200
+ "name": "member",
201
+ "schema": "",
202
+ "columns": {
203
+ "id": {
204
+ "name": "id",
205
+ "type": "text",
206
+ "primaryKey": true,
207
+ "notNull": true
208
+ },
209
+ "organization_id": {
210
+ "name": "organization_id",
211
+ "type": "text",
212
+ "primaryKey": false,
213
+ "notNull": true
214
+ },
215
+ "user_id": {
216
+ "name": "user_id",
217
+ "type": "text",
218
+ "primaryKey": false,
219
+ "notNull": true
220
+ },
221
+ "role": {
222
+ "name": "role",
223
+ "type": "text",
224
+ "primaryKey": false,
225
+ "notNull": true,
226
+ "default": "'member'"
227
+ },
228
+ "created_at": {
229
+ "name": "created_at",
230
+ "type": "timestamp with time zone",
231
+ "primaryKey": false,
232
+ "notNull": true,
233
+ "default": "now()"
234
+ },
235
+ "updated_at": {
236
+ "name": "updated_at",
237
+ "type": "timestamp with time zone",
238
+ "primaryKey": false,
239
+ "notNull": true,
240
+ "default": "now()"
241
+ }
242
+ },
243
+ "indexes": {},
244
+ "foreignKeys": {
245
+ "member_organization_id_organization_id_fk": {
246
+ "name": "member_organization_id_organization_id_fk",
247
+ "tableFrom": "member",
248
+ "tableTo": "organization",
249
+ "columnsFrom": ["organization_id"],
250
+ "columnsTo": ["id"],
251
+ "onDelete": "cascade",
252
+ "onUpdate": "no action"
253
+ },
254
+ "member_user_id_user_id_fk": {
255
+ "name": "member_user_id_user_id_fk",
256
+ "tableFrom": "member",
257
+ "tableTo": "user",
258
+ "columnsFrom": ["user_id"],
259
+ "columnsTo": ["id"],
260
+ "onDelete": "cascade",
261
+ "onUpdate": "no action"
262
+ }
263
+ },
264
+ "compositePrimaryKeys": {},
265
+ "uniqueConstraints": {},
266
+ "policies": {},
267
+ "checkConstraints": {},
268
+ "isRLSEnabled": false
269
+ },
270
+ "public.organization": {
271
+ "name": "organization",
272
+ "schema": "",
273
+ "columns": {
274
+ "id": {
275
+ "name": "id",
276
+ "type": "text",
277
+ "primaryKey": true,
278
+ "notNull": true
279
+ },
280
+ "name": {
281
+ "name": "name",
282
+ "type": "text",
283
+ "primaryKey": false,
284
+ "notNull": true
285
+ },
286
+ "slug": {
287
+ "name": "slug",
288
+ "type": "text",
289
+ "primaryKey": false,
290
+ "notNull": false
291
+ },
292
+ "logo": {
293
+ "name": "logo",
294
+ "type": "text",
295
+ "primaryKey": false,
296
+ "notNull": false
297
+ },
298
+ "metadata": {
299
+ "name": "metadata",
300
+ "type": "text",
301
+ "primaryKey": false,
302
+ "notNull": false
303
+ },
304
+ "created_at": {
305
+ "name": "created_at",
306
+ "type": "timestamp with time zone",
307
+ "primaryKey": false,
308
+ "notNull": true,
309
+ "default": "now()"
310
+ },
311
+ "updated_at": {
312
+ "name": "updated_at",
313
+ "type": "timestamp with time zone",
314
+ "primaryKey": false,
315
+ "notNull": true,
316
+ "default": "now()"
317
+ }
318
+ },
319
+ "indexes": {},
320
+ "foreignKeys": {},
321
+ "compositePrimaryKeys": {},
322
+ "uniqueConstraints": {
323
+ "organization_slug_unique": {
324
+ "name": "organization_slug_unique",
325
+ "nullsNotDistinct": false,
326
+ "columns": ["slug"]
327
+ }
328
+ },
329
+ "policies": {},
330
+ "checkConstraints": {},
331
+ "isRLSEnabled": false
332
+ },
333
+ "public.session": {
334
+ "name": "session",
335
+ "schema": "",
336
+ "columns": {
337
+ "id": {
338
+ "name": "id",
339
+ "type": "text",
340
+ "primaryKey": true,
341
+ "notNull": true
342
+ },
343
+ "expires_at": {
344
+ "name": "expires_at",
345
+ "type": "timestamp with time zone",
346
+ "primaryKey": false,
347
+ "notNull": true
348
+ },
349
+ "token": {
350
+ "name": "token",
351
+ "type": "text",
352
+ "primaryKey": false,
353
+ "notNull": true
354
+ },
355
+ "ip_address": {
356
+ "name": "ip_address",
357
+ "type": "text",
358
+ "primaryKey": false,
359
+ "notNull": false
360
+ },
361
+ "user_agent": {
362
+ "name": "user_agent",
363
+ "type": "text",
364
+ "primaryKey": false,
365
+ "notNull": false
366
+ },
367
+ "user_id": {
368
+ "name": "user_id",
369
+ "type": "text",
370
+ "primaryKey": false,
371
+ "notNull": true
372
+ },
373
+ "active_organization_id": {
374
+ "name": "active_organization_id",
375
+ "type": "text",
376
+ "primaryKey": false,
377
+ "notNull": false
378
+ },
379
+ "created_at": {
380
+ "name": "created_at",
381
+ "type": "timestamp with time zone",
382
+ "primaryKey": false,
383
+ "notNull": true,
384
+ "default": "now()"
385
+ },
386
+ "updated_at": {
387
+ "name": "updated_at",
388
+ "type": "timestamp with time zone",
389
+ "primaryKey": false,
390
+ "notNull": true,
391
+ "default": "now()"
392
+ }
393
+ },
394
+ "indexes": {},
395
+ "foreignKeys": {
396
+ "session_user_id_user_id_fk": {
397
+ "name": "session_user_id_user_id_fk",
398
+ "tableFrom": "session",
399
+ "tableTo": "user",
400
+ "columnsFrom": ["user_id"],
401
+ "columnsTo": ["id"],
402
+ "onDelete": "cascade",
403
+ "onUpdate": "no action"
404
+ }
405
+ },
406
+ "compositePrimaryKeys": {},
407
+ "uniqueConstraints": {
408
+ "session_token_unique": {
409
+ "name": "session_token_unique",
410
+ "nullsNotDistinct": false,
411
+ "columns": ["token"]
412
+ }
413
+ },
414
+ "policies": {},
415
+ "checkConstraints": {},
416
+ "isRLSEnabled": false
417
+ },
418
+ "public.user": {
419
+ "name": "user",
420
+ "schema": "",
421
+ "columns": {
422
+ "id": {
423
+ "name": "id",
424
+ "type": "text",
425
+ "primaryKey": true,
426
+ "notNull": true
427
+ },
428
+ "name": {
429
+ "name": "name",
430
+ "type": "text",
431
+ "primaryKey": false,
432
+ "notNull": true
433
+ },
434
+ "email": {
435
+ "name": "email",
436
+ "type": "text",
437
+ "primaryKey": false,
438
+ "notNull": true
439
+ },
440
+ "email_verified": {
441
+ "name": "email_verified",
442
+ "type": "boolean",
443
+ "primaryKey": false,
444
+ "notNull": true,
445
+ "default": false
446
+ },
447
+ "image": {
448
+ "name": "image",
449
+ "type": "text",
450
+ "primaryKey": false,
451
+ "notNull": false
452
+ },
453
+ "created_at": {
454
+ "name": "created_at",
455
+ "type": "timestamp with time zone",
456
+ "primaryKey": false,
457
+ "notNull": true,
458
+ "default": "now()"
459
+ },
460
+ "updated_at": {
461
+ "name": "updated_at",
462
+ "type": "timestamp with time zone",
463
+ "primaryKey": false,
464
+ "notNull": true,
465
+ "default": "now()"
466
+ }
467
+ },
468
+ "indexes": {},
469
+ "foreignKeys": {},
470
+ "compositePrimaryKeys": {},
471
+ "uniqueConstraints": {
472
+ "user_email_unique": {
473
+ "name": "user_email_unique",
474
+ "nullsNotDistinct": false,
475
+ "columns": ["email"]
476
+ }
477
+ },
478
+ "policies": {},
479
+ "checkConstraints": {},
480
+ "isRLSEnabled": false
481
+ },
482
+ "public.verification": {
483
+ "name": "verification",
484
+ "schema": "",
485
+ "columns": {
486
+ "id": {
487
+ "name": "id",
488
+ "type": "text",
489
+ "primaryKey": true,
490
+ "notNull": true
491
+ },
492
+ "identifier": {
493
+ "name": "identifier",
494
+ "type": "text",
495
+ "primaryKey": false,
496
+ "notNull": true
497
+ },
498
+ "value": {
499
+ "name": "value",
500
+ "type": "text",
501
+ "primaryKey": false,
502
+ "notNull": true
503
+ },
504
+ "expires_at": {
505
+ "name": "expires_at",
506
+ "type": "timestamp with time zone",
507
+ "primaryKey": false,
508
+ "notNull": true
509
+ },
510
+ "created_at": {
511
+ "name": "created_at",
512
+ "type": "timestamp with time zone",
513
+ "primaryKey": false,
514
+ "notNull": true,
515
+ "default": "now()"
516
+ },
517
+ "updated_at": {
518
+ "name": "updated_at",
519
+ "type": "timestamp with time zone",
520
+ "primaryKey": false,
521
+ "notNull": true,
522
+ "default": "now()"
523
+ }
524
+ },
525
+ "indexes": {},
526
+ "foreignKeys": {},
527
+ "compositePrimaryKeys": {},
528
+ "uniqueConstraints": {},
529
+ "policies": {},
530
+ "checkConstraints": {},
531
+ "isRLSEnabled": false
532
+ },
533
+ "public.contacts": {
534
+ "name": "contacts",
535
+ "schema": "",
536
+ "columns": {
537
+ "id": {
538
+ "name": "id",
539
+ "type": "uuid",
540
+ "primaryKey": true,
541
+ "notNull": true,
542
+ "default": "gen_random_uuid()"
543
+ },
544
+ "external_id": {
545
+ "name": "external_id",
546
+ "type": "text",
547
+ "primaryKey": false,
548
+ "notNull": true
549
+ },
550
+ "email": {
551
+ "name": "email",
552
+ "type": "text",
553
+ "primaryKey": false,
554
+ "notNull": false
555
+ },
556
+ "properties": {
557
+ "name": "properties",
558
+ "type": "jsonb",
559
+ "primaryKey": false,
560
+ "notNull": false,
561
+ "default": "'{}'::jsonb"
562
+ },
563
+ "first_seen_at": {
564
+ "name": "first_seen_at",
565
+ "type": "timestamp with time zone",
566
+ "primaryKey": false,
567
+ "notNull": true,
568
+ "default": "now()"
569
+ },
570
+ "last_seen_at": {
571
+ "name": "last_seen_at",
572
+ "type": "timestamp with time zone",
573
+ "primaryKey": false,
574
+ "notNull": true,
575
+ "default": "now()"
576
+ },
577
+ "created_at": {
578
+ "name": "created_at",
579
+ "type": "timestamp with time zone",
580
+ "primaryKey": false,
581
+ "notNull": true,
582
+ "default": "now()"
583
+ },
584
+ "updated_at": {
585
+ "name": "updated_at",
586
+ "type": "timestamp with time zone",
587
+ "primaryKey": false,
588
+ "notNull": true,
589
+ "default": "now()"
590
+ }
591
+ },
592
+ "indexes": {
593
+ "contacts_email_idx": {
594
+ "name": "contacts_email_idx",
595
+ "columns": [
596
+ {
597
+ "expression": "email",
598
+ "isExpression": false,
599
+ "asc": true,
600
+ "nulls": "last"
601
+ }
602
+ ],
603
+ "isUnique": false,
604
+ "concurrently": false,
605
+ "method": "btree",
606
+ "with": {}
607
+ }
608
+ },
609
+ "foreignKeys": {},
610
+ "compositePrimaryKeys": {},
611
+ "uniqueConstraints": {
612
+ "contacts_external_id_unique": {
613
+ "name": "contacts_external_id_unique",
614
+ "nullsNotDistinct": false,
615
+ "columns": ["external_id"]
616
+ }
617
+ },
618
+ "policies": {},
619
+ "checkConstraints": {},
620
+ "isRLSEnabled": false
621
+ },
622
+ "public.email_preferences": {
623
+ "name": "email_preferences",
624
+ "schema": "",
625
+ "columns": {
626
+ "id": {
627
+ "name": "id",
628
+ "type": "uuid",
629
+ "primaryKey": true,
630
+ "notNull": true,
631
+ "default": "gen_random_uuid()"
632
+ },
633
+ "user_id": {
634
+ "name": "user_id",
635
+ "type": "text",
636
+ "primaryKey": false,
637
+ "notNull": true
638
+ },
639
+ "email": {
640
+ "name": "email",
641
+ "type": "text",
642
+ "primaryKey": false,
643
+ "notNull": true
644
+ },
645
+ "unsubscribed_all": {
646
+ "name": "unsubscribed_all",
647
+ "type": "boolean",
648
+ "primaryKey": false,
649
+ "notNull": true,
650
+ "default": false
651
+ },
652
+ "suppressed": {
653
+ "name": "suppressed",
654
+ "type": "boolean",
655
+ "primaryKey": false,
656
+ "notNull": true,
657
+ "default": false
658
+ },
659
+ "bounce_count": {
660
+ "name": "bounce_count",
661
+ "type": "integer",
662
+ "primaryKey": false,
663
+ "notNull": true,
664
+ "default": 0
665
+ },
666
+ "categories": {
667
+ "name": "categories",
668
+ "type": "jsonb",
669
+ "primaryKey": false,
670
+ "notNull": false,
671
+ "default": "'{}'::jsonb"
672
+ },
673
+ "suppressed_at": {
674
+ "name": "suppressed_at",
675
+ "type": "timestamp with time zone",
676
+ "primaryKey": false,
677
+ "notNull": false
678
+ },
679
+ "last_bounce_at": {
680
+ "name": "last_bounce_at",
681
+ "type": "timestamp with time zone",
682
+ "primaryKey": false,
683
+ "notNull": false
684
+ },
685
+ "created_at": {
686
+ "name": "created_at",
687
+ "type": "timestamp with time zone",
688
+ "primaryKey": false,
689
+ "notNull": true,
690
+ "default": "now()"
691
+ },
692
+ "updated_at": {
693
+ "name": "updated_at",
694
+ "type": "timestamp with time zone",
695
+ "primaryKey": false,
696
+ "notNull": true,
697
+ "default": "now()"
698
+ }
699
+ },
700
+ "indexes": {
701
+ "email_preferences_user_email_idx": {
702
+ "name": "email_preferences_user_email_idx",
703
+ "columns": [
704
+ {
705
+ "expression": "user_id",
706
+ "isExpression": false,
707
+ "asc": true,
708
+ "nulls": "last"
709
+ },
710
+ {
711
+ "expression": "email",
712
+ "isExpression": false,
713
+ "asc": true,
714
+ "nulls": "last"
715
+ }
716
+ ],
717
+ "isUnique": true,
718
+ "concurrently": false,
719
+ "method": "btree",
720
+ "with": {}
721
+ }
722
+ },
723
+ "foreignKeys": {},
724
+ "compositePrimaryKeys": {},
725
+ "uniqueConstraints": {},
726
+ "policies": {},
727
+ "checkConstraints": {},
728
+ "isRLSEnabled": false
729
+ },
730
+ "public.email_sends": {
731
+ "name": "email_sends",
732
+ "schema": "",
733
+ "columns": {
734
+ "id": {
735
+ "name": "id",
736
+ "type": "uuid",
737
+ "primaryKey": true,
738
+ "notNull": true,
739
+ "default": "gen_random_uuid()"
740
+ },
741
+ "journey_state_id": {
742
+ "name": "journey_state_id",
743
+ "type": "uuid",
744
+ "primaryKey": false,
745
+ "notNull": false
746
+ },
747
+ "template_key": {
748
+ "name": "template_key",
749
+ "type": "text",
750
+ "primaryKey": false,
751
+ "notNull": false
752
+ },
753
+ "resend_id": {
754
+ "name": "resend_id",
755
+ "type": "text",
756
+ "primaryKey": false,
757
+ "notNull": false
758
+ },
759
+ "from_email": {
760
+ "name": "from_email",
761
+ "type": "text",
762
+ "primaryKey": false,
763
+ "notNull": true
764
+ },
765
+ "to_email": {
766
+ "name": "to_email",
767
+ "type": "text",
768
+ "primaryKey": false,
769
+ "notNull": true
770
+ },
771
+ "subject": {
772
+ "name": "subject",
773
+ "type": "text",
774
+ "primaryKey": false,
775
+ "notNull": true
776
+ },
777
+ "category": {
778
+ "name": "category",
779
+ "type": "text",
780
+ "primaryKey": false,
781
+ "notNull": false
782
+ },
783
+ "status": {
784
+ "name": "status",
785
+ "type": "email_send_status",
786
+ "typeSchema": "public",
787
+ "primaryKey": false,
788
+ "notNull": true,
789
+ "default": "'queued'"
790
+ },
791
+ "sent_at": {
792
+ "name": "sent_at",
793
+ "type": "timestamp with time zone",
794
+ "primaryKey": false,
795
+ "notNull": false
796
+ },
797
+ "delivered_at": {
798
+ "name": "delivered_at",
799
+ "type": "timestamp with time zone",
800
+ "primaryKey": false,
801
+ "notNull": false
802
+ },
803
+ "opened_at": {
804
+ "name": "opened_at",
805
+ "type": "timestamp with time zone",
806
+ "primaryKey": false,
807
+ "notNull": false
808
+ },
809
+ "clicked_at": {
810
+ "name": "clicked_at",
811
+ "type": "timestamp with time zone",
812
+ "primaryKey": false,
813
+ "notNull": false
814
+ },
815
+ "bounced_at": {
816
+ "name": "bounced_at",
817
+ "type": "timestamp with time zone",
818
+ "primaryKey": false,
819
+ "notNull": false
820
+ },
821
+ "complained_at": {
822
+ "name": "complained_at",
823
+ "type": "timestamp with time zone",
824
+ "primaryKey": false,
825
+ "notNull": false
826
+ },
827
+ "created_at": {
828
+ "name": "created_at",
829
+ "type": "timestamp with time zone",
830
+ "primaryKey": false,
831
+ "notNull": true,
832
+ "default": "now()"
833
+ },
834
+ "updated_at": {
835
+ "name": "updated_at",
836
+ "type": "timestamp with time zone",
837
+ "primaryKey": false,
838
+ "notNull": true,
839
+ "default": "now()"
840
+ }
841
+ },
842
+ "indexes": {
843
+ "email_sends_to_email_idx": {
844
+ "name": "email_sends_to_email_idx",
845
+ "columns": [
846
+ {
847
+ "expression": "to_email",
848
+ "isExpression": false,
849
+ "asc": true,
850
+ "nulls": "last"
851
+ }
852
+ ],
853
+ "isUnique": false,
854
+ "concurrently": false,
855
+ "method": "btree",
856
+ "with": {}
857
+ },
858
+ "email_sends_template_key_idx": {
859
+ "name": "email_sends_template_key_idx",
860
+ "columns": [
861
+ {
862
+ "expression": "template_key",
863
+ "isExpression": false,
864
+ "asc": true,
865
+ "nulls": "last"
866
+ }
867
+ ],
868
+ "isUnique": false,
869
+ "concurrently": false,
870
+ "method": "btree",
871
+ "with": {}
872
+ },
873
+ "email_sends_status_idx": {
874
+ "name": "email_sends_status_idx",
875
+ "columns": [
876
+ {
877
+ "expression": "status",
878
+ "isExpression": false,
879
+ "asc": true,
880
+ "nulls": "last"
881
+ }
882
+ ],
883
+ "isUnique": false,
884
+ "concurrently": false,
885
+ "method": "btree",
886
+ "with": {}
887
+ },
888
+ "email_sends_created_at_idx": {
889
+ "name": "email_sends_created_at_idx",
890
+ "columns": [
891
+ {
892
+ "expression": "created_at",
893
+ "isExpression": false,
894
+ "asc": true,
895
+ "nulls": "last"
896
+ }
897
+ ],
898
+ "isUnique": false,
899
+ "concurrently": false,
900
+ "method": "btree",
901
+ "with": {}
902
+ },
903
+ "email_sends_journey_state_id_idx": {
904
+ "name": "email_sends_journey_state_id_idx",
905
+ "columns": [
906
+ {
907
+ "expression": "journey_state_id",
908
+ "isExpression": false,
909
+ "asc": true,
910
+ "nulls": "last"
911
+ }
912
+ ],
913
+ "isUnique": false,
914
+ "concurrently": false,
915
+ "method": "btree",
916
+ "with": {}
917
+ }
918
+ },
919
+ "foreignKeys": {
920
+ "email_sends_journey_state_id_journey_states_id_fk": {
921
+ "name": "email_sends_journey_state_id_journey_states_id_fk",
922
+ "tableFrom": "email_sends",
923
+ "tableTo": "journey_states",
924
+ "columnsFrom": ["journey_state_id"],
925
+ "columnsTo": ["id"],
926
+ "onDelete": "no action",
927
+ "onUpdate": "no action"
928
+ }
929
+ },
930
+ "compositePrimaryKeys": {},
931
+ "uniqueConstraints": {},
932
+ "policies": {},
933
+ "checkConstraints": {},
934
+ "isRLSEnabled": false
935
+ },
936
+ "public.journey_configs": {
937
+ "name": "journey_configs",
938
+ "schema": "",
939
+ "columns": {
940
+ "id": {
941
+ "name": "id",
942
+ "type": "uuid",
943
+ "primaryKey": true,
944
+ "notNull": true,
945
+ "default": "gen_random_uuid()"
946
+ },
947
+ "journey_id": {
948
+ "name": "journey_id",
949
+ "type": "text",
950
+ "primaryKey": false,
951
+ "notNull": true
952
+ },
953
+ "enabled": {
954
+ "name": "enabled",
955
+ "type": "boolean",
956
+ "primaryKey": false,
957
+ "notNull": true,
958
+ "default": true
959
+ },
960
+ "created_at": {
961
+ "name": "created_at",
962
+ "type": "timestamp with time zone",
963
+ "primaryKey": false,
964
+ "notNull": true,
965
+ "default": "now()"
966
+ },
967
+ "updated_at": {
968
+ "name": "updated_at",
969
+ "type": "timestamp with time zone",
970
+ "primaryKey": false,
971
+ "notNull": true,
972
+ "default": "now()"
973
+ }
974
+ },
975
+ "indexes": {
976
+ "journey_configs_journey_id_idx": {
977
+ "name": "journey_configs_journey_id_idx",
978
+ "columns": [
979
+ {
980
+ "expression": "journey_id",
981
+ "isExpression": false,
982
+ "asc": true,
983
+ "nulls": "last"
984
+ }
985
+ ],
986
+ "isUnique": true,
987
+ "concurrently": false,
988
+ "method": "btree",
989
+ "with": {}
990
+ }
991
+ },
992
+ "foreignKeys": {},
993
+ "compositePrimaryKeys": {},
994
+ "uniqueConstraints": {},
995
+ "policies": {},
996
+ "checkConstraints": {},
997
+ "isRLSEnabled": false
998
+ },
999
+ "public.journey_logs": {
1000
+ "name": "journey_logs",
1001
+ "schema": "",
1002
+ "columns": {
1003
+ "id": {
1004
+ "name": "id",
1005
+ "type": "uuid",
1006
+ "primaryKey": true,
1007
+ "notNull": true,
1008
+ "default": "gen_random_uuid()"
1009
+ },
1010
+ "journey_state_id": {
1011
+ "name": "journey_state_id",
1012
+ "type": "uuid",
1013
+ "primaryKey": false,
1014
+ "notNull": true
1015
+ },
1016
+ "from_node_id": {
1017
+ "name": "from_node_id",
1018
+ "type": "text",
1019
+ "primaryKey": false,
1020
+ "notNull": false
1021
+ },
1022
+ "to_node_id": {
1023
+ "name": "to_node_id",
1024
+ "type": "text",
1025
+ "primaryKey": false,
1026
+ "notNull": false
1027
+ },
1028
+ "action": {
1029
+ "name": "action",
1030
+ "type": "text",
1031
+ "primaryKey": false,
1032
+ "notNull": true
1033
+ },
1034
+ "detail": {
1035
+ "name": "detail",
1036
+ "type": "jsonb",
1037
+ "primaryKey": false,
1038
+ "notNull": false
1039
+ },
1040
+ "created_at": {
1041
+ "name": "created_at",
1042
+ "type": "timestamp with time zone",
1043
+ "primaryKey": false,
1044
+ "notNull": true,
1045
+ "default": "now()"
1046
+ },
1047
+ "updated_at": {
1048
+ "name": "updated_at",
1049
+ "type": "timestamp with time zone",
1050
+ "primaryKey": false,
1051
+ "notNull": true,
1052
+ "default": "now()"
1053
+ }
1054
+ },
1055
+ "indexes": {
1056
+ "journey_logs_journey_state_id_idx": {
1057
+ "name": "journey_logs_journey_state_id_idx",
1058
+ "columns": [
1059
+ {
1060
+ "expression": "journey_state_id",
1061
+ "isExpression": false,
1062
+ "asc": true,
1063
+ "nulls": "last"
1064
+ }
1065
+ ],
1066
+ "isUnique": false,
1067
+ "concurrently": false,
1068
+ "method": "btree",
1069
+ "with": {}
1070
+ }
1071
+ },
1072
+ "foreignKeys": {
1073
+ "journey_logs_journey_state_id_journey_states_id_fk": {
1074
+ "name": "journey_logs_journey_state_id_journey_states_id_fk",
1075
+ "tableFrom": "journey_logs",
1076
+ "tableTo": "journey_states",
1077
+ "columnsFrom": ["journey_state_id"],
1078
+ "columnsTo": ["id"],
1079
+ "onDelete": "cascade",
1080
+ "onUpdate": "no action"
1081
+ }
1082
+ },
1083
+ "compositePrimaryKeys": {},
1084
+ "uniqueConstraints": {},
1085
+ "policies": {},
1086
+ "checkConstraints": {},
1087
+ "isRLSEnabled": false
1088
+ },
1089
+ "public.journey_states": {
1090
+ "name": "journey_states",
1091
+ "schema": "",
1092
+ "columns": {
1093
+ "id": {
1094
+ "name": "id",
1095
+ "type": "uuid",
1096
+ "primaryKey": true,
1097
+ "notNull": true,
1098
+ "default": "gen_random_uuid()"
1099
+ },
1100
+ "user_id": {
1101
+ "name": "user_id",
1102
+ "type": "text",
1103
+ "primaryKey": false,
1104
+ "notNull": true
1105
+ },
1106
+ "user_email": {
1107
+ "name": "user_email",
1108
+ "type": "text",
1109
+ "primaryKey": false,
1110
+ "notNull": true
1111
+ },
1112
+ "journey_id": {
1113
+ "name": "journey_id",
1114
+ "type": "text",
1115
+ "primaryKey": false,
1116
+ "notNull": true
1117
+ },
1118
+ "current_node_id": {
1119
+ "name": "current_node_id",
1120
+ "type": "text",
1121
+ "primaryKey": false,
1122
+ "notNull": true
1123
+ },
1124
+ "status": {
1125
+ "name": "status",
1126
+ "type": "journey_status",
1127
+ "typeSchema": "public",
1128
+ "primaryKey": false,
1129
+ "notNull": true,
1130
+ "default": "'active'"
1131
+ },
1132
+ "hatchet_run_id": {
1133
+ "name": "hatchet_run_id",
1134
+ "type": "text",
1135
+ "primaryKey": false,
1136
+ "notNull": false
1137
+ },
1138
+ "context": {
1139
+ "name": "context",
1140
+ "type": "jsonb",
1141
+ "primaryKey": false,
1142
+ "notNull": false,
1143
+ "default": "'{}'::jsonb"
1144
+ },
1145
+ "error_message": {
1146
+ "name": "error_message",
1147
+ "type": "text",
1148
+ "primaryKey": false,
1149
+ "notNull": false
1150
+ },
1151
+ "entry_count": {
1152
+ "name": "entry_count",
1153
+ "type": "integer",
1154
+ "primaryKey": false,
1155
+ "notNull": true,
1156
+ "default": 1
1157
+ },
1158
+ "completed_at": {
1159
+ "name": "completed_at",
1160
+ "type": "timestamp with time zone",
1161
+ "primaryKey": false,
1162
+ "notNull": false
1163
+ },
1164
+ "exited_at": {
1165
+ "name": "exited_at",
1166
+ "type": "timestamp with time zone",
1167
+ "primaryKey": false,
1168
+ "notNull": false
1169
+ },
1170
+ "created_at": {
1171
+ "name": "created_at",
1172
+ "type": "timestamp with time zone",
1173
+ "primaryKey": false,
1174
+ "notNull": true,
1175
+ "default": "now()"
1176
+ },
1177
+ "updated_at": {
1178
+ "name": "updated_at",
1179
+ "type": "timestamp with time zone",
1180
+ "primaryKey": false,
1181
+ "notNull": true,
1182
+ "default": "now()"
1183
+ }
1184
+ },
1185
+ "indexes": {
1186
+ "uq_user_journey_active": {
1187
+ "name": "uq_user_journey_active",
1188
+ "columns": [
1189
+ {
1190
+ "expression": "user_id",
1191
+ "isExpression": false,
1192
+ "asc": true,
1193
+ "nulls": "last"
1194
+ },
1195
+ {
1196
+ "expression": "journey_id",
1197
+ "isExpression": false,
1198
+ "asc": true,
1199
+ "nulls": "last"
1200
+ },
1201
+ {
1202
+ "expression": "status",
1203
+ "isExpression": false,
1204
+ "asc": true,
1205
+ "nulls": "last"
1206
+ }
1207
+ ],
1208
+ "isUnique": true,
1209
+ "concurrently": false,
1210
+ "method": "btree",
1211
+ "with": {}
1212
+ },
1213
+ "journey_states_status_idx": {
1214
+ "name": "journey_states_status_idx",
1215
+ "columns": [
1216
+ {
1217
+ "expression": "status",
1218
+ "isExpression": false,
1219
+ "asc": true,
1220
+ "nulls": "last"
1221
+ }
1222
+ ],
1223
+ "isUnique": false,
1224
+ "concurrently": false,
1225
+ "method": "btree",
1226
+ "with": {}
1227
+ },
1228
+ "journey_states_hatchet_run_idx": {
1229
+ "name": "journey_states_hatchet_run_idx",
1230
+ "columns": [
1231
+ {
1232
+ "expression": "hatchet_run_id",
1233
+ "isExpression": false,
1234
+ "asc": true,
1235
+ "nulls": "last"
1236
+ }
1237
+ ],
1238
+ "isUnique": false,
1239
+ "concurrently": false,
1240
+ "method": "btree",
1241
+ "with": {}
1242
+ },
1243
+ "journey_states_user_id_idx": {
1244
+ "name": "journey_states_user_id_idx",
1245
+ "columns": [
1246
+ {
1247
+ "expression": "user_id",
1248
+ "isExpression": false,
1249
+ "asc": true,
1250
+ "nulls": "last"
1251
+ }
1252
+ ],
1253
+ "isUnique": false,
1254
+ "concurrently": false,
1255
+ "method": "btree",
1256
+ "with": {}
1257
+ },
1258
+ "journey_states_journey_id_status_idx": {
1259
+ "name": "journey_states_journey_id_status_idx",
1260
+ "columns": [
1261
+ {
1262
+ "expression": "journey_id",
1263
+ "isExpression": false,
1264
+ "asc": true,
1265
+ "nulls": "last"
1266
+ },
1267
+ {
1268
+ "expression": "status",
1269
+ "isExpression": false,
1270
+ "asc": true,
1271
+ "nulls": "last"
1272
+ }
1273
+ ],
1274
+ "isUnique": false,
1275
+ "concurrently": false,
1276
+ "method": "btree",
1277
+ "with": {}
1278
+ }
1279
+ },
1280
+ "foreignKeys": {},
1281
+ "compositePrimaryKeys": {},
1282
+ "uniqueConstraints": {},
1283
+ "policies": {},
1284
+ "checkConstraints": {},
1285
+ "isRLSEnabled": false
1286
+ },
1287
+ "public.link_clicks": {
1288
+ "name": "link_clicks",
1289
+ "schema": "",
1290
+ "columns": {
1291
+ "id": {
1292
+ "name": "id",
1293
+ "type": "uuid",
1294
+ "primaryKey": true,
1295
+ "notNull": true,
1296
+ "default": "gen_random_uuid()"
1297
+ },
1298
+ "tracked_link_id": {
1299
+ "name": "tracked_link_id",
1300
+ "type": "uuid",
1301
+ "primaryKey": false,
1302
+ "notNull": true
1303
+ },
1304
+ "ip_address": {
1305
+ "name": "ip_address",
1306
+ "type": "text",
1307
+ "primaryKey": false,
1308
+ "notNull": false
1309
+ },
1310
+ "user_agent": {
1311
+ "name": "user_agent",
1312
+ "type": "text",
1313
+ "primaryKey": false,
1314
+ "notNull": false
1315
+ },
1316
+ "clicked_at": {
1317
+ "name": "clicked_at",
1318
+ "type": "timestamp with time zone",
1319
+ "primaryKey": false,
1320
+ "notNull": true,
1321
+ "default": "now()"
1322
+ }
1323
+ },
1324
+ "indexes": {
1325
+ "link_clicks_tracked_link_id_idx": {
1326
+ "name": "link_clicks_tracked_link_id_idx",
1327
+ "columns": [
1328
+ {
1329
+ "expression": "tracked_link_id",
1330
+ "isExpression": false,
1331
+ "asc": true,
1332
+ "nulls": "last"
1333
+ }
1334
+ ],
1335
+ "isUnique": false,
1336
+ "concurrently": false,
1337
+ "method": "btree",
1338
+ "with": {}
1339
+ }
1340
+ },
1341
+ "foreignKeys": {
1342
+ "link_clicks_tracked_link_id_tracked_links_id_fk": {
1343
+ "name": "link_clicks_tracked_link_id_tracked_links_id_fk",
1344
+ "tableFrom": "link_clicks",
1345
+ "tableTo": "tracked_links",
1346
+ "columnsFrom": ["tracked_link_id"],
1347
+ "columnsTo": ["id"],
1348
+ "onDelete": "cascade",
1349
+ "onUpdate": "no action"
1350
+ }
1351
+ },
1352
+ "compositePrimaryKeys": {},
1353
+ "uniqueConstraints": {},
1354
+ "policies": {},
1355
+ "checkConstraints": {},
1356
+ "isRLSEnabled": false
1357
+ },
1358
+ "public.tracked_links": {
1359
+ "name": "tracked_links",
1360
+ "schema": "",
1361
+ "columns": {
1362
+ "id": {
1363
+ "name": "id",
1364
+ "type": "uuid",
1365
+ "primaryKey": true,
1366
+ "notNull": true,
1367
+ "default": "gen_random_uuid()"
1368
+ },
1369
+ "email_send_id": {
1370
+ "name": "email_send_id",
1371
+ "type": "uuid",
1372
+ "primaryKey": false,
1373
+ "notNull": true
1374
+ },
1375
+ "original_url": {
1376
+ "name": "original_url",
1377
+ "type": "text",
1378
+ "primaryKey": false,
1379
+ "notNull": true
1380
+ },
1381
+ "click_count": {
1382
+ "name": "click_count",
1383
+ "type": "integer",
1384
+ "primaryKey": false,
1385
+ "notNull": true,
1386
+ "default": 0
1387
+ },
1388
+ "created_at": {
1389
+ "name": "created_at",
1390
+ "type": "timestamp with time zone",
1391
+ "primaryKey": false,
1392
+ "notNull": true,
1393
+ "default": "now()"
1394
+ },
1395
+ "updated_at": {
1396
+ "name": "updated_at",
1397
+ "type": "timestamp with time zone",
1398
+ "primaryKey": false,
1399
+ "notNull": true,
1400
+ "default": "now()"
1401
+ }
1402
+ },
1403
+ "indexes": {
1404
+ "tracked_links_email_send_id_idx": {
1405
+ "name": "tracked_links_email_send_id_idx",
1406
+ "columns": [
1407
+ {
1408
+ "expression": "email_send_id",
1409
+ "isExpression": false,
1410
+ "asc": true,
1411
+ "nulls": "last"
1412
+ }
1413
+ ],
1414
+ "isUnique": false,
1415
+ "concurrently": false,
1416
+ "method": "btree",
1417
+ "with": {}
1418
+ }
1419
+ },
1420
+ "foreignKeys": {
1421
+ "tracked_links_email_send_id_email_sends_id_fk": {
1422
+ "name": "tracked_links_email_send_id_email_sends_id_fk",
1423
+ "tableFrom": "tracked_links",
1424
+ "tableTo": "email_sends",
1425
+ "columnsFrom": ["email_send_id"],
1426
+ "columnsTo": ["id"],
1427
+ "onDelete": "cascade",
1428
+ "onUpdate": "no action"
1429
+ }
1430
+ },
1431
+ "compositePrimaryKeys": {},
1432
+ "uniqueConstraints": {},
1433
+ "policies": {},
1434
+ "checkConstraints": {},
1435
+ "isRLSEnabled": false
1436
+ },
1437
+ "public.user_events": {
1438
+ "name": "user_events",
1439
+ "schema": "",
1440
+ "columns": {
1441
+ "id": {
1442
+ "name": "id",
1443
+ "type": "uuid",
1444
+ "primaryKey": true,
1445
+ "notNull": true,
1446
+ "default": "gen_random_uuid()"
1447
+ },
1448
+ "user_id": {
1449
+ "name": "user_id",
1450
+ "type": "text",
1451
+ "primaryKey": false,
1452
+ "notNull": true
1453
+ },
1454
+ "event": {
1455
+ "name": "event",
1456
+ "type": "text",
1457
+ "primaryKey": false,
1458
+ "notNull": true
1459
+ },
1460
+ "properties": {
1461
+ "name": "properties",
1462
+ "type": "jsonb",
1463
+ "primaryKey": false,
1464
+ "notNull": false
1465
+ },
1466
+ "occurred_at": {
1467
+ "name": "occurred_at",
1468
+ "type": "timestamp with time zone",
1469
+ "primaryKey": false,
1470
+ "notNull": true,
1471
+ "default": "now()"
1472
+ }
1473
+ },
1474
+ "indexes": {
1475
+ "user_events_user_id_idx": {
1476
+ "name": "user_events_user_id_idx",
1477
+ "columns": [
1478
+ {
1479
+ "expression": "user_id",
1480
+ "isExpression": false,
1481
+ "asc": true,
1482
+ "nulls": "last"
1483
+ }
1484
+ ],
1485
+ "isUnique": false,
1486
+ "concurrently": false,
1487
+ "method": "btree",
1488
+ "with": {}
1489
+ },
1490
+ "user_events_event_idx": {
1491
+ "name": "user_events_event_idx",
1492
+ "columns": [
1493
+ {
1494
+ "expression": "event",
1495
+ "isExpression": false,
1496
+ "asc": true,
1497
+ "nulls": "last"
1498
+ }
1499
+ ],
1500
+ "isUnique": false,
1501
+ "concurrently": false,
1502
+ "method": "btree",
1503
+ "with": {}
1504
+ },
1505
+ "user_events_occurred_at_idx": {
1506
+ "name": "user_events_occurred_at_idx",
1507
+ "columns": [
1508
+ {
1509
+ "expression": "occurred_at",
1510
+ "isExpression": false,
1511
+ "asc": true,
1512
+ "nulls": "last"
1513
+ }
1514
+ ],
1515
+ "isUnique": false,
1516
+ "concurrently": false,
1517
+ "method": "btree",
1518
+ "with": {}
1519
+ },
1520
+ "user_events_user_event_occurred_idx": {
1521
+ "name": "user_events_user_event_occurred_idx",
1522
+ "columns": [
1523
+ {
1524
+ "expression": "user_id",
1525
+ "isExpression": false,
1526
+ "asc": true,
1527
+ "nulls": "last"
1528
+ },
1529
+ {
1530
+ "expression": "event",
1531
+ "isExpression": false,
1532
+ "asc": true,
1533
+ "nulls": "last"
1534
+ },
1535
+ {
1536
+ "expression": "occurred_at",
1537
+ "isExpression": false,
1538
+ "asc": true,
1539
+ "nulls": "last"
1540
+ }
1541
+ ],
1542
+ "isUnique": false,
1543
+ "concurrently": false,
1544
+ "method": "btree",
1545
+ "with": {}
1546
+ }
1547
+ },
1548
+ "foreignKeys": {},
1549
+ "compositePrimaryKeys": {},
1550
+ "uniqueConstraints": {},
1551
+ "policies": {},
1552
+ "checkConstraints": {},
1553
+ "isRLSEnabled": false
1554
+ }
1555
+ },
1556
+ "enums": {
1557
+ "public.email_send_status": {
1558
+ "name": "email_send_status",
1559
+ "schema": "public",
1560
+ "values": [
1561
+ "queued",
1562
+ "rendered",
1563
+ "sent",
1564
+ "delivered",
1565
+ "opened",
1566
+ "clicked",
1567
+ "bounced",
1568
+ "complained",
1569
+ "failed"
1570
+ ]
1571
+ },
1572
+ "public.journey_status": {
1573
+ "name": "journey_status",
1574
+ "schema": "public",
1575
+ "values": ["active", "waiting", "completed", "failed", "exited"]
1576
+ }
1577
+ },
1578
+ "schemas": {},
1579
+ "sequences": {},
1580
+ "roles": {},
1581
+ "policies": {},
1582
+ "views": {},
1583
+ "_meta": {
1584
+ "columns": {},
1585
+ "schemas": {},
1586
+ "tables": {}
1587
+ }
1588
+ }