@appcorp/fusion-storybook 0.2.13 → 0.2.14

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 (48) hide show
  1. package/base-modules/admission/context/use-admission-module.d.ts +88 -0
  2. package/base-modules/admission/context/use-admission-module.js +771 -0
  3. package/base-modules/admission/context.d.ts +1 -87
  4. package/base-modules/admission/context.js +3 -769
  5. package/base-modules/campus/more-actions.js +0 -1
  6. package/base-modules/class/more-actions.js +1 -6
  7. package/base-modules/expense/more-actions.js +1 -6
  8. package/base-modules/fee-structure/more-actions.js +1 -6
  9. package/base-modules/student-fee/context/shared.d.ts +178 -0
  10. package/base-modules/student-fee/context/shared.js +59 -0
  11. package/base-modules/student-fee/context/use-student-fee-module.d.ts +64 -0
  12. package/base-modules/student-fee/context/use-student-fee-module.js +610 -0
  13. package/base-modules/student-fee/context.d.ts +21 -235
  14. package/base-modules/student-fee/context.js +2 -674
  15. package/base-modules/student-fee/more-actions.js +1 -6
  16. package/base-modules/student-profile/context/module-base.d.ts +187 -0
  17. package/base-modules/student-profile/context/module-base.js +50 -0
  18. package/base-modules/student-profile/context/use-student-profile-module.d.ts +70 -0
  19. package/base-modules/student-profile/context/use-student-profile-module.js +506 -0
  20. package/base-modules/student-profile/context.d.ts +20 -256
  21. package/base-modules/student-profile/context.js +2 -601
  22. package/base-modules/teacher/avatar-upload.js +1 -4
  23. package/base-modules/teacher/more-actions.js +1 -6
  24. package/base-modules/user/context/use-user-module.d.ts +53 -0
  25. package/base-modules/user/context/use-user-module.js +546 -0
  26. package/base-modules/user/context.d.ts +1 -52
  27. package/base-modules/user/context.js +5 -547
  28. package/base-modules/workspace-user/more-actions.js +1 -6
  29. package/components/module-error.d.ts +9 -0
  30. package/components/module-error.js +3 -0
  31. package/package.json +5 -4
  32. package/tsconfig.build.tsbuildinfo +1 -1
  33. package/type.d.ts +3 -1242
  34. package/type.js +3 -445
  35. package/types/academics.d.ts +264 -0
  36. package/types/academics.js +8 -0
  37. package/types/admission.d.ts +85 -0
  38. package/types/admission.js +6 -0
  39. package/types/communication.d.ts +165 -0
  40. package/types/communication.js +7 -0
  41. package/types/enums.d.ts +411 -0
  42. package/types/enums.js +442 -0
  43. package/types/finance.d.ts +126 -0
  44. package/types/finance.js +7 -0
  45. package/types/index.d.ts +12 -0
  46. package/types/index.js +12 -0
  47. package/types/user-management.d.ts +236 -0
  48. package/types/user-management.js +7 -0
package/types/enums.js ADDED
@@ -0,0 +1,442 @@
1
+ /**
2
+ * TypeScript Enums Generated from Prisma Schema
3
+ *
4
+ * This file contains TypeScript enums for all database enums
5
+ * following the naming convention SCREAMING_SNAKE_CASE (e.g., USER_ROLE).
6
+ */
7
+ // ============================================================================
8
+ // ENUMS
9
+ // ============================================================================
10
+ /**
11
+ * User roles across the multi-tenant system
12
+ */
13
+ export var USER_ROLE;
14
+ (function (USER_ROLE) {
15
+ USER_ROLE["SUPER_ADMIN"] = "SUPER_ADMIN";
16
+ USER_ROLE["SCHOOL_ADMIN"] = "SCHOOL_ADMIN";
17
+ USER_ROLE["TEACHER"] = "TEACHER";
18
+ USER_ROLE["STUDENT"] = "STUDENT";
19
+ USER_ROLE["PARENT"] = "PARENT";
20
+ USER_ROLE["STAFF"] = "STAFF";
21
+ })(USER_ROLE || (USER_ROLE = {}));
22
+ /**
23
+ * Student enrollment status
24
+ */
25
+ export var STUDENT_STATUS;
26
+ (function (STUDENT_STATUS) {
27
+ STUDENT_STATUS["ACTIVE"] = "ACTIVE";
28
+ STUDENT_STATUS["INACTIVE"] = "INACTIVE";
29
+ STUDENT_STATUS["GRADUATED"] = "GRADUATED";
30
+ STUDENT_STATUS["TRANSFERRED"] = "TRANSFERRED";
31
+ STUDENT_STATUS["DROPPED"] = "DROPPED";
32
+ })(STUDENT_STATUS || (STUDENT_STATUS = {}));
33
+ /**
34
+ * Family member roles within a household
35
+ */
36
+ export var FAMILY_MEMBER_ROLE;
37
+ (function (FAMILY_MEMBER_ROLE) {
38
+ FAMILY_MEMBER_ROLE["FATHER"] = "FATHER";
39
+ FAMILY_MEMBER_ROLE["MOTHER"] = "MOTHER";
40
+ FAMILY_MEMBER_ROLE["GUARDIAN"] = "GUARDIAN";
41
+ FAMILY_MEMBER_ROLE["STUDENT"] = "STUDENT";
42
+ })(FAMILY_MEMBER_ROLE || (FAMILY_MEMBER_ROLE = {}));
43
+ /**
44
+ * Gender options
45
+ */
46
+ export var GENDER;
47
+ (function (GENDER) {
48
+ GENDER["MALE"] = "MALE";
49
+ GENDER["FEMALE"] = "FEMALE";
50
+ GENDER["OTHER"] = "OTHER";
51
+ GENDER["PREFER_NOT_TO_SAY"] = "PREFER_NOT_TO_SAY";
52
+ })(GENDER || (GENDER = {}));
53
+ /**
54
+ * Day of the week for scheduling
55
+ */
56
+ export var DAY_OF_WEEK;
57
+ (function (DAY_OF_WEEK) {
58
+ DAY_OF_WEEK["MONDAY"] = "MONDAY";
59
+ DAY_OF_WEEK["TUESDAY"] = "TUESDAY";
60
+ DAY_OF_WEEK["WEDNESDAY"] = "WEDNESDAY";
61
+ DAY_OF_WEEK["THURSDAY"] = "THURSDAY";
62
+ DAY_OF_WEEK["FRIDAY"] = "FRIDAY";
63
+ DAY_OF_WEEK["SATURDAY"] = "SATURDAY";
64
+ DAY_OF_WEEK["SUNDAY"] = "SUNDAY";
65
+ })(DAY_OF_WEEK || (DAY_OF_WEEK = {}));
66
+ /**
67
+ * Attendance status
68
+ */
69
+ export var ATTENDANCE_STATUS;
70
+ (function (ATTENDANCE_STATUS) {
71
+ ATTENDANCE_STATUS["PRESENT"] = "PRESENT";
72
+ ATTENDANCE_STATUS["ABSENT"] = "ABSENT";
73
+ ATTENDANCE_STATUS["LATE"] = "LATE";
74
+ ATTENDANCE_STATUS["EXCUSED"] = "EXCUSED";
75
+ ATTENDANCE_STATUS["HALF_DAY"] = "HALF_DAY";
76
+ })(ATTENDANCE_STATUS || (ATTENDANCE_STATUS = {}));
77
+ /**
78
+ * Grade type for assessments
79
+ */
80
+ export var GRADE_TYPE;
81
+ (function (GRADE_TYPE) {
82
+ GRADE_TYPE["EXAM"] = "EXAM";
83
+ GRADE_TYPE["QUIZ"] = "QUIZ";
84
+ GRADE_TYPE["ASSIGNMENT"] = "ASSIGNMENT";
85
+ GRADE_TYPE["PARTICIPATION"] = "PARTICIPATION";
86
+ GRADE_TYPE["PRACTICAL"] = "PRACTICAL";
87
+ GRADE_TYPE["PROJECT"] = "PROJECT";
88
+ })(GRADE_TYPE || (GRADE_TYPE = {}));
89
+ /**
90
+ * Fee type categories
91
+ */
92
+ export var FEE_TYPE;
93
+ (function (FEE_TYPE) {
94
+ FEE_TYPE["TUITION"] = "TUITION";
95
+ FEE_TYPE["ADMISSION"] = "ADMISSION";
96
+ FEE_TYPE["EXAM"] = "EXAM";
97
+ FEE_TYPE["LIBRARY"] = "LIBRARY";
98
+ FEE_TYPE["LABORATORY"] = "LABORATORY";
99
+ FEE_TYPE["TRANSPORT"] = "TRANSPORT";
100
+ FEE_TYPE["SPORTS"] = "SPORTS";
101
+ FEE_TYPE["MISCELLANEOUS"] = "MISCELLANEOUS";
102
+ FEE_TYPE["LATE"] = "LATE";
103
+ })(FEE_TYPE || (FEE_TYPE = {}));
104
+ /**
105
+ * Discount type for fee reductions
106
+ */
107
+ export var DISCOUNT_TYPE;
108
+ (function (DISCOUNT_TYPE) {
109
+ DISCOUNT_TYPE["PERCENTAGE"] = "PERCENTAGE";
110
+ DISCOUNT_TYPE["FIXED"] = "FIXED";
111
+ })(DISCOUNT_TYPE || (DISCOUNT_TYPE = {}));
112
+ /**
113
+ * Payment status
114
+ */
115
+ export var PAYMENT_STATUS;
116
+ (function (PAYMENT_STATUS) {
117
+ PAYMENT_STATUS["PENDING"] = "PENDING";
118
+ PAYMENT_STATUS["PARTIAL"] = "PARTIAL";
119
+ PAYMENT_STATUS["PAID"] = "PAID";
120
+ PAYMENT_STATUS["OVERDUE"] = "OVERDUE";
121
+ PAYMENT_STATUS["CANCELLED"] = "CANCELLED";
122
+ PAYMENT_STATUS["REFUNDED"] = "REFUNDED";
123
+ })(PAYMENT_STATUS || (PAYMENT_STATUS = {}));
124
+ /**
125
+ * Payment method
126
+ */
127
+ export var PAYMENT_METHOD;
128
+ (function (PAYMENT_METHOD) {
129
+ PAYMENT_METHOD["CASH"] = "CASH";
130
+ PAYMENT_METHOD["BANK_TRANSFER"] = "BANK_TRANSFER";
131
+ PAYMENT_METHOD["CREDIT_CARD"] = "CREDIT_CARD";
132
+ PAYMENT_METHOD["DEBIT_CARD"] = "DEBIT_CARD";
133
+ PAYMENT_METHOD["CHEQUE"] = "CHEQUE";
134
+ PAYMENT_METHOD["ONLINE"] = "ONLINE";
135
+ PAYMENT_METHOD["MOBILE_WALLET"] = "MOBILE_WALLET";
136
+ })(PAYMENT_METHOD || (PAYMENT_METHOD = {}));
137
+ /**
138
+ * Expense category types
139
+ */
140
+ export var EXPENSE_CATEGORY;
141
+ (function (EXPENSE_CATEGORY) {
142
+ EXPENSE_CATEGORY["SALARY"] = "SALARY";
143
+ EXPENSE_CATEGORY["UTILITIES"] = "UTILITIES";
144
+ EXPENSE_CATEGORY["MAINTENANCE"] = "MAINTENANCE";
145
+ EXPENSE_CATEGORY["SUPPLIES"] = "SUPPLIES";
146
+ EXPENSE_CATEGORY["TRANSPORT"] = "TRANSPORT";
147
+ EXPENSE_CATEGORY["MARKETING"] = "MARKETING";
148
+ EXPENSE_CATEGORY["INSURANCE"] = "INSURANCE";
149
+ EXPENSE_CATEGORY["RENT"] = "RENT";
150
+ EXPENSE_CATEGORY["TECHNOLOGY"] = "TECHNOLOGY";
151
+ EXPENSE_CATEGORY["PROFESSIONAL"] = "PROFESSIONAL";
152
+ EXPENSE_CATEGORY["TRAINING"] = "TRAINING";
153
+ EXPENSE_CATEGORY["EVENTS"] = "EVENTS";
154
+ EXPENSE_CATEGORY["FOOD"] = "FOOD";
155
+ EXPENSE_CATEGORY["MISCELLANEOUS"] = "MISCELLANEOUS";
156
+ })(EXPENSE_CATEGORY || (EXPENSE_CATEGORY = {}));
157
+ /**
158
+ * Expense payment status
159
+ */
160
+ export var EXPENSE_STATUS;
161
+ (function (EXPENSE_STATUS) {
162
+ EXPENSE_STATUS["PENDING"] = "PENDING";
163
+ EXPENSE_STATUS["APPROVED"] = "APPROVED";
164
+ EXPENSE_STATUS["PAID"] = "PAID";
165
+ EXPENSE_STATUS["REJECTED"] = "REJECTED";
166
+ EXPENSE_STATUS["CANCELLED"] = "CANCELLED";
167
+ })(EXPENSE_STATUS || (EXPENSE_STATUS = {}));
168
+ /**
169
+ * Currency options (ISO 4217 codes)
170
+ */
171
+ export var CURRENCY;
172
+ (function (CURRENCY) {
173
+ CURRENCY["AED"] = "AED";
174
+ CURRENCY["AFN"] = "AFN";
175
+ CURRENCY["ALL"] = "ALL";
176
+ CURRENCY["AMD"] = "AMD";
177
+ CURRENCY["ANG"] = "ANG";
178
+ CURRENCY["AOA"] = "AOA";
179
+ CURRENCY["ARS"] = "ARS";
180
+ CURRENCY["AUD"] = "AUD";
181
+ CURRENCY["AWG"] = "AWG";
182
+ CURRENCY["AZN"] = "AZN";
183
+ CURRENCY["BAM"] = "BAM";
184
+ CURRENCY["BBD"] = "BBD";
185
+ CURRENCY["BDT"] = "BDT";
186
+ CURRENCY["BGN"] = "BGN";
187
+ CURRENCY["BHD"] = "BHD";
188
+ CURRENCY["BIF"] = "BIF";
189
+ CURRENCY["BMD"] = "BMD";
190
+ CURRENCY["BND"] = "BND";
191
+ CURRENCY["BOB"] = "BOB";
192
+ CURRENCY["BRL"] = "BRL";
193
+ CURRENCY["BSD"] = "BSD";
194
+ CURRENCY["BTN"] = "BTN";
195
+ CURRENCY["BWP"] = "BWP";
196
+ CURRENCY["BYN"] = "BYN";
197
+ CURRENCY["BZD"] = "BZD";
198
+ CURRENCY["CAD"] = "CAD";
199
+ CURRENCY["CDF"] = "CDF";
200
+ CURRENCY["CHF"] = "CHF";
201
+ CURRENCY["CLP"] = "CLP";
202
+ CURRENCY["CNY"] = "CNY";
203
+ CURRENCY["COP"] = "COP";
204
+ CURRENCY["CRC"] = "CRC";
205
+ CURRENCY["CVE"] = "CVE";
206
+ CURRENCY["CZK"] = "CZK";
207
+ CURRENCY["DJF"] = "DJF";
208
+ CURRENCY["DKK"] = "DKK";
209
+ CURRENCY["DOP"] = "DOP";
210
+ CURRENCY["DZD"] = "DZD";
211
+ CURRENCY["EGP"] = "EGP";
212
+ CURRENCY["ERN"] = "ERN";
213
+ CURRENCY["ETB"] = "ETB";
214
+ CURRENCY["EUR"] = "EUR";
215
+ CURRENCY["FJD"] = "FJD";
216
+ CURRENCY["FKP"] = "FKP";
217
+ CURRENCY["GBP"] = "GBP";
218
+ CURRENCY["GEL"] = "GEL";
219
+ CURRENCY["GHS"] = "GHS";
220
+ CURRENCY["GIP"] = "GIP";
221
+ CURRENCY["GMD"] = "GMD";
222
+ CURRENCY["GNF"] = "GNF";
223
+ CURRENCY["GTQ"] = "GTQ";
224
+ CURRENCY["GYD"] = "GYD";
225
+ CURRENCY["HKD"] = "HKD";
226
+ CURRENCY["HNL"] = "HNL";
227
+ CURRENCY["HTG"] = "HTG";
228
+ CURRENCY["HUF"] = "HUF";
229
+ CURRENCY["IDR"] = "IDR";
230
+ CURRENCY["ILS"] = "ILS";
231
+ CURRENCY["INR"] = "INR";
232
+ CURRENCY["IQD"] = "IQD";
233
+ CURRENCY["IRR"] = "IRR";
234
+ CURRENCY["ISK"] = "ISK";
235
+ CURRENCY["JMD"] = "JMD";
236
+ CURRENCY["JOD"] = "JOD";
237
+ CURRENCY["JPY"] = "JPY";
238
+ CURRENCY["KES"] = "KES";
239
+ CURRENCY["KGS"] = "KGS";
240
+ CURRENCY["KHR"] = "KHR";
241
+ CURRENCY["KMF"] = "KMF";
242
+ CURRENCY["KPW"] = "KPW";
243
+ CURRENCY["KRW"] = "KRW";
244
+ CURRENCY["KWD"] = "KWD";
245
+ CURRENCY["KYD"] = "KYD";
246
+ CURRENCY["KZT"] = "KZT";
247
+ CURRENCY["LAK"] = "LAK";
248
+ CURRENCY["LBP"] = "LBP";
249
+ CURRENCY["LKR"] = "LKR";
250
+ CURRENCY["LSL"] = "LSL";
251
+ CURRENCY["LYD"] = "LYD";
252
+ CURRENCY["MAD"] = "MAD";
253
+ CURRENCY["MDL"] = "MDL";
254
+ CURRENCY["MGA"] = "MGA";
255
+ CURRENCY["MKD"] = "MKD";
256
+ CURRENCY["MMK"] = "MMK";
257
+ CURRENCY["MNT"] = "MNT";
258
+ CURRENCY["MOP"] = "MOP";
259
+ CURRENCY["MRU"] = "MRU";
260
+ CURRENCY["MUR"] = "MUR";
261
+ CURRENCY["MWK"] = "MWK";
262
+ CURRENCY["MXN"] = "MXN";
263
+ CURRENCY["MYR"] = "MYR";
264
+ CURRENCY["MZN"] = "MZN";
265
+ CURRENCY["NAD"] = "NAD";
266
+ CURRENCY["NGN"] = "NGN";
267
+ CURRENCY["NIO"] = "NIO";
268
+ CURRENCY["NOK"] = "NOK";
269
+ CURRENCY["NPR"] = "NPR";
270
+ CURRENCY["NZD"] = "NZD";
271
+ CURRENCY["OMR"] = "OMR";
272
+ CURRENCY["PAB"] = "PAB";
273
+ CURRENCY["PEN"] = "PEN";
274
+ CURRENCY["PGK"] = "PGK";
275
+ CURRENCY["PHP"] = "PHP";
276
+ CURRENCY["PKR"] = "PKR";
277
+ CURRENCY["PLN"] = "PLN";
278
+ CURRENCY["PYG"] = "PYG";
279
+ CURRENCY["QAR"] = "QAR";
280
+ CURRENCY["RON"] = "RON";
281
+ CURRENCY["RSD"] = "RSD";
282
+ CURRENCY["RUB"] = "RUB";
283
+ CURRENCY["RWF"] = "RWF";
284
+ CURRENCY["SAR"] = "SAR";
285
+ CURRENCY["SBD"] = "SBD";
286
+ CURRENCY["SCR"] = "SCR";
287
+ CURRENCY["SDG"] = "SDG";
288
+ CURRENCY["SEK"] = "SEK";
289
+ CURRENCY["SGD"] = "SGD";
290
+ CURRENCY["SHP"] = "SHP";
291
+ CURRENCY["SLL"] = "SLL";
292
+ CURRENCY["SOS"] = "SOS";
293
+ CURRENCY["SRD"] = "SRD";
294
+ CURRENCY["SYP"] = "SYP";
295
+ CURRENCY["SZL"] = "SZL";
296
+ CURRENCY["THB"] = "THB";
297
+ CURRENCY["TJS"] = "TJS";
298
+ CURRENCY["TMT"] = "TMT";
299
+ CURRENCY["TND"] = "TND";
300
+ CURRENCY["TOP"] = "TOP";
301
+ CURRENCY["TRY"] = "TRY";
302
+ CURRENCY["TTD"] = "TTD";
303
+ CURRENCY["TWD"] = "TWD";
304
+ CURRENCY["TZS"] = "TZS";
305
+ CURRENCY["UAH"] = "UAH";
306
+ CURRENCY["UGX"] = "UGX";
307
+ CURRENCY["USD"] = "USD";
308
+ CURRENCY["UYU"] = "UYU";
309
+ CURRENCY["UZS"] = "UZS";
310
+ CURRENCY["VES"] = "VES";
311
+ CURRENCY["VND"] = "VND";
312
+ CURRENCY["VUV"] = "VUV";
313
+ CURRENCY["WST"] = "WST";
314
+ CURRENCY["XAF"] = "XAF";
315
+ CURRENCY["XCD"] = "XCD";
316
+ CURRENCY["XOF"] = "XOF";
317
+ CURRENCY["XPF"] = "XPF";
318
+ CURRENCY["YER"] = "YER";
319
+ CURRENCY["ZAR"] = "ZAR";
320
+ CURRENCY["ZMW"] = "ZMW";
321
+ CURRENCY["ZWL"] = "ZWL";
322
+ })(CURRENCY || (CURRENCY = {}));
323
+ /**
324
+ * Access level for module-scoped permission grants
325
+ */
326
+ export var ACCESS_LEVEL;
327
+ (function (ACCESS_LEVEL) {
328
+ ACCESS_LEVEL["READ"] = "READ";
329
+ ACCESS_LEVEL["READ_WRITE"] = "READ_WRITE";
330
+ })(ACCESS_LEVEL || (ACCESS_LEVEL = {}));
331
+ /**
332
+ * Plan types for subscription tiers
333
+ */
334
+ export var PLAN_TYPE;
335
+ (function (PLAN_TYPE) {
336
+ PLAN_TYPE["BASIC"] = "BASIC";
337
+ PLAN_TYPE["PRO"] = "PRO";
338
+ PLAN_TYPE["ENTERPRISE"] = "ENTERPRISE";
339
+ })(PLAN_TYPE || (PLAN_TYPE = {}));
340
+ /**
341
+ * Billing interval used for charging (monthly or yearly)
342
+ */
343
+ export var BILLING_INTERVAL;
344
+ (function (BILLING_INTERVAL) {
345
+ BILLING_INTERVAL["MONTHLY"] = "MONTHLY";
346
+ BILLING_INTERVAL["YEARLY"] = "YEARLY";
347
+ })(BILLING_INTERVAL || (BILLING_INTERVAL = {}));
348
+ /**
349
+ * Admission status for student applications
350
+ */
351
+ export var ADMISSION_STATUS;
352
+ (function (ADMISSION_STATUS) {
353
+ ADMISSION_STATUS["PENDING"] = "PENDING";
354
+ ADMISSION_STATUS["APPROVED"] = "APPROVED";
355
+ ADMISSION_STATUS["REJECTED"] = "REJECTED";
356
+ ADMISSION_STATUS["ENROLLED"] = "ENROLLED";
357
+ ADMISSION_STATUS["CANCELLED"] = "CANCELLED";
358
+ })(ADMISSION_STATUS || (ADMISSION_STATUS = {}));
359
+ export var FEE_RISK_LEVEL;
360
+ (function (FEE_RISK_LEVEL) {
361
+ FEE_RISK_LEVEL["LOW"] = "LOW";
362
+ FEE_RISK_LEVEL["MEDIUM"] = "MEDIUM";
363
+ FEE_RISK_LEVEL["HIGH"] = "HIGH";
364
+ })(FEE_RISK_LEVEL || (FEE_RISK_LEVEL = {}));
365
+ export var FEE_AGENT_ACTION_TYPE;
366
+ (function (FEE_AGENT_ACTION_TYPE) {
367
+ FEE_AGENT_ACTION_TYPE["ANALYSIS"] = "ANALYSIS";
368
+ FEE_AGENT_ACTION_TYPE["MESSAGE"] = "MESSAGE";
369
+ FEE_AGENT_ACTION_TYPE["FOLLOW_UP"] = "FOLLOW_UP";
370
+ FEE_AGENT_ACTION_TYPE["RESPONSE"] = "RESPONSE";
371
+ })(FEE_AGENT_ACTION_TYPE || (FEE_AGENT_ACTION_TYPE = {}));
372
+ export var FEE_CONVERSATION_SENDER;
373
+ (function (FEE_CONVERSATION_SENDER) {
374
+ FEE_CONVERSATION_SENDER["AGENT"] = "AGENT";
375
+ FEE_CONVERSATION_SENDER["PARENT"] = "PARENT";
376
+ })(FEE_CONVERSATION_SENDER || (FEE_CONVERSATION_SENDER = {}));
377
+ export var FEE_CONVERSATION_INTENT;
378
+ (function (FEE_CONVERSATION_INTENT) {
379
+ FEE_CONVERSATION_INTENT["PROMISE"] = "PROMISE";
380
+ FEE_CONVERSATION_INTENT["PAID"] = "PAID";
381
+ FEE_CONVERSATION_INTENT["DISPUTE"] = "DISPUTE";
382
+ FEE_CONVERSATION_INTENT["UNKNOWN"] = "UNKNOWN";
383
+ })(FEE_CONVERSATION_INTENT || (FEE_CONVERSATION_INTENT = {}));
384
+ /**
385
+ * Platform of the mobile device registering a push token
386
+ */
387
+ export var DEVICE_PLATFORM;
388
+ (function (DEVICE_PLATFORM) {
389
+ DEVICE_PLATFORM["IOS"] = "IOS";
390
+ DEVICE_PLATFORM["ANDROID"] = "ANDROID";
391
+ DEVICE_PLATFORM["WEB"] = "WEB";
392
+ })(DEVICE_PLATFORM || (DEVICE_PLATFORM = {}));
393
+ /**
394
+ * Category of a mobile push notification
395
+ */
396
+ export var NOTIFICATION_TYPE;
397
+ (function (NOTIFICATION_TYPE) {
398
+ NOTIFICATION_TYPE["ASSIGNMENT"] = "ASSIGNMENT";
399
+ NOTIFICATION_TYPE["ATTENDANCE"] = "ATTENDANCE";
400
+ NOTIFICATION_TYPE["PAYMENT"] = "PAYMENT";
401
+ NOTIFICATION_TYPE["ALERT"] = "ALERT";
402
+ NOTIFICATION_TYPE["GENERAL"] = "GENERAL";
403
+ })(NOTIFICATION_TYPE || (NOTIFICATION_TYPE = {}));
404
+ /**
405
+ * WhatsApp broadcast campaign status
406
+ */
407
+ export var CAMPAIGN_STATUS;
408
+ (function (CAMPAIGN_STATUS) {
409
+ CAMPAIGN_STATUS["DRAFT"] = "DRAFT";
410
+ CAMPAIGN_STATUS["RUNNING"] = "RUNNING";
411
+ CAMPAIGN_STATUS["COMPLETED"] = "COMPLETED";
412
+ CAMPAIGN_STATUS["FAILED"] = "FAILED";
413
+ CAMPAIGN_STATUS["PAUSED"] = "PAUSED";
414
+ })(CAMPAIGN_STATUS || (CAMPAIGN_STATUS = {}));
415
+ /**
416
+ * Delivery status for an individual campaign contact
417
+ */
418
+ export var CAMPAIGN_CONTACT_STATUS;
419
+ (function (CAMPAIGN_CONTACT_STATUS) {
420
+ CAMPAIGN_CONTACT_STATUS["PENDING"] = "PENDING";
421
+ CAMPAIGN_CONTACT_STATUS["SENT"] = "SENT";
422
+ CAMPAIGN_CONTACT_STATUS["FAILED"] = "FAILED";
423
+ CAMPAIGN_CONTACT_STATUS["SKIPPED"] = "SKIPPED";
424
+ })(CAMPAIGN_CONTACT_STATUS || (CAMPAIGN_CONTACT_STATUS = {}));
425
+ /**
426
+ * Channel through which a referral invite was sent
427
+ */
428
+ export var REFERRAL_CHANNEL;
429
+ (function (REFERRAL_CHANNEL) {
430
+ REFERRAL_CHANNEL["EMAIL"] = "EMAIL";
431
+ REFERRAL_CHANNEL["WHATSAPP"] = "WHATSAPP";
432
+ REFERRAL_CHANNEL["BOTH"] = "BOTH";
433
+ })(REFERRAL_CHANNEL || (REFERRAL_CHANNEL = {}));
434
+ /**
435
+ * Status of a school referral invite
436
+ */
437
+ export var REFERRAL_STATUS;
438
+ (function (REFERRAL_STATUS) {
439
+ REFERRAL_STATUS["PENDING"] = "PENDING";
440
+ REFERRAL_STATUS["SENT"] = "SENT";
441
+ REFERRAL_STATUS["FAILED"] = "FAILED";
442
+ })(REFERRAL_STATUS || (REFERRAL_STATUS = {}));
@@ -0,0 +1,126 @@
1
+ /**
2
+ * TypeScript Types Generated from Prisma Schema - Finance
3
+ *
4
+ * This file contains TypeScript interfaces for fee structures, discount codes,
5
+ * student fees, expenses, fee agent activities, and fee conversations.
6
+ */
7
+ import { FEE_TYPE, DISCOUNT_TYPE, PAYMENT_STATUS, EXPENSE_CATEGORY, EXPENSE_STATUS, PAYMENT_METHOD, FEE_RISK_LEVEL, FEE_AGENT_ACTION_TYPE, FEE_CONVERSATION_INTENT, FEE_CONVERSATION_SENDER } from "./enums";
8
+ import type { SchoolBE } from "./user-management";
9
+ import type { ClassBE, FamilyBE, StudentProfileBE } from "./academics";
10
+ /**
11
+ * FeeStructure defines fee templates for different classes/categories
12
+ */
13
+ export interface FeeStructureBE {
14
+ amount: number;
15
+ classId?: string | null;
16
+ createdAt: string;
17
+ description: string | null;
18
+ enabled: boolean;
19
+ feeType: FEE_TYPE;
20
+ frequency: string | null;
21
+ id: string;
22
+ name: string;
23
+ schoolId: string;
24
+ updatedAt: string;
25
+ class?: ClassBE;
26
+ school?: SchoolBE;
27
+ studentFees?: StudentFeeBE[];
28
+ }
29
+ /**
30
+ * DiscountCode represents discount codes available for fee reductions
31
+ */
32
+ export interface DiscountCodeBE {
33
+ code: string;
34
+ createdAt: string;
35
+ description: string | null;
36
+ discountType: DISCOUNT_TYPE;
37
+ discountValue: number;
38
+ enabled: boolean;
39
+ id: string;
40
+ schoolId: string;
41
+ updatedAt: string;
42
+ school?: SchoolBE;
43
+ studentFees?: StudentFeeBE[];
44
+ }
45
+ /**
46
+ * StudentFee represents fees assigned to individual students
47
+ */
48
+ export interface StudentFeeBE {
49
+ amount: number;
50
+ amountDue: number;
51
+ amountPaid: number;
52
+ createdAt: string;
53
+ discountAmount: number | null;
54
+ discountCodeId: string | null;
55
+ dueDate: Date | string;
56
+ enabled: boolean;
57
+ familyId: string;
58
+ feeStructureId: string;
59
+ id: string;
60
+ lastRemindedAt: Date | string | null;
61
+ nextFollowUpAt: Date | string | null;
62
+ reliabilityScore: number | null;
63
+ remarks: string | null;
64
+ riskLevel: FEE_RISK_LEVEL | null;
65
+ schoolId: string;
66
+ status: PAYMENT_STATUS;
67
+ studentProfileId: string;
68
+ updatedAt: string;
69
+ agentActivities?: FeeAgentActivityBE[];
70
+ conversations?: FeeConversationBE[];
71
+ discountCode?: DiscountCodeBE;
72
+ family?: FamilyBE;
73
+ feeStructure?: FeeStructureBE;
74
+ school?: SchoolBE;
75
+ studentProfile?: StudentProfileBE;
76
+ }
77
+ export interface FeeAgentActivityBE {
78
+ actionType: FEE_AGENT_ACTION_TYPE;
79
+ createdAt: string;
80
+ id: string;
81
+ payload: Record<string, unknown>;
82
+ schoolId: string;
83
+ status: string;
84
+ studentFeeId: string;
85
+ updatedAt: string;
86
+ }
87
+ export interface FeeConversationBE {
88
+ createdAt: string;
89
+ id: string;
90
+ intent: FEE_CONVERSATION_INTENT;
91
+ message: string;
92
+ metadata: Record<string, unknown> | null;
93
+ schoolId: string;
94
+ sender: FEE_CONVERSATION_SENDER;
95
+ studentFeeId: string;
96
+ studentId: string;
97
+ updatedAt: string;
98
+ }
99
+ /**
100
+ * Expense represents outgoing payments and school expenditure tracking
101
+ */
102
+ export interface ExpenseBE {
103
+ amount: number;
104
+ approvedBy: string | null;
105
+ attachments: string[];
106
+ category: EXPENSE_CATEGORY;
107
+ createdAt: string;
108
+ description: string | null;
109
+ enabled: boolean;
110
+ expenseDate: Date | string;
111
+ id: string;
112
+ invoiceNumber: string | null;
113
+ paidBy: string | null;
114
+ paymentDate: Date | string | null;
115
+ paymentMethod: PAYMENT_METHOD | null;
116
+ receiptNumber: string | null;
117
+ remarks: string | null;
118
+ schoolId: string;
119
+ status: EXPENSE_STATUS;
120
+ title: string;
121
+ transactionId: string | null;
122
+ updatedAt: string;
123
+ vendorContact: string | null;
124
+ vendorName: string | null;
125
+ school?: SchoolBE;
126
+ }
@@ -0,0 +1,7 @@
1
+ /**
2
+ * TypeScript Types Generated from Prisma Schema - Finance
3
+ *
4
+ * This file contains TypeScript interfaces for fee structures, discount codes,
5
+ * student fees, expenses, fee agent activities, and fee conversations.
6
+ */
7
+ export {};
@@ -0,0 +1,12 @@
1
+ /**
2
+ * TypeScript Types — Barrel Export
3
+ *
4
+ * Re-exports all enums and domain model types from the domain-specific type files.
5
+ * Import from `@/types` to access any type in the codebase.
6
+ */
7
+ export * from "./enums";
8
+ export * from "./admission";
9
+ export * from "./user-management";
10
+ export * from "./academics";
11
+ export * from "./finance";
12
+ export * from "./communication";
package/types/index.js ADDED
@@ -0,0 +1,12 @@
1
+ /**
2
+ * TypeScript Types — Barrel Export
3
+ *
4
+ * Re-exports all enums and domain model types from the domain-specific type files.
5
+ * Import from `@/types` to access any type in the codebase.
6
+ */
7
+ export * from "./enums";
8
+ export * from "./admission";
9
+ export * from "./user-management";
10
+ export * from "./academics";
11
+ export * from "./finance";
12
+ export * from "./communication";