@rentbase/common 1.0.5

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 (271) hide show
  1. package/build/errors/bad-request-error.d.ts +9 -0
  2. package/build/errors/bad-request-error.js +16 -0
  3. package/build/errors/custom-error.d.ts +8 -0
  4. package/build/errors/custom-error.js +10 -0
  5. package/build/errors/database-connection-error.d.ts +9 -0
  6. package/build/errors/database-connection-error.js +16 -0
  7. package/build/errors/not-authorized-error.d.ts +8 -0
  8. package/build/errors/not-authorized-error.js +15 -0
  9. package/build/errors/not-found-error.d.ts +8 -0
  10. package/build/errors/not-found-error.js +15 -0
  11. package/build/errors/request-validation-error.d.ts +11 -0
  12. package/build/errors/request-validation-error.js +19 -0
  13. package/build/events/consumer.d.ts +2 -0
  14. package/build/events/consumer.js +30 -0
  15. package/build/events/producer.d.ts +3 -0
  16. package/build/events/producer.js +42 -0
  17. package/build/events/publishers/call-answered-publisher.d.ts +2 -0
  18. package/build/events/publishers/call-answered-publisher.js +17 -0
  19. package/build/events/publishers/call-ended-publisher.d.ts +2 -0
  20. package/build/events/publishers/call-ended-publisher.js +17 -0
  21. package/build/events/publishers/call-failed-publisher.d.ts +2 -0
  22. package/build/events/publishers/call-failed-publisher.js +17 -0
  23. package/build/events/publishers/call-initiated-publisher.d.ts +2 -0
  24. package/build/events/publishers/call-initiated-publisher.js +17 -0
  25. package/build/events/publishers/call-missed-publisher.d.ts +2 -0
  26. package/build/events/publishers/call-missed-publisher.js +17 -0
  27. package/build/events/publishers/call-provider-status-update-publisher.d.ts +2 -0
  28. package/build/events/publishers/call-provider-status-update-publisher.js +17 -0
  29. package/build/events/publishers/call-rated-publisher.d.ts +2 -0
  30. package/build/events/publishers/call-rated-publisher.js +17 -0
  31. package/build/events/publishers/call-rejected-publisher.d.ts +2 -0
  32. package/build/events/publishers/call-rejected-publisher.js +17 -0
  33. package/build/events/publishers/call-ringing-publisher.d.ts +2 -0
  34. package/build/events/publishers/call-ringing-publisher.js +17 -0
  35. package/build/events/publishers/campaign-activated-publisher.d.ts +2 -0
  36. package/build/events/publishers/campaign-activated-publisher.js +17 -0
  37. package/build/events/publishers/campaign-created-publisher.d.ts +2 -0
  38. package/build/events/publishers/campaign-created-publisher.js +17 -0
  39. package/build/events/publishers/campaign-expired-publisher.d.ts +2 -0
  40. package/build/events/publishers/campaign-expired-publisher.js +17 -0
  41. package/build/events/publishers/campaign-redemption-publisher.d.ts +2 -0
  42. package/build/events/publishers/campaign-redemption-publisher.js +17 -0
  43. package/build/events/publishers/campaign-status-changed-publisher.d.ts +2 -0
  44. package/build/events/publishers/campaign-status-changed-publisher.js +17 -0
  45. package/build/events/publishers/chat-participant-muted-publisher.d.ts +2 -0
  46. package/build/events/publishers/chat-participant-muted-publisher.js +17 -0
  47. package/build/events/publishers/chat-session-closed-publisher.d.ts +2 -0
  48. package/build/events/publishers/chat-session-closed-publisher.js +17 -0
  49. package/build/events/publishers/chat-session-created-publisher.d.ts +2 -0
  50. package/build/events/publishers/chat-session-created-publisher.js +17 -0
  51. package/build/events/publishers/city-created-publisher.d.ts +6 -0
  52. package/build/events/publishers/city-created-publisher.js +21 -0
  53. package/build/events/publishers/city-status-changed-publisher.d.ts +6 -0
  54. package/build/events/publishers/city-status-changed-publisher.js +21 -0
  55. package/build/events/publishers/city-updated-publisher.d.ts +6 -0
  56. package/build/events/publishers/city-updated-publisher.js +21 -0
  57. package/build/events/publishers/country-created-publisher.d.ts +6 -0
  58. package/build/events/publishers/country-created-publisher.js +21 -0
  59. package/build/events/publishers/country-status-changed-publisher.d.ts +6 -0
  60. package/build/events/publishers/country-status-changed-publisher.js +21 -0
  61. package/build/events/publishers/country-updated-publisher.d.ts +6 -0
  62. package/build/events/publishers/country-updated-publisher.js +21 -0
  63. package/build/events/publishers/disciplinary-action-activated-publisher.d.ts +2 -0
  64. package/build/events/publishers/disciplinary-action-activated-publisher.js +17 -0
  65. package/build/events/publishers/disciplinary-action-created-publisher.d.ts +2 -0
  66. package/build/events/publishers/disciplinary-action-created-publisher.js +17 -0
  67. package/build/events/publishers/disciplinary-action-revoked-publisher.d.ts +2 -0
  68. package/build/events/publishers/disciplinary-action-revoked-publisher.js +17 -0
  69. package/build/events/publishers/discount-applied-publisher.d.ts +2 -0
  70. package/build/events/publishers/discount-applied-publisher.js +17 -0
  71. package/build/events/publishers/discount-calculated-publisher.d.ts +2 -0
  72. package/build/events/publishers/discount-calculated-publisher.js +17 -0
  73. package/build/events/publishers/incident-created-publisher.d.ts +2 -0
  74. package/build/events/publishers/incident-created-publisher.js +17 -0
  75. package/build/events/publishers/incident-resolved-publisher.d.ts +2 -0
  76. package/build/events/publishers/incident-resolved-publisher.js +17 -0
  77. package/build/events/publishers/incident-updated-publisher.d.ts +2 -0
  78. package/build/events/publishers/incident-updated-publisher.js +17 -0
  79. package/build/events/publishers/message-delivered-publisher.d.ts +2 -0
  80. package/build/events/publishers/message-delivered-publisher.js +17 -0
  81. package/build/events/publishers/message-read-publisher.d.ts +2 -0
  82. package/build/events/publishers/message-read-publisher.js +17 -0
  83. package/build/events/publishers/message-sent-publisher.d.ts +2 -0
  84. package/build/events/publishers/message-sent-publisher.js +17 -0
  85. package/build/events/publishers/notification-bulk-send-completed-publisher.d.ts +6 -0
  86. package/build/events/publishers/notification-bulk-send-completed-publisher.js +21 -0
  87. package/build/events/publishers/notification-bulk-send-initiated-publisher.d.ts +6 -0
  88. package/build/events/publishers/notification-bulk-send-initiated-publisher.js +21 -0
  89. package/build/events/publishers/notification-created-publisher.d.ts +6 -0
  90. package/build/events/publishers/notification-created-publisher.js +21 -0
  91. package/build/events/publishers/notification-delivered-publisher.d.ts +6 -0
  92. package/build/events/publishers/notification-delivered-publisher.js +21 -0
  93. package/build/events/publishers/notification-failed-publisher.d.ts +6 -0
  94. package/build/events/publishers/notification-failed-publisher.js +21 -0
  95. package/build/events/publishers/notification-preferences-updated-publisher.d.ts +6 -0
  96. package/build/events/publishers/notification-preferences-updated-publisher.js +21 -0
  97. package/build/events/publishers/notification-read-publisher.d.ts +6 -0
  98. package/build/events/publishers/notification-read-publisher.js +21 -0
  99. package/build/events/publishers/notification-sent-publisher.d.ts +6 -0
  100. package/build/events/publishers/notification-sent-publisher.js +21 -0
  101. package/build/events/publishers/notification-template-created-publisher.d.ts +6 -0
  102. package/build/events/publishers/notification-template-created-publisher.js +21 -0
  103. package/build/events/publishers/notification-template-updated-publisher.d.ts +6 -0
  104. package/build/events/publishers/notification-template-updated-publisher.js +21 -0
  105. package/build/events/publishers/payment-charge-refunded-publisher.d.ts +2 -0
  106. package/build/events/publishers/payment-charge-refunded-publisher.js +17 -0
  107. package/build/events/publishers/payment-intent-cancelled-publisher.d.ts +2 -0
  108. package/build/events/publishers/payment-intent-cancelled-publisher.js +17 -0
  109. package/build/events/publishers/payment-intent-created-publisher.d.ts +2 -0
  110. package/build/events/publishers/payment-intent-created-publisher.js +17 -0
  111. package/build/events/publishers/payment-intent-failed-publisher.d.ts +2 -0
  112. package/build/events/publishers/payment-intent-failed-publisher.js +17 -0
  113. package/build/events/publishers/payment-intent-succeeded-publisher.d.ts +2 -0
  114. package/build/events/publishers/payment-intent-succeeded-publisher.js +17 -0
  115. package/build/events/publishers/payout-approved-publisher.d.ts +2 -0
  116. package/build/events/publishers/payout-approved-publisher.js +17 -0
  117. package/build/events/publishers/payout-cancelled-publisher.d.ts +2 -0
  118. package/build/events/publishers/payout-cancelled-publisher.js +17 -0
  119. package/build/events/publishers/payout-failed-publisher.d.ts +2 -0
  120. package/build/events/publishers/payout-failed-publisher.js +17 -0
  121. package/build/events/publishers/payout-processing-publisher.d.ts +2 -0
  122. package/build/events/publishers/payout-processing-publisher.js +17 -0
  123. package/build/events/publishers/payout-requested-publisher.d.ts +2 -0
  124. package/build/events/publishers/payout-requested-publisher.js +17 -0
  125. package/build/events/publishers/payout-succeeded-publisher.d.ts +2 -0
  126. package/build/events/publishers/payout-succeeded-publisher.js +17 -0
  127. package/build/events/publishers/promo-code-applied-publisher.d.ts +2 -0
  128. package/build/events/publishers/promo-code-applied-publisher.js +17 -0
  129. package/build/events/publishers/promo-code-bulk-created-publisher.d.ts +2 -0
  130. package/build/events/publishers/promo-code-bulk-created-publisher.js +17 -0
  131. package/build/events/publishers/promo-code-created-publisher.d.ts +2 -0
  132. package/build/events/publishers/promo-code-created-publisher.js +17 -0
  133. package/build/events/publishers/promo-code-status-changed-publisher.d.ts +2 -0
  134. package/build/events/publishers/promo-code-status-changed-publisher.js +17 -0
  135. package/build/events/publishers/property-created-publisher.d.ts +6 -0
  136. package/build/events/publishers/property-created-publisher.js +21 -0
  137. package/build/events/publishers/property-deleted-publisher.d.ts +6 -0
  138. package/build/events/publishers/property-deleted-publisher.js +21 -0
  139. package/build/events/publishers/property-offer-accepted-publisher.d.ts +6 -0
  140. package/build/events/publishers/property-offer-accepted-publisher.js +21 -0
  141. package/build/events/publishers/property-offer-created-publisher.d.ts +6 -0
  142. package/build/events/publishers/property-offer-created-publisher.js +21 -0
  143. package/build/events/publishers/property-offer-expired-publisher.d.ts +6 -0
  144. package/build/events/publishers/property-offer-expired-publisher.js +21 -0
  145. package/build/events/publishers/property-offer-rejected-publisher.d.ts +6 -0
  146. package/build/events/publishers/property-offer-rejected-publisher.js +21 -0
  147. package/build/events/publishers/property-offer-updated-publisher.d.ts +6 -0
  148. package/build/events/publishers/property-offer-updated-publisher.js +21 -0
  149. package/build/events/publishers/property-offer-withdrawn-publisher.d.ts +6 -0
  150. package/build/events/publishers/property-offer-withdrawn-publisher.js +21 -0
  151. package/build/events/publishers/property-rating-submitted-publisher.d.ts +6 -0
  152. package/build/events/publishers/property-rating-submitted-publisher.js +21 -0
  153. package/build/events/publishers/property-rating-updated-publisher.d.ts +6 -0
  154. package/build/events/publishers/property-rating-updated-publisher.js +21 -0
  155. package/build/events/publishers/property-report-created-publisher.d.ts +6 -0
  156. package/build/events/publishers/property-report-created-publisher.js +21 -0
  157. package/build/events/publishers/property-report-resolved-publisher.d.ts +6 -0
  158. package/build/events/publishers/property-report-resolved-publisher.js +21 -0
  159. package/build/events/publishers/property-report-updated-publisher.d.ts +6 -0
  160. package/build/events/publishers/property-report-updated-publisher.js +21 -0
  161. package/build/events/publishers/property-status-changed-publisher.d.ts +6 -0
  162. package/build/events/publishers/property-status-changed-publisher.js +21 -0
  163. package/build/events/publishers/property-updated-publisher.d.ts +6 -0
  164. package/build/events/publishers/property-updated-publisher.js +21 -0
  165. package/build/events/publishers/property-viewed-publisher.d.ts +6 -0
  166. package/build/events/publishers/property-viewed-publisher.js +21 -0
  167. package/build/events/publishers/property-viewing-cancelled-publisher.d.ts +6 -0
  168. package/build/events/publishers/property-viewing-cancelled-publisher.js +21 -0
  169. package/build/events/publishers/property-viewing-completed-publisher.d.ts +6 -0
  170. package/build/events/publishers/property-viewing-completed-publisher.js +21 -0
  171. package/build/events/publishers/property-viewing-confirmed-publisher.d.ts +6 -0
  172. package/build/events/publishers/property-viewing-confirmed-publisher.js +21 -0
  173. package/build/events/publishers/property-viewing-no-show-publisher.d.ts +6 -0
  174. package/build/events/publishers/property-viewing-no-show-publisher.js +21 -0
  175. package/build/events/publishers/property-viewing-scheduled-publisher.d.ts +6 -0
  176. package/build/events/publishers/property-viewing-scheduled-publisher.js +21 -0
  177. package/build/events/publishers/referral-claimed-publisher.d.ts +2 -0
  178. package/build/events/publishers/referral-claimed-publisher.js +17 -0
  179. package/build/events/publishers/referral-code-generated-publisher.d.ts +2 -0
  180. package/build/events/publishers/referral-code-generated-publisher.js +17 -0
  181. package/build/events/publishers/referral-conversion-publisher.d.ts +2 -0
  182. package/build/events/publishers/referral-conversion-publisher.js +17 -0
  183. package/build/events/publishers/referral-qualified-publisher.d.ts +2 -0
  184. package/build/events/publishers/referral-qualified-publisher.js +17 -0
  185. package/build/events/publishers/referral-rewards-granted-publisher.d.ts +2 -0
  186. package/build/events/publishers/referral-rewards-granted-publisher.js +17 -0
  187. package/build/events/publishers/referral-status-changed-publisher.d.ts +2 -0
  188. package/build/events/publishers/referral-status-changed-publisher.js +17 -0
  189. package/build/events/publishers/rental-agreement-activated-publisher.d.ts +6 -0
  190. package/build/events/publishers/rental-agreement-activated-publisher.js +21 -0
  191. package/build/events/publishers/rental-agreement-created-publisher.d.ts +6 -0
  192. package/build/events/publishers/rental-agreement-created-publisher.js +21 -0
  193. package/build/events/publishers/rental-agreement-expired-publisher.d.ts +6 -0
  194. package/build/events/publishers/rental-agreement-expired-publisher.js +21 -0
  195. package/build/events/publishers/rental-agreement-signed-publisher.d.ts +6 -0
  196. package/build/events/publishers/rental-agreement-signed-publisher.js +21 -0
  197. package/build/events/publishers/rental-agreement-terminated-publisher.d.ts +6 -0
  198. package/build/events/publishers/rental-agreement-terminated-publisher.js +21 -0
  199. package/build/events/publishers/reward-credit-cancelled-publisher.d.ts +2 -0
  200. package/build/events/publishers/reward-credit-cancelled-publisher.js +17 -0
  201. package/build/events/publishers/reward-credit-expired-publisher.d.ts +2 -0
  202. package/build/events/publishers/reward-credit-expired-publisher.js +17 -0
  203. package/build/events/publishers/reward-credit-issued-publisher.d.ts +2 -0
  204. package/build/events/publishers/reward-credit-issued-publisher.js +17 -0
  205. package/build/events/publishers/reward-credit-used-publisher.d.ts +2 -0
  206. package/build/events/publishers/reward-credit-used-publisher.js +17 -0
  207. package/build/events/publishers/safety-audit-log-created-publisher.d.ts +2 -0
  208. package/build/events/publishers/safety-audit-log-created-publisher.js +17 -0
  209. package/build/events/publishers/safety-note-created-publisher.d.ts +2 -0
  210. package/build/events/publishers/safety-note-created-publisher.js +17 -0
  211. package/build/events/publishers/sos-acknowledged-publisher.d.ts +2 -0
  212. package/build/events/publishers/sos-acknowledged-publisher.js +17 -0
  213. package/build/events/publishers/sos-resolved-publisher.d.ts +2 -0
  214. package/build/events/publishers/sos-resolved-publisher.js +17 -0
  215. package/build/events/publishers/sos-responding-publisher.d.ts +2 -0
  216. package/build/events/publishers/sos-responding-publisher.js +17 -0
  217. package/build/events/publishers/sos-triggered-publisher.d.ts +2 -0
  218. package/build/events/publishers/sos-triggered-publisher.js +17 -0
  219. package/build/events/publishers/system-message-added-publisher.d.ts +2 -0
  220. package/build/events/publishers/system-message-added-publisher.js +17 -0
  221. package/build/events/publishers/transaction-status-changed-publisher.d.ts +2 -0
  222. package/build/events/publishers/transaction-status-changed-publisher.js +17 -0
  223. package/build/events/publishers/wallet-adjusted-publisher.d.ts +2 -0
  224. package/build/events/publishers/wallet-adjusted-publisher.js +17 -0
  225. package/build/events/publishers/wallet-balance-updated-publisher.d.ts +2 -0
  226. package/build/events/publishers/wallet-balance-updated-publisher.js +17 -0
  227. package/build/events/publishers/wallet-created-publisher.d.ts +2 -0
  228. package/build/events/publishers/wallet-created-publisher.js +17 -0
  229. package/build/events/publishers/wallet-status-changed-publisher.d.ts +2 -0
  230. package/build/events/publishers/wallet-status-changed-publisher.js +17 -0
  231. package/build/events/publishers/wallet-transaction-created-publisher.d.ts +2 -0
  232. package/build/events/publishers/wallet-transaction-created-publisher.js +17 -0
  233. package/build/events/publishers/webhook-processed-publisher.d.ts +2 -0
  234. package/build/events/publishers/webhook-processed-publisher.js +17 -0
  235. package/build/events/publishers/webhook-received-publisher.d.ts +2 -0
  236. package/build/events/publishers/webhook-received-publisher.js +17 -0
  237. package/build/events/types/chat-events.d.ts +145 -0
  238. package/build/events/types/chat-events.js +6 -0
  239. package/build/events/types/geo-config-events.d.ts +84 -0
  240. package/build/events/types/geo-config-events.js +2 -0
  241. package/build/events/types/index.d.ts +134 -0
  242. package/build/events/types/index.js +22 -0
  243. package/build/events/types/notification-events.d.ts +138 -0
  244. package/build/events/types/notification-events.js +6 -0
  245. package/build/events/types/payment-events.d.ts +287 -0
  246. package/build/events/types/payment-events.js +6 -0
  247. package/build/events/types/promotion-events.d.ts +236 -0
  248. package/build/events/types/promotion-events.js +6 -0
  249. package/build/events/types/property-events.d.ts +354 -0
  250. package/build/events/types/property-events.js +60 -0
  251. package/build/events/types/request-events.d.ts +60 -0
  252. package/build/events/types/request-events.js +18 -0
  253. package/build/events/types/safety-events.d.ts +143 -0
  254. package/build/events/types/safety-events.js +6 -0
  255. package/build/events/types/user-events.d.ts +131 -0
  256. package/build/events/types/user-events.js +6 -0
  257. package/build/index.d.ts +133 -0
  258. package/build/index.js +167 -0
  259. package/build/middlewares/current-user.d.ts +2 -0
  260. package/build/middlewares/current-user.js +20 -0
  261. package/build/middlewares/error-handler.d.ts +2 -0
  262. package/build/middlewares/error-handler.js +14 -0
  263. package/build/middlewares/require-auth.d.ts +12 -0
  264. package/build/middlewares/require-auth.js +83 -0
  265. package/build/middlewares/system-logger.d.ts +0 -0
  266. package/build/middlewares/system-logger.js +1 -0
  267. package/build/middlewares/validate-request.d.ts +2 -0
  268. package/build/middlewares/validate-request.js +13 -0
  269. package/build/types/auth.d.ts +22 -0
  270. package/build/types/auth.js +5 -0
  271. package/package.json +40 -0
@@ -0,0 +1,354 @@
1
+ /**
2
+ * Property Event Types for Property Marketplace
3
+ */
4
+ export declare enum PropertyType {
5
+ HOUSE = "house",
6
+ APARTMENT = "apartment",
7
+ CONDO = "condo",
8
+ TOWNHOUSE = "townhouse",
9
+ STUDIO = "studio",
10
+ LAND = "land",
11
+ COMMERCIAL = "commercial",
12
+ OFFICE = "office",
13
+ WAREHOUSE = "warehouse",
14
+ SHOP = "shop",
15
+ PARKING = "parking",
16
+ OTHER = "other"
17
+ }
18
+ export declare enum PropertyStatus {
19
+ DRAFT = "draft",
20
+ ACTIVE = "active",
21
+ INACTIVE = "inactive",
22
+ RENTED = "rented",
23
+ SOLD = "sold",
24
+ SUSPENDED = "suspended"
25
+ }
26
+ export declare enum ListingType {
27
+ FOR_RENT = "for_rent",
28
+ FOR_SALE = "for_sale",
29
+ BOTH = "both"
30
+ }
31
+ export declare enum OfferStatus {
32
+ PENDING = "pending",
33
+ ACCEPTED = "accepted",
34
+ REJECTED = "rejected",
35
+ WITHDRAWN = "withdrawn",
36
+ EXPIRED = "expired"
37
+ }
38
+ export declare enum ViewingStatus {
39
+ SCHEDULED = "scheduled",
40
+ CONFIRMED = "confirmed",
41
+ COMPLETED = "completed",
42
+ CANCELLED = "cancelled",
43
+ NO_SHOW = "no_show"
44
+ }
45
+ export declare enum AgreementStatus {
46
+ DRAFT = "draft",
47
+ PENDING_SIGNATURE = "pending_signature",
48
+ ACTIVE = "active",
49
+ EXPIRED = "expired",
50
+ TERMINATED = "terminated"
51
+ }
52
+ export interface PropertyCreatedEvent {
53
+ id: string;
54
+ landlordId: string;
55
+ title: string;
56
+ description: string;
57
+ propertyType: PropertyType;
58
+ listingType: ListingType;
59
+ location: {
60
+ address: string;
61
+ city: string;
62
+ cityId: string;
63
+ country: string;
64
+ countryCode: string;
65
+ coordinates: {
66
+ lat: number;
67
+ lng: number;
68
+ };
69
+ };
70
+ price: number;
71
+ currency: string;
72
+ bedrooms?: number;
73
+ bathrooms?: number;
74
+ areaSize?: number;
75
+ areaUnit?: string;
76
+ images: string[];
77
+ amenities: string[];
78
+ status: PropertyStatus;
79
+ allowNegotiation: boolean;
80
+ minimumOfferPrice?: number;
81
+ createdAt: Date;
82
+ updatedAt: Date;
83
+ }
84
+ export interface PropertyUpdatedEvent {
85
+ id: string;
86
+ landlordId: string;
87
+ title: string;
88
+ description: string;
89
+ propertyType: PropertyType;
90
+ listingType: ListingType;
91
+ location: {
92
+ address: string;
93
+ city: string;
94
+ cityId: string;
95
+ country: string;
96
+ countryCode: string;
97
+ coordinates: {
98
+ lat: number;
99
+ lng: number;
100
+ };
101
+ };
102
+ price: number;
103
+ currency: string;
104
+ bedrooms?: number;
105
+ bathrooms?: number;
106
+ areaSize?: number;
107
+ areaUnit?: string;
108
+ images: string[];
109
+ amenities: string[];
110
+ status: PropertyStatus;
111
+ allowNegotiation: boolean;
112
+ minimumOfferPrice?: number;
113
+ updatedAt: Date;
114
+ }
115
+ export interface PropertyStatusChangedEvent {
116
+ id: string;
117
+ landlordId: string;
118
+ title: string;
119
+ previousStatus: PropertyStatus;
120
+ newStatus: PropertyStatus;
121
+ reason?: string;
122
+ changedBy?: string;
123
+ changedAt: Date;
124
+ }
125
+ export interface PropertyDeletedEvent {
126
+ id: string;
127
+ landlordId: string;
128
+ title: string;
129
+ reason?: string;
130
+ deletedBy?: string;
131
+ deletedAt: Date;
132
+ }
133
+ export interface PropertyViewedEvent {
134
+ propertyId: string;
135
+ landlordId: string;
136
+ tenantId: string;
137
+ viewedAt: Date;
138
+ }
139
+ export interface PropertyOfferCreatedEvent {
140
+ id: string;
141
+ propertyId: string;
142
+ landlordId: string;
143
+ tenantId: string;
144
+ offerPrice: number;
145
+ currency: string;
146
+ message?: string;
147
+ status: OfferStatus;
148
+ createdAt: Date;
149
+ }
150
+ export interface PropertyOfferUpdatedEvent {
151
+ id: string;
152
+ propertyId: string;
153
+ landlordId: string;
154
+ tenantId: string;
155
+ offerPrice: number;
156
+ currency: string;
157
+ message?: string;
158
+ status: OfferStatus;
159
+ updatedAt: Date;
160
+ }
161
+ export interface PropertyOfferAcceptedEvent {
162
+ id: string;
163
+ propertyId: string;
164
+ landlordId: string;
165
+ tenantId: string;
166
+ agreedPrice: number;
167
+ currency: string;
168
+ acceptedAt: Date;
169
+ }
170
+ export interface PropertyOfferRejectedEvent {
171
+ id: string;
172
+ propertyId: string;
173
+ landlordId: string;
174
+ tenantId: string;
175
+ offerPrice: number;
176
+ rejectionReason?: string;
177
+ rejectedAt: Date;
178
+ }
179
+ export interface PropertyOfferWithdrawnEvent {
180
+ id: string;
181
+ propertyId: string;
182
+ landlordId: string;
183
+ tenantId: string;
184
+ withdrawnBy: "tenant" | "landlord";
185
+ reason?: string;
186
+ withdrawnAt: Date;
187
+ }
188
+ export interface PropertyOfferExpiredEvent {
189
+ id: string;
190
+ propertyId: string;
191
+ landlordId: string;
192
+ tenantId: string;
193
+ expiredAt: Date;
194
+ }
195
+ export interface PropertyViewingScheduledEvent {
196
+ id: string;
197
+ propertyId: string;
198
+ landlordId: string;
199
+ tenantId: string;
200
+ scheduledDate: Date;
201
+ status: ViewingStatus;
202
+ notes?: string;
203
+ createdAt: Date;
204
+ }
205
+ export interface PropertyViewingConfirmedEvent {
206
+ id: string;
207
+ propertyId: string;
208
+ landlordId: string;
209
+ tenantId: string;
210
+ scheduledDate: Date;
211
+ confirmedBy: "landlord" | "tenant";
212
+ confirmedAt: Date;
213
+ }
214
+ export interface PropertyViewingCompletedEvent {
215
+ id: string;
216
+ propertyId: string;
217
+ landlordId: string;
218
+ tenantId: string;
219
+ scheduledDate: Date;
220
+ completedAt: Date;
221
+ attendeeNotes?: string;
222
+ }
223
+ export interface PropertyViewingCancelledEvent {
224
+ id: string;
225
+ propertyId: string;
226
+ landlordId: string;
227
+ tenantId: string;
228
+ scheduledDate: Date;
229
+ cancelledBy: "landlord" | "tenant";
230
+ cancellationReason?: string;
231
+ cancelledAt: Date;
232
+ }
233
+ export interface PropertyViewingNoShowEvent {
234
+ id: string;
235
+ propertyId: string;
236
+ landlordId: string;
237
+ tenantId: string;
238
+ scheduledDate: Date;
239
+ noShowParty: "landlord" | "tenant";
240
+ markedAt: Date;
241
+ }
242
+ export interface RentalAgreementCreatedEvent {
243
+ id: string;
244
+ propertyId: string;
245
+ landlordId: string;
246
+ tenantId: string;
247
+ offerId?: string;
248
+ monthlyRent: number;
249
+ securityDeposit: number;
250
+ currency: string;
251
+ startDate: Date;
252
+ endDate?: Date;
253
+ terms: string;
254
+ status: AgreementStatus;
255
+ createdAt: Date;
256
+ }
257
+ export interface RentalAgreementSignedEvent {
258
+ id: string;
259
+ propertyId: string;
260
+ landlordId: string;
261
+ tenantId: string;
262
+ signedBy: "landlord" | "tenant";
263
+ signatureUrl?: string;
264
+ signedAt: Date;
265
+ }
266
+ export interface RentalAgreementActivatedEvent {
267
+ id: string;
268
+ propertyId: string;
269
+ landlordId: string;
270
+ tenantId: string;
271
+ monthlyRent: number;
272
+ startDate: Date;
273
+ endDate?: Date;
274
+ activatedAt: Date;
275
+ }
276
+ export interface RentalAgreementTerminatedEvent {
277
+ id: string;
278
+ propertyId: string;
279
+ landlordId: string;
280
+ tenantId: string;
281
+ terminatedBy: "landlord" | "tenant" | "admin";
282
+ terminationReason?: string;
283
+ terminatedAt: Date;
284
+ }
285
+ export interface RentalAgreementExpiredEvent {
286
+ id: string;
287
+ propertyId: string;
288
+ landlordId: string;
289
+ tenantId: string;
290
+ expiredAt: Date;
291
+ }
292
+ export interface PropertyRatingSubmittedEvent {
293
+ id: string;
294
+ propertyId: string;
295
+ landlordId: string;
296
+ tenantId: string;
297
+ raterRole: "landlord" | "tenant";
298
+ rating: number;
299
+ review?: string;
300
+ categories?: {
301
+ cleanliness?: number;
302
+ communication?: number;
303
+ accuracy?: number;
304
+ location?: number;
305
+ value?: number;
306
+ };
307
+ createdAt: Date;
308
+ }
309
+ export interface PropertyRatingUpdatedEvent {
310
+ id: string;
311
+ propertyId: string;
312
+ landlordId: string;
313
+ tenantId: string;
314
+ raterRole: "landlord" | "tenant";
315
+ rating: number;
316
+ review?: string;
317
+ categories?: {
318
+ cleanliness?: number;
319
+ communication?: number;
320
+ accuracy?: number;
321
+ location?: number;
322
+ value?: number;
323
+ };
324
+ updatedAt: Date;
325
+ }
326
+ export interface PropertyReportCreatedEvent {
327
+ id: string;
328
+ propertyId: string;
329
+ reportedBy: string;
330
+ reportedUserId?: string;
331
+ reportType: "scam" | "inappropriate" | "fake_listing" | "safety_concern" | "other";
332
+ description: string;
333
+ evidence?: string[];
334
+ status: "pending" | "under_review" | "resolved" | "dismissed";
335
+ createdAt: Date;
336
+ }
337
+ export interface PropertyReportUpdatedEvent {
338
+ id: string;
339
+ propertyId: string;
340
+ reportedBy: string;
341
+ status: "pending" | "under_review" | "resolved" | "dismissed";
342
+ adminNotes?: string;
343
+ reviewedBy?: string;
344
+ updatedAt: Date;
345
+ }
346
+ export interface PropertyReportResolvedEvent {
347
+ id: string;
348
+ propertyId: string;
349
+ reportedBy: string;
350
+ actionTaken?: string;
351
+ resolution: string;
352
+ resolvedBy: string;
353
+ resolvedAt: Date;
354
+ }
@@ -0,0 +1,60 @@
1
+ "use strict";
2
+ /**
3
+ * Property Event Types for Property Marketplace
4
+ */
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.AgreementStatus = exports.ViewingStatus = exports.OfferStatus = exports.ListingType = exports.PropertyStatus = exports.PropertyType = void 0;
7
+ var PropertyType;
8
+ (function (PropertyType) {
9
+ PropertyType["HOUSE"] = "house";
10
+ PropertyType["APARTMENT"] = "apartment";
11
+ PropertyType["CONDO"] = "condo";
12
+ PropertyType["TOWNHOUSE"] = "townhouse";
13
+ PropertyType["STUDIO"] = "studio";
14
+ PropertyType["LAND"] = "land";
15
+ PropertyType["COMMERCIAL"] = "commercial";
16
+ PropertyType["OFFICE"] = "office";
17
+ PropertyType["WAREHOUSE"] = "warehouse";
18
+ PropertyType["SHOP"] = "shop";
19
+ PropertyType["PARKING"] = "parking";
20
+ PropertyType["OTHER"] = "other";
21
+ })(PropertyType = exports.PropertyType || (exports.PropertyType = {}));
22
+ var PropertyStatus;
23
+ (function (PropertyStatus) {
24
+ PropertyStatus["DRAFT"] = "draft";
25
+ PropertyStatus["ACTIVE"] = "active";
26
+ PropertyStatus["INACTIVE"] = "inactive";
27
+ PropertyStatus["RENTED"] = "rented";
28
+ PropertyStatus["SOLD"] = "sold";
29
+ PropertyStatus["SUSPENDED"] = "suspended";
30
+ })(PropertyStatus = exports.PropertyStatus || (exports.PropertyStatus = {}));
31
+ var ListingType;
32
+ (function (ListingType) {
33
+ ListingType["FOR_RENT"] = "for_rent";
34
+ ListingType["FOR_SALE"] = "for_sale";
35
+ ListingType["BOTH"] = "both";
36
+ })(ListingType = exports.ListingType || (exports.ListingType = {}));
37
+ var OfferStatus;
38
+ (function (OfferStatus) {
39
+ OfferStatus["PENDING"] = "pending";
40
+ OfferStatus["ACCEPTED"] = "accepted";
41
+ OfferStatus["REJECTED"] = "rejected";
42
+ OfferStatus["WITHDRAWN"] = "withdrawn";
43
+ OfferStatus["EXPIRED"] = "expired";
44
+ })(OfferStatus = exports.OfferStatus || (exports.OfferStatus = {}));
45
+ var ViewingStatus;
46
+ (function (ViewingStatus) {
47
+ ViewingStatus["SCHEDULED"] = "scheduled";
48
+ ViewingStatus["CONFIRMED"] = "confirmed";
49
+ ViewingStatus["COMPLETED"] = "completed";
50
+ ViewingStatus["CANCELLED"] = "cancelled";
51
+ ViewingStatus["NO_SHOW"] = "no_show";
52
+ })(ViewingStatus = exports.ViewingStatus || (exports.ViewingStatus = {}));
53
+ var AgreementStatus;
54
+ (function (AgreementStatus) {
55
+ AgreementStatus["DRAFT"] = "draft";
56
+ AgreementStatus["PENDING_SIGNATURE"] = "pending_signature";
57
+ AgreementStatus["ACTIVE"] = "active";
58
+ AgreementStatus["EXPIRED"] = "expired";
59
+ AgreementStatus["TERMINATED"] = "terminated";
60
+ })(AgreementStatus = exports.AgreementStatus || (exports.AgreementStatus = {}));
@@ -0,0 +1,60 @@
1
+ export declare enum RequestType {
2
+ SHOPPING = "shopping",
3
+ SERVICE = "service"
4
+ }
5
+ export declare enum RequestCategory {
6
+ GROCERIES = "groceries",
7
+ BEAUTY_PRODUCTS = "beauty_product",
8
+ CLOTHING_PRODUCTS = "clothing_product",
9
+ PLUMBING = "plumbing",
10
+ MECHANIC = "mechanic",
11
+ BUILDING = "building",
12
+ BEAUTY_SERVICE = "beauty_service"
13
+ }
14
+ interface IGroceryItem {
15
+ name: string;
16
+ quantity: number;
17
+ brand?: string;
18
+ image?: string;
19
+ }
20
+ interface IShoppingData {
21
+ items: IGroceryItem[];
22
+ delivery_location?: {
23
+ address: string;
24
+ city: string;
25
+ latitude: number;
26
+ longitude: number;
27
+ };
28
+ preferred_delivery_time: string;
29
+ }
30
+ interface IServiceData {
31
+ problem_description: string;
32
+ location: string;
33
+ urgency_level: "low" | "medium" | "high";
34
+ preferred_time: string;
35
+ images?: string[];
36
+ }
37
+ export interface RequestCreatedEvent {
38
+ id: string;
39
+ client: string;
40
+ category: RequestCategory;
41
+ request_type: RequestType;
42
+ shopping_data?: IShoppingData;
43
+ service_data?: IServiceData;
44
+ notes?: string;
45
+ status: "open" | "awarded" | "completed" | "cancelled";
46
+ created_at?: Date;
47
+ updated_at?: Date;
48
+ }
49
+ export interface RequestUpdatedEvent {
50
+ client: string;
51
+ category: RequestCategory;
52
+ request_type: RequestType;
53
+ shopping_data?: IShoppingData;
54
+ service_data?: IServiceData;
55
+ notes?: string;
56
+ status: "open" | "awarded" | "completed" | "cancelled";
57
+ created_at?: Date;
58
+ updated_at?: Date;
59
+ }
60
+ export {};
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.RequestCategory = exports.RequestType = void 0;
4
+ var RequestType;
5
+ (function (RequestType) {
6
+ RequestType["SHOPPING"] = "shopping";
7
+ RequestType["SERVICE"] = "service";
8
+ })(RequestType = exports.RequestType || (exports.RequestType = {}));
9
+ var RequestCategory;
10
+ (function (RequestCategory) {
11
+ RequestCategory["GROCERIES"] = "groceries";
12
+ RequestCategory["BEAUTY_PRODUCTS"] = "beauty_product";
13
+ RequestCategory["CLOTHING_PRODUCTS"] = "clothing_product";
14
+ RequestCategory["PLUMBING"] = "plumbing";
15
+ RequestCategory["MECHANIC"] = "mechanic";
16
+ RequestCategory["BUILDING"] = "building";
17
+ RequestCategory["BEAUTY_SERVICE"] = "beauty_service";
18
+ })(RequestCategory = exports.RequestCategory || (exports.RequestCategory = {}));
@@ -0,0 +1,143 @@
1
+ /**
2
+ * Safety & Reporting Events
3
+ * Published by admin-safety-reporting-service
4
+ */
5
+ /**
6
+ * Incident Report Events
7
+ */
8
+ export interface IncidentReportCreatedEvent {
9
+ id: string;
10
+ type: "safety" | "harassment" | "overcharging" | "reckless_driving" | "route_deviation" | "payment_dispute" | "property_damage" | "lost_item" | "fraud" | "other";
11
+ title: string;
12
+ description: string;
13
+ reportedByAuthUserId?: string;
14
+ reportedByRole?: "rider" | "driver" | "other";
15
+ source: "user_app" | "admin" | "support" | "system";
16
+ status: "open" | "under_review" | "awaiting_user" | "resolved" | "closed_no_action" | "escalated";
17
+ tripId?: string;
18
+ seatBookingId?: string;
19
+ riderAuthUserId?: string;
20
+ driverAuthUserId?: string;
21
+ countryCode?: string;
22
+ createdAt: Date;
23
+ }
24
+ export interface IncidentReportUpdatedEvent {
25
+ id: string;
26
+ status: "open" | "under_review" | "awaiting_user" | "resolved" | "closed_no_action" | "escalated";
27
+ assignedToAuthUserId?: string;
28
+ assignedTeam?: string;
29
+ resolutionSummary?: string;
30
+ resolutionAction?: string;
31
+ resolvedAt?: Date;
32
+ updatedAt: Date;
33
+ }
34
+ export interface IncidentReportResolvedEvent {
35
+ id: string;
36
+ type: "safety" | "harassment" | "overcharging" | "reckless_driving" | "route_deviation" | "payment_dispute" | "property_damage" | "lost_item" | "fraud" | "other";
37
+ reportedByAuthUserId?: string;
38
+ riderAuthUserId?: string;
39
+ driverAuthUserId?: string;
40
+ resolutionSummary?: string;
41
+ resolutionAction?: string;
42
+ resolvedBy: string;
43
+ resolvedAt: Date;
44
+ }
45
+ /**
46
+ * SOS / Panic Button Events
47
+ */
48
+ export interface SOSTriggeredEvent {
49
+ id: string;
50
+ authUserId: string;
51
+ accountNumber: number;
52
+ roleAtTime: "rider" | "driver";
53
+ tripId?: string;
54
+ location: {
55
+ lat: number;
56
+ lng: number;
57
+ };
58
+ countryCode?: string;
59
+ triggeredAt: Date;
60
+ }
61
+ export interface SOSAcknowledgedEvent {
62
+ id: string;
63
+ authUserId: string;
64
+ acknowledgedBy: string;
65
+ acknowledgedAt: Date;
66
+ }
67
+ export interface SOSRespondingEvent {
68
+ id: string;
69
+ authUserId: string;
70
+ respondedBy: string;
71
+ respondedAt: Date;
72
+ }
73
+ export interface SOSResolvedEvent {
74
+ id: string;
75
+ authUserId: string;
76
+ roleAtTime: "rider" | "driver";
77
+ tripId?: string;
78
+ status: "resolved" | "false_alarm" | "cancelled";
79
+ resolvedBy: string;
80
+ resolvedAt: Date;
81
+ resolutionNotes?: string;
82
+ }
83
+ /**
84
+ * Disciplinary Action Events
85
+ */
86
+ export interface DisciplinaryActionCreatedEvent {
87
+ id: string;
88
+ authUserId: string;
89
+ targetRole: "rider" | "driver" | "both";
90
+ actionType: "warning" | "suspension" | "ban" | "trust_score_penalty";
91
+ reason: string;
92
+ incidentId?: string;
93
+ tripId?: string;
94
+ trustScoreDelta?: number;
95
+ status: "pending" | "active" | "expired" | "revoked";
96
+ issuedBy: string;
97
+ issuedAt: Date;
98
+ effectiveFrom: Date;
99
+ effectiveUntil?: Date;
100
+ }
101
+ export interface DisciplinaryActionActivatedEvent {
102
+ id: string;
103
+ authUserId: string;
104
+ targetRole: "rider" | "driver" | "both";
105
+ actionType: "warning" | "suspension" | "ban" | "trust_score_penalty";
106
+ trustScoreDelta?: number;
107
+ effectiveFrom: Date;
108
+ effectiveUntil?: Date;
109
+ activatedAt: Date;
110
+ }
111
+ export interface DisciplinaryActionRevokedEvent {
112
+ id: string;
113
+ authUserId: string;
114
+ targetRole: "rider" | "driver" | "both";
115
+ actionType: "warning" | "suspension" | "ban" | "trust_score_penalty";
116
+ trustScoreDelta?: number;
117
+ revokedBy: string;
118
+ revokedAt: Date;
119
+ revocationReason: string;
120
+ }
121
+ /**
122
+ * Safety Note Events
123
+ */
124
+ export interface SafetyNoteCreatedEvent {
125
+ id: string;
126
+ targetType: "user" | "driver_profile" | "trip" | "incident";
127
+ targetId: string;
128
+ text: string;
129
+ authorAuthUserId: string;
130
+ createdAt: Date;
131
+ }
132
+ /**
133
+ * Audit Log Events
134
+ */
135
+ export interface SafetyAuditLogCreatedEvent {
136
+ id: string;
137
+ action: string;
138
+ actorAuthUserId: string;
139
+ targetType: string;
140
+ targetId: string;
141
+ metadata?: Record<string, any>;
142
+ createdAt: Date;
143
+ }
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+ /**
3
+ * Safety & Reporting Events
4
+ * Published by admin-safety-reporting-service
5
+ */
6
+ Object.defineProperty(exports, "__esModule", { value: true });