@voyantjs/notifications 0.28.3 → 0.29.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.
package/dist/schema.d.ts CHANGED
@@ -7,6 +7,9 @@ export declare const notificationTargetTypeEnum: import("drizzle-orm/pg-core").P
7
7
  export declare const notificationReminderStatusEnum: import("drizzle-orm/pg-core").PgEnum<["draft", "active", "archived"]>;
8
8
  export declare const notificationReminderTargetTypeEnum: import("drizzle-orm/pg-core").PgEnum<["booking_confirmed", "booking_payment_schedule", "payment_complete", "booking_cancelled_non_payment", "invoice"]>;
9
9
  export declare const notificationReminderRunStatusEnum: import("drizzle-orm/pg-core").PgEnum<["queued", "processing", "sent", "skipped", "failed"]>;
10
+ export declare const notificationReminderStageAnchorEnum: import("drizzle-orm/pg-core").PgEnum<["due_date", "booking_created_at", "departure_date", "invoice_issued_at", "last_send_at"]>;
11
+ export declare const notificationReminderStageCadenceKindEnum: import("drizzle-orm/pg-core").PgEnum<["once", "every_n_days", "escalating"]>;
12
+ export declare const notificationStageRecipientKindEnum: import("drizzle-orm/pg-core").PgEnum<["primary", "cc", "bcc"]>;
10
13
  export declare const notificationTemplates: import("drizzle-orm/pg-core").PgTableWithColumns<{
11
14
  name: "notification_templates";
12
15
  schema: undefined;
@@ -885,8 +888,8 @@ export declare const notificationReminderRules: import("drizzle-orm/pg-core").Pg
885
888
  identity: undefined;
886
889
  generated: undefined;
887
890
  }, {}, {}>;
888
- relativeDaysFromDueDate: import("drizzle-orm/pg-core").PgColumn<{
889
- name: "relative_days_from_due_date";
891
+ priority: import("drizzle-orm/pg-core").PgColumn<{
892
+ name: "priority";
890
893
  tableName: "notification_reminder_rules";
891
894
  dataType: "number";
892
895
  columnType: "PgInteger";
@@ -902,6 +905,23 @@ export declare const notificationReminderRules: import("drizzle-orm/pg-core").Pg
902
905
  identity: undefined;
903
906
  generated: undefined;
904
907
  }, {}, {}>;
908
+ suppressionGroup: import("drizzle-orm/pg-core").PgColumn<{
909
+ name: "suppression_group";
910
+ tableName: "notification_reminder_rules";
911
+ dataType: "string";
912
+ columnType: "PgText";
913
+ data: string;
914
+ driverParam: string;
915
+ notNull: false;
916
+ hasDefault: false;
917
+ isPrimaryKey: false;
918
+ isAutoincrement: false;
919
+ hasRuntimeDefault: false;
920
+ enumValues: [string, ...string[]];
921
+ baseColumn: never;
922
+ identity: undefined;
923
+ generated: undefined;
924
+ }, {}, {}>;
905
925
  isSystem: import("drizzle-orm/pg-core").PgColumn<{
906
926
  name: "is_system";
907
927
  tableName: "notification_reminder_rules";
@@ -1156,7 +1176,7 @@ export declare const notificationReminderRuns: import("drizzle-orm/pg-core").PgT
1156
1176
  tableName: "notification_reminder_runs";
1157
1177
  dataType: "string";
1158
1178
  columnType: "PgEnumColumn";
1159
- data: "failed" | "sent" | "processing" | "skipped" | "queued";
1179
+ data: "failed" | "queued" | "skipped" | "sent" | "processing";
1160
1180
  driverParam: string;
1161
1181
  notNull: true;
1162
1182
  hasDefault: false;
@@ -1294,30 +1314,723 @@ export declare const notificationReminderRuns: import("drizzle-orm/pg-core").PgT
1294
1314
  }>;
1295
1315
  export type NotificationReminderRun = typeof notificationReminderRuns.$inferSelect;
1296
1316
  export type NewNotificationReminderRun = typeof notificationReminderRuns.$inferInsert;
1297
- export declare const notificationTemplatesRelations: import("drizzle-orm").Relations<"notification_templates", {
1298
- deliveries: import("drizzle-orm").Many<"notification_deliveries">;
1299
- reminderRules: import("drizzle-orm").Many<"notification_reminder_rules">;
1300
- }>;
1301
- export declare const notificationDeliveriesRelations: import("drizzle-orm").Relations<"notification_deliveries", {
1302
- template: import("drizzle-orm").One<"notification_templates", false>;
1303
- }>;
1304
- export declare const notificationReminderRulesRelations: import("drizzle-orm").Relations<"notification_reminder_rules", {
1305
- template: import("drizzle-orm").One<"notification_templates", false>;
1306
- runs: import("drizzle-orm").Many<"notification_reminder_runs">;
1317
+ export type NotificationReminderStageCadenceInterval = {
1318
+ whenDaysUntilDueGT?: number | null;
1319
+ whenDaysUntilDueLT?: number | null;
1320
+ repeatEveryDays: number;
1321
+ };
1322
+ export declare const notificationReminderRuleStages: import("drizzle-orm/pg-core").PgTableWithColumns<{
1323
+ name: "notification_reminder_rule_stages";
1324
+ schema: undefined;
1325
+ columns: {
1326
+ id: import("drizzle-orm/pg-core").PgColumn<{
1327
+ name: string;
1328
+ tableName: "notification_reminder_rule_stages";
1329
+ dataType: "string";
1330
+ columnType: "PgText";
1331
+ data: string;
1332
+ driverParam: string;
1333
+ notNull: true;
1334
+ hasDefault: true;
1335
+ isPrimaryKey: true;
1336
+ isAutoincrement: false;
1337
+ hasRuntimeDefault: true;
1338
+ enumValues: [string, ...string[]];
1339
+ baseColumn: never;
1340
+ identity: undefined;
1341
+ generated: undefined;
1342
+ }, {}, {}>;
1343
+ reminderRuleId: import("drizzle-orm/pg-core").PgColumn<{
1344
+ name: string;
1345
+ tableName: "notification_reminder_rule_stages";
1346
+ dataType: "string";
1347
+ columnType: "PgText";
1348
+ data: string;
1349
+ driverParam: string;
1350
+ notNull: true;
1351
+ hasDefault: false;
1352
+ isPrimaryKey: false;
1353
+ isAutoincrement: false;
1354
+ hasRuntimeDefault: false;
1355
+ enumValues: [string, ...string[]];
1356
+ baseColumn: never;
1357
+ identity: undefined;
1358
+ generated: undefined;
1359
+ }, {}, {}>;
1360
+ orderIndex: import("drizzle-orm/pg-core").PgColumn<{
1361
+ name: "order_index";
1362
+ tableName: "notification_reminder_rule_stages";
1363
+ dataType: "number";
1364
+ columnType: "PgInteger";
1365
+ data: number;
1366
+ driverParam: string | number;
1367
+ notNull: true;
1368
+ hasDefault: false;
1369
+ isPrimaryKey: false;
1370
+ isAutoincrement: false;
1371
+ hasRuntimeDefault: false;
1372
+ enumValues: undefined;
1373
+ baseColumn: never;
1374
+ identity: undefined;
1375
+ generated: undefined;
1376
+ }, {}, {}>;
1377
+ name: import("drizzle-orm/pg-core").PgColumn<{
1378
+ name: "name";
1379
+ tableName: "notification_reminder_rule_stages";
1380
+ dataType: "string";
1381
+ columnType: "PgText";
1382
+ data: string;
1383
+ driverParam: string;
1384
+ notNull: false;
1385
+ hasDefault: false;
1386
+ isPrimaryKey: false;
1387
+ isAutoincrement: false;
1388
+ hasRuntimeDefault: false;
1389
+ enumValues: [string, ...string[]];
1390
+ baseColumn: never;
1391
+ identity: undefined;
1392
+ generated: undefined;
1393
+ }, {}, {}>;
1394
+ anchor: import("drizzle-orm/pg-core").PgColumn<{
1395
+ name: "anchor";
1396
+ tableName: "notification_reminder_rule_stages";
1397
+ dataType: "string";
1398
+ columnType: "PgEnumColumn";
1399
+ data: "due_date" | "booking_created_at" | "departure_date" | "invoice_issued_at" | "last_send_at";
1400
+ driverParam: string;
1401
+ notNull: true;
1402
+ hasDefault: false;
1403
+ isPrimaryKey: false;
1404
+ isAutoincrement: false;
1405
+ hasRuntimeDefault: false;
1406
+ enumValues: ["due_date", "booking_created_at", "departure_date", "invoice_issued_at", "last_send_at"];
1407
+ baseColumn: never;
1408
+ identity: undefined;
1409
+ generated: undefined;
1410
+ }, {}, {}>;
1411
+ windowStartDays: import("drizzle-orm/pg-core").PgColumn<{
1412
+ name: "window_start_days";
1413
+ tableName: "notification_reminder_rule_stages";
1414
+ dataType: "number";
1415
+ columnType: "PgInteger";
1416
+ data: number;
1417
+ driverParam: string | number;
1418
+ notNull: true;
1419
+ hasDefault: false;
1420
+ isPrimaryKey: false;
1421
+ isAutoincrement: false;
1422
+ hasRuntimeDefault: false;
1423
+ enumValues: undefined;
1424
+ baseColumn: never;
1425
+ identity: undefined;
1426
+ generated: undefined;
1427
+ }, {}, {}>;
1428
+ windowEndDays: import("drizzle-orm/pg-core").PgColumn<{
1429
+ name: "window_end_days";
1430
+ tableName: "notification_reminder_rule_stages";
1431
+ dataType: "number";
1432
+ columnType: "PgInteger";
1433
+ data: number;
1434
+ driverParam: string | number;
1435
+ notNull: true;
1436
+ hasDefault: false;
1437
+ isPrimaryKey: false;
1438
+ isAutoincrement: false;
1439
+ hasRuntimeDefault: false;
1440
+ enumValues: undefined;
1441
+ baseColumn: never;
1442
+ identity: undefined;
1443
+ generated: undefined;
1444
+ }, {}, {}>;
1445
+ cadenceKind: import("drizzle-orm/pg-core").PgColumn<{
1446
+ name: "cadence_kind";
1447
+ tableName: "notification_reminder_rule_stages";
1448
+ dataType: "string";
1449
+ columnType: "PgEnumColumn";
1450
+ data: "once" | "every_n_days" | "escalating";
1451
+ driverParam: string;
1452
+ notNull: true;
1453
+ hasDefault: false;
1454
+ isPrimaryKey: false;
1455
+ isAutoincrement: false;
1456
+ hasRuntimeDefault: false;
1457
+ enumValues: ["once", "every_n_days", "escalating"];
1458
+ baseColumn: never;
1459
+ identity: undefined;
1460
+ generated: undefined;
1461
+ }, {}, {}>;
1462
+ cadenceEveryDays: import("drizzle-orm/pg-core").PgColumn<{
1463
+ name: "cadence_every_days";
1464
+ tableName: "notification_reminder_rule_stages";
1465
+ dataType: "number";
1466
+ columnType: "PgInteger";
1467
+ data: number;
1468
+ driverParam: string | number;
1469
+ notNull: false;
1470
+ hasDefault: false;
1471
+ isPrimaryKey: false;
1472
+ isAutoincrement: false;
1473
+ hasRuntimeDefault: false;
1474
+ enumValues: undefined;
1475
+ baseColumn: never;
1476
+ identity: undefined;
1477
+ generated: undefined;
1478
+ }, {}, {}>;
1479
+ cadenceIntervals: import("drizzle-orm/pg-core").PgColumn<{
1480
+ name: "cadence_intervals";
1481
+ tableName: "notification_reminder_rule_stages";
1482
+ dataType: "json";
1483
+ columnType: "PgJsonb";
1484
+ data: NotificationReminderStageCadenceInterval[];
1485
+ driverParam: unknown;
1486
+ notNull: false;
1487
+ hasDefault: false;
1488
+ isPrimaryKey: false;
1489
+ isAutoincrement: false;
1490
+ hasRuntimeDefault: false;
1491
+ enumValues: undefined;
1492
+ baseColumn: never;
1493
+ identity: undefined;
1494
+ generated: undefined;
1495
+ }, {}, {
1496
+ $type: NotificationReminderStageCadenceInterval[];
1497
+ }>;
1498
+ maxSendsInStage: import("drizzle-orm/pg-core").PgColumn<{
1499
+ name: "max_sends_in_stage";
1500
+ tableName: "notification_reminder_rule_stages";
1501
+ dataType: "number";
1502
+ columnType: "PgInteger";
1503
+ data: number;
1504
+ driverParam: string | number;
1505
+ notNull: false;
1506
+ hasDefault: false;
1507
+ isPrimaryKey: false;
1508
+ isAutoincrement: false;
1509
+ hasRuntimeDefault: false;
1510
+ enumValues: undefined;
1511
+ baseColumn: never;
1512
+ identity: undefined;
1513
+ generated: undefined;
1514
+ }, {}, {}>;
1515
+ respectQuietHours: import("drizzle-orm/pg-core").PgColumn<{
1516
+ name: "respect_quiet_hours";
1517
+ tableName: "notification_reminder_rule_stages";
1518
+ dataType: "boolean";
1519
+ columnType: "PgBoolean";
1520
+ data: boolean;
1521
+ driverParam: boolean;
1522
+ notNull: true;
1523
+ hasDefault: true;
1524
+ isPrimaryKey: false;
1525
+ isAutoincrement: false;
1526
+ hasRuntimeDefault: false;
1527
+ enumValues: undefined;
1528
+ baseColumn: never;
1529
+ identity: undefined;
1530
+ generated: undefined;
1531
+ }, {}, {}>;
1532
+ metadata: import("drizzle-orm/pg-core").PgColumn<{
1533
+ name: "metadata";
1534
+ tableName: "notification_reminder_rule_stages";
1535
+ dataType: "json";
1536
+ columnType: "PgJsonb";
1537
+ data: Record<string, unknown>;
1538
+ driverParam: unknown;
1539
+ notNull: false;
1540
+ hasDefault: false;
1541
+ isPrimaryKey: false;
1542
+ isAutoincrement: false;
1543
+ hasRuntimeDefault: false;
1544
+ enumValues: undefined;
1545
+ baseColumn: never;
1546
+ identity: undefined;
1547
+ generated: undefined;
1548
+ }, {}, {
1549
+ $type: Record<string, unknown>;
1550
+ }>;
1551
+ createdAt: import("drizzle-orm/pg-core").PgColumn<{
1552
+ name: "created_at";
1553
+ tableName: "notification_reminder_rule_stages";
1554
+ dataType: "date";
1555
+ columnType: "PgTimestamp";
1556
+ data: Date;
1557
+ driverParam: string;
1558
+ notNull: true;
1559
+ hasDefault: true;
1560
+ isPrimaryKey: false;
1561
+ isAutoincrement: false;
1562
+ hasRuntimeDefault: false;
1563
+ enumValues: undefined;
1564
+ baseColumn: never;
1565
+ identity: undefined;
1566
+ generated: undefined;
1567
+ }, {}, {}>;
1568
+ updatedAt: import("drizzle-orm/pg-core").PgColumn<{
1569
+ name: "updated_at";
1570
+ tableName: "notification_reminder_rule_stages";
1571
+ dataType: "date";
1572
+ columnType: "PgTimestamp";
1573
+ data: Date;
1574
+ driverParam: string;
1575
+ notNull: true;
1576
+ hasDefault: true;
1577
+ isPrimaryKey: false;
1578
+ isAutoincrement: false;
1579
+ hasRuntimeDefault: false;
1580
+ enumValues: undefined;
1581
+ baseColumn: never;
1582
+ identity: undefined;
1583
+ generated: undefined;
1584
+ }, {}, {}>;
1585
+ };
1586
+ dialect: "pg";
1307
1587
  }>;
1308
- export declare const notificationReminderRunsRelations: import("drizzle-orm").Relations<"notification_reminder_runs", {
1309
- reminderRule: import("drizzle-orm").One<"notification_reminder_rules", true>;
1310
- notificationDelivery: import("drizzle-orm").One<"notification_deliveries", false>;
1588
+ export type NotificationReminderRuleStage = typeof notificationReminderRuleStages.$inferSelect;
1589
+ export type NewNotificationReminderRuleStage = typeof notificationReminderRuleStages.$inferInsert;
1590
+ export declare const notificationReminderStageChannels: import("drizzle-orm/pg-core").PgTableWithColumns<{
1591
+ name: "notification_reminder_stage_channels";
1592
+ schema: undefined;
1593
+ columns: {
1594
+ id: import("drizzle-orm/pg-core").PgColumn<{
1595
+ name: string;
1596
+ tableName: "notification_reminder_stage_channels";
1597
+ dataType: "string";
1598
+ columnType: "PgText";
1599
+ data: string;
1600
+ driverParam: string;
1601
+ notNull: true;
1602
+ hasDefault: true;
1603
+ isPrimaryKey: true;
1604
+ isAutoincrement: false;
1605
+ hasRuntimeDefault: true;
1606
+ enumValues: [string, ...string[]];
1607
+ baseColumn: never;
1608
+ identity: undefined;
1609
+ generated: undefined;
1610
+ }, {}, {}>;
1611
+ stageId: import("drizzle-orm/pg-core").PgColumn<{
1612
+ name: string;
1613
+ tableName: "notification_reminder_stage_channels";
1614
+ dataType: "string";
1615
+ columnType: "PgText";
1616
+ data: string;
1617
+ driverParam: string;
1618
+ notNull: true;
1619
+ hasDefault: false;
1620
+ isPrimaryKey: false;
1621
+ isAutoincrement: false;
1622
+ hasRuntimeDefault: false;
1623
+ enumValues: [string, ...string[]];
1624
+ baseColumn: never;
1625
+ identity: undefined;
1626
+ generated: undefined;
1627
+ }, {}, {}>;
1628
+ orderIndex: import("drizzle-orm/pg-core").PgColumn<{
1629
+ name: "order_index";
1630
+ tableName: "notification_reminder_stage_channels";
1631
+ dataType: "number";
1632
+ columnType: "PgInteger";
1633
+ data: number;
1634
+ driverParam: string | number;
1635
+ notNull: true;
1636
+ hasDefault: true;
1637
+ isPrimaryKey: false;
1638
+ isAutoincrement: false;
1639
+ hasRuntimeDefault: false;
1640
+ enumValues: undefined;
1641
+ baseColumn: never;
1642
+ identity: undefined;
1643
+ generated: undefined;
1644
+ }, {}, {}>;
1645
+ channel: import("drizzle-orm/pg-core").PgColumn<{
1646
+ name: "channel";
1647
+ tableName: "notification_reminder_stage_channels";
1648
+ dataType: "string";
1649
+ columnType: "PgEnumColumn";
1650
+ data: "email" | "sms";
1651
+ driverParam: string;
1652
+ notNull: true;
1653
+ hasDefault: false;
1654
+ isPrimaryKey: false;
1655
+ isAutoincrement: false;
1656
+ hasRuntimeDefault: false;
1657
+ enumValues: ["email", "sms"];
1658
+ baseColumn: never;
1659
+ identity: undefined;
1660
+ generated: undefined;
1661
+ }, {}, {}>;
1662
+ provider: import("drizzle-orm/pg-core").PgColumn<{
1663
+ name: "provider";
1664
+ tableName: "notification_reminder_stage_channels";
1665
+ dataType: "string";
1666
+ columnType: "PgText";
1667
+ data: string;
1668
+ driverParam: string;
1669
+ notNull: false;
1670
+ hasDefault: false;
1671
+ isPrimaryKey: false;
1672
+ isAutoincrement: false;
1673
+ hasRuntimeDefault: false;
1674
+ enumValues: [string, ...string[]];
1675
+ baseColumn: never;
1676
+ identity: undefined;
1677
+ generated: undefined;
1678
+ }, {}, {}>;
1679
+ templateId: import("drizzle-orm/pg-core").PgColumn<{
1680
+ name: string;
1681
+ tableName: "notification_reminder_stage_channels";
1682
+ dataType: "string";
1683
+ columnType: "PgText";
1684
+ data: string;
1685
+ driverParam: string;
1686
+ notNull: false;
1687
+ hasDefault: false;
1688
+ isPrimaryKey: false;
1689
+ isAutoincrement: false;
1690
+ hasRuntimeDefault: false;
1691
+ enumValues: [string, ...string[]];
1692
+ baseColumn: never;
1693
+ identity: undefined;
1694
+ generated: undefined;
1695
+ }, {}, {}>;
1696
+ templateSlug: import("drizzle-orm/pg-core").PgColumn<{
1697
+ name: "template_slug";
1698
+ tableName: "notification_reminder_stage_channels";
1699
+ dataType: "string";
1700
+ columnType: "PgText";
1701
+ data: string;
1702
+ driverParam: string;
1703
+ notNull: false;
1704
+ hasDefault: false;
1705
+ isPrimaryKey: false;
1706
+ isAutoincrement: false;
1707
+ hasRuntimeDefault: false;
1708
+ enumValues: [string, ...string[]];
1709
+ baseColumn: never;
1710
+ identity: undefined;
1711
+ generated: undefined;
1712
+ }, {}, {}>;
1713
+ recipientKind: import("drizzle-orm/pg-core").PgColumn<{
1714
+ name: "recipient_kind";
1715
+ tableName: "notification_reminder_stage_channels";
1716
+ dataType: "string";
1717
+ columnType: "PgEnumColumn";
1718
+ data: "primary" | "cc" | "bcc";
1719
+ driverParam: string;
1720
+ notNull: true;
1721
+ hasDefault: true;
1722
+ isPrimaryKey: false;
1723
+ isAutoincrement: false;
1724
+ hasRuntimeDefault: false;
1725
+ enumValues: ["primary", "cc", "bcc"];
1726
+ baseColumn: never;
1727
+ identity: undefined;
1728
+ generated: undefined;
1729
+ }, {}, {}>;
1730
+ recipientRole: import("drizzle-orm/pg-core").PgColumn<{
1731
+ name: "recipient_role";
1732
+ tableName: "notification_reminder_stage_channels";
1733
+ dataType: "string";
1734
+ columnType: "PgText";
1735
+ data: string;
1736
+ driverParam: string;
1737
+ notNull: false;
1738
+ hasDefault: false;
1739
+ isPrimaryKey: false;
1740
+ isAutoincrement: false;
1741
+ hasRuntimeDefault: false;
1742
+ enumValues: [string, ...string[]];
1743
+ baseColumn: never;
1744
+ identity: undefined;
1745
+ generated: undefined;
1746
+ }, {}, {}>;
1747
+ metadata: import("drizzle-orm/pg-core").PgColumn<{
1748
+ name: "metadata";
1749
+ tableName: "notification_reminder_stage_channels";
1750
+ dataType: "json";
1751
+ columnType: "PgJsonb";
1752
+ data: Record<string, unknown>;
1753
+ driverParam: unknown;
1754
+ notNull: false;
1755
+ hasDefault: false;
1756
+ isPrimaryKey: false;
1757
+ isAutoincrement: false;
1758
+ hasRuntimeDefault: false;
1759
+ enumValues: undefined;
1760
+ baseColumn: never;
1761
+ identity: undefined;
1762
+ generated: undefined;
1763
+ }, {}, {
1764
+ $type: Record<string, unknown>;
1765
+ }>;
1766
+ createdAt: import("drizzle-orm/pg-core").PgColumn<{
1767
+ name: "created_at";
1768
+ tableName: "notification_reminder_stage_channels";
1769
+ dataType: "date";
1770
+ columnType: "PgTimestamp";
1771
+ data: Date;
1772
+ driverParam: string;
1773
+ notNull: true;
1774
+ hasDefault: true;
1775
+ isPrimaryKey: false;
1776
+ isAutoincrement: false;
1777
+ hasRuntimeDefault: false;
1778
+ enumValues: undefined;
1779
+ baseColumn: never;
1780
+ identity: undefined;
1781
+ generated: undefined;
1782
+ }, {}, {}>;
1783
+ updatedAt: import("drizzle-orm/pg-core").PgColumn<{
1784
+ name: "updated_at";
1785
+ tableName: "notification_reminder_stage_channels";
1786
+ dataType: "date";
1787
+ columnType: "PgTimestamp";
1788
+ data: Date;
1789
+ driverParam: string;
1790
+ notNull: true;
1791
+ hasDefault: true;
1792
+ isPrimaryKey: false;
1793
+ isAutoincrement: false;
1794
+ hasRuntimeDefault: false;
1795
+ enumValues: undefined;
1796
+ baseColumn: never;
1797
+ identity: undefined;
1798
+ generated: undefined;
1799
+ }, {}, {}>;
1800
+ };
1801
+ dialect: "pg";
1802
+ }>;
1803
+ export type NotificationReminderStageChannel = typeof notificationReminderStageChannels.$inferSelect;
1804
+ export type NewNotificationReminderStageChannel = typeof notificationReminderStageChannels.$inferInsert;
1805
+ export type NotificationQuietHoursConfig = {
1806
+ start: string;
1807
+ end: string;
1808
+ tz: string;
1809
+ };
1810
+ export declare const notificationSettings: import("drizzle-orm/pg-core").PgTableWithColumns<{
1811
+ name: "notification_settings";
1812
+ schema: undefined;
1813
+ columns: {
1814
+ id: import("drizzle-orm/pg-core").PgColumn<{
1815
+ name: string;
1816
+ tableName: "notification_settings";
1817
+ dataType: "string";
1818
+ columnType: "PgText";
1819
+ data: string;
1820
+ driverParam: string;
1821
+ notNull: true;
1822
+ hasDefault: true;
1823
+ isPrimaryKey: true;
1824
+ isAutoincrement: false;
1825
+ hasRuntimeDefault: true;
1826
+ enumValues: [string, ...string[]];
1827
+ baseColumn: never;
1828
+ identity: undefined;
1829
+ generated: undefined;
1830
+ }, {}, {}>;
1831
+ scope: import("drizzle-orm/pg-core").PgColumn<{
1832
+ name: "scope";
1833
+ tableName: "notification_settings";
1834
+ dataType: "string";
1835
+ columnType: "PgText";
1836
+ data: string;
1837
+ driverParam: string;
1838
+ notNull: true;
1839
+ hasDefault: true;
1840
+ isPrimaryKey: false;
1841
+ isAutoincrement: false;
1842
+ hasRuntimeDefault: false;
1843
+ enumValues: [string, ...string[]];
1844
+ baseColumn: never;
1845
+ identity: undefined;
1846
+ generated: undefined;
1847
+ }, {}, {}>;
1848
+ quietHoursLocal: import("drizzle-orm/pg-core").PgColumn<{
1849
+ name: "quiet_hours_local";
1850
+ tableName: "notification_settings";
1851
+ dataType: "json";
1852
+ columnType: "PgJsonb";
1853
+ data: NotificationQuietHoursConfig | null;
1854
+ driverParam: unknown;
1855
+ notNull: false;
1856
+ hasDefault: false;
1857
+ isPrimaryKey: false;
1858
+ isAutoincrement: false;
1859
+ hasRuntimeDefault: false;
1860
+ enumValues: undefined;
1861
+ baseColumn: never;
1862
+ identity: undefined;
1863
+ generated: undefined;
1864
+ }, {}, {
1865
+ $type: NotificationQuietHoursConfig | null;
1866
+ }>;
1867
+ blackoutDates: import("drizzle-orm/pg-core").PgColumn<{
1868
+ name: "blackout_dates";
1869
+ tableName: "notification_settings";
1870
+ dataType: "json";
1871
+ columnType: "PgJsonb";
1872
+ data: string[];
1873
+ driverParam: unknown;
1874
+ notNull: false;
1875
+ hasDefault: false;
1876
+ isPrimaryKey: false;
1877
+ isAutoincrement: false;
1878
+ hasRuntimeDefault: false;
1879
+ enumValues: undefined;
1880
+ baseColumn: never;
1881
+ identity: undefined;
1882
+ generated: undefined;
1883
+ }, {}, {
1884
+ $type: string[];
1885
+ }>;
1886
+ skipWeekends: import("drizzle-orm/pg-core").PgColumn<{
1887
+ name: "skip_weekends";
1888
+ tableName: "notification_settings";
1889
+ dataType: "boolean";
1890
+ columnType: "PgBoolean";
1891
+ data: boolean;
1892
+ driverParam: boolean;
1893
+ notNull: true;
1894
+ hasDefault: true;
1895
+ isPrimaryKey: false;
1896
+ isAutoincrement: false;
1897
+ hasRuntimeDefault: false;
1898
+ enumValues: undefined;
1899
+ baseColumn: never;
1900
+ identity: undefined;
1901
+ generated: undefined;
1902
+ }, {}, {}>;
1903
+ recipientRateLimitPerDay: import("drizzle-orm/pg-core").PgColumn<{
1904
+ name: "recipient_rate_limit_per_day";
1905
+ tableName: "notification_settings";
1906
+ dataType: "number";
1907
+ columnType: "PgInteger";
1908
+ data: number;
1909
+ driverParam: string | number;
1910
+ notNull: false;
1911
+ hasDefault: false;
1912
+ isPrimaryKey: false;
1913
+ isAutoincrement: false;
1914
+ hasRuntimeDefault: false;
1915
+ enumValues: undefined;
1916
+ baseColumn: never;
1917
+ identity: undefined;
1918
+ generated: undefined;
1919
+ }, {}, {}>;
1920
+ suppressionWindowHours: import("drizzle-orm/pg-core").PgColumn<{
1921
+ name: "suppression_window_hours";
1922
+ tableName: "notification_settings";
1923
+ dataType: "number";
1924
+ columnType: "PgInteger";
1925
+ data: number;
1926
+ driverParam: string | number;
1927
+ notNull: true;
1928
+ hasDefault: true;
1929
+ isPrimaryKey: false;
1930
+ isAutoincrement: false;
1931
+ hasRuntimeDefault: false;
1932
+ enumValues: undefined;
1933
+ baseColumn: never;
1934
+ identity: undefined;
1935
+ generated: undefined;
1936
+ }, {}, {}>;
1937
+ metadata: import("drizzle-orm/pg-core").PgColumn<{
1938
+ name: "metadata";
1939
+ tableName: "notification_settings";
1940
+ dataType: "json";
1941
+ columnType: "PgJsonb";
1942
+ data: Record<string, unknown>;
1943
+ driverParam: unknown;
1944
+ notNull: false;
1945
+ hasDefault: false;
1946
+ isPrimaryKey: false;
1947
+ isAutoincrement: false;
1948
+ hasRuntimeDefault: false;
1949
+ enumValues: undefined;
1950
+ baseColumn: never;
1951
+ identity: undefined;
1952
+ generated: undefined;
1953
+ }, {}, {
1954
+ $type: Record<string, unknown>;
1955
+ }>;
1956
+ createdAt: import("drizzle-orm/pg-core").PgColumn<{
1957
+ name: "created_at";
1958
+ tableName: "notification_settings";
1959
+ dataType: "date";
1960
+ columnType: "PgTimestamp";
1961
+ data: Date;
1962
+ driverParam: string;
1963
+ notNull: true;
1964
+ hasDefault: true;
1965
+ isPrimaryKey: false;
1966
+ isAutoincrement: false;
1967
+ hasRuntimeDefault: false;
1968
+ enumValues: undefined;
1969
+ baseColumn: never;
1970
+ identity: undefined;
1971
+ generated: undefined;
1972
+ }, {}, {}>;
1973
+ updatedAt: import("drizzle-orm/pg-core").PgColumn<{
1974
+ name: "updated_at";
1975
+ tableName: "notification_settings";
1976
+ dataType: "date";
1977
+ columnType: "PgTimestamp";
1978
+ data: Date;
1979
+ driverParam: string;
1980
+ notNull: true;
1981
+ hasDefault: true;
1982
+ isPrimaryKey: false;
1983
+ isAutoincrement: false;
1984
+ hasRuntimeDefault: false;
1985
+ enumValues: undefined;
1986
+ baseColumn: never;
1987
+ identity: undefined;
1988
+ generated: undefined;
1989
+ }, {}, {}>;
1990
+ };
1991
+ dialect: "pg";
1992
+ }>;
1993
+ export type NotificationSettings = typeof notificationSettings.$inferSelect;
1994
+ export type NewNotificationSettings = typeof notificationSettings.$inferInsert;
1995
+ export declare const notificationTemplatesRelations: import("drizzle-orm").Relations<"notification_templates", {
1996
+ deliveries: import("drizzle-orm").Many<"notification_deliveries">;
1997
+ reminderRules: import("drizzle-orm").Many<"notification_reminder_rules">;
1998
+ }>;
1999
+ export declare const notificationDeliveriesRelations: import("drizzle-orm").Relations<"notification_deliveries", {
2000
+ template: import("drizzle-orm").One<"notification_templates", false>;
2001
+ }>;
2002
+ export declare const notificationReminderRulesRelations: import("drizzle-orm").Relations<"notification_reminder_rules", {
2003
+ template: import("drizzle-orm").One<"notification_templates", false>;
2004
+ runs: import("drizzle-orm").Many<"notification_reminder_runs">;
2005
+ stages: import("drizzle-orm").Many<"notification_reminder_rule_stages">;
2006
+ }>;
2007
+ export declare const notificationReminderRunsRelations: import("drizzle-orm").Relations<"notification_reminder_runs", {
2008
+ reminderRule: import("drizzle-orm").One<"notification_reminder_rules", true>;
2009
+ notificationDelivery: import("drizzle-orm").One<"notification_deliveries", false>;
2010
+ }>;
2011
+ export declare const notificationReminderRuleStagesRelations: import("drizzle-orm").Relations<"notification_reminder_rule_stages", {
2012
+ rule: import("drizzle-orm").One<"notification_reminder_rules", true>;
2013
+ channels: import("drizzle-orm").Many<"notification_reminder_stage_channels">;
2014
+ }>;
2015
+ export declare const notificationReminderStageChannelsRelations: import("drizzle-orm").Relations<"notification_reminder_stage_channels", {
2016
+ stage: import("drizzle-orm").One<"notification_reminder_rule_stages", true>;
2017
+ template: import("drizzle-orm").One<"notification_templates", false>;
1311
2018
  }>;
1312
2019
  export declare const notificationTemplateLinkable: LinkableDefinition;
1313
2020
  export declare const notificationDeliveryLinkable: LinkableDefinition;
1314
2021
  export declare const notificationReminderRuleLinkable: LinkableDefinition;
1315
2022
  export declare const notificationReminderRunLinkable: LinkableDefinition;
2023
+ export declare const notificationReminderRuleStageLinkable: LinkableDefinition;
2024
+ export declare const notificationReminderStageChannelLinkable: LinkableDefinition;
2025
+ export declare const notificationSettingsLinkable: LinkableDefinition;
1316
2026
  export declare const notificationsLinkable: {
1317
2027
  notificationTemplate: LinkableDefinition;
1318
2028
  notificationDelivery: LinkableDefinition;
1319
2029
  notificationReminderRule: LinkableDefinition;
1320
2030
  notificationReminderRun: LinkableDefinition;
2031
+ notificationReminderRuleStage: LinkableDefinition;
2032
+ notificationReminderStageChannel: LinkableDefinition;
2033
+ notificationSettings: LinkableDefinition;
1321
2034
  };
1322
2035
  export declare const notificationsModule: Module;
1323
2036
  export type NotificationsHonoModule = HonoModule;