@aibrains/shared-types 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (158) hide show
  1. package/README.md +170 -0
  2. package/dist/index.d.ts +48 -0
  3. package/dist/index.d.ts.map +1 -0
  4. package/dist/index.js +74 -0
  5. package/dist/index.js.map +1 -0
  6. package/dist/mappers/edfi/calendar.mapper.d.ts +158 -0
  7. package/dist/mappers/edfi/calendar.mapper.d.ts.map +1 -0
  8. package/dist/mappers/edfi/calendar.mapper.js +235 -0
  9. package/dist/mappers/edfi/calendar.mapper.js.map +1 -0
  10. package/dist/mappers/edfi/credential.mapper.d.ts +50 -0
  11. package/dist/mappers/edfi/credential.mapper.d.ts.map +1 -0
  12. package/dist/mappers/edfi/credential.mapper.js +123 -0
  13. package/dist/mappers/edfi/credential.mapper.js.map +1 -0
  14. package/dist/mappers/edfi/index.d.ts +10 -0
  15. package/dist/mappers/edfi/index.d.ts.map +1 -0
  16. package/dist/mappers/edfi/index.js +26 -0
  17. package/dist/mappers/edfi/index.js.map +1 -0
  18. package/dist/mappers/edfi/staff.mapper.d.ts +96 -0
  19. package/dist/mappers/edfi/staff.mapper.d.ts.map +1 -0
  20. package/dist/mappers/edfi/staff.mapper.js +138 -0
  21. package/dist/mappers/edfi/staff.mapper.js.map +1 -0
  22. package/dist/mappers/index.d.ts +7 -0
  23. package/dist/mappers/index.d.ts.map +1 -0
  24. package/dist/mappers/index.js +23 -0
  25. package/dist/mappers/index.js.map +1 -0
  26. package/dist/schemas/academics/assignment.schema.d.ts +1463 -0
  27. package/dist/schemas/academics/assignment.schema.d.ts.map +1 -0
  28. package/dist/schemas/academics/assignment.schema.js +195 -0
  29. package/dist/schemas/academics/assignment.schema.js.map +1 -0
  30. package/dist/schemas/academics/attendance.schema.d.ts +762 -0
  31. package/dist/schemas/academics/attendance.schema.d.ts.map +1 -0
  32. package/dist/schemas/academics/attendance.schema.js +250 -0
  33. package/dist/schemas/academics/attendance.schema.js.map +1 -0
  34. package/dist/schemas/academics/classroom.schema.d.ts +742 -0
  35. package/dist/schemas/academics/classroom.schema.d.ts.map +1 -0
  36. package/dist/schemas/academics/classroom.schema.js +164 -0
  37. package/dist/schemas/academics/classroom.schema.js.map +1 -0
  38. package/dist/schemas/academics/course-section.schema.d.ts +388 -0
  39. package/dist/schemas/academics/course-section.schema.d.ts.map +1 -0
  40. package/dist/schemas/academics/course-section.schema.js +128 -0
  41. package/dist/schemas/academics/course-section.schema.js.map +1 -0
  42. package/dist/schemas/academics/course.schema.d.ts +778 -0
  43. package/dist/schemas/academics/course.schema.d.ts.map +1 -0
  44. package/dist/schemas/academics/course.schema.js +207 -0
  45. package/dist/schemas/academics/course.schema.js.map +1 -0
  46. package/dist/schemas/academics/grade.schema.d.ts +848 -0
  47. package/dist/schemas/academics/grade.schema.d.ts.map +1 -0
  48. package/dist/schemas/academics/grade.schema.js +251 -0
  49. package/dist/schemas/academics/grade.schema.js.map +1 -0
  50. package/dist/schemas/academics/index.d.ts +13 -0
  51. package/dist/schemas/academics/index.d.ts.map +1 -0
  52. package/dist/schemas/academics/index.js +29 -0
  53. package/dist/schemas/academics/index.js.map +1 -0
  54. package/dist/schemas/academics/student.schema.d.ts +2891 -0
  55. package/dist/schemas/academics/student.schema.d.ts.map +1 -0
  56. package/dist/schemas/academics/student.schema.js +249 -0
  57. package/dist/schemas/academics/student.schema.js.map +1 -0
  58. package/dist/schemas/common.d.ts +183 -0
  59. package/dist/schemas/common.d.ts.map +1 -0
  60. package/dist/schemas/common.js +126 -0
  61. package/dist/schemas/common.js.map +1 -0
  62. package/dist/schemas/enrollment/enrollment.schema.d.ts +2799 -0
  63. package/dist/schemas/enrollment/enrollment.schema.d.ts.map +1 -0
  64. package/dist/schemas/enrollment/enrollment.schema.js +435 -0
  65. package/dist/schemas/enrollment/enrollment.schema.js.map +1 -0
  66. package/dist/schemas/enrollment/index.d.ts +7 -0
  67. package/dist/schemas/enrollment/index.d.ts.map +1 -0
  68. package/dist/schemas/enrollment/index.js +23 -0
  69. package/dist/schemas/enrollment/index.js.map +1 -0
  70. package/dist/schemas/identity/academic-year.schema.d.ts +546 -0
  71. package/dist/schemas/identity/academic-year.schema.d.ts.map +1 -0
  72. package/dist/schemas/identity/academic-year.schema.js +137 -0
  73. package/dist/schemas/identity/academic-year.schema.js.map +1 -0
  74. package/dist/schemas/identity/auth.schema.d.ts +670 -0
  75. package/dist/schemas/identity/auth.schema.d.ts.map +1 -0
  76. package/dist/schemas/identity/auth.schema.js +126 -0
  77. package/dist/schemas/identity/auth.schema.js.map +1 -0
  78. package/dist/schemas/identity/bell-schedule.schema.d.ts +630 -0
  79. package/dist/schemas/identity/bell-schedule.schema.d.ts.map +1 -0
  80. package/dist/schemas/identity/bell-schedule.schema.js +143 -0
  81. package/dist/schemas/identity/bell-schedule.schema.js.map +1 -0
  82. package/dist/schemas/identity/calendar-date.schema.d.ts +830 -0
  83. package/dist/schemas/identity/calendar-date.schema.d.ts.map +1 -0
  84. package/dist/schemas/identity/calendar-date.schema.js +208 -0
  85. package/dist/schemas/identity/calendar-date.schema.js.map +1 -0
  86. package/dist/schemas/identity/credential.schema.d.ts +472 -0
  87. package/dist/schemas/identity/credential.schema.d.ts.map +1 -0
  88. package/dist/schemas/identity/credential.schema.js +200 -0
  89. package/dist/schemas/identity/credential.schema.js.map +1 -0
  90. package/dist/schemas/identity/department.schema.d.ts +567 -0
  91. package/dist/schemas/identity/department.schema.d.ts.map +1 -0
  92. package/dist/schemas/identity/department.schema.js +113 -0
  93. package/dist/schemas/identity/department.schema.js.map +1 -0
  94. package/dist/schemas/identity/index.d.ts +21 -0
  95. package/dist/schemas/identity/index.d.ts.map +1 -0
  96. package/dist/schemas/identity/index.js +39 -0
  97. package/dist/schemas/identity/index.js.map +1 -0
  98. package/dist/schemas/identity/leave.schema.d.ts +725 -0
  99. package/dist/schemas/identity/leave.schema.d.ts.map +1 -0
  100. package/dist/schemas/identity/leave.schema.js +204 -0
  101. package/dist/schemas/identity/leave.schema.js.map +1 -0
  102. package/dist/schemas/identity/role.schema.d.ts +356 -0
  103. package/dist/schemas/identity/role.schema.d.ts.map +1 -0
  104. package/dist/schemas/identity/role.schema.js +124 -0
  105. package/dist/schemas/identity/role.schema.js.map +1 -0
  106. package/dist/schemas/identity/school-year.schema.d.ts +303 -0
  107. package/dist/schemas/identity/school-year.schema.d.ts.map +1 -0
  108. package/dist/schemas/identity/school-year.schema.js +59 -0
  109. package/dist/schemas/identity/school-year.schema.js.map +1 -0
  110. package/dist/schemas/identity/school.schema.d.ts +844 -0
  111. package/dist/schemas/identity/school.schema.d.ts.map +1 -0
  112. package/dist/schemas/identity/school.schema.js +139 -0
  113. package/dist/schemas/identity/school.schema.js.map +1 -0
  114. package/dist/schemas/identity/security.schema.d.ts +422 -0
  115. package/dist/schemas/identity/security.schema.d.ts.map +1 -0
  116. package/dist/schemas/identity/security.schema.js +151 -0
  117. package/dist/schemas/identity/security.schema.js.map +1 -0
  118. package/dist/schemas/identity/session.schema.d.ts +193 -0
  119. package/dist/schemas/identity/session.schema.d.ts.map +1 -0
  120. package/dist/schemas/identity/session.schema.js +59 -0
  121. package/dist/schemas/identity/session.schema.js.map +1 -0
  122. package/dist/schemas/identity/staff.schema.d.ts +1037 -0
  123. package/dist/schemas/identity/staff.schema.d.ts.map +1 -0
  124. package/dist/schemas/identity/staff.schema.js +251 -0
  125. package/dist/schemas/identity/staff.schema.js.map +1 -0
  126. package/dist/schemas/identity/tenant.schema.d.ts +313 -0
  127. package/dist/schemas/identity/tenant.schema.d.ts.map +1 -0
  128. package/dist/schemas/identity/tenant.schema.js +81 -0
  129. package/dist/schemas/identity/tenant.schema.js.map +1 -0
  130. package/dist/schemas/identity/user.schema.d.ts +921 -0
  131. package/dist/schemas/identity/user.schema.d.ts.map +1 -0
  132. package/dist/schemas/identity/user.schema.js +201 -0
  133. package/dist/schemas/identity/user.schema.js.map +1 -0
  134. package/dist/schemas/index.d.ts +10 -0
  135. package/dist/schemas/index.d.ts.map +1 -0
  136. package/dist/schemas/index.js +26 -0
  137. package/dist/schemas/index.js.map +1 -0
  138. package/dist/validators/academic-year.d.ts +90 -0
  139. package/dist/validators/academic-year.d.ts.map +1 -0
  140. package/dist/validators/academic-year.js +190 -0
  141. package/dist/validators/academic-year.js.map +1 -0
  142. package/dist/validators/date-range.d.ts +142 -0
  143. package/dist/validators/date-range.d.ts.map +1 -0
  144. package/dist/validators/date-range.js +170 -0
  145. package/dist/validators/date-range.js.map +1 -0
  146. package/dist/validators/grade-level.d.ts +80 -0
  147. package/dist/validators/grade-level.d.ts.map +1 -0
  148. package/dist/validators/grade-level.js +157 -0
  149. package/dist/validators/grade-level.js.map +1 -0
  150. package/dist/validators/index.d.ts +10 -0
  151. package/dist/validators/index.d.ts.map +1 -0
  152. package/dist/validators/index.js +26 -0
  153. package/dist/validators/index.js.map +1 -0
  154. package/dist/validators/password.d.ts +60 -0
  155. package/dist/validators/password.d.ts.map +1 -0
  156. package/dist/validators/password.js +81 -0
  157. package/dist/validators/password.js.map +1 -0
  158. package/package.json +50 -0
@@ -0,0 +1,921 @@
1
+ /**
2
+ * User Schemas - Identity Service
3
+ *
4
+ * Zod schemas for user management DTOs.
5
+ * Single source of truth for user data shapes used by both frontend and backend.
6
+ */
7
+ import { z } from 'zod';
8
+ export declare const globalRoleSchema: z.ZodEnum<["TenantAdmin", "TenantUser"]>;
9
+ export type GlobalRole = z.infer<typeof globalRoleSchema>;
10
+ export declare const userStatusSchema: z.ZodEnum<["active", "inactive", "pending", "suspended", "locked"]>;
11
+ export type UserStatus = z.infer<typeof userStatusSchema>;
12
+ export declare const userStatusUpdateSchema: z.ZodEnum<["active", "inactive", "suspended"]>;
13
+ export type UserStatusUpdate = z.infer<typeof userStatusUpdateSchema>;
14
+ export declare const userAddressSchema: z.ZodObject<{
15
+ street: z.ZodOptional<z.ZodString>;
16
+ street2: z.ZodOptional<z.ZodString>;
17
+ city: z.ZodOptional<z.ZodString>;
18
+ state: z.ZodOptional<z.ZodString>;
19
+ postalCode: z.ZodOptional<z.ZodString>;
20
+ country: z.ZodOptional<z.ZodString>;
21
+ }, "strip", z.ZodTypeAny, {
22
+ street2?: string | undefined;
23
+ city?: string | undefined;
24
+ state?: string | undefined;
25
+ country?: string | undefined;
26
+ postalCode?: string | undefined;
27
+ street?: string | undefined;
28
+ }, {
29
+ street2?: string | undefined;
30
+ city?: string | undefined;
31
+ state?: string | undefined;
32
+ country?: string | undefined;
33
+ postalCode?: string | undefined;
34
+ street?: string | undefined;
35
+ }>;
36
+ export type UserAddressDto = z.infer<typeof userAddressSchema>;
37
+ export declare const createUserSchema: z.ZodObject<{
38
+ email: z.ZodString;
39
+ firstName: z.ZodString;
40
+ lastName: z.ZodString;
41
+ middleName: z.ZodOptional<z.ZodString>;
42
+ phone: z.ZodOptional<z.ZodString>;
43
+ globalRole: z.ZodOptional<z.ZodDefault<z.ZodEnum<["TenantAdmin", "TenantUser"]>>>;
44
+ temporaryPassword: z.ZodOptional<z.ZodString>;
45
+ schoolId: z.ZodOptional<z.ZodString>;
46
+ staffRole: z.ZodOptional<z.ZodEnum<["teacher", "principal", "vice_principal", "counselor", "librarian", "nurse", "admin_staff", "support_staff", "it_staff", "substitute", "contractor"]>>;
47
+ department: z.ZodOptional<z.ZodString>;
48
+ }, "strip", z.ZodTypeAny, {
49
+ email: string;
50
+ firstName: string;
51
+ lastName: string;
52
+ phone?: string | undefined;
53
+ schoolId?: string | undefined;
54
+ department?: string | undefined;
55
+ middleName?: string | undefined;
56
+ globalRole?: "TenantAdmin" | "TenantUser" | undefined;
57
+ temporaryPassword?: string | undefined;
58
+ staffRole?: "teacher" | "principal" | "vice_principal" | "counselor" | "librarian" | "nurse" | "admin_staff" | "support_staff" | "it_staff" | "substitute" | "contractor" | undefined;
59
+ }, {
60
+ email: string;
61
+ firstName: string;
62
+ lastName: string;
63
+ phone?: string | undefined;
64
+ schoolId?: string | undefined;
65
+ department?: string | undefined;
66
+ middleName?: string | undefined;
67
+ globalRole?: "TenantAdmin" | "TenantUser" | undefined;
68
+ temporaryPassword?: string | undefined;
69
+ staffRole?: "teacher" | "principal" | "vice_principal" | "counselor" | "librarian" | "nurse" | "admin_staff" | "support_staff" | "it_staff" | "substitute" | "contractor" | undefined;
70
+ }>;
71
+ export type CreateUserDto = z.infer<typeof createUserSchema>;
72
+ export declare const updateUserSchema: z.ZodObject<{
73
+ firstName: z.ZodOptional<z.ZodString>;
74
+ lastName: z.ZodOptional<z.ZodString>;
75
+ middleName: z.ZodOptional<z.ZodString>;
76
+ displayName: z.ZodOptional<z.ZodString>;
77
+ phone: z.ZodOptional<z.ZodString>;
78
+ avatarUrl: z.ZodOptional<z.ZodString>;
79
+ address: z.ZodOptional<z.ZodObject<{
80
+ street: z.ZodOptional<z.ZodString>;
81
+ street2: z.ZodOptional<z.ZodString>;
82
+ city: z.ZodOptional<z.ZodString>;
83
+ state: z.ZodOptional<z.ZodString>;
84
+ postalCode: z.ZodOptional<z.ZodString>;
85
+ country: z.ZodOptional<z.ZodString>;
86
+ }, "strip", z.ZodTypeAny, {
87
+ street2?: string | undefined;
88
+ city?: string | undefined;
89
+ state?: string | undefined;
90
+ country?: string | undefined;
91
+ postalCode?: string | undefined;
92
+ street?: string | undefined;
93
+ }, {
94
+ street2?: string | undefined;
95
+ city?: string | undefined;
96
+ state?: string | undefined;
97
+ country?: string | undefined;
98
+ postalCode?: string | undefined;
99
+ street?: string | undefined;
100
+ }>>;
101
+ status: z.ZodOptional<z.ZodEnum<["active", "inactive", "suspended"]>>;
102
+ }, "strip", z.ZodTypeAny, {
103
+ status?: "active" | "inactive" | "suspended" | undefined;
104
+ phone?: string | undefined;
105
+ address?: {
106
+ street2?: string | undefined;
107
+ city?: string | undefined;
108
+ state?: string | undefined;
109
+ country?: string | undefined;
110
+ postalCode?: string | undefined;
111
+ street?: string | undefined;
112
+ } | undefined;
113
+ firstName?: string | undefined;
114
+ middleName?: string | undefined;
115
+ lastName?: string | undefined;
116
+ displayName?: string | undefined;
117
+ avatarUrl?: string | undefined;
118
+ }, {
119
+ status?: "active" | "inactive" | "suspended" | undefined;
120
+ phone?: string | undefined;
121
+ address?: {
122
+ street2?: string | undefined;
123
+ city?: string | undefined;
124
+ state?: string | undefined;
125
+ country?: string | undefined;
126
+ postalCode?: string | undefined;
127
+ street?: string | undefined;
128
+ } | undefined;
129
+ firstName?: string | undefined;
130
+ middleName?: string | undefined;
131
+ lastName?: string | undefined;
132
+ displayName?: string | undefined;
133
+ avatarUrl?: string | undefined;
134
+ }>;
135
+ export type UpdateUserDto = z.infer<typeof updateUserSchema>;
136
+ export declare const userResponseSchema: z.ZodObject<{
137
+ userId: z.ZodString;
138
+ staffId: z.ZodOptional<z.ZodString>;
139
+ email: z.ZodString;
140
+ firstName: z.ZodString;
141
+ lastName: z.ZodString;
142
+ middleName: z.ZodOptional<z.ZodString>;
143
+ displayName: z.ZodOptional<z.ZodString>;
144
+ phone: z.ZodOptional<z.ZodString>;
145
+ avatarUrl: z.ZodOptional<z.ZodString>;
146
+ address: z.ZodOptional<z.ZodObject<{
147
+ street: z.ZodOptional<z.ZodString>;
148
+ street2: z.ZodOptional<z.ZodString>;
149
+ city: z.ZodOptional<z.ZodString>;
150
+ state: z.ZodOptional<z.ZodString>;
151
+ postalCode: z.ZodOptional<z.ZodString>;
152
+ country: z.ZodOptional<z.ZodString>;
153
+ }, "strip", z.ZodTypeAny, {
154
+ street2?: string | undefined;
155
+ city?: string | undefined;
156
+ state?: string | undefined;
157
+ country?: string | undefined;
158
+ postalCode?: string | undefined;
159
+ street?: string | undefined;
160
+ }, {
161
+ street2?: string | undefined;
162
+ city?: string | undefined;
163
+ state?: string | undefined;
164
+ country?: string | undefined;
165
+ postalCode?: string | undefined;
166
+ street?: string | undefined;
167
+ }>>;
168
+ globalRole: z.ZodEnum<["TenantAdmin", "TenantUser"]>;
169
+ status: z.ZodEnum<["active", "inactive", "pending", "suspended", "locked"]>;
170
+ lastLoginAt: z.ZodOptional<z.ZodString>;
171
+ mfaEnabled: z.ZodOptional<z.ZodBoolean>;
172
+ createdAt: z.ZodString;
173
+ updatedAt: z.ZodString;
174
+ }, "strip", z.ZodTypeAny, {
175
+ status: "active" | "inactive" | "suspended" | "pending" | "locked";
176
+ createdAt: string;
177
+ updatedAt: string;
178
+ userId: string;
179
+ email: string;
180
+ firstName: string;
181
+ lastName: string;
182
+ globalRole: "TenantAdmin" | "TenantUser";
183
+ phone?: string | undefined;
184
+ address?: {
185
+ street2?: string | undefined;
186
+ city?: string | undefined;
187
+ state?: string | undefined;
188
+ country?: string | undefined;
189
+ postalCode?: string | undefined;
190
+ street?: string | undefined;
191
+ } | undefined;
192
+ middleName?: string | undefined;
193
+ staffId?: string | undefined;
194
+ displayName?: string | undefined;
195
+ avatarUrl?: string | undefined;
196
+ lastLoginAt?: string | undefined;
197
+ mfaEnabled?: boolean | undefined;
198
+ }, {
199
+ status: "active" | "inactive" | "suspended" | "pending" | "locked";
200
+ createdAt: string;
201
+ updatedAt: string;
202
+ userId: string;
203
+ email: string;
204
+ firstName: string;
205
+ lastName: string;
206
+ globalRole: "TenantAdmin" | "TenantUser";
207
+ phone?: string | undefined;
208
+ address?: {
209
+ street2?: string | undefined;
210
+ city?: string | undefined;
211
+ state?: string | undefined;
212
+ country?: string | undefined;
213
+ postalCode?: string | undefined;
214
+ street?: string | undefined;
215
+ } | undefined;
216
+ middleName?: string | undefined;
217
+ staffId?: string | undefined;
218
+ displayName?: string | undefined;
219
+ avatarUrl?: string | undefined;
220
+ lastLoginAt?: string | undefined;
221
+ mfaEnabled?: boolean | undefined;
222
+ }>;
223
+ export type UserResponseDto = z.infer<typeof userResponseSchema>;
224
+ export declare const userListResponseSchema: z.ZodObject<{
225
+ items: z.ZodArray<z.ZodObject<{
226
+ userId: z.ZodString;
227
+ staffId: z.ZodOptional<z.ZodString>;
228
+ email: z.ZodString;
229
+ firstName: z.ZodString;
230
+ lastName: z.ZodString;
231
+ middleName: z.ZodOptional<z.ZodString>;
232
+ displayName: z.ZodOptional<z.ZodString>;
233
+ phone: z.ZodOptional<z.ZodString>;
234
+ avatarUrl: z.ZodOptional<z.ZodString>;
235
+ address: z.ZodOptional<z.ZodObject<{
236
+ street: z.ZodOptional<z.ZodString>;
237
+ street2: z.ZodOptional<z.ZodString>;
238
+ city: z.ZodOptional<z.ZodString>;
239
+ state: z.ZodOptional<z.ZodString>;
240
+ postalCode: z.ZodOptional<z.ZodString>;
241
+ country: z.ZodOptional<z.ZodString>;
242
+ }, "strip", z.ZodTypeAny, {
243
+ street2?: string | undefined;
244
+ city?: string | undefined;
245
+ state?: string | undefined;
246
+ country?: string | undefined;
247
+ postalCode?: string | undefined;
248
+ street?: string | undefined;
249
+ }, {
250
+ street2?: string | undefined;
251
+ city?: string | undefined;
252
+ state?: string | undefined;
253
+ country?: string | undefined;
254
+ postalCode?: string | undefined;
255
+ street?: string | undefined;
256
+ }>>;
257
+ globalRole: z.ZodEnum<["TenantAdmin", "TenantUser"]>;
258
+ status: z.ZodEnum<["active", "inactive", "pending", "suspended", "locked"]>;
259
+ lastLoginAt: z.ZodOptional<z.ZodString>;
260
+ mfaEnabled: z.ZodOptional<z.ZodBoolean>;
261
+ createdAt: z.ZodString;
262
+ updatedAt: z.ZodString;
263
+ }, "strip", z.ZodTypeAny, {
264
+ status: "active" | "inactive" | "suspended" | "pending" | "locked";
265
+ createdAt: string;
266
+ updatedAt: string;
267
+ userId: string;
268
+ email: string;
269
+ firstName: string;
270
+ lastName: string;
271
+ globalRole: "TenantAdmin" | "TenantUser";
272
+ phone?: string | undefined;
273
+ address?: {
274
+ street2?: string | undefined;
275
+ city?: string | undefined;
276
+ state?: string | undefined;
277
+ country?: string | undefined;
278
+ postalCode?: string | undefined;
279
+ street?: string | undefined;
280
+ } | undefined;
281
+ middleName?: string | undefined;
282
+ staffId?: string | undefined;
283
+ displayName?: string | undefined;
284
+ avatarUrl?: string | undefined;
285
+ lastLoginAt?: string | undefined;
286
+ mfaEnabled?: boolean | undefined;
287
+ }, {
288
+ status: "active" | "inactive" | "suspended" | "pending" | "locked";
289
+ createdAt: string;
290
+ updatedAt: string;
291
+ userId: string;
292
+ email: string;
293
+ firstName: string;
294
+ lastName: string;
295
+ globalRole: "TenantAdmin" | "TenantUser";
296
+ phone?: string | undefined;
297
+ address?: {
298
+ street2?: string | undefined;
299
+ city?: string | undefined;
300
+ state?: string | undefined;
301
+ country?: string | undefined;
302
+ postalCode?: string | undefined;
303
+ street?: string | undefined;
304
+ } | undefined;
305
+ middleName?: string | undefined;
306
+ staffId?: string | undefined;
307
+ displayName?: string | undefined;
308
+ avatarUrl?: string | undefined;
309
+ lastLoginAt?: string | undefined;
310
+ mfaEnabled?: boolean | undefined;
311
+ }>, "many">;
312
+ lastEvaluatedKey: z.ZodOptional<z.ZodString>;
313
+ hasMore: z.ZodBoolean;
314
+ total: z.ZodOptional<z.ZodNumber>;
315
+ }, "strip", z.ZodTypeAny, {
316
+ items: {
317
+ status: "active" | "inactive" | "suspended" | "pending" | "locked";
318
+ createdAt: string;
319
+ updatedAt: string;
320
+ userId: string;
321
+ email: string;
322
+ firstName: string;
323
+ lastName: string;
324
+ globalRole: "TenantAdmin" | "TenantUser";
325
+ phone?: string | undefined;
326
+ address?: {
327
+ street2?: string | undefined;
328
+ city?: string | undefined;
329
+ state?: string | undefined;
330
+ country?: string | undefined;
331
+ postalCode?: string | undefined;
332
+ street?: string | undefined;
333
+ } | undefined;
334
+ middleName?: string | undefined;
335
+ staffId?: string | undefined;
336
+ displayName?: string | undefined;
337
+ avatarUrl?: string | undefined;
338
+ lastLoginAt?: string | undefined;
339
+ mfaEnabled?: boolean | undefined;
340
+ }[];
341
+ hasMore: boolean;
342
+ lastEvaluatedKey?: string | undefined;
343
+ total?: number | undefined;
344
+ }, {
345
+ items: {
346
+ status: "active" | "inactive" | "suspended" | "pending" | "locked";
347
+ createdAt: string;
348
+ updatedAt: string;
349
+ userId: string;
350
+ email: string;
351
+ firstName: string;
352
+ lastName: string;
353
+ globalRole: "TenantAdmin" | "TenantUser";
354
+ phone?: string | undefined;
355
+ address?: {
356
+ street2?: string | undefined;
357
+ city?: string | undefined;
358
+ state?: string | undefined;
359
+ country?: string | undefined;
360
+ postalCode?: string | undefined;
361
+ street?: string | undefined;
362
+ } | undefined;
363
+ middleName?: string | undefined;
364
+ staffId?: string | undefined;
365
+ displayName?: string | undefined;
366
+ avatarUrl?: string | undefined;
367
+ lastLoginAt?: string | undefined;
368
+ mfaEnabled?: boolean | undefined;
369
+ }[];
370
+ hasMore: boolean;
371
+ lastEvaluatedKey?: string | undefined;
372
+ total?: number | undefined;
373
+ }>;
374
+ export type UserListResponseDto = z.infer<typeof userListResponseSchema>;
375
+ export declare const digestFrequencySchema: z.ZodEnum<["immediate", "daily", "weekly", "never"]>;
376
+ export type DigestFrequency = z.infer<typeof digestFrequencySchema>;
377
+ export declare const emailChannelSchema: z.ZodObject<{
378
+ enabled: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
379
+ digest: z.ZodOptional<z.ZodDefault<z.ZodEnum<["immediate", "daily", "weekly", "never"]>>>;
380
+ }, "strip", z.ZodTypeAny, {
381
+ enabled?: boolean | undefined;
382
+ digest?: "never" | "immediate" | "daily" | "weekly" | undefined;
383
+ }, {
384
+ enabled?: boolean | undefined;
385
+ digest?: "never" | "immediate" | "daily" | "weekly" | undefined;
386
+ }>;
387
+ export type EmailChannelDto = z.infer<typeof emailChannelSchema>;
388
+ export declare const pushChannelSchema: z.ZodObject<{
389
+ enabled: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
390
+ }, "strip", z.ZodTypeAny, {
391
+ enabled?: boolean | undefined;
392
+ }, {
393
+ enabled?: boolean | undefined;
394
+ }>;
395
+ export type PushChannelDto = z.infer<typeof pushChannelSchema>;
396
+ export declare const smsChannelSchema: z.ZodObject<{
397
+ enabled: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
398
+ phone: z.ZodOptional<z.ZodString>;
399
+ }, "strip", z.ZodTypeAny, {
400
+ phone?: string | undefined;
401
+ enabled?: boolean | undefined;
402
+ }, {
403
+ phone?: string | undefined;
404
+ enabled?: boolean | undefined;
405
+ }>;
406
+ export type SmsChannelDto = z.infer<typeof smsChannelSchema>;
407
+ export declare const notificationChannelsSchema: z.ZodObject<{
408
+ email: z.ZodOptional<z.ZodObject<{
409
+ enabled: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
410
+ digest: z.ZodOptional<z.ZodDefault<z.ZodEnum<["immediate", "daily", "weekly", "never"]>>>;
411
+ }, "strip", z.ZodTypeAny, {
412
+ enabled?: boolean | undefined;
413
+ digest?: "never" | "immediate" | "daily" | "weekly" | undefined;
414
+ }, {
415
+ enabled?: boolean | undefined;
416
+ digest?: "never" | "immediate" | "daily" | "weekly" | undefined;
417
+ }>>;
418
+ push: z.ZodOptional<z.ZodObject<{
419
+ enabled: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
420
+ }, "strip", z.ZodTypeAny, {
421
+ enabled?: boolean | undefined;
422
+ }, {
423
+ enabled?: boolean | undefined;
424
+ }>>;
425
+ sms: z.ZodOptional<z.ZodObject<{
426
+ enabled: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
427
+ phone: z.ZodOptional<z.ZodString>;
428
+ }, "strip", z.ZodTypeAny, {
429
+ phone?: string | undefined;
430
+ enabled?: boolean | undefined;
431
+ }, {
432
+ phone?: string | undefined;
433
+ enabled?: boolean | undefined;
434
+ }>>;
435
+ }, "strip", z.ZodTypeAny, {
436
+ push?: {
437
+ enabled?: boolean | undefined;
438
+ } | undefined;
439
+ email?: {
440
+ enabled?: boolean | undefined;
441
+ digest?: "never" | "immediate" | "daily" | "weekly" | undefined;
442
+ } | undefined;
443
+ sms?: {
444
+ phone?: string | undefined;
445
+ enabled?: boolean | undefined;
446
+ } | undefined;
447
+ }, {
448
+ push?: {
449
+ enabled?: boolean | undefined;
450
+ } | undefined;
451
+ email?: {
452
+ enabled?: boolean | undefined;
453
+ digest?: "never" | "immediate" | "daily" | "weekly" | undefined;
454
+ } | undefined;
455
+ sms?: {
456
+ phone?: string | undefined;
457
+ enabled?: boolean | undefined;
458
+ } | undefined;
459
+ }>;
460
+ export type NotificationChannelsDto = z.infer<typeof notificationChannelsSchema>;
461
+ export declare const notificationCategoriesSchema: z.ZodObject<{
462
+ announcements: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
463
+ attendance: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
464
+ grades: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
465
+ messages: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
466
+ calendar: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
467
+ billing: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
468
+ security: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
469
+ }, "strip", z.ZodTypeAny, {
470
+ announcements?: boolean | undefined;
471
+ attendance?: boolean | undefined;
472
+ grades?: boolean | undefined;
473
+ messages?: boolean | undefined;
474
+ calendar?: boolean | undefined;
475
+ billing?: boolean | undefined;
476
+ security?: boolean | undefined;
477
+ }, {
478
+ announcements?: boolean | undefined;
479
+ attendance?: boolean | undefined;
480
+ grades?: boolean | undefined;
481
+ messages?: boolean | undefined;
482
+ calendar?: boolean | undefined;
483
+ billing?: boolean | undefined;
484
+ security?: boolean | undefined;
485
+ }>;
486
+ export type NotificationCategoriesDto = z.infer<typeof notificationCategoriesSchema>;
487
+ export declare const notificationPreferencesSchema: z.ZodObject<{
488
+ channels: z.ZodOptional<z.ZodObject<{
489
+ email: z.ZodOptional<z.ZodObject<{
490
+ enabled: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
491
+ digest: z.ZodOptional<z.ZodDefault<z.ZodEnum<["immediate", "daily", "weekly", "never"]>>>;
492
+ }, "strip", z.ZodTypeAny, {
493
+ enabled?: boolean | undefined;
494
+ digest?: "never" | "immediate" | "daily" | "weekly" | undefined;
495
+ }, {
496
+ enabled?: boolean | undefined;
497
+ digest?: "never" | "immediate" | "daily" | "weekly" | undefined;
498
+ }>>;
499
+ push: z.ZodOptional<z.ZodObject<{
500
+ enabled: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
501
+ }, "strip", z.ZodTypeAny, {
502
+ enabled?: boolean | undefined;
503
+ }, {
504
+ enabled?: boolean | undefined;
505
+ }>>;
506
+ sms: z.ZodOptional<z.ZodObject<{
507
+ enabled: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
508
+ phone: z.ZodOptional<z.ZodString>;
509
+ }, "strip", z.ZodTypeAny, {
510
+ phone?: string | undefined;
511
+ enabled?: boolean | undefined;
512
+ }, {
513
+ phone?: string | undefined;
514
+ enabled?: boolean | undefined;
515
+ }>>;
516
+ }, "strip", z.ZodTypeAny, {
517
+ push?: {
518
+ enabled?: boolean | undefined;
519
+ } | undefined;
520
+ email?: {
521
+ enabled?: boolean | undefined;
522
+ digest?: "never" | "immediate" | "daily" | "weekly" | undefined;
523
+ } | undefined;
524
+ sms?: {
525
+ phone?: string | undefined;
526
+ enabled?: boolean | undefined;
527
+ } | undefined;
528
+ }, {
529
+ push?: {
530
+ enabled?: boolean | undefined;
531
+ } | undefined;
532
+ email?: {
533
+ enabled?: boolean | undefined;
534
+ digest?: "never" | "immediate" | "daily" | "weekly" | undefined;
535
+ } | undefined;
536
+ sms?: {
537
+ phone?: string | undefined;
538
+ enabled?: boolean | undefined;
539
+ } | undefined;
540
+ }>>;
541
+ categories: z.ZodOptional<z.ZodObject<{
542
+ announcements: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
543
+ attendance: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
544
+ grades: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
545
+ messages: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
546
+ calendar: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
547
+ billing: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
548
+ security: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
549
+ }, "strip", z.ZodTypeAny, {
550
+ announcements?: boolean | undefined;
551
+ attendance?: boolean | undefined;
552
+ grades?: boolean | undefined;
553
+ messages?: boolean | undefined;
554
+ calendar?: boolean | undefined;
555
+ billing?: boolean | undefined;
556
+ security?: boolean | undefined;
557
+ }, {
558
+ announcements?: boolean | undefined;
559
+ attendance?: boolean | undefined;
560
+ grades?: boolean | undefined;
561
+ messages?: boolean | undefined;
562
+ calendar?: boolean | undefined;
563
+ billing?: boolean | undefined;
564
+ security?: boolean | undefined;
565
+ }>>;
566
+ }, "strip", z.ZodTypeAny, {
567
+ channels?: {
568
+ push?: {
569
+ enabled?: boolean | undefined;
570
+ } | undefined;
571
+ email?: {
572
+ enabled?: boolean | undefined;
573
+ digest?: "never" | "immediate" | "daily" | "weekly" | undefined;
574
+ } | undefined;
575
+ sms?: {
576
+ phone?: string | undefined;
577
+ enabled?: boolean | undefined;
578
+ } | undefined;
579
+ } | undefined;
580
+ categories?: {
581
+ announcements?: boolean | undefined;
582
+ attendance?: boolean | undefined;
583
+ grades?: boolean | undefined;
584
+ messages?: boolean | undefined;
585
+ calendar?: boolean | undefined;
586
+ billing?: boolean | undefined;
587
+ security?: boolean | undefined;
588
+ } | undefined;
589
+ }, {
590
+ channels?: {
591
+ push?: {
592
+ enabled?: boolean | undefined;
593
+ } | undefined;
594
+ email?: {
595
+ enabled?: boolean | undefined;
596
+ digest?: "never" | "immediate" | "daily" | "weekly" | undefined;
597
+ } | undefined;
598
+ sms?: {
599
+ phone?: string | undefined;
600
+ enabled?: boolean | undefined;
601
+ } | undefined;
602
+ } | undefined;
603
+ categories?: {
604
+ announcements?: boolean | undefined;
605
+ attendance?: boolean | undefined;
606
+ grades?: boolean | undefined;
607
+ messages?: boolean | undefined;
608
+ calendar?: boolean | undefined;
609
+ billing?: boolean | undefined;
610
+ security?: boolean | undefined;
611
+ } | undefined;
612
+ }>;
613
+ export type NotificationPreferencesDto = z.infer<typeof notificationPreferencesSchema>;
614
+ export declare const flatNotificationsSchema: z.ZodObject<{
615
+ email: z.ZodOptional<z.ZodBoolean>;
616
+ push: z.ZodOptional<z.ZodBoolean>;
617
+ sms: z.ZodOptional<z.ZodBoolean>;
618
+ digest: z.ZodOptional<z.ZodEnum<["immediate", "daily", "weekly", "never"]>>;
619
+ }, "strip", z.ZodTypeAny, {
620
+ push?: boolean | undefined;
621
+ email?: boolean | undefined;
622
+ digest?: "never" | "immediate" | "daily" | "weekly" | undefined;
623
+ sms?: boolean | undefined;
624
+ }, {
625
+ push?: boolean | undefined;
626
+ email?: boolean | undefined;
627
+ digest?: "never" | "immediate" | "daily" | "weekly" | undefined;
628
+ sms?: boolean | undefined;
629
+ }>;
630
+ export type FlatNotificationsDto = z.infer<typeof flatNotificationsSchema>;
631
+ export declare const themeSchema: z.ZodEnum<["light", "dark", "system"]>;
632
+ export type Theme = z.infer<typeof themeSchema>;
633
+ export declare const timeFormatSchema: z.ZodEnum<["12h", "24h"]>;
634
+ export type TimeFormat = z.infer<typeof timeFormatSchema>;
635
+ export declare const weekStartSchema: z.ZodEnum<["sunday", "monday"]>;
636
+ export type WeekStart = z.infer<typeof weekStartSchema>;
637
+ export declare const updatePreferencesSchema: z.ZodObject<{
638
+ theme: z.ZodOptional<z.ZodDefault<z.ZodEnum<["light", "dark", "system"]>>>;
639
+ language: z.ZodOptional<z.ZodDefault<z.ZodString>>;
640
+ timezone: z.ZodOptional<z.ZodDefault<z.ZodString>>;
641
+ dateFormat: z.ZodOptional<z.ZodDefault<z.ZodString>>;
642
+ timeFormat: z.ZodOptional<z.ZodDefault<z.ZodEnum<["12h", "24h"]>>>;
643
+ weekStartsOn: z.ZodOptional<z.ZodDefault<z.ZodEnum<["sunday", "monday"]>>>;
644
+ notifications: z.ZodOptional<z.ZodObject<{
645
+ email: z.ZodOptional<z.ZodBoolean>;
646
+ push: z.ZodOptional<z.ZodBoolean>;
647
+ sms: z.ZodOptional<z.ZodBoolean>;
648
+ digest: z.ZodOptional<z.ZodEnum<["immediate", "daily", "weekly", "never"]>>;
649
+ }, "strip", z.ZodTypeAny, {
650
+ push?: boolean | undefined;
651
+ email?: boolean | undefined;
652
+ digest?: "never" | "immediate" | "daily" | "weekly" | undefined;
653
+ sms?: boolean | undefined;
654
+ }, {
655
+ push?: boolean | undefined;
656
+ email?: boolean | undefined;
657
+ digest?: "never" | "immediate" | "daily" | "weekly" | undefined;
658
+ sms?: boolean | undefined;
659
+ }>>;
660
+ defaultSchoolId: z.ZodOptional<z.ZodString>;
661
+ }, "strip", z.ZodTypeAny, {
662
+ timezone?: string | undefined;
663
+ theme?: "light" | "dark" | "system" | undefined;
664
+ language?: string | undefined;
665
+ dateFormat?: string | undefined;
666
+ timeFormat?: "12h" | "24h" | undefined;
667
+ weekStartsOn?: "sunday" | "monday" | undefined;
668
+ notifications?: {
669
+ push?: boolean | undefined;
670
+ email?: boolean | undefined;
671
+ digest?: "never" | "immediate" | "daily" | "weekly" | undefined;
672
+ sms?: boolean | undefined;
673
+ } | undefined;
674
+ defaultSchoolId?: string | undefined;
675
+ }, {
676
+ timezone?: string | undefined;
677
+ theme?: "light" | "dark" | "system" | undefined;
678
+ language?: string | undefined;
679
+ dateFormat?: string | undefined;
680
+ timeFormat?: "12h" | "24h" | undefined;
681
+ weekStartsOn?: "sunday" | "monday" | undefined;
682
+ notifications?: {
683
+ push?: boolean | undefined;
684
+ email?: boolean | undefined;
685
+ digest?: "never" | "immediate" | "daily" | "weekly" | undefined;
686
+ sms?: boolean | undefined;
687
+ } | undefined;
688
+ defaultSchoolId?: string | undefined;
689
+ }>;
690
+ export type UpdatePreferencesDto = z.infer<typeof updatePreferencesSchema>;
691
+ export declare const userPreferencesResponseSchema: z.ZodObject<{
692
+ tenantId: z.ZodString;
693
+ userId: z.ZodString;
694
+ theme: z.ZodEnum<["light", "dark", "system"]>;
695
+ language: z.ZodString;
696
+ timezone: z.ZodString;
697
+ dateFormat: z.ZodString;
698
+ timeFormat: z.ZodEnum<["12h", "24h"]>;
699
+ weekStartsOn: z.ZodEnum<["sunday", "monday"]>;
700
+ notifications: z.ZodObject<{
701
+ email: z.ZodOptional<z.ZodBoolean>;
702
+ push: z.ZodOptional<z.ZodBoolean>;
703
+ sms: z.ZodOptional<z.ZodBoolean>;
704
+ digest: z.ZodOptional<z.ZodEnum<["immediate", "daily", "weekly", "never"]>>;
705
+ }, "strip", z.ZodTypeAny, {
706
+ push?: boolean | undefined;
707
+ email?: boolean | undefined;
708
+ digest?: "never" | "immediate" | "daily" | "weekly" | undefined;
709
+ sms?: boolean | undefined;
710
+ }, {
711
+ push?: boolean | undefined;
712
+ email?: boolean | undefined;
713
+ digest?: "never" | "immediate" | "daily" | "weekly" | undefined;
714
+ sms?: boolean | undefined;
715
+ }>;
716
+ defaultSchoolId: z.ZodOptional<z.ZodString>;
717
+ createdAt: z.ZodString;
718
+ updatedAt: z.ZodString;
719
+ version: z.ZodNumber;
720
+ }, "strip", z.ZodTypeAny, {
721
+ tenantId: string;
722
+ createdAt: string;
723
+ updatedAt: string;
724
+ version: number;
725
+ userId: string;
726
+ timezone: string;
727
+ theme: "light" | "dark" | "system";
728
+ language: string;
729
+ dateFormat: string;
730
+ timeFormat: "12h" | "24h";
731
+ weekStartsOn: "sunday" | "monday";
732
+ notifications: {
733
+ push?: boolean | undefined;
734
+ email?: boolean | undefined;
735
+ digest?: "never" | "immediate" | "daily" | "weekly" | undefined;
736
+ sms?: boolean | undefined;
737
+ };
738
+ defaultSchoolId?: string | undefined;
739
+ }, {
740
+ tenantId: string;
741
+ createdAt: string;
742
+ updatedAt: string;
743
+ version: number;
744
+ userId: string;
745
+ timezone: string;
746
+ theme: "light" | "dark" | "system";
747
+ language: string;
748
+ dateFormat: string;
749
+ timeFormat: "12h" | "24h";
750
+ weekStartsOn: "sunday" | "monday";
751
+ notifications: {
752
+ push?: boolean | undefined;
753
+ email?: boolean | undefined;
754
+ digest?: "never" | "immediate" | "daily" | "weekly" | undefined;
755
+ sms?: boolean | undefined;
756
+ };
757
+ defaultSchoolId?: string | undefined;
758
+ }>;
759
+ export type UserPreferencesResponseDto = z.infer<typeof userPreferencesResponseSchema>;
760
+ export declare const schoolRoleSchema: z.ZodEnum<["Principal", "VicePrincipal", "Teacher", "Accountant", "Staff", "Counselor", "Nurse", "Student", "Parent"]>;
761
+ export type SchoolRole = z.infer<typeof schoolRoleSchema>;
762
+ export declare const schoolAssignmentSchema: z.ZodObject<{
763
+ schoolId: z.ZodString;
764
+ schoolName: z.ZodString;
765
+ role: z.ZodString;
766
+ }, "strip", z.ZodTypeAny, {
767
+ schoolId: string;
768
+ schoolName: string;
769
+ role: string;
770
+ }, {
771
+ schoolId: string;
772
+ schoolName: string;
773
+ role: string;
774
+ }>;
775
+ export type SchoolAssignmentDto = z.infer<typeof schoolAssignmentSchema>;
776
+ export declare const userAssignmentsResponseSchema: z.ZodObject<{
777
+ userId: z.ZodString;
778
+ assignments: z.ZodArray<z.ZodObject<{
779
+ schoolId: z.ZodString;
780
+ schoolName: z.ZodString;
781
+ role: z.ZodString;
782
+ }, "strip", z.ZodTypeAny, {
783
+ schoolId: string;
784
+ schoolName: string;
785
+ role: string;
786
+ }, {
787
+ schoolId: string;
788
+ schoolName: string;
789
+ role: string;
790
+ }>, "many">;
791
+ }, "strip", z.ZodTypeAny, {
792
+ userId: string;
793
+ assignments: {
794
+ schoolId: string;
795
+ schoolName: string;
796
+ role: string;
797
+ }[];
798
+ }, {
799
+ userId: string;
800
+ assignments: {
801
+ schoolId: string;
802
+ schoolName: string;
803
+ role: string;
804
+ }[];
805
+ }>;
806
+ export type UserAssignmentsResponseDto = z.infer<typeof userAssignmentsResponseSchema>;
807
+ export declare const currentUserProfileSchema: z.ZodObject<{
808
+ userId: z.ZodString;
809
+ email: z.ZodString;
810
+ firstName: z.ZodString;
811
+ lastName: z.ZodString;
812
+ middleName: z.ZodOptional<z.ZodString>;
813
+ displayName: z.ZodOptional<z.ZodString>;
814
+ phone: z.ZodOptional<z.ZodString>;
815
+ avatarUrl: z.ZodOptional<z.ZodString>;
816
+ address: z.ZodOptional<z.ZodObject<{
817
+ street: z.ZodOptional<z.ZodString>;
818
+ street2: z.ZodOptional<z.ZodString>;
819
+ city: z.ZodOptional<z.ZodString>;
820
+ state: z.ZodOptional<z.ZodString>;
821
+ postalCode: z.ZodOptional<z.ZodString>;
822
+ country: z.ZodOptional<z.ZodString>;
823
+ }, "strip", z.ZodTypeAny, {
824
+ street2?: string | undefined;
825
+ city?: string | undefined;
826
+ state?: string | undefined;
827
+ country?: string | undefined;
828
+ postalCode?: string | undefined;
829
+ street?: string | undefined;
830
+ }, {
831
+ street2?: string | undefined;
832
+ city?: string | undefined;
833
+ state?: string | undefined;
834
+ country?: string | undefined;
835
+ postalCode?: string | undefined;
836
+ street?: string | undefined;
837
+ }>>;
838
+ globalRole: z.ZodEnum<["TenantAdmin", "TenantUser"]>;
839
+ status: z.ZodEnum<["active", "inactive", "pending", "suspended", "locked"]>;
840
+ tenantId: z.ZodString;
841
+ tenantName: z.ZodOptional<z.ZodString>;
842
+ assignments: z.ZodArray<z.ZodObject<{
843
+ schoolId: z.ZodString;
844
+ schoolName: z.ZodString;
845
+ role: z.ZodString;
846
+ }, "strip", z.ZodTypeAny, {
847
+ schoolId: string;
848
+ schoolName: string;
849
+ role: string;
850
+ }, {
851
+ schoolId: string;
852
+ schoolName: string;
853
+ role: string;
854
+ }>, "many">;
855
+ lastLoginAt: z.ZodOptional<z.ZodString>;
856
+ mfaEnabled: z.ZodOptional<z.ZodBoolean>;
857
+ createdAt: z.ZodString;
858
+ updatedAt: z.ZodString;
859
+ }, "strip", z.ZodTypeAny, {
860
+ status: "active" | "inactive" | "suspended" | "pending" | "locked";
861
+ tenantId: string;
862
+ createdAt: string;
863
+ updatedAt: string;
864
+ userId: string;
865
+ email: string;
866
+ firstName: string;
867
+ lastName: string;
868
+ globalRole: "TenantAdmin" | "TenantUser";
869
+ assignments: {
870
+ schoolId: string;
871
+ schoolName: string;
872
+ role: string;
873
+ }[];
874
+ phone?: string | undefined;
875
+ address?: {
876
+ street2?: string | undefined;
877
+ city?: string | undefined;
878
+ state?: string | undefined;
879
+ country?: string | undefined;
880
+ postalCode?: string | undefined;
881
+ street?: string | undefined;
882
+ } | undefined;
883
+ middleName?: string | undefined;
884
+ displayName?: string | undefined;
885
+ avatarUrl?: string | undefined;
886
+ lastLoginAt?: string | undefined;
887
+ mfaEnabled?: boolean | undefined;
888
+ tenantName?: string | undefined;
889
+ }, {
890
+ status: "active" | "inactive" | "suspended" | "pending" | "locked";
891
+ tenantId: string;
892
+ createdAt: string;
893
+ updatedAt: string;
894
+ userId: string;
895
+ email: string;
896
+ firstName: string;
897
+ lastName: string;
898
+ globalRole: "TenantAdmin" | "TenantUser";
899
+ assignments: {
900
+ schoolId: string;
901
+ schoolName: string;
902
+ role: string;
903
+ }[];
904
+ phone?: string | undefined;
905
+ address?: {
906
+ street2?: string | undefined;
907
+ city?: string | undefined;
908
+ state?: string | undefined;
909
+ country?: string | undefined;
910
+ postalCode?: string | undefined;
911
+ street?: string | undefined;
912
+ } | undefined;
913
+ middleName?: string | undefined;
914
+ displayName?: string | undefined;
915
+ avatarUrl?: string | undefined;
916
+ lastLoginAt?: string | undefined;
917
+ mfaEnabled?: boolean | undefined;
918
+ tenantName?: string | undefined;
919
+ }>;
920
+ export type CurrentUserProfileDto = z.infer<typeof currentUserProfileSchema>;
921
+ //# sourceMappingURL=user.schema.d.ts.map