@valentine-efagene/qshelter-common 1.0.1 → 1.0.3

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 (154) hide show
  1. package/dist/OpenApiHelper.d.ts +9 -0
  2. package/dist/OpenApiHelper.js +118 -0
  3. package/dist/OpenApiHelper.js.map +1 -0
  4. package/dist/decorator/index.d.ts +2 -0
  5. package/dist/decorator/index.js +19 -0
  6. package/dist/decorator/index.js.map +1 -0
  7. package/dist/decorator/permission.decorator.d.ts +2 -0
  8. package/dist/decorator/permission.decorator.js +6 -0
  9. package/dist/decorator/permission.decorator.js.map +1 -0
  10. package/dist/decorator/tenant.decorator.d.ts +2 -0
  11. package/dist/decorator/tenant.decorator.js +13 -0
  12. package/dist/decorator/tenant.decorator.js.map +1 -0
  13. package/dist/entities/common.entity.js +1 -1
  14. package/dist/entities/common.entity.js.map +1 -1
  15. package/dist/entities/common.pure.entity.js +3 -2
  16. package/dist/entities/common.pure.entity.js.map +1 -1
  17. package/dist/entities/mortgage.entity.js +13 -13
  18. package/dist/entities/mortgage.entity.js.map +1 -1
  19. package/dist/entities/property.entity.d.ts +1 -2
  20. package/dist/entities/property.entity.js +6 -12
  21. package/dist/entities/property.entity.js.map +1 -1
  22. package/dist/entities/tenant.entity.d.ts +1 -1
  23. package/dist/entities/tenant.entity.js +3 -3
  24. package/dist/entities/tenant.entity.js.map +1 -1
  25. package/dist/entities/user.entity.d.ts +1 -1
  26. package/dist/entities/user.entity.js +7 -7
  27. package/dist/entities/user.entity.js.map +1 -1
  28. package/dist/entities/wallet.entity.js +9 -9
  29. package/dist/entities/wallet.entity.js.map +1 -1
  30. package/dist/guard/index.d.ts +2 -0
  31. package/dist/guard/index.js +19 -0
  32. package/dist/guard/index.js.map +1 -0
  33. package/dist/guard/permission.guard.d.ts +10 -0
  34. package/dist/guard/permission.guard.js +47 -0
  35. package/dist/guard/permission.guard.js.map +1 -0
  36. package/dist/guard/swagger-auth.guard.d.ts +1 -0
  37. package/dist/guard/swagger-auth.guard.js +9 -0
  38. package/dist/guard/swagger-auth.guard.js.map +1 -0
  39. package/dist/helpers/ArrayHelper.d.ts +2 -0
  40. package/dist/helpers/ArrayHelper.js +6 -0
  41. package/dist/helpers/ArrayHelper.js.map +1 -0
  42. package/dist/helpers/ConstantHelper.d.ts +36 -0
  43. package/{helpers/ConstantHelper.ts → dist/helpers/ConstantHelper.js} +36 -47
  44. package/dist/helpers/ConstantHelper.js.map +1 -0
  45. package/dist/helpers/CustomNamingStrategy.d.ts +7 -0
  46. package/dist/helpers/CustomNamingStrategy.js +22 -0
  47. package/dist/helpers/CustomNamingStrategy.js.map +1 -0
  48. package/dist/helpers/DateHelper.d.ts +3 -0
  49. package/dist/helpers/DateHelper.js +20 -0
  50. package/dist/helpers/DateHelper.js.map +1 -0
  51. package/dist/helpers/EmailHelper.d.ts +4 -0
  52. package/dist/helpers/EmailHelper.js +65 -0
  53. package/dist/helpers/EmailHelper.js.map +1 -0
  54. package/dist/helpers/FileSystemHelper.d.ts +15 -0
  55. package/dist/helpers/FileSystemHelper.js +112 -0
  56. package/dist/helpers/FileSystemHelper.js.map +1 -0
  57. package/dist/helpers/index.d.ts +5 -0
  58. package/dist/helpers/index.js +22 -0
  59. package/dist/helpers/index.js.map +1 -0
  60. package/dist/index.d.ts +6 -0
  61. package/dist/index.js +6 -0
  62. package/dist/index.js.map +1 -1
  63. package/dist/middleware/AccessLoggerMiddleware.d.ts +6 -0
  64. package/dist/middleware/AccessLoggerMiddleware.js +64 -0
  65. package/dist/middleware/AccessLoggerMiddleware.js.map +1 -0
  66. package/dist/middleware/AuthenticationMiddleware.d.ts +5 -0
  67. package/dist/middleware/AuthenticationMiddleware.js +19 -0
  68. package/dist/middleware/AuthenticationMiddleware.js.map +1 -0
  69. package/dist/middleware/TenantMiddleware.d.ts +14 -0
  70. package/dist/middleware/TenantMiddleware.js +49 -0
  71. package/dist/middleware/TenantMiddleware.js.map +1 -0
  72. package/dist/middleware/index.d.ts +3 -0
  73. package/dist/middleware/index.js +20 -0
  74. package/dist/middleware/index.js.map +1 -0
  75. package/dist/tsconfig.tsbuildinfo +1 -1
  76. package/dist/types/common.type.d.ts +15 -0
  77. package/dist/types/common.type.js +18 -1
  78. package/dist/types/common.type.js.map +1 -1
  79. package/dist/types/index.d.ts +8 -0
  80. package/dist/types/index.js +25 -0
  81. package/dist/types/index.js.map +1 -0
  82. package/dist/types/mortgage-fsm.type.d.ts +180 -0
  83. package/dist/types/mortgage-fsm.type.js +130 -0
  84. package/dist/types/mortgage-fsm.type.js.map +1 -0
  85. package/dist/types/permission.enums.d.ts +42 -0
  86. package/dist/types/permission.enums.js +47 -0
  87. package/dist/types/permission.enums.js.map +1 -0
  88. package/dist/types/permission.type.d.ts +42 -0
  89. package/dist/types/permission.type.js +47 -0
  90. package/dist/types/permission.type.js.map +1 -0
  91. package/{types/policy.types.ts → dist/types/policy.type.d.ts} +0 -3
  92. package/dist/types/policy.type.js +3 -0
  93. package/dist/types/policy.type.js.map +1 -0
  94. package/dist/types/tenant.type.d.ts +13 -0
  95. package/dist/types/tenant.type.js +19 -0
  96. package/dist/types/tenant.type.js.map +1 -0
  97. package/dist/types/user.type.d.ts +10 -0
  98. package/dist/types/user.type.js +16 -0
  99. package/dist/types/user.type.js.map +1 -0
  100. package/package.json +51 -3
  101. package/OpenApiHelper.ts +0 -121
  102. package/decorator/permission.decorator.ts +0 -4
  103. package/decorator/tenant.decorator.ts +0 -16
  104. package/entities/BaseEntity.ts +0 -34
  105. package/entities/TenantAwareEntity.ts +0 -34
  106. package/entities/TenantAwareRepository.ts +0 -100
  107. package/entities/amenity.entity.ts +0 -10
  108. package/entities/common.entity.ts +0 -46
  109. package/entities/common.pure.entity.ts +0 -36
  110. package/entities/index.ts +0 -27
  111. package/entities/mortgage-document.entity.ts +0 -37
  112. package/entities/mortgage-downpayment-installment.entity.ts +0 -40
  113. package/entities/mortgage-downpayment-payment.entity.ts +0 -61
  114. package/entities/mortgage-downpayment.entity.ts +0 -43
  115. package/entities/mortgage-step.entity.ts +0 -33
  116. package/entities/mortgage-type.entity.ts +0 -31
  117. package/entities/mortgage.entity.ts +0 -89
  118. package/entities/password_reset_tokens.entity.ts +0 -25
  119. package/entities/permission.entity.ts +0 -12
  120. package/entities/property-document.entity.ts +0 -21
  121. package/entities/property-media.entity.ts +0 -23
  122. package/entities/property.entity.ts +0 -147
  123. package/entities/refresh_token.entity.ts +0 -16
  124. package/entities/role.entity.ts +0 -20
  125. package/entities/settings.entity.ts +0 -56
  126. package/entities/social.entity.ts +0 -27
  127. package/entities/tenant.entity.ts +0 -65
  128. package/entities/transaction.entity.ts +0 -56
  129. package/entities/user.entity.ts +0 -89
  130. package/entities/user_suspensions.entity.ts +0 -24
  131. package/entities/wallet.entity.ts +0 -54
  132. package/guard/permission.guard.ts +0 -42
  133. package/guard/swagger-auth.guard.ts +0 -9
  134. package/helpers/ArrayHelper.ts +0 -1
  135. package/helpers/CustomNamingStrategy.ts +0 -27
  136. package/helpers/DateHelper.ts +0 -21
  137. package/helpers/EmailHelper.ts +0 -38
  138. package/helpers/FileSystemHelper.ts +0 -101
  139. package/index.ts +0 -9
  140. package/middleware/AccessLoggerMiddleware.ts +0 -58
  141. package/middleware/AuthenticationMiddleware.ts +0 -13
  142. package/middleware/TenantMiddleware.ts +0 -52
  143. package/pagination/index.ts +0 -2
  144. package/pagination/pagination.helper.ts +0 -57
  145. package/pagination/pagination.types.ts +0 -21
  146. package/standard-response.ts +0 -16
  147. package/tsconfig.json +0 -33
  148. package/types/common.type.ts +0 -32
  149. package/types/mortgage-fsm.types.ts +0 -279
  150. package/types/property.type.ts +0 -10
  151. package/types/social.enums.ts +0 -17
  152. package/types/tenant.enums.ts +0 -14
  153. package/types/transaction.type.ts +0 -9
  154. package/types/user.enums.ts +0 -11
@@ -1,16 +0,0 @@
1
- import { ApiExtraModels } from "@nestjs/swagger";
2
-
3
- @ApiExtraModels(StandardApiResponse)
4
- export class StandardApiResponse<T = any> {
5
- ok: boolean
6
- status: number;
7
- message: string;
8
- body?: T;
9
-
10
- constructor(status: number, message: string, body?: T) {
11
- this.message = message;
12
- this.status = status;
13
- this.body = body;
14
- this.ok = status >= 200 && status < 300;
15
- }
16
- }
package/tsconfig.json DELETED
@@ -1,33 +0,0 @@
1
- {
2
- "compilerOptions": {
3
- "module": "commonjs",
4
- "declaration": true,
5
- "removeComments": true,
6
- "emitDecoratorMetadata": true,
7
- "experimentalDecorators": true,
8
- "allowSyntheticDefaultImports": true,
9
- "target": "ES2021",
10
- "sourceMap": true,
11
- "outDir": "./dist",
12
- "baseUrl": "./",
13
- "incremental": true,
14
- "skipLibCheck": true,
15
- "strictNullChecks": false,
16
- "noImplicitAny": false,
17
- "strictBindCallApply": false,
18
- "forceConsistentCasingInFileNames": false,
19
- "noFallthroughCasesInSwitch": false,
20
- "esModuleInterop": true
21
- },
22
- "include": [
23
- "pagination/**/*.ts",
24
- "entities/**/*.ts",
25
- "types/**/*.ts",
26
- "index.ts",
27
- "standard-response.ts"
28
- ],
29
- "exclude": [
30
- "node_modules",
31
- "dist"
32
- ]
33
- }
@@ -1,32 +0,0 @@
1
- export enum DocumentStatus {
2
- APPROVED = 'APPROVED',
3
- PENDING = 'PENDING',
4
- DECLINED = 'DECLINED',
5
- }
6
-
7
- export enum Status {
8
- APPROVED = 'APPROVED',
9
- PENDING = 'PENDING',
10
- DECLINED = 'DECLINED',
11
- }
12
-
13
- export interface IDocument {
14
- url: string;
15
- name: string;
16
- description: string;
17
- }
18
-
19
- export class PaginatedData {
20
- total: number;
21
-
22
- totalPages: number;
23
-
24
- currentPage: number;
25
- }
26
-
27
- export enum Frequency {
28
- MONTHLY = 'MONTHLY',
29
- YEARLY = 'YEARLY',
30
- ONE_TIME = 'ONE_TIME',
31
- DAILY = 'DAILY',
32
- }
@@ -1,279 +0,0 @@
1
- /**
2
- * Comprehensive Mortgage Lifecycle States
3
- * Following industry standards for mortgage servicing
4
- */
5
- export enum MortgageState {
6
- // Application Phase
7
- DRAFT = 'DRAFT', // Initial application being filled
8
- SUBMITTED = 'SUBMITTED', // Application submitted for review
9
-
10
- // Pre-Approval Phase
11
- PRE_QUALIFICATION = 'PRE_QUALIFICATION', // Initial assessment
12
- DOCUMENT_COLLECTION = 'DOCUMENT_COLLECTION', // Gathering required documents
13
-
14
- // Underwriting Phase
15
- UNDERWRITING = 'UNDERWRITING', // Full underwriting in progress
16
- APPRAISAL_ORDERED = 'APPRAISAL_ORDERED', // Property appraisal ordered
17
- APPRAISAL_REVIEW = 'APPRAISAL_REVIEW', // Reviewing appraisal results
18
- CONDITIONAL_APPROVAL = 'CONDITIONAL_APPROVAL', // Approved with conditions
19
-
20
- // Approval Phase
21
- APPROVED = 'APPROVED', // Fully approved, awaiting closing
22
- CLOSING_SCHEDULED = 'CLOSING_SCHEDULED', // Closing date set
23
-
24
- // Downpayment Phase
25
- AWAITING_DOWNPAYMENT = 'AWAITING_DOWNPAYMENT', // Waiting for down payment
26
- DOWNPAYMENT_PARTIAL = 'DOWNPAYMENT_PARTIAL', // Partial down payment received
27
- DOWNPAYMENT_COMPLETE = 'DOWNPAYMENT_COMPLETE', // Full down payment received
28
-
29
- // Active Phase
30
- ACTIVE = 'ACTIVE', // Mortgage is active and current
31
- CURRENT = 'CURRENT', // All payments up to date (alias for ACTIVE)
32
-
33
- // Delinquency States
34
- DELINQUENT_30 = 'DELINQUENT_30', // 30 days past due
35
- DELINQUENT_60 = 'DELINQUENT_60', // 60 days past due
36
- DELINQUENT_90 = 'DELINQUENT_90', // 90 days past due
37
- DELINQUENT_120_PLUS = 'DELINQUENT_120_PLUS', // 120+ days past due
38
-
39
- // Default & Loss Mitigation
40
- DEFAULT = 'DEFAULT', // In default
41
- FORBEARANCE = 'FORBEARANCE', // Payment forbearance granted
42
- MODIFICATION = 'MODIFICATION', // Loan modification in progress
43
- SHORT_SALE = 'SHORT_SALE', // Short sale approved
44
-
45
- // Foreclosure Process
46
- FORECLOSURE_INITIATED = 'FORECLOSURE_INITIATED', // Foreclosure started
47
- FORECLOSURE_PENDING = 'FORECLOSURE_PENDING', // Foreclosure in progress
48
- FORECLOSED = 'FORECLOSED', // Property foreclosed
49
- REO = 'REO', // Real Estate Owned (bank-owned)
50
-
51
- // Completion States
52
- PAID_OFF = 'PAID_OFF', // Fully paid off
53
- REFINANCED = 'REFINANCED', // Refinanced to new loan
54
-
55
- // Termination States
56
- CANCELLED = 'CANCELLED', // Application cancelled
57
- REJECTED = 'REJECTED', // Application rejected
58
- WITHDRAWN = 'WITHDRAWN', // Withdrawn by borrower
59
- SUSPENDED = 'SUSPENDED', // Temporarily suspended
60
- }
61
-
62
- /**
63
- * Events that trigger state transitions
64
- */
65
- export enum MortgageEvent {
66
- // Application Events
67
- SUBMIT_APPLICATION = 'SUBMIT_APPLICATION',
68
- REQUEST_DOCUMENTS = 'REQUEST_DOCUMENTS',
69
- DOCUMENTS_SUBMITTED = 'DOCUMENTS_SUBMITTED',
70
-
71
- // Underwriting Events
72
- START_UNDERWRITING = 'START_UNDERWRITING',
73
- ORDER_APPRAISAL = 'ORDER_APPRAISAL',
74
- APPRAISAL_COMPLETED = 'APPRAISAL_COMPLETED',
75
- APPRAISAL_APPROVED = 'APPRAISAL_APPROVED',
76
- APPRAISAL_REJECTED = 'APPRAISAL_REJECTED',
77
- REQUEST_CONDITIONS = 'REQUEST_CONDITIONS',
78
- CONDITIONS_MET = 'CONDITIONS_MET',
79
-
80
- // Approval Events
81
- APPROVE = 'APPROVE',
82
- REJECT = 'REJECT',
83
- SCHEDULE_CLOSING = 'SCHEDULE_CLOSING',
84
-
85
- // Downpayment Events
86
- REQUEST_DOWNPAYMENT = 'REQUEST_DOWNPAYMENT',
87
- RECEIVE_PARTIAL_DOWNPAYMENT = 'RECEIVE_PARTIAL_DOWNPAYMENT',
88
- RECEIVE_FULL_DOWNPAYMENT = 'RECEIVE_FULL_DOWNPAYMENT',
89
-
90
- // Activation Events
91
- ACTIVATE = 'ACTIVATE',
92
- DISBURSE_FUNDS = 'DISBURSE_FUNDS',
93
-
94
- // Payment Events
95
- RECEIVE_PAYMENT = 'RECEIVE_PAYMENT',
96
- MISS_PAYMENT = 'MISS_PAYMENT',
97
- MARK_DELINQUENT = 'MARK_DELINQUENT',
98
- CURE_DELINQUENCY = 'CURE_DELINQUENCY',
99
-
100
- // Default & Mitigation Events
101
- DECLARE_DEFAULT = 'DECLARE_DEFAULT',
102
- GRANT_FORBEARANCE = 'GRANT_FORBEARANCE',
103
- APPROVE_MODIFICATION = 'APPROVE_MODIFICATION',
104
- APPROVE_SHORT_SALE = 'APPROVE_SHORT_SALE',
105
-
106
- // Foreclosure Events
107
- INITIATE_FORECLOSURE = 'INITIATE_FORECLOSURE',
108
- FORECLOSE = 'FORECLOSE',
109
- CONVERT_TO_REO = 'CONVERT_TO_REO',
110
-
111
- // Completion Events
112
- PAY_OFF = 'PAY_OFF',
113
- REFINANCE = 'REFINANCE',
114
-
115
- // Termination Events
116
- CANCEL = 'CANCEL',
117
- WITHDRAW = 'WITHDRAW',
118
- SUSPEND = 'SUSPEND',
119
- RESUME = 'RESUME',
120
- }
121
-
122
- /**
123
- * Side effects / Actions executed during transitions
124
- */
125
- export enum MortgageAction {
126
- // Notification Actions
127
- NOTIFY_BORROWER = 'NOTIFY_BORROWER',
128
- NOTIFY_UNDERWRITER = 'NOTIFY_UNDERWRITER',
129
- NOTIFY_CLOSER = 'NOTIFY_CLOSER',
130
- NOTIFY_COLLECTIONS = 'NOTIFY_COLLECTIONS',
131
- NOTIFY_LEGAL = 'NOTIFY_LEGAL',
132
- SEND_EMAIL = 'SEND_EMAIL',
133
- SEND_SMS = 'SEND_SMS',
134
-
135
- // Document Actions
136
- REQUEST_DOCUMENTS = 'REQUEST_DOCUMENTS',
137
- GENERATE_AGREEMENT = 'GENERATE_AGREEMENT',
138
- GENERATE_APPROVAL_LETTER = 'GENERATE_APPROVAL_LETTER',
139
- GENERATE_CLOSING_DISCLOSURE = 'GENERATE_CLOSING_DISCLOSURE',
140
- GENERATE_CLOSING_DOCS = 'GENERATE_CLOSING_DOCS',
141
- GENERATE_PROMISSORY_NOTE = 'GENERATE_PROMISSORY_NOTE',
142
- REQUEST_TITLE_INSURANCE = 'REQUEST_TITLE_INSURANCE',
143
-
144
- // Appraisal & Inspection Actions
145
- ORDER_APPRAISAL = 'ORDER_APPRAISAL',
146
- REQUEST_INSPECTION = 'REQUEST_INSPECTION',
147
-
148
- // Credit & Verification Actions
149
- RUN_CREDIT_CHECK = 'RUN_CREDIT_CHECK',
150
- VERIFY_INCOME = 'VERIFY_INCOME',
151
- VERIFY_EMPLOYMENT = 'VERIFY_EMPLOYMENT',
152
- VERIFY_INSURANCE = 'VERIFY_INSURANCE',
153
-
154
- // Financial Actions
155
- CALCULATE_PAYMENT_SCHEDULE = 'CALCULATE_PAYMENT_SCHEDULE',
156
- SETUP_PAYMENT_SCHEDULE = 'SETUP_PAYMENT_SCHEDULE',
157
- DISBURSE_LOAN_AMOUNT = 'DISBURSE_LOAN_AMOUNT',
158
- DISBURSE_FUNDS = 'DISBURSE_FUNDS',
159
- PROCESS_PAYMENT = 'PROCESS_PAYMENT',
160
- RECORD_PAYMENT = 'RECORD_PAYMENT',
161
- REFUND_PAYMENT = 'REFUND_PAYMENT',
162
- ASSESS_LATE_FEE = 'ASSESS_LATE_FEE',
163
- UPDATE_CREDIT_BUREAU = 'UPDATE_CREDIT_BUREAU',
164
- FREEZE_ACCOUNT = 'FREEZE_ACCOUNT',
165
-
166
- // Process Actions
167
- ASSIGN_UNDERWRITER = 'ASSIGN_UNDERWRITER',
168
- ORDER_TITLE_SEARCH = 'ORDER_TITLE_SEARCH',
169
- SCHEDULE_INSPECTION = 'SCHEDULE_INSPECTION',
170
- CREATE_ESCROW_ACCOUNT = 'CREATE_ESCROW_ACCOUNT',
171
- SETUP_ESCROW = 'SETUP_ESCROW',
172
- RECORD_LIEN = 'RECORD_LIEN',
173
- RELEASE_LIEN = 'RELEASE_LIEN',
174
-
175
- // Legal Actions
176
- INITIATE_FORECLOSURE = 'INITIATE_FORECLOSURE',
177
- SCHEDULE_AUCTION = 'SCHEDULE_AUCTION',
178
-
179
- // Compliance Actions
180
- LOG_AUDIT_TRAIL = 'LOG_AUDIT_TRAIL',
181
- VERIFY_COMPLIANCE = 'VERIFY_COMPLIANCE',
182
- GENERATE_REGULATORY_REPORT = 'GENERATE_REGULATORY_REPORT',
183
- REPORT_TO_REGULATOR = 'REPORT_TO_REGULATOR',
184
-
185
- // Analytics Actions
186
- UPDATE_ANALYTICS = 'UPDATE_ANALYTICS',
187
- }
188
-
189
- /**
190
- * Context data passed through FSM transitions
191
- */
192
- export interface MortgageFSMContext {
193
- mortgageId: number;
194
- borrowerId: number;
195
- propertyId: number;
196
- principal: number;
197
- downPayment: number;
198
- downPaymentReceived?: number;
199
- interestRate: number;
200
- termMonths: number;
201
-
202
- // Timestamps
203
- submittedAt?: Date;
204
- approvedAt?: Date;
205
- activatedAt?: Date;
206
- paidOffAt?: Date;
207
-
208
- // Payment tracking
209
- lastPaymentDate?: Date;
210
- nextPaymentDate?: Date;
211
- daysPastDue?: number;
212
- totalPaid?: number;
213
- remainingBalance?: number;
214
-
215
- // Document tracking
216
- documentsComplete?: boolean;
217
- appraisalValue?: number;
218
- appraisalDate?: Date;
219
-
220
- // Conditions
221
- conditions?: string[];
222
- conditionsMet?: boolean;
223
-
224
- // Metadata
225
- metadata?: Record<string, any>;
226
- error?: string;
227
- triggeredBy?: string; // User or system that triggered transition
228
- }
229
-
230
- /**
231
- * Guard conditions for transitions
232
- */
233
- export interface TransitionGuard {
234
- name: string;
235
- check: (context: MortgageFSMContext) => boolean | Promise<boolean>;
236
- errorMessage?: string;
237
- }
238
-
239
- /**
240
- * Action to execute during transition
241
- */
242
- export interface TransitionAction {
243
- name: string;
244
- execute: (context: MortgageFSMContext) => Promise<void>;
245
- rollback?: (context: MortgageFSMContext) => Promise<void>;
246
- }
247
-
248
- /**
249
- * Complete state transition definition
250
- */
251
- export interface StateTransition {
252
- from: MortgageState | MortgageState[];
253
- to: MortgageState;
254
- event: MortgageEvent;
255
- guards?: TransitionGuard[];
256
- actions?: TransitionAction[];
257
- description?: string;
258
- }
259
-
260
- /**
261
- * State change event for audit/event sourcing
262
- */
263
- export interface MortgageStateChangeEvent {
264
- mortgageId: number;
265
- fromState: MortgageState;
266
- toState: MortgageState;
267
- event: MortgageEvent;
268
- context: MortgageFSMContext;
269
- timestamp: Date;
270
- triggeredBy: string;
271
- success: boolean;
272
- error?: string;
273
- }
274
-
275
- export default {
276
- MortgageState,
277
- MortgageEvent,
278
- MortgageAction,
279
- };
@@ -1,10 +0,0 @@
1
- export enum PropertyStatus {
2
- APPROVED = 'APPROVED',
3
- PENDING = 'PENDING',
4
- DECLINED = 'DECLINED',
5
- }
6
-
7
- export enum PropertyType {
8
- APARTMENT = 'APARTMENT',
9
- HOUSE = 'HOUSE',
10
- }
@@ -1,17 +0,0 @@
1
- export enum PropertyCategory {
2
- RENT = 'RENT',
3
- SALE = 'SALE',
4
- }
5
-
6
- export enum PropertyType {
7
- APARTMENT = 'APARTMENT',
8
- HOUSE = 'HOUSE',
9
- }
10
-
11
- export enum Currency {
12
- USD = 'USD',
13
- EUR = 'EUR',
14
- GBP = 'GBP',
15
- JPY = 'JPY',
16
- NGN = 'NGN',
17
- }
@@ -1,14 +0,0 @@
1
- export enum TenantStatus {
2
- ACTIVE = 'active',
3
- SUSPENDED = 'suspended',
4
- PENDING = 'pending',
5
- TRIAL = 'trial',
6
- CANCELLED = 'cancelled'
7
- }
8
-
9
- export enum TenantPlan {
10
- FREE = 'free',
11
- BASIC = 'basic',
12
- PREMIUM = 'premium',
13
- ENTERPRISE = 'enterprise'
14
- }
@@ -1,9 +0,0 @@
1
- export enum TransactionType {
2
- DEBIT = 'debit',
3
- CREDIT = 'credit',
4
- }
5
-
6
- export enum Provider {
7
- BUDPAY = 'budpay',
8
- PAYSTACK = 'paystack',
9
- }
@@ -1,11 +0,0 @@
1
- export enum UserRole {
2
- ADMIN = 'admin',
3
- VENDOR = 'vendor',
4
- USER = 'user',
5
- }
6
-
7
- export enum UserStatus {
8
- ACTIVE = 'ACTIVE',
9
- SUSPENDED = 'SUSPENDED',
10
- PENDING = 'PENDING',
11
- }