@timothyw/pat-common 1.0.113 → 1.0.116

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 (246) hide show
  1. package/dist/types/id-types.d.ts +2 -2
  2. package/dist/types/index.d.ts +1 -3
  3. package/dist/types/index.js +4 -3
  4. package/dist/types/new/agenda-types.d.ts +116 -0
  5. package/dist/types/new/agenda-types.js +37 -0
  6. package/dist/types/new/auth-types.d.ts +153 -0
  7. package/dist/types/new/auth-types.js +48 -0
  8. package/dist/types/new/habits-types.d.ts +317 -0
  9. package/dist/types/new/habits-types.js +70 -0
  10. package/dist/types/new/index.d.ts +10 -0
  11. package/dist/types/new/index.js +26 -0
  12. package/dist/types/new/lists-types.d.ts +164 -0
  13. package/dist/types/new/lists-types.js +50 -0
  14. package/dist/types/new/misc/index.d.ts +1 -0
  15. package/dist/types/new/misc/index.js +17 -0
  16. package/dist/types/new/misc/version-types.d.ts +26 -0
  17. package/dist/types/new/misc/version-types.js +13 -0
  18. package/dist/types/new/notifications-types.d.ts +407 -0
  19. package/dist/types/new/notifications-types.js +91 -0
  20. package/dist/types/new/people-types.d.ts +285 -0
  21. package/dist/types/new/people-types.js +58 -0
  22. package/dist/types/new/program-config-types.d.ts +105 -0
  23. package/dist/types/new/program-config-types.js +29 -0
  24. package/dist/types/new/thoughts-types.d.ts +57 -0
  25. package/dist/types/new/thoughts-types.js +18 -0
  26. package/dist/types/new/user-types.d.ts +283 -0
  27. package/dist/types/new/user-types.js +46 -0
  28. package/dist/types/old/api/account/get-user-types.d.ts +5 -0
  29. package/dist/types/old/api/account/get-user-types.js +2 -0
  30. package/dist/types/old/api/account/index.d.ts +2 -0
  31. package/dist/types/old/api/account/index.js +18 -0
  32. package/dist/types/old/api/account/update-user-types.d.ts +128 -0
  33. package/dist/types/old/api/account/update-user-types.js +8 -0
  34. package/dist/types/old/api/auth/create-account-types.d.ts +24 -0
  35. package/dist/types/old/api/auth/create-account-types.js +10 -0
  36. package/dist/types/old/api/auth/index.d.ts +5 -0
  37. package/dist/types/old/api/auth/index.js +21 -0
  38. package/dist/types/old/api/auth/refresh-auth-types.d.ts +15 -0
  39. package/dist/types/old/api/auth/refresh-auth-types.js +7 -0
  40. package/dist/types/old/api/auth/resend-verification-types.d.ts +3 -0
  41. package/dist/types/old/api/auth/resend-verification-types.js +2 -0
  42. package/dist/types/old/api/auth/sign-in-types.d.ts +19 -0
  43. package/dist/types/old/api/auth/sign-in-types.js +8 -0
  44. package/dist/types/old/api/auth/verify-email-types.d.ts +3 -0
  45. package/dist/types/old/api/auth/verify-email-types.js +2 -0
  46. package/dist/types/old/api/habits/create-habit-entry-types.d.ts +19 -0
  47. package/dist/types/old/api/habits/create-habit-entry-types.js +10 -0
  48. package/dist/types/old/api/habits/create-habit-types.d.ts +26 -0
  49. package/dist/types/old/api/habits/create-habit-types.js +12 -0
  50. package/dist/types/old/api/habits/delete-habit-entry-types.d.ts +5 -0
  51. package/dist/types/old/api/habits/delete-habit-entry-types.js +2 -0
  52. package/dist/types/old/api/habits/delete-habit-types.d.ts +3 -0
  53. package/dist/types/old/api/habits/delete-habit-types.js +2 -0
  54. package/dist/types/old/api/habits/get-habits-types.d.ts +5 -0
  55. package/dist/types/old/api/habits/get-habits-types.js +2 -0
  56. package/dist/types/old/api/habits/index.d.ts +6 -0
  57. package/dist/types/old/api/habits/index.js +22 -0
  58. package/dist/types/old/api/habits/update-habit-types.d.ts +26 -0
  59. package/dist/types/old/api/habits/update-habit-types.js +12 -0
  60. package/dist/types/old/api/index.d.ts +9 -0
  61. package/dist/types/old/api/index.js +25 -0
  62. package/dist/types/old/api/items/complete-item-types.d.ts +14 -0
  63. package/dist/types/old/api/items/complete-item-types.js +7 -0
  64. package/dist/types/old/api/items/create-item-types.d.ts +29 -0
  65. package/dist/types/old/api/items/create-item-types.js +12 -0
  66. package/dist/types/old/api/items/delete-item-types.d.ts +3 -0
  67. package/dist/types/old/api/items/delete-item-types.js +2 -0
  68. package/dist/types/old/api/items/get-items-types.d.ts +5 -0
  69. package/dist/types/old/api/items/get-items-types.js +2 -0
  70. package/dist/types/old/api/items/index.d.ts +5 -0
  71. package/dist/types/old/api/items/index.js +21 -0
  72. package/dist/types/old/api/items/update-item-types.d.ts +29 -0
  73. package/dist/types/old/api/items/update-item-types.js +12 -0
  74. package/dist/types/old/api/lists/complete-list-item-types.d.ts +14 -0
  75. package/dist/types/old/api/lists/complete-list-item-types.js +7 -0
  76. package/dist/types/old/api/lists/create-list-item-types.d.ts +22 -0
  77. package/dist/types/old/api/lists/create-list-item-types.js +10 -0
  78. package/dist/types/old/api/lists/create-list-types.d.ts +17 -0
  79. package/dist/types/old/api/lists/create-list-types.js +9 -0
  80. package/dist/types/old/api/lists/get-list-item-types.d.ts +5 -0
  81. package/dist/types/old/api/lists/get-list-item-types.js +2 -0
  82. package/dist/types/old/api/lists/get-lists-types.d.ts +5 -0
  83. package/dist/types/old/api/lists/get-lists-types.js +2 -0
  84. package/dist/types/old/api/lists/index.d.ts +7 -0
  85. package/dist/types/old/api/lists/index.js +23 -0
  86. package/dist/types/old/api/lists/update-list-item-types.d.ts +23 -0
  87. package/dist/types/old/api/lists/update-list-item-types.js +11 -0
  88. package/dist/types/old/api/lists/update-list-types.d.ts +17 -0
  89. package/dist/types/old/api/lists/update-list-types.js +9 -0
  90. package/dist/types/old/api/misc/index.d.ts +1 -0
  91. package/dist/types/old/api/misc/index.js +17 -0
  92. package/dist/types/old/api/misc/version-types.d.ts +9 -0
  93. package/dist/types/old/api/misc/version-types.js +2 -0
  94. package/dist/types/old/api/notifications/create-notification-template-types.d.ts +78 -0
  95. package/dist/types/old/api/notifications/create-notification-template-types.js +25 -0
  96. package/dist/types/old/api/notifications/delete-notification-template-types.d.ts +5 -0
  97. package/dist/types/old/api/notifications/delete-notification-template-types.js +6 -0
  98. package/dist/types/old/api/notifications/get-notification-templates-types.d.ts +8 -0
  99. package/dist/types/old/api/notifications/get-notification-templates-types.js +6 -0
  100. package/dist/types/old/api/notifications/index.d.ts +6 -0
  101. package/dist/types/old/api/notifications/index.js +22 -0
  102. package/dist/types/old/api/notifications/preview-notification-template-types.d.ts +29 -0
  103. package/dist/types/old/api/notifications/preview-notification-template-types.js +12 -0
  104. package/dist/types/old/api/notifications/sync-notification-template-types.d.ts +14 -0
  105. package/dist/types/old/api/notifications/sync-notification-template-types.js +8 -0
  106. package/dist/types/old/api/notifications/update-notification-template-types.d.ts +69 -0
  107. package/dist/types/old/api/notifications/update-notification-template-types.js +22 -0
  108. package/dist/types/old/api/people/create-person-note-types.d.ts +19 -0
  109. package/dist/types/old/api/people/create-person-note-types.js +9 -0
  110. package/dist/types/old/api/people/create-person-types.d.ts +35 -0
  111. package/dist/types/old/api/people/create-person-types.js +13 -0
  112. package/dist/types/old/api/people/delete-person-notes-types.d.ts +3 -0
  113. package/dist/types/old/api/people/delete-person-notes-types.js +2 -0
  114. package/dist/types/old/api/people/delete-person-types.d.ts +3 -0
  115. package/dist/types/old/api/people/delete-person-types.js +2 -0
  116. package/dist/types/old/api/people/get-people-types.d.ts +5 -0
  117. package/dist/types/old/api/people/get-people-types.js +2 -0
  118. package/dist/types/old/api/people/get-person-notes-types.d.ts +5 -0
  119. package/dist/types/old/api/people/get-person-notes-types.js +2 -0
  120. package/dist/types/old/api/people/index.d.ts +8 -0
  121. package/dist/types/old/api/people/index.js +24 -0
  122. package/dist/types/old/api/people/update-person-note-types.d.ts +14 -0
  123. package/dist/types/old/api/people/update-person-note-types.js +7 -0
  124. package/dist/types/old/api/people/update-person-types.d.ts +35 -0
  125. package/dist/types/old/api/people/update-person-types.js +13 -0
  126. package/dist/types/old/api/thoughts/create-thought-types.d.ts +14 -0
  127. package/dist/types/old/api/thoughts/create-thought-types.js +7 -0
  128. package/dist/types/old/api/thoughts/delete-thought-types.d.ts +3 -0
  129. package/dist/types/old/api/thoughts/delete-thought-types.js +2 -0
  130. package/dist/types/old/api/thoughts/get-thoughts-types.d.ts +5 -0
  131. package/dist/types/old/api/thoughts/get-thoughts-types.js +2 -0
  132. package/dist/types/old/api/thoughts/index.d.ts +4 -0
  133. package/dist/types/old/api/thoughts/index.js +20 -0
  134. package/dist/types/old/api/thoughts/update-thought-types.d.ts +14 -0
  135. package/dist/types/old/api/thoughts/update-thought-types.js +7 -0
  136. package/dist/types/old/auth-tokens.d.ts +11 -0
  137. package/dist/types/old/auth-tokens.js +2 -0
  138. package/dist/types/old/models/auth-data.d.ts +14 -0
  139. package/dist/types/old/models/auth-data.js +9 -0
  140. package/dist/types/old/models/habit-data.d.ts +48 -0
  141. package/dist/types/old/models/habit-data.js +25 -0
  142. package/dist/types/old/models/index.d.ts +10 -0
  143. package/dist/types/old/models/index.js +26 -0
  144. package/dist/types/old/models/item-data.d.ts +14 -0
  145. package/dist/types/old/models/item-data.js +2 -0
  146. package/dist/types/old/models/list-data.d.ts +23 -0
  147. package/dist/types/old/models/list-data.js +8 -0
  148. package/dist/types/old/models/notifiable.d.ts +42 -0
  149. package/dist/types/old/models/notifiable.js +2 -0
  150. package/dist/types/old/models/notification-template-data.d.ts +224 -0
  151. package/dist/types/old/models/notification-template-data.js +52 -0
  152. package/dist/types/old/models/person-data.d.ts +31 -0
  153. package/dist/types/old/models/person-data.js +2 -0
  154. package/dist/types/old/models/program-config.d.ts +25 -0
  155. package/dist/types/old/models/program-config.js +2 -0
  156. package/dist/types/old/models/thought-data.d.ts +8 -0
  157. package/dist/types/old/models/thought-data.js +2 -0
  158. package/dist/types/old/models/user-data.d.ts +147 -0
  159. package/dist/types/old/models/user-data.js +42 -0
  160. package/dist/utils/index.d.ts +1 -0
  161. package/dist/utils/index.js +1 -0
  162. package/dist/utils/type-helpers.d.ts +4 -0
  163. package/dist/utils/type-helpers.js +19 -0
  164. package/package.json +1 -1
  165. package/src/types/id-types.ts +2 -2
  166. package/src/types/index.ts +4 -3
  167. package/src/types/new/agenda-types.ts +69 -0
  168. package/src/types/new/auth-types.ts +92 -0
  169. package/src/types/new/habits-types.ts +112 -0
  170. package/src/types/new/index.ts +10 -0
  171. package/src/types/new/lists-types.ts +108 -0
  172. package/src/types/new/misc/index.ts +1 -0
  173. package/src/types/new/misc/version-types.ts +15 -0
  174. package/src/types/new/notifications-types.ts +144 -0
  175. package/src/types/new/people-types.ts +110 -0
  176. package/src/types/new/program-config-types.ts +29 -0
  177. package/src/types/new/thoughts-types.ts +44 -0
  178. package/src/types/new/user-types.ts +61 -0
  179. package/src/types/{api → old/api}/account/get-user-types.ts +1 -1
  180. package/src/types/{api → old/api}/account/update-user-types.ts +1 -1
  181. package/src/types/{api → old/api}/auth/create-account-types.ts +1 -1
  182. package/src/types/{api → old/api}/habits/create-habit-entry-types.ts +2 -2
  183. package/src/types/{api → old/api}/habits/create-habit-types.ts +1 -1
  184. package/src/types/{api → old/api}/habits/delete-habit-entry-types.ts +1 -1
  185. package/src/types/{api → old/api}/habits/get-habits-types.ts +1 -1
  186. package/src/types/{api → old/api}/habits/update-habit-types.ts +1 -1
  187. package/src/types/{api → old/api}/items/complete-item-types.ts +1 -1
  188. package/src/types/{api → old/api}/items/create-item-types.ts +1 -1
  189. package/src/types/{api → old/api}/items/get-items-types.ts +1 -1
  190. package/src/types/{api → old/api}/items/update-item-types.ts +1 -1
  191. package/src/types/{api → old/api}/lists/complete-list-item-types.ts +1 -1
  192. package/src/types/{api → old/api}/lists/create-list-item-types.ts +2 -2
  193. package/src/types/{api → old/api}/lists/create-list-types.ts +1 -1
  194. package/src/types/{api → old/api}/lists/get-list-item-types.ts +1 -1
  195. package/src/types/{api → old/api}/lists/get-lists-types.ts +1 -1
  196. package/src/types/{api → old/api}/lists/update-list-item-types.ts +2 -2
  197. package/src/types/{api → old/api}/lists/update-list-types.ts +1 -1
  198. package/src/types/{api → old/api}/notifications/create-notification-template-types.ts +1 -1
  199. package/src/types/{api → old/api}/notifications/get-notification-templates-types.ts +1 -1
  200. package/src/types/{api → old/api}/notifications/sync-notification-template-types.ts +1 -1
  201. package/src/types/{api → old/api}/notifications/update-notification-template-types.ts +1 -1
  202. package/src/types/{api → old/api}/people/create-person-note-types.ts +2 -2
  203. package/src/types/{api → old/api}/people/create-person-types.ts +2 -2
  204. package/src/types/{api → old/api}/people/get-people-types.ts +1 -1
  205. package/src/types/{api → old/api}/people/get-person-notes-types.ts +1 -1
  206. package/src/types/{api → old/api}/people/update-person-note-types.ts +1 -1
  207. package/src/types/{api → old/api}/people/update-person-types.ts +2 -2
  208. package/src/types/{api → old/api}/thoughts/create-thought-types.ts +1 -1
  209. package/src/types/{api → old/api}/thoughts/get-thoughts-types.ts +1 -1
  210. package/src/types/{api → old/api}/thoughts/update-thought-types.ts +1 -1
  211. package/src/types/{models → old/models}/auth-data.ts +1 -1
  212. package/src/types/{models → old/models}/habit-data.ts +2 -2
  213. package/src/types/{models → old/models}/item-data.ts +1 -1
  214. package/src/types/{models → old/models}/list-data.ts +1 -1
  215. package/src/types/{models → old/models}/notification-template-data.ts +1 -1
  216. package/src/types/{models → old/models}/person-data.ts +1 -1
  217. package/src/types/{models → old/models}/thought-data.ts +1 -1
  218. package/src/types/{models → old/models}/user-data.ts +2 -2
  219. package/src/utils/index.ts +2 -1
  220. package/src/utils/type-helpers.ts +19 -0
  221. /package/src/types/{api → old/api}/account/index.ts +0 -0
  222. /package/src/types/{api → old/api}/auth/index.ts +0 -0
  223. /package/src/types/{api → old/api}/auth/refresh-auth-types.ts +0 -0
  224. /package/src/types/{api → old/api}/auth/resend-verification-types.ts +0 -0
  225. /package/src/types/{api → old/api}/auth/sign-in-types.ts +0 -0
  226. /package/src/types/{api → old/api}/auth/verify-email-types.ts +0 -0
  227. /package/src/types/{api → old/api}/habits/delete-habit-types.ts +0 -0
  228. /package/src/types/{api → old/api}/habits/index.ts +0 -0
  229. /package/src/types/{api → old/api}/index.ts +0 -0
  230. /package/src/types/{api → old/api}/items/delete-item-types.ts +0 -0
  231. /package/src/types/{api → old/api}/items/index.ts +0 -0
  232. /package/src/types/{api → old/api}/lists/index.ts +0 -0
  233. /package/src/types/{api → old/api}/misc/index.ts +0 -0
  234. /package/src/types/{api → old/api}/misc/version-types.ts +0 -0
  235. /package/src/types/{api → old/api}/notifications/delete-notification-template-types.ts +0 -0
  236. /package/src/types/{api → old/api}/notifications/index.ts +0 -0
  237. /package/src/types/{api → old/api}/notifications/preview-notification-template-types.ts +0 -0
  238. /package/src/types/{api → old/api}/people/delete-person-notes-types.ts +0 -0
  239. /package/src/types/{api → old/api}/people/delete-person-types.ts +0 -0
  240. /package/src/types/{api → old/api}/people/index.ts +0 -0
  241. /package/src/types/{api → old/api}/thoughts/delete-thought-types.ts +0 -0
  242. /package/src/types/{api → old/api}/thoughts/index.ts +0 -0
  243. /package/src/types/{auth-tokens.ts → old/auth-tokens.ts} +0 -0
  244. /package/src/types/{models → old/models}/index.ts +0 -0
  245. /package/src/types/{models → old/models}/notifiable.ts +0 -0
  246. /package/src/types/{models → old/models}/program-config.ts +0 -0
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.versionResponseSchema = exports.versionQuerySchema = void 0;
4
+ const zod_1 = require("zod");
5
+ exports.versionQuerySchema = zod_1.z.object({
6
+ iOSBuildVersion: zod_1.z.number().optional(),
7
+ androidBuildVersion: zod_1.z.number().optional()
8
+ });
9
+ exports.versionResponseSchema = zod_1.z.object({
10
+ minIOSBuildVersion: zod_1.z.number(),
11
+ minAndroidBuildVersion: zod_1.z.number(),
12
+ updateRequired: zod_1.z.boolean()
13
+ });
@@ -0,0 +1,407 @@
1
+ import { z } from 'zod';
2
+ import { Serialized } from '../../utils';
3
+ export declare const notificationEntityTypeSchema: z.ZodEnum<["agenda", "tasks", "habits", "inbox", "agenda_item", "habit", "agenda_defaults", "habits_defaults"]>;
4
+ export declare const notificationTriggerTypeSchema: z.ZodEnum<["time_based", "event_based", "recurring"]>;
5
+ export declare const notificationTriggerSchema: z.ZodObject<{
6
+ type: z.ZodEnum<["time_based", "event_based", "recurring"]>;
7
+ conditions: z.ZodRecord<z.ZodString, z.ZodAny>;
8
+ timing: z.ZodRecord<z.ZodString, z.ZodAny>;
9
+ }, "strip", z.ZodTypeAny, {
10
+ type: "time_based" | "event_based" | "recurring";
11
+ conditions: Record<string, any>;
12
+ timing: Record<string, any>;
13
+ }, {
14
+ type: "time_based" | "event_based" | "recurring";
15
+ conditions: Record<string, any>;
16
+ timing: Record<string, any>;
17
+ }>;
18
+ export declare const notificationContentSchema: z.ZodObject<{
19
+ title: z.ZodString;
20
+ body: z.ZodString;
21
+ variables: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
22
+ }, "strip", z.ZodTypeAny, {
23
+ title: string;
24
+ body: string;
25
+ variables?: Record<string, string> | undefined;
26
+ }, {
27
+ title: string;
28
+ body: string;
29
+ variables?: Record<string, string> | undefined;
30
+ }>;
31
+ export declare const notificationTemplateSchema: z.ZodObject<{
32
+ _id: z.ZodEffects<z.ZodString, import("../id-types").NotificationTemplateId, string>;
33
+ userId: z.ZodEffects<z.ZodString, import("../id-types").UserId, string>;
34
+ entityType: z.ZodEnum<["agenda", "tasks", "habits", "inbox", "agenda_item", "habit", "agenda_defaults", "habits_defaults"]>;
35
+ entityId: z.ZodOptional<z.ZodString>;
36
+ name: z.ZodString;
37
+ description: z.ZodOptional<z.ZodString>;
38
+ trigger: z.ZodObject<{
39
+ type: z.ZodEnum<["time_based", "event_based", "recurring"]>;
40
+ conditions: z.ZodRecord<z.ZodString, z.ZodAny>;
41
+ timing: z.ZodRecord<z.ZodString, z.ZodAny>;
42
+ }, "strip", z.ZodTypeAny, {
43
+ type: "time_based" | "event_based" | "recurring";
44
+ conditions: Record<string, any>;
45
+ timing: Record<string, any>;
46
+ }, {
47
+ type: "time_based" | "event_based" | "recurring";
48
+ conditions: Record<string, any>;
49
+ timing: Record<string, any>;
50
+ }>;
51
+ content: z.ZodObject<{
52
+ title: z.ZodString;
53
+ body: z.ZodString;
54
+ variables: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
55
+ }, "strip", z.ZodTypeAny, {
56
+ title: string;
57
+ body: string;
58
+ variables?: Record<string, string> | undefined;
59
+ }, {
60
+ title: string;
61
+ body: string;
62
+ variables?: Record<string, string> | undefined;
63
+ }>;
64
+ active: z.ZodBoolean;
65
+ inheritedFrom: z.ZodOptional<z.ZodEffects<z.ZodString, import("../id-types").NotificationTemplateId, string>>;
66
+ customized: z.ZodBoolean;
67
+ createdAt: z.ZodDate;
68
+ updatedAt: z.ZodDate;
69
+ }, "strip", z.ZodTypeAny, {
70
+ _id: string & {
71
+ readonly __brand: "NotificationTemplateId";
72
+ };
73
+ createdAt: Date;
74
+ updatedAt: Date;
75
+ userId: string & {
76
+ readonly __brand: "UserId";
77
+ };
78
+ name: string;
79
+ content: {
80
+ title: string;
81
+ body: string;
82
+ variables?: Record<string, string> | undefined;
83
+ };
84
+ entityType: "agenda" | "inbox" | "habits" | "tasks" | "agenda_item" | "habit" | "agenda_defaults" | "habits_defaults";
85
+ trigger: {
86
+ type: "time_based" | "event_based" | "recurring";
87
+ conditions: Record<string, any>;
88
+ timing: Record<string, any>;
89
+ };
90
+ active: boolean;
91
+ customized: boolean;
92
+ description?: string | undefined;
93
+ entityId?: string | undefined;
94
+ inheritedFrom?: import("../id-types").NotificationTemplateId | undefined;
95
+ }, {
96
+ _id: string;
97
+ createdAt: Date;
98
+ updatedAt: Date;
99
+ userId: string;
100
+ name: string;
101
+ content: {
102
+ title: string;
103
+ body: string;
104
+ variables?: Record<string, string> | undefined;
105
+ };
106
+ entityType: "agenda" | "inbox" | "habits" | "tasks" | "agenda_item" | "habit" | "agenda_defaults" | "habits_defaults";
107
+ trigger: {
108
+ type: "time_based" | "event_based" | "recurring";
109
+ conditions: Record<string, any>;
110
+ timing: Record<string, any>;
111
+ };
112
+ active: boolean;
113
+ customized: boolean;
114
+ description?: string | undefined;
115
+ entityId?: string | undefined;
116
+ inheritedFrom?: string | undefined;
117
+ }>;
118
+ export declare const createNotificationTemplateSchema: z.ZodObject<Omit<{
119
+ _id: z.ZodEffects<z.ZodString, import("../id-types").NotificationTemplateId, string>;
120
+ userId: z.ZodEffects<z.ZodString, import("../id-types").UserId, string>;
121
+ entityType: z.ZodEnum<["agenda", "tasks", "habits", "inbox", "agenda_item", "habit", "agenda_defaults", "habits_defaults"]>;
122
+ entityId: z.ZodOptional<z.ZodString>;
123
+ name: z.ZodString;
124
+ description: z.ZodOptional<z.ZodString>;
125
+ trigger: z.ZodObject<{
126
+ type: z.ZodEnum<["time_based", "event_based", "recurring"]>;
127
+ conditions: z.ZodRecord<z.ZodString, z.ZodAny>;
128
+ timing: z.ZodRecord<z.ZodString, z.ZodAny>;
129
+ }, "strip", z.ZodTypeAny, {
130
+ type: "time_based" | "event_based" | "recurring";
131
+ conditions: Record<string, any>;
132
+ timing: Record<string, any>;
133
+ }, {
134
+ type: "time_based" | "event_based" | "recurring";
135
+ conditions: Record<string, any>;
136
+ timing: Record<string, any>;
137
+ }>;
138
+ content: z.ZodObject<{
139
+ title: z.ZodString;
140
+ body: z.ZodString;
141
+ variables: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
142
+ }, "strip", z.ZodTypeAny, {
143
+ title: string;
144
+ body: string;
145
+ variables?: Record<string, string> | undefined;
146
+ }, {
147
+ title: string;
148
+ body: string;
149
+ variables?: Record<string, string> | undefined;
150
+ }>;
151
+ active: z.ZodBoolean;
152
+ inheritedFrom: z.ZodOptional<z.ZodEffects<z.ZodString, import("../id-types").NotificationTemplateId, string>>;
153
+ customized: z.ZodBoolean;
154
+ createdAt: z.ZodDate;
155
+ updatedAt: z.ZodDate;
156
+ }, "_id" | "createdAt" | "updatedAt">, "strip", z.ZodTypeAny, {
157
+ userId: string & {
158
+ readonly __brand: "UserId";
159
+ };
160
+ name: string;
161
+ content: {
162
+ title: string;
163
+ body: string;
164
+ variables?: Record<string, string> | undefined;
165
+ };
166
+ entityType: "agenda" | "inbox" | "habits" | "tasks" | "agenda_item" | "habit" | "agenda_defaults" | "habits_defaults";
167
+ trigger: {
168
+ type: "time_based" | "event_based" | "recurring";
169
+ conditions: Record<string, any>;
170
+ timing: Record<string, any>;
171
+ };
172
+ active: boolean;
173
+ customized: boolean;
174
+ description?: string | undefined;
175
+ entityId?: string | undefined;
176
+ inheritedFrom?: import("../id-types").NotificationTemplateId | undefined;
177
+ }, {
178
+ userId: string;
179
+ name: string;
180
+ content: {
181
+ title: string;
182
+ body: string;
183
+ variables?: Record<string, string> | undefined;
184
+ };
185
+ entityType: "agenda" | "inbox" | "habits" | "tasks" | "agenda_item" | "habit" | "agenda_defaults" | "habits_defaults";
186
+ trigger: {
187
+ type: "time_based" | "event_based" | "recurring";
188
+ conditions: Record<string, any>;
189
+ timing: Record<string, any>;
190
+ };
191
+ active: boolean;
192
+ customized: boolean;
193
+ description?: string | undefined;
194
+ entityId?: string | undefined;
195
+ inheritedFrom?: string | undefined;
196
+ }>;
197
+ export declare const entitySyncStateSchema: z.ZodObject<{
198
+ userId: z.ZodEffects<z.ZodString, import("../id-types").UserId, string>;
199
+ entityType: z.ZodEnum<["agenda", "tasks", "habits", "inbox", "agenda_item", "habit", "agenda_defaults", "habits_defaults"]>;
200
+ entityId: z.ZodString;
201
+ synced: z.ZodBoolean;
202
+ updatedAt: z.ZodDate;
203
+ }, "strip", z.ZodTypeAny, {
204
+ updatedAt: Date;
205
+ userId: string & {
206
+ readonly __brand: "UserId";
207
+ };
208
+ entityType: "agenda" | "inbox" | "habits" | "tasks" | "agenda_item" | "habit" | "agenda_defaults" | "habits_defaults";
209
+ entityId: string;
210
+ synced: boolean;
211
+ }, {
212
+ updatedAt: Date;
213
+ userId: string;
214
+ entityType: "agenda" | "inbox" | "habits" | "tasks" | "agenda_item" | "habit" | "agenda_defaults" | "habits_defaults";
215
+ entityId: string;
216
+ synced: boolean;
217
+ }>;
218
+ export declare const createNotificationTemplateRequestSchema: z.ZodObject<{
219
+ entityType: z.ZodEnum<["agenda", "tasks", "habits", "inbox", "agenda_item", "habit", "agenda_defaults", "habits_defaults"]>;
220
+ entityId: z.ZodOptional<z.ZodString>;
221
+ name: z.ZodString;
222
+ description: z.ZodOptional<z.ZodString>;
223
+ trigger: z.ZodObject<{
224
+ type: z.ZodEnum<["time_based", "event_based", "recurring"]>;
225
+ conditions: z.ZodRecord<z.ZodString, z.ZodAny>;
226
+ timing: z.ZodRecord<z.ZodString, z.ZodAny>;
227
+ }, "strip", z.ZodTypeAny, {
228
+ type: "time_based" | "event_based" | "recurring";
229
+ conditions: Record<string, any>;
230
+ timing: Record<string, any>;
231
+ }, {
232
+ type: "time_based" | "event_based" | "recurring";
233
+ conditions: Record<string, any>;
234
+ timing: Record<string, any>;
235
+ }>;
236
+ content: z.ZodObject<{
237
+ title: z.ZodString;
238
+ body: z.ZodString;
239
+ variables: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
240
+ }, "strip", z.ZodTypeAny, {
241
+ title: string;
242
+ body: string;
243
+ variables?: Record<string, string> | undefined;
244
+ }, {
245
+ title: string;
246
+ body: string;
247
+ variables?: Record<string, string> | undefined;
248
+ }>;
249
+ active: z.ZodDefault<z.ZodBoolean>;
250
+ inheritedFrom: z.ZodOptional<z.ZodString>;
251
+ customized: z.ZodDefault<z.ZodBoolean>;
252
+ }, "strip", z.ZodTypeAny, {
253
+ name: string;
254
+ content: {
255
+ title: string;
256
+ body: string;
257
+ variables?: Record<string, string> | undefined;
258
+ };
259
+ entityType: "agenda" | "inbox" | "habits" | "tasks" | "agenda_item" | "habit" | "agenda_defaults" | "habits_defaults";
260
+ trigger: {
261
+ type: "time_based" | "event_based" | "recurring";
262
+ conditions: Record<string, any>;
263
+ timing: Record<string, any>;
264
+ };
265
+ active: boolean;
266
+ customized: boolean;
267
+ description?: string | undefined;
268
+ entityId?: string | undefined;
269
+ inheritedFrom?: string | undefined;
270
+ }, {
271
+ name: string;
272
+ content: {
273
+ title: string;
274
+ body: string;
275
+ variables?: Record<string, string> | undefined;
276
+ };
277
+ entityType: "agenda" | "inbox" | "habits" | "tasks" | "agenda_item" | "habit" | "agenda_defaults" | "habits_defaults";
278
+ trigger: {
279
+ type: "time_based" | "event_based" | "recurring";
280
+ conditions: Record<string, any>;
281
+ timing: Record<string, any>;
282
+ };
283
+ description?: string | undefined;
284
+ entityId?: string | undefined;
285
+ active?: boolean | undefined;
286
+ inheritedFrom?: string | undefined;
287
+ customized?: boolean | undefined;
288
+ }>;
289
+ export declare const updateNotificationTemplateRequestSchema: z.ZodObject<{
290
+ name: z.ZodOptional<z.ZodString>;
291
+ description: z.ZodOptional<z.ZodString>;
292
+ trigger: z.ZodOptional<z.ZodObject<{
293
+ type: z.ZodEnum<["time_based", "event_based", "recurring"]>;
294
+ conditions: z.ZodRecord<z.ZodString, z.ZodAny>;
295
+ timing: z.ZodRecord<z.ZodString, z.ZodAny>;
296
+ }, "strip", z.ZodTypeAny, {
297
+ type: "time_based" | "event_based" | "recurring";
298
+ conditions: Record<string, any>;
299
+ timing: Record<string, any>;
300
+ }, {
301
+ type: "time_based" | "event_based" | "recurring";
302
+ conditions: Record<string, any>;
303
+ timing: Record<string, any>;
304
+ }>>;
305
+ content: z.ZodOptional<z.ZodObject<{
306
+ title: z.ZodString;
307
+ body: z.ZodString;
308
+ variables: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
309
+ }, "strip", z.ZodTypeAny, {
310
+ title: string;
311
+ body: string;
312
+ variables?: Record<string, string> | undefined;
313
+ }, {
314
+ title: string;
315
+ body: string;
316
+ variables?: Record<string, string> | undefined;
317
+ }>>;
318
+ active: z.ZodOptional<z.ZodBoolean>;
319
+ customized: z.ZodOptional<z.ZodBoolean>;
320
+ }, "strip", z.ZodTypeAny, {
321
+ name?: string | undefined;
322
+ description?: string | undefined;
323
+ content?: {
324
+ title: string;
325
+ body: string;
326
+ variables?: Record<string, string> | undefined;
327
+ } | undefined;
328
+ trigger?: {
329
+ type: "time_based" | "event_based" | "recurring";
330
+ conditions: Record<string, any>;
331
+ timing: Record<string, any>;
332
+ } | undefined;
333
+ active?: boolean | undefined;
334
+ customized?: boolean | undefined;
335
+ }, {
336
+ name?: string | undefined;
337
+ description?: string | undefined;
338
+ content?: {
339
+ title: string;
340
+ body: string;
341
+ variables?: Record<string, string> | undefined;
342
+ } | undefined;
343
+ trigger?: {
344
+ type: "time_based" | "event_based" | "recurring";
345
+ conditions: Record<string, any>;
346
+ timing: Record<string, any>;
347
+ } | undefined;
348
+ active?: boolean | undefined;
349
+ customized?: boolean | undefined;
350
+ }>;
351
+ export declare const syncNotificationTemplateRequestSchema: z.ZodObject<{
352
+ entityType: z.ZodEnum<["agenda", "tasks", "habits", "inbox", "agenda_item", "habit", "agenda_defaults", "habits_defaults"]>;
353
+ entityId: z.ZodString;
354
+ }, "strip", z.ZodTypeAny, {
355
+ entityType: "agenda" | "inbox" | "habits" | "tasks" | "agenda_item" | "habit" | "agenda_defaults" | "habits_defaults";
356
+ entityId: string;
357
+ }, {
358
+ entityType: "agenda" | "inbox" | "habits" | "tasks" | "agenda_item" | "habit" | "agenda_defaults" | "habits_defaults";
359
+ entityId: string;
360
+ }>;
361
+ export declare const previewNotificationTemplateRequestSchema: z.ZodObject<{
362
+ templateId: z.ZodEffects<z.ZodString, import("../id-types").NotificationTemplateId, string>;
363
+ entityData: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodAny>>;
364
+ }, "strip", z.ZodTypeAny, {
365
+ templateId: string & {
366
+ readonly __brand: "NotificationTemplateId";
367
+ };
368
+ entityData?: Record<string, any> | undefined;
369
+ }, {
370
+ templateId: string;
371
+ entityData?: Record<string, any> | undefined;
372
+ }>;
373
+ export type NotificationEntityType = z.infer<typeof notificationEntityTypeSchema>;
374
+ export type NotificationTriggerType = z.infer<typeof notificationTriggerTypeSchema>;
375
+ export type NotificationTrigger = z.infer<typeof notificationTriggerSchema>;
376
+ export type NotificationContent = z.infer<typeof notificationContentSchema>;
377
+ export type NotificationTemplateData = z.infer<typeof notificationTemplateSchema>;
378
+ export type CreateNotificationTemplateData = z.infer<typeof createNotificationTemplateSchema>;
379
+ export type EntitySyncState = z.infer<typeof entitySyncStateSchema>;
380
+ export type CreateNotificationTemplateRequest = z.infer<typeof createNotificationTemplateRequestSchema>;
381
+ export type UpdateNotificationTemplateRequest = z.infer<typeof updateNotificationTemplateRequestSchema>;
382
+ export type SyncNotificationTemplateRequest = z.infer<typeof syncNotificationTemplateRequestSchema>;
383
+ export type PreviewNotificationTemplateRequest = z.infer<typeof previewNotificationTemplateRequestSchema>;
384
+ export interface CreateNotificationTemplateResponse {
385
+ template: Serialized<NotificationTemplateData>;
386
+ }
387
+ export interface GetNotificationTemplatesResponse {
388
+ templates: Serialized<NotificationTemplateData>[];
389
+ }
390
+ export interface GetNotificationTemplateResponse {
391
+ template: Serialized<NotificationTemplateData>;
392
+ }
393
+ export interface UpdateNotificationTemplateResponse {
394
+ template: Serialized<NotificationTemplateData>;
395
+ }
396
+ export interface DeleteNotificationTemplateResponse {
397
+ deleted: boolean;
398
+ }
399
+ export interface SyncNotificationTemplateResponse {
400
+ synced: boolean;
401
+ }
402
+ export interface PreviewNotificationTemplateResponse {
403
+ preview: {
404
+ title: string;
405
+ body: string;
406
+ };
407
+ }
@@ -0,0 +1,91 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.previewNotificationTemplateRequestSchema = exports.syncNotificationTemplateRequestSchema = exports.updateNotificationTemplateRequestSchema = exports.createNotificationTemplateRequestSchema = exports.entitySyncStateSchema = exports.createNotificationTemplateSchema = exports.notificationTemplateSchema = exports.notificationContentSchema = exports.notificationTriggerSchema = exports.notificationTriggerTypeSchema = exports.notificationEntityTypeSchema = void 0;
4
+ const zod_1 = require("zod");
5
+ const id_types_1 = require("../id-types");
6
+ exports.notificationEntityTypeSchema = zod_1.z.enum([
7
+ 'agenda', 'tasks', 'habits', 'inbox',
8
+ 'agenda_item', 'habit',
9
+ 'agenda_defaults', 'habits_defaults'
10
+ ]);
11
+ exports.notificationTriggerTypeSchema = zod_1.z.enum(['time_based', 'event_based', 'recurring']);
12
+ exports.notificationTriggerSchema = zod_1.z.object({
13
+ type: exports.notificationTriggerTypeSchema,
14
+ conditions: zod_1.z.record(zod_1.z.any()),
15
+ timing: zod_1.z.record(zod_1.z.any())
16
+ });
17
+ exports.notificationContentSchema = zod_1.z.object({
18
+ title: zod_1.z.string(),
19
+ body: zod_1.z.string(),
20
+ variables: zod_1.z.record(zod_1.z.string()).optional()
21
+ });
22
+ exports.notificationTemplateSchema = zod_1.z.object({
23
+ _id: id_types_1.notificationTemplateIdSchema,
24
+ userId: id_types_1.userIdSchema,
25
+ entityType: exports.notificationEntityTypeSchema,
26
+ entityId: zod_1.z.string().optional(),
27
+ name: zod_1.z.string(),
28
+ description: zod_1.z.string().optional(),
29
+ trigger: exports.notificationTriggerSchema,
30
+ content: exports.notificationContentSchema,
31
+ active: zod_1.z.boolean(),
32
+ inheritedFrom: id_types_1.notificationTemplateIdSchema.optional(),
33
+ customized: zod_1.z.boolean(),
34
+ createdAt: zod_1.z.date(),
35
+ updatedAt: zod_1.z.date()
36
+ });
37
+ exports.createNotificationTemplateSchema = exports.notificationTemplateSchema.omit({
38
+ _id: true,
39
+ createdAt: true,
40
+ updatedAt: true
41
+ });
42
+ exports.entitySyncStateSchema = zod_1.z.object({
43
+ userId: id_types_1.userIdSchema,
44
+ entityType: exports.notificationEntityTypeSchema,
45
+ entityId: zod_1.z.string(),
46
+ synced: zod_1.z.boolean(),
47
+ updatedAt: zod_1.z.date()
48
+ });
49
+ exports.createNotificationTemplateRequestSchema = zod_1.z.object({
50
+ entityType: exports.notificationEntityTypeSchema,
51
+ entityId: zod_1.z.string().optional(),
52
+ name: zod_1.z.string().min(1).max(100),
53
+ description: zod_1.z.string().max(500).optional(),
54
+ trigger: zod_1.z.object({
55
+ type: exports.notificationTriggerTypeSchema,
56
+ conditions: zod_1.z.record(zod_1.z.any()),
57
+ timing: zod_1.z.record(zod_1.z.any())
58
+ }),
59
+ content: zod_1.z.object({
60
+ title: zod_1.z.string().min(1).max(200),
61
+ body: zod_1.z.string().min(1).max(1000),
62
+ variables: zod_1.z.record(zod_1.z.string()).optional()
63
+ }),
64
+ active: zod_1.z.boolean().default(true),
65
+ inheritedFrom: zod_1.z.string().optional(),
66
+ customized: zod_1.z.boolean().default(false)
67
+ });
68
+ exports.updateNotificationTemplateRequestSchema = zod_1.z.object({
69
+ name: zod_1.z.string().optional(),
70
+ description: zod_1.z.string().optional(),
71
+ trigger: zod_1.z.object({
72
+ type: exports.notificationTriggerTypeSchema,
73
+ conditions: zod_1.z.record(zod_1.z.any()),
74
+ timing: zod_1.z.record(zod_1.z.any())
75
+ }).optional(),
76
+ content: zod_1.z.object({
77
+ title: zod_1.z.string(),
78
+ body: zod_1.z.string(),
79
+ variables: zod_1.z.record(zod_1.z.string()).optional()
80
+ }).optional(),
81
+ active: zod_1.z.boolean().optional(),
82
+ customized: zod_1.z.boolean().optional()
83
+ });
84
+ exports.syncNotificationTemplateRequestSchema = zod_1.z.object({
85
+ entityType: exports.notificationEntityTypeSchema,
86
+ entityId: zod_1.z.string()
87
+ });
88
+ exports.previewNotificationTemplateRequestSchema = zod_1.z.object({
89
+ templateId: id_types_1.notificationTemplateIdSchema,
90
+ entityData: zod_1.z.record(zod_1.z.any()).optional()
91
+ });