@deepintel-ltd/buildlink-api-contracts 0.2.23

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 (278) hide show
  1. package/README.md +27 -0
  2. package/contracts/auth.d.ts +3641 -0
  3. package/contracts/auth.d.ts.map +1 -0
  4. package/contracts/auth.js +266 -0
  5. package/contracts/auth.js.map +1 -0
  6. package/contracts/billing.d.ts +2167 -0
  7. package/contracts/billing.d.ts.map +1 -0
  8. package/contracts/billing.js +55 -0
  9. package/contracts/billing.js.map +1 -0
  10. package/contracts/boq.d.ts +1214 -0
  11. package/contracts/boq.d.ts.map +1 -0
  12. package/contracts/boq.js +31 -0
  13. package/contracts/boq.js.map +1 -0
  14. package/contracts/budget.d.ts +10677 -0
  15. package/contracts/budget.d.ts.map +1 -0
  16. package/contracts/budget.js +599 -0
  17. package/contracts/budget.js.map +1 -0
  18. package/contracts/commercial.d.ts +1475 -0
  19. package/contracts/commercial.d.ts.map +1 -0
  20. package/contracts/commercial.js +40 -0
  21. package/contracts/commercial.js.map +1 -0
  22. package/contracts/communication.d.ts +5389 -0
  23. package/contracts/communication.d.ts.map +1 -0
  24. package/contracts/communication.js +255 -0
  25. package/contracts/communication.js.map +1 -0
  26. package/contracts/contractor-ledger.d.ts +1293 -0
  27. package/contracts/contractor-ledger.d.ts.map +1 -0
  28. package/contracts/contractor-ledger.js +41 -0
  29. package/contracts/contractor-ledger.js.map +1 -0
  30. package/contracts/daily-logs.d.ts +9132 -0
  31. package/contracts/daily-logs.d.ts.map +1 -0
  32. package/contracts/daily-logs.js +188 -0
  33. package/contracts/daily-logs.js.map +1 -0
  34. package/contracts/deficiencies.d.ts +11786 -0
  35. package/contracts/deficiencies.d.ts.map +1 -0
  36. package/contracts/deficiencies.js +312 -0
  37. package/contracts/deficiencies.js.map +1 -0
  38. package/contracts/directory.d.ts +3116 -0
  39. package/contracts/directory.d.ts.map +1 -0
  40. package/contracts/directory.js +117 -0
  41. package/contracts/directory.js.map +1 -0
  42. package/contracts/documents.d.ts +4944 -0
  43. package/contracts/documents.d.ts.map +1 -0
  44. package/contracts/documents.js +251 -0
  45. package/contracts/documents.js.map +1 -0
  46. package/contracts/drawings.d.ts +10552 -0
  47. package/contracts/drawings.d.ts.map +1 -0
  48. package/contracts/drawings.js +321 -0
  49. package/contracts/drawings.js.map +1 -0
  50. package/contracts/hub.d.ts +1174 -0
  51. package/contracts/hub.d.ts.map +1 -0
  52. package/contracts/hub.js +42 -0
  53. package/contracts/hub.js.map +1 -0
  54. package/contracts/index.d.ts +128 -0
  55. package/contracts/index.d.ts.map +1 -0
  56. package/contracts/index.js +119 -0
  57. package/contracts/index.js.map +1 -0
  58. package/contracts/integrations.d.ts +4163 -0
  59. package/contracts/integrations.d.ts.map +1 -0
  60. package/contracts/integrations.js +326 -0
  61. package/contracts/integrations.js.map +1 -0
  62. package/contracts/maps.d.ts +4911 -0
  63. package/contracts/maps.d.ts.map +1 -0
  64. package/contracts/maps.js +276 -0
  65. package/contracts/maps.js.map +1 -0
  66. package/contracts/meetings.d.ts +4194 -0
  67. package/contracts/meetings.d.ts.map +1 -0
  68. package/contracts/meetings.js +115 -0
  69. package/contracts/meetings.js.map +1 -0
  70. package/contracts/monitoring.d.ts +2749 -0
  71. package/contracts/monitoring.d.ts.map +1 -0
  72. package/contracts/monitoring.js +289 -0
  73. package/contracts/monitoring.js.map +1 -0
  74. package/contracts/packages.d.ts +1470 -0
  75. package/contracts/packages.d.ts.map +1 -0
  76. package/contracts/packages.js +74 -0
  77. package/contracts/packages.js.map +1 -0
  78. package/contracts/projects.d.ts +6281 -0
  79. package/contracts/projects.d.ts.map +1 -0
  80. package/contracts/projects.js +448 -0
  81. package/contracts/projects.js.map +1 -0
  82. package/contracts/proof.d.ts +962 -0
  83. package/contracts/proof.d.ts.map +1 -0
  84. package/contracts/proof.js +34 -0
  85. package/contracts/proof.js.map +1 -0
  86. package/contracts/qaqc.d.ts +1184 -0
  87. package/contracts/qaqc.d.ts.map +1 -0
  88. package/contracts/qaqc.js +35 -0
  89. package/contracts/qaqc.js.map +1 -0
  90. package/contracts/rbac.d.ts +5227 -0
  91. package/contracts/rbac.d.ts.map +1 -0
  92. package/contracts/rbac.js +357 -0
  93. package/contracts/rbac.js.map +1 -0
  94. package/contracts/reports.d.ts +8468 -0
  95. package/contracts/reports.d.ts.map +1 -0
  96. package/contracts/reports.js +377 -0
  97. package/contracts/reports.js.map +1 -0
  98. package/contracts/resources.d.ts +15870 -0
  99. package/contracts/resources.d.ts.map +1 -0
  100. package/contracts/resources.js +869 -0
  101. package/contracts/resources.js.map +1 -0
  102. package/contracts/rfi-submittal.d.ts +2545 -0
  103. package/contracts/rfi-submittal.d.ts.map +1 -0
  104. package/contracts/rfi-submittal.js +159 -0
  105. package/contracts/rfi-submittal.js.map +1 -0
  106. package/contracts/safety.d.ts +7162 -0
  107. package/contracts/safety.d.ts.map +1 -0
  108. package/contracts/safety.js +519 -0
  109. package/contracts/safety.js.map +1 -0
  110. package/contracts/schedule.d.ts +9456 -0
  111. package/contracts/schedule.d.ts.map +1 -0
  112. package/contracts/schedule.js +460 -0
  113. package/contracts/schedule.js.map +1 -0
  114. package/contracts/spec-equal.d.ts +841 -0
  115. package/contracts/spec-equal.d.ts.map +1 -0
  116. package/contracts/spec-equal.js +28 -0
  117. package/contracts/spec-equal.js.map +1 -0
  118. package/contracts/specifications.d.ts +15478 -0
  119. package/contracts/specifications.d.ts.map +1 -0
  120. package/contracts/specifications.js +521 -0
  121. package/contracts/specifications.js.map +1 -0
  122. package/contracts/tasks.d.ts +11037 -0
  123. package/contracts/tasks.d.ts.map +1 -0
  124. package/contracts/tasks.js +693 -0
  125. package/contracts/tasks.js.map +1 -0
  126. package/contracts/timecards.d.ts +3130 -0
  127. package/contracts/timecards.d.ts.map +1 -0
  128. package/contracts/timecards.js +133 -0
  129. package/contracts/timecards.js.map +1 -0
  130. package/contracts/transmittals.d.ts +3921 -0
  131. package/contracts/transmittals.d.ts.map +1 -0
  132. package/contracts/transmittals.js +156 -0
  133. package/contracts/transmittals.js.map +1 -0
  134. package/contracts/valuations.d.ts +3266 -0
  135. package/contracts/valuations.d.ts.map +1 -0
  136. package/contracts/valuations.js +116 -0
  137. package/contracts/valuations.js.map +1 -0
  138. package/package.json +216 -0
  139. package/schemas/auth.d.ts +449 -0
  140. package/schemas/auth.d.ts.map +1 -0
  141. package/schemas/auth.js +103 -0
  142. package/schemas/auth.js.map +1 -0
  143. package/schemas/billing.d.ts +710 -0
  144. package/schemas/billing.d.ts.map +1 -0
  145. package/schemas/billing.js +82 -0
  146. package/schemas/billing.js.map +1 -0
  147. package/schemas/boq.d.ts +385 -0
  148. package/schemas/boq.d.ts.map +1 -0
  149. package/schemas/boq.js +49 -0
  150. package/schemas/boq.js.map +1 -0
  151. package/schemas/budget.d.ts +737 -0
  152. package/schemas/budget.d.ts.map +1 -0
  153. package/schemas/budget.js +272 -0
  154. package/schemas/budget.js.map +1 -0
  155. package/schemas/commercial.d.ts +358 -0
  156. package/schemas/commercial.d.ts.map +1 -0
  157. package/schemas/commercial.js +36 -0
  158. package/schemas/commercial.js.map +1 -0
  159. package/schemas/common.d.ts +865 -0
  160. package/schemas/common.d.ts.map +1 -0
  161. package/schemas/common.js +193 -0
  162. package/schemas/common.js.map +1 -0
  163. package/schemas/communication.d.ts +884 -0
  164. package/schemas/communication.d.ts.map +1 -0
  165. package/schemas/communication.js +245 -0
  166. package/schemas/communication.js.map +1 -0
  167. package/schemas/contractor-ledger.d.ts +364 -0
  168. package/schemas/contractor-ledger.d.ts.map +1 -0
  169. package/schemas/contractor-ledger.js +36 -0
  170. package/schemas/contractor-ledger.js.map +1 -0
  171. package/schemas/cursor-pagination.d.ts +258 -0
  172. package/schemas/cursor-pagination.d.ts.map +1 -0
  173. package/schemas/cursor-pagination.js +84 -0
  174. package/schemas/cursor-pagination.js.map +1 -0
  175. package/schemas/daily-logs.d.ts +2339 -0
  176. package/schemas/daily-logs.d.ts.map +1 -0
  177. package/schemas/daily-logs.js +235 -0
  178. package/schemas/daily-logs.js.map +1 -0
  179. package/schemas/deficiencies.d.ts +2496 -0
  180. package/schemas/deficiencies.d.ts.map +1 -0
  181. package/schemas/deficiencies.js +338 -0
  182. package/schemas/deficiencies.js.map +1 -0
  183. package/schemas/directory.d.ts +783 -0
  184. package/schemas/directory.d.ts.map +1 -0
  185. package/schemas/directory.js +122 -0
  186. package/schemas/directory.js.map +1 -0
  187. package/schemas/documents.d.ts +202 -0
  188. package/schemas/documents.d.ts.map +1 -0
  189. package/schemas/documents.js +76 -0
  190. package/schemas/documents.js.map +1 -0
  191. package/schemas/drawings.d.ts +2042 -0
  192. package/schemas/drawings.d.ts.map +1 -0
  193. package/schemas/drawings.js +350 -0
  194. package/schemas/drawings.js.map +1 -0
  195. package/schemas/hub.d.ts +288 -0
  196. package/schemas/hub.d.ts.map +1 -0
  197. package/schemas/hub.js +32 -0
  198. package/schemas/hub.js.map +1 -0
  199. package/schemas/integrations.d.ts +508 -0
  200. package/schemas/integrations.d.ts.map +1 -0
  201. package/schemas/integrations.js +119 -0
  202. package/schemas/integrations.js.map +1 -0
  203. package/schemas/maps.d.ts +793 -0
  204. package/schemas/maps.d.ts.map +1 -0
  205. package/schemas/maps.js +118 -0
  206. package/schemas/maps.js.map +1 -0
  207. package/schemas/meetings.d.ts +888 -0
  208. package/schemas/meetings.d.ts.map +1 -0
  209. package/schemas/meetings.js +138 -0
  210. package/schemas/meetings.js.map +1 -0
  211. package/schemas/packages.d.ts +236 -0
  212. package/schemas/packages.d.ts.map +1 -0
  213. package/schemas/packages.js +53 -0
  214. package/schemas/packages.js.map +1 -0
  215. package/schemas/projects.d.ts +306 -0
  216. package/schemas/projects.d.ts.map +1 -0
  217. package/schemas/projects.js +92 -0
  218. package/schemas/projects.js.map +1 -0
  219. package/schemas/proof.d.ts +210 -0
  220. package/schemas/proof.d.ts.map +1 -0
  221. package/schemas/proof.js +26 -0
  222. package/schemas/proof.js.map +1 -0
  223. package/schemas/qaqc.d.ts +235 -0
  224. package/schemas/qaqc.d.ts.map +1 -0
  225. package/schemas/qaqc.js +47 -0
  226. package/schemas/qaqc.js.map +1 -0
  227. package/schemas/rbac.d.ts +730 -0
  228. package/schemas/rbac.d.ts.map +1 -0
  229. package/schemas/rbac.js +230 -0
  230. package/schemas/rbac.js.map +1 -0
  231. package/schemas/reports.d.ts +5729 -0
  232. package/schemas/reports.d.ts.map +1 -0
  233. package/schemas/reports.js +589 -0
  234. package/schemas/reports.js.map +1 -0
  235. package/schemas/resources.d.ts +5190 -0
  236. package/schemas/resources.d.ts.map +1 -0
  237. package/schemas/resources.js +678 -0
  238. package/schemas/resources.js.map +1 -0
  239. package/schemas/rfi.d.ts +877 -0
  240. package/schemas/rfi.d.ts.map +1 -0
  241. package/schemas/rfi.js +84 -0
  242. package/schemas/rfi.js.map +1 -0
  243. package/schemas/safety.d.ts +1080 -0
  244. package/schemas/safety.d.ts.map +1 -0
  245. package/schemas/safety.js +237 -0
  246. package/schemas/safety.js.map +1 -0
  247. package/schemas/schedule.d.ts +4657 -0
  248. package/schemas/schedule.d.ts.map +1 -0
  249. package/schemas/schedule.js +441 -0
  250. package/schemas/schedule.js.map +1 -0
  251. package/schemas/spec-equal.d.ts +162 -0
  252. package/schemas/spec-equal.d.ts.map +1 -0
  253. package/schemas/spec-equal.js +29 -0
  254. package/schemas/spec-equal.js.map +1 -0
  255. package/schemas/specifications.d.ts +5241 -0
  256. package/schemas/specifications.d.ts.map +1 -0
  257. package/schemas/specifications.js +426 -0
  258. package/schemas/specifications.js.map +1 -0
  259. package/schemas/submittal.d.ts +867 -0
  260. package/schemas/submittal.d.ts.map +1 -0
  261. package/schemas/submittal.js +87 -0
  262. package/schemas/submittal.js.map +1 -0
  263. package/schemas/tasks.d.ts +610 -0
  264. package/schemas/tasks.d.ts.map +1 -0
  265. package/schemas/tasks.js +133 -0
  266. package/schemas/tasks.js.map +1 -0
  267. package/schemas/timecards.d.ts +618 -0
  268. package/schemas/timecards.d.ts.map +1 -0
  269. package/schemas/timecards.js +80 -0
  270. package/schemas/timecards.js.map +1 -0
  271. package/schemas/transmittals.d.ts +662 -0
  272. package/schemas/transmittals.d.ts.map +1 -0
  273. package/schemas/transmittals.js +132 -0
  274. package/schemas/transmittals.js.map +1 -0
  275. package/schemas/valuations.d.ts +713 -0
  276. package/schemas/valuations.d.ts.map +1 -0
  277. package/schemas/valuations.js +116 -0
  278. package/schemas/valuations.js.map +1 -0
@@ -0,0 +1,2496 @@
1
+ import { z } from 'zod';
2
+ export declare const DeficiencyCategorySchema: z.ZodEnum<["STRUCTURAL", "ELECTRICAL", "PLUMBING", "HVAC", "FINISHES", "EXTERIOR", "SAFETY", "QUALITY", "CODE_COMPLIANCE", "OTHER"]>;
3
+ export declare const DeficiencyStatusSchema: z.ZodEnum<["OPEN", "IN_PROGRESS", "PENDING_REVIEW", "RESOLVED", "CLOSED", "REJECTED"]>;
4
+ export declare const DeficiencyTradeSchema: z.ZodEnum<["GENERAL", "CONCRETE", "MASONRY", "STEEL", "CARPENTRY", "ROOFING", "ELECTRICAL", "PLUMBING", "HVAC", "INSULATION", "DRYWALL", "FLOORING", "LANDSCAPING"]>;
5
+ export declare const DeficiencyLocationSchema: z.ZodObject<{
6
+ building: z.ZodOptional<z.ZodString>;
7
+ floor: z.ZodOptional<z.ZodString>;
8
+ room: z.ZodOptional<z.ZodString>;
9
+ area: z.ZodOptional<z.ZodString>;
10
+ coordinates: z.ZodOptional<z.ZodObject<{
11
+ x: z.ZodOptional<z.ZodNumber>;
12
+ y: z.ZodOptional<z.ZodNumber>;
13
+ z: z.ZodOptional<z.ZodNumber>;
14
+ }, "strip", z.ZodTypeAny, {
15
+ x?: number | undefined;
16
+ y?: number | undefined;
17
+ z?: number | undefined;
18
+ }, {
19
+ x?: number | undefined;
20
+ y?: number | undefined;
21
+ z?: number | undefined;
22
+ }>>;
23
+ }, "strip", z.ZodTypeAny, {
24
+ area?: string | undefined;
25
+ building?: string | undefined;
26
+ floor?: string | undefined;
27
+ room?: string | undefined;
28
+ coordinates?: {
29
+ x?: number | undefined;
30
+ y?: number | undefined;
31
+ z?: number | undefined;
32
+ } | undefined;
33
+ }, {
34
+ area?: string | undefined;
35
+ building?: string | undefined;
36
+ floor?: string | undefined;
37
+ room?: string | undefined;
38
+ coordinates?: {
39
+ x?: number | undefined;
40
+ y?: number | undefined;
41
+ z?: number | undefined;
42
+ } | undefined;
43
+ }>;
44
+ export declare const DeficiencyPhotoSchema: z.ZodObject<{
45
+ url: z.ZodString;
46
+ caption: z.ZodOptional<z.ZodString>;
47
+ addedBy: z.ZodString;
48
+ addedAt: z.ZodString;
49
+ }, "strip", z.ZodTypeAny, {
50
+ url: string;
51
+ addedBy: string;
52
+ addedAt: string;
53
+ caption?: string | undefined;
54
+ }, {
55
+ url: string;
56
+ addedBy: string;
57
+ addedAt: string;
58
+ caption?: string | undefined;
59
+ }>;
60
+ export declare const DeficiencyAttachmentSchema: z.ZodObject<{
61
+ url: z.ZodString;
62
+ filename: z.ZodString;
63
+ fileSize: z.ZodNumber;
64
+ mimeType: z.ZodString;
65
+ addedBy: z.ZodString;
66
+ addedAt: z.ZodString;
67
+ }, "strip", z.ZodTypeAny, {
68
+ filename: string;
69
+ url: string;
70
+ addedBy: string;
71
+ addedAt: string;
72
+ fileSize: number;
73
+ mimeType: string;
74
+ }, {
75
+ filename: string;
76
+ url: string;
77
+ addedBy: string;
78
+ addedAt: string;
79
+ fileSize: number;
80
+ mimeType: string;
81
+ }>;
82
+ export declare const DeficiencyWorkOrderSchema: z.ZodObject<{
83
+ workOrderNumber: z.ZodOptional<z.ZodString>;
84
+ contractor: z.ZodOptional<z.ZodString>;
85
+ estimatedCost: z.ZodOptional<z.ZodNumber>;
86
+ actualCost: z.ZodOptional<z.ZodNumber>;
87
+ estimatedHours: z.ZodOptional<z.ZodNumber>;
88
+ actualHours: z.ZodOptional<z.ZodNumber>;
89
+ }, "strip", z.ZodTypeAny, {
90
+ workOrderNumber?: string | undefined;
91
+ contractor?: string | undefined;
92
+ estimatedCost?: number | undefined;
93
+ actualCost?: number | undefined;
94
+ estimatedHours?: number | undefined;
95
+ actualHours?: number | undefined;
96
+ }, {
97
+ workOrderNumber?: string | undefined;
98
+ contractor?: string | undefined;
99
+ estimatedCost?: number | undefined;
100
+ actualCost?: number | undefined;
101
+ estimatedHours?: number | undefined;
102
+ actualHours?: number | undefined;
103
+ }>;
104
+ export declare const DeficiencyResolutionSchema: z.ZodObject<{
105
+ description: z.ZodString;
106
+ resolvedBy: z.ZodString;
107
+ resolvedAt: z.ZodString;
108
+ verifiedBy: z.ZodOptional<z.ZodString>;
109
+ verifiedAt: z.ZodOptional<z.ZodString>;
110
+ notes: z.ZodOptional<z.ZodString>;
111
+ }, "strip", z.ZodTypeAny, {
112
+ description: string;
113
+ resolvedBy: string;
114
+ resolvedAt: string;
115
+ notes?: string | undefined;
116
+ verifiedBy?: string | undefined;
117
+ verifiedAt?: string | undefined;
118
+ }, {
119
+ description: string;
120
+ resolvedBy: string;
121
+ resolvedAt: string;
122
+ notes?: string | undefined;
123
+ verifiedBy?: string | undefined;
124
+ verifiedAt?: string | undefined;
125
+ }>;
126
+ export declare const DeficiencySchema: z.ZodObject<{
127
+ id: z.ZodString;
128
+ projectId: z.ZodString;
129
+ title: z.ZodString;
130
+ description: z.ZodString;
131
+ category: z.ZodEnum<["STRUCTURAL", "ELECTRICAL", "PLUMBING", "HVAC", "FINISHES", "EXTERIOR", "SAFETY", "QUALITY", "CODE_COMPLIANCE", "OTHER"]>;
132
+ priority: z.ZodEnum<["LOW", "MEDIUM", "HIGH", "CRITICAL"]>;
133
+ status: z.ZodEnum<["OPEN", "IN_PROGRESS", "PENDING_REVIEW", "RESOLVED", "CLOSED", "REJECTED"]>;
134
+ trade: z.ZodEnum<["GENERAL", "CONCRETE", "MASONRY", "STEEL", "CARPENTRY", "ROOFING", "ELECTRICAL", "PLUMBING", "HVAC", "INSULATION", "DRYWALL", "FLOORING", "LANDSCAPING"]>;
135
+ location: z.ZodObject<{
136
+ building: z.ZodOptional<z.ZodString>;
137
+ floor: z.ZodOptional<z.ZodString>;
138
+ room: z.ZodOptional<z.ZodString>;
139
+ area: z.ZodOptional<z.ZodString>;
140
+ coordinates: z.ZodOptional<z.ZodObject<{
141
+ x: z.ZodOptional<z.ZodNumber>;
142
+ y: z.ZodOptional<z.ZodNumber>;
143
+ z: z.ZodOptional<z.ZodNumber>;
144
+ }, "strip", z.ZodTypeAny, {
145
+ x?: number | undefined;
146
+ y?: number | undefined;
147
+ z?: number | undefined;
148
+ }, {
149
+ x?: number | undefined;
150
+ y?: number | undefined;
151
+ z?: number | undefined;
152
+ }>>;
153
+ }, "strip", z.ZodTypeAny, {
154
+ area?: string | undefined;
155
+ building?: string | undefined;
156
+ floor?: string | undefined;
157
+ room?: string | undefined;
158
+ coordinates?: {
159
+ x?: number | undefined;
160
+ y?: number | undefined;
161
+ z?: number | undefined;
162
+ } | undefined;
163
+ }, {
164
+ area?: string | undefined;
165
+ building?: string | undefined;
166
+ floor?: string | undefined;
167
+ room?: string | undefined;
168
+ coordinates?: {
169
+ x?: number | undefined;
170
+ y?: number | undefined;
171
+ z?: number | undefined;
172
+ } | undefined;
173
+ }>;
174
+ reportedBy: z.ZodString;
175
+ reportedAt: z.ZodString;
176
+ assignedTo: z.ZodOptional<z.ZodString>;
177
+ assignedAt: z.ZodOptional<z.ZodString>;
178
+ dueDate: z.ZodOptional<z.ZodString>;
179
+ inspectionDate: z.ZodOptional<z.ZodString>;
180
+ completionDate: z.ZodOptional<z.ZodString>;
181
+ estimatedCost: z.ZodOptional<z.ZodNumber>;
182
+ actualCost: z.ZodOptional<z.ZodNumber>;
183
+ estimatedHours: z.ZodOptional<z.ZodNumber>;
184
+ actualHours: z.ZodOptional<z.ZodNumber>;
185
+ photos: z.ZodDefault<z.ZodArray<z.ZodObject<{
186
+ url: z.ZodString;
187
+ caption: z.ZodOptional<z.ZodString>;
188
+ addedBy: z.ZodString;
189
+ addedAt: z.ZodString;
190
+ }, "strip", z.ZodTypeAny, {
191
+ url: string;
192
+ addedBy: string;
193
+ addedAt: string;
194
+ caption?: string | undefined;
195
+ }, {
196
+ url: string;
197
+ addedBy: string;
198
+ addedAt: string;
199
+ caption?: string | undefined;
200
+ }>, "many">>;
201
+ attachments: z.ZodDefault<z.ZodArray<z.ZodObject<{
202
+ url: z.ZodString;
203
+ filename: z.ZodString;
204
+ fileSize: z.ZodNumber;
205
+ mimeType: z.ZodString;
206
+ addedBy: z.ZodString;
207
+ addedAt: z.ZodString;
208
+ }, "strip", z.ZodTypeAny, {
209
+ filename: string;
210
+ url: string;
211
+ addedBy: string;
212
+ addedAt: string;
213
+ fileSize: number;
214
+ mimeType: string;
215
+ }, {
216
+ filename: string;
217
+ url: string;
218
+ addedBy: string;
219
+ addedAt: string;
220
+ fileSize: number;
221
+ mimeType: string;
222
+ }>, "many">>;
223
+ tags: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
224
+ notes: z.ZodOptional<z.ZodString>;
225
+ blockedTasks: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
226
+ relatedDeficiencies: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
227
+ workOrder: z.ZodOptional<z.ZodObject<{
228
+ workOrderNumber: z.ZodOptional<z.ZodString>;
229
+ contractor: z.ZodOptional<z.ZodString>;
230
+ estimatedCost: z.ZodOptional<z.ZodNumber>;
231
+ actualCost: z.ZodOptional<z.ZodNumber>;
232
+ estimatedHours: z.ZodOptional<z.ZodNumber>;
233
+ actualHours: z.ZodOptional<z.ZodNumber>;
234
+ }, "strip", z.ZodTypeAny, {
235
+ workOrderNumber?: string | undefined;
236
+ contractor?: string | undefined;
237
+ estimatedCost?: number | undefined;
238
+ actualCost?: number | undefined;
239
+ estimatedHours?: number | undefined;
240
+ actualHours?: number | undefined;
241
+ }, {
242
+ workOrderNumber?: string | undefined;
243
+ contractor?: string | undefined;
244
+ estimatedCost?: number | undefined;
245
+ actualCost?: number | undefined;
246
+ estimatedHours?: number | undefined;
247
+ actualHours?: number | undefined;
248
+ }>>;
249
+ resolution: z.ZodOptional<z.ZodObject<{
250
+ description: z.ZodString;
251
+ resolvedBy: z.ZodString;
252
+ resolvedAt: z.ZodString;
253
+ verifiedBy: z.ZodOptional<z.ZodString>;
254
+ verifiedAt: z.ZodOptional<z.ZodString>;
255
+ notes: z.ZodOptional<z.ZodString>;
256
+ }, "strip", z.ZodTypeAny, {
257
+ description: string;
258
+ resolvedBy: string;
259
+ resolvedAt: string;
260
+ notes?: string | undefined;
261
+ verifiedBy?: string | undefined;
262
+ verifiedAt?: string | undefined;
263
+ }, {
264
+ description: string;
265
+ resolvedBy: string;
266
+ resolvedAt: string;
267
+ notes?: string | undefined;
268
+ verifiedBy?: string | undefined;
269
+ verifiedAt?: string | undefined;
270
+ }>>;
271
+ createdAt: z.ZodString;
272
+ updatedAt: z.ZodString;
273
+ companyId: z.ZodString;
274
+ }, "strip", z.ZodTypeAny, {
275
+ id: string;
276
+ createdAt: string;
277
+ updatedAt: string;
278
+ companyId: string;
279
+ status: "IN_PROGRESS" | "OPEN" | "CLOSED" | "REJECTED" | "RESOLVED" | "PENDING_REVIEW";
280
+ title: string;
281
+ projectId: string;
282
+ description: string;
283
+ category: "SAFETY" | "QUALITY" | "OTHER" | "STRUCTURAL" | "ELECTRICAL" | "PLUMBING" | "HVAC" | "FINISHES" | "EXTERIOR" | "CODE_COMPLIANCE";
284
+ attachments: {
285
+ filename: string;
286
+ url: string;
287
+ addedBy: string;
288
+ addedAt: string;
289
+ fileSize: number;
290
+ mimeType: string;
291
+ }[];
292
+ priority: "LOW" | "MEDIUM" | "HIGH" | "CRITICAL";
293
+ location: {
294
+ area?: string | undefined;
295
+ building?: string | undefined;
296
+ floor?: string | undefined;
297
+ room?: string | undefined;
298
+ coordinates?: {
299
+ x?: number | undefined;
300
+ y?: number | undefined;
301
+ z?: number | undefined;
302
+ } | undefined;
303
+ };
304
+ photos: {
305
+ url: string;
306
+ addedBy: string;
307
+ addedAt: string;
308
+ caption?: string | undefined;
309
+ }[];
310
+ trade: "GENERAL" | "ELECTRICAL" | "PLUMBING" | "HVAC" | "CONCRETE" | "MASONRY" | "STEEL" | "CARPENTRY" | "ROOFING" | "INSULATION" | "DRYWALL" | "FLOORING" | "LANDSCAPING";
311
+ reportedBy: string;
312
+ reportedAt: string;
313
+ tags: string[];
314
+ blockedTasks: string[];
315
+ relatedDeficiencies: string[];
316
+ assignedAt?: string | undefined;
317
+ dueDate?: string | undefined;
318
+ notes?: string | undefined;
319
+ estimatedCost?: number | undefined;
320
+ actualCost?: number | undefined;
321
+ estimatedHours?: number | undefined;
322
+ actualHours?: number | undefined;
323
+ assignedTo?: string | undefined;
324
+ inspectionDate?: string | undefined;
325
+ completionDate?: string | undefined;
326
+ workOrder?: {
327
+ workOrderNumber?: string | undefined;
328
+ contractor?: string | undefined;
329
+ estimatedCost?: number | undefined;
330
+ actualCost?: number | undefined;
331
+ estimatedHours?: number | undefined;
332
+ actualHours?: number | undefined;
333
+ } | undefined;
334
+ resolution?: {
335
+ description: string;
336
+ resolvedBy: string;
337
+ resolvedAt: string;
338
+ notes?: string | undefined;
339
+ verifiedBy?: string | undefined;
340
+ verifiedAt?: string | undefined;
341
+ } | undefined;
342
+ }, {
343
+ id: string;
344
+ createdAt: string;
345
+ updatedAt: string;
346
+ companyId: string;
347
+ status: "IN_PROGRESS" | "OPEN" | "CLOSED" | "REJECTED" | "RESOLVED" | "PENDING_REVIEW";
348
+ title: string;
349
+ projectId: string;
350
+ description: string;
351
+ category: "SAFETY" | "QUALITY" | "OTHER" | "STRUCTURAL" | "ELECTRICAL" | "PLUMBING" | "HVAC" | "FINISHES" | "EXTERIOR" | "CODE_COMPLIANCE";
352
+ priority: "LOW" | "MEDIUM" | "HIGH" | "CRITICAL";
353
+ location: {
354
+ area?: string | undefined;
355
+ building?: string | undefined;
356
+ floor?: string | undefined;
357
+ room?: string | undefined;
358
+ coordinates?: {
359
+ x?: number | undefined;
360
+ y?: number | undefined;
361
+ z?: number | undefined;
362
+ } | undefined;
363
+ };
364
+ trade: "GENERAL" | "ELECTRICAL" | "PLUMBING" | "HVAC" | "CONCRETE" | "MASONRY" | "STEEL" | "CARPENTRY" | "ROOFING" | "INSULATION" | "DRYWALL" | "FLOORING" | "LANDSCAPING";
365
+ reportedBy: string;
366
+ reportedAt: string;
367
+ assignedAt?: string | undefined;
368
+ dueDate?: string | undefined;
369
+ attachments?: {
370
+ filename: string;
371
+ url: string;
372
+ addedBy: string;
373
+ addedAt: string;
374
+ fileSize: number;
375
+ mimeType: string;
376
+ }[] | undefined;
377
+ notes?: string | undefined;
378
+ photos?: {
379
+ url: string;
380
+ addedBy: string;
381
+ addedAt: string;
382
+ caption?: string | undefined;
383
+ }[] | undefined;
384
+ estimatedCost?: number | undefined;
385
+ actualCost?: number | undefined;
386
+ estimatedHours?: number | undefined;
387
+ actualHours?: number | undefined;
388
+ assignedTo?: string | undefined;
389
+ inspectionDate?: string | undefined;
390
+ completionDate?: string | undefined;
391
+ tags?: string[] | undefined;
392
+ blockedTasks?: string[] | undefined;
393
+ relatedDeficiencies?: string[] | undefined;
394
+ workOrder?: {
395
+ workOrderNumber?: string | undefined;
396
+ contractor?: string | undefined;
397
+ estimatedCost?: number | undefined;
398
+ actualCost?: number | undefined;
399
+ estimatedHours?: number | undefined;
400
+ actualHours?: number | undefined;
401
+ } | undefined;
402
+ resolution?: {
403
+ description: string;
404
+ resolvedBy: string;
405
+ resolvedAt: string;
406
+ notes?: string | undefined;
407
+ verifiedBy?: string | undefined;
408
+ verifiedAt?: string | undefined;
409
+ } | undefined;
410
+ }>;
411
+ export declare const CreateDeficiencyRequestSchema: z.ZodObject<{
412
+ title: z.ZodString;
413
+ description: z.ZodString;
414
+ category: z.ZodEnum<["STRUCTURAL", "ELECTRICAL", "PLUMBING", "HVAC", "FINISHES", "EXTERIOR", "SAFETY", "QUALITY", "CODE_COMPLIANCE", "OTHER"]>;
415
+ priority: z.ZodDefault<z.ZodEnum<["LOW", "MEDIUM", "HIGH", "CRITICAL"]>>;
416
+ trade: z.ZodDefault<z.ZodEnum<["GENERAL", "CONCRETE", "MASONRY", "STEEL", "CARPENTRY", "ROOFING", "ELECTRICAL", "PLUMBING", "HVAC", "INSULATION", "DRYWALL", "FLOORING", "LANDSCAPING"]>>;
417
+ location: z.ZodObject<{
418
+ building: z.ZodOptional<z.ZodString>;
419
+ floor: z.ZodOptional<z.ZodString>;
420
+ room: z.ZodOptional<z.ZodString>;
421
+ area: z.ZodOptional<z.ZodString>;
422
+ coordinates: z.ZodOptional<z.ZodObject<{
423
+ x: z.ZodOptional<z.ZodNumber>;
424
+ y: z.ZodOptional<z.ZodNumber>;
425
+ z: z.ZodOptional<z.ZodNumber>;
426
+ }, "strip", z.ZodTypeAny, {
427
+ x?: number | undefined;
428
+ y?: number | undefined;
429
+ z?: number | undefined;
430
+ }, {
431
+ x?: number | undefined;
432
+ y?: number | undefined;
433
+ z?: number | undefined;
434
+ }>>;
435
+ }, "strip", z.ZodTypeAny, {
436
+ area?: string | undefined;
437
+ building?: string | undefined;
438
+ floor?: string | undefined;
439
+ room?: string | undefined;
440
+ coordinates?: {
441
+ x?: number | undefined;
442
+ y?: number | undefined;
443
+ z?: number | undefined;
444
+ } | undefined;
445
+ }, {
446
+ area?: string | undefined;
447
+ building?: string | undefined;
448
+ floor?: string | undefined;
449
+ room?: string | undefined;
450
+ coordinates?: {
451
+ x?: number | undefined;
452
+ y?: number | undefined;
453
+ z?: number | undefined;
454
+ } | undefined;
455
+ }>;
456
+ assignedTo: z.ZodOptional<z.ZodString>;
457
+ dueDate: z.ZodOptional<z.ZodString>;
458
+ inspectionDate: z.ZodOptional<z.ZodString>;
459
+ estimatedCost: z.ZodOptional<z.ZodNumber>;
460
+ estimatedHours: z.ZodOptional<z.ZodNumber>;
461
+ photos: z.ZodDefault<z.ZodArray<z.ZodObject<{
462
+ url: z.ZodString;
463
+ caption: z.ZodOptional<z.ZodString>;
464
+ addedBy: z.ZodString;
465
+ addedAt: z.ZodString;
466
+ }, "strip", z.ZodTypeAny, {
467
+ url: string;
468
+ addedBy: string;
469
+ addedAt: string;
470
+ caption?: string | undefined;
471
+ }, {
472
+ url: string;
473
+ addedBy: string;
474
+ addedAt: string;
475
+ caption?: string | undefined;
476
+ }>, "many">>;
477
+ attachments: z.ZodDefault<z.ZodArray<z.ZodObject<{
478
+ url: z.ZodString;
479
+ filename: z.ZodString;
480
+ fileSize: z.ZodNumber;
481
+ mimeType: z.ZodString;
482
+ addedBy: z.ZodString;
483
+ addedAt: z.ZodString;
484
+ }, "strip", z.ZodTypeAny, {
485
+ filename: string;
486
+ url: string;
487
+ addedBy: string;
488
+ addedAt: string;
489
+ fileSize: number;
490
+ mimeType: string;
491
+ }, {
492
+ filename: string;
493
+ url: string;
494
+ addedBy: string;
495
+ addedAt: string;
496
+ fileSize: number;
497
+ mimeType: string;
498
+ }>, "many">>;
499
+ tags: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
500
+ notes: z.ZodOptional<z.ZodString>;
501
+ blockedTasks: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
502
+ relatedDeficiencies: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
503
+ workOrder: z.ZodOptional<z.ZodObject<{
504
+ workOrderNumber: z.ZodOptional<z.ZodString>;
505
+ contractor: z.ZodOptional<z.ZodString>;
506
+ estimatedCost: z.ZodOptional<z.ZodNumber>;
507
+ actualCost: z.ZodOptional<z.ZodNumber>;
508
+ estimatedHours: z.ZodOptional<z.ZodNumber>;
509
+ actualHours: z.ZodOptional<z.ZodNumber>;
510
+ }, "strip", z.ZodTypeAny, {
511
+ workOrderNumber?: string | undefined;
512
+ contractor?: string | undefined;
513
+ estimatedCost?: number | undefined;
514
+ actualCost?: number | undefined;
515
+ estimatedHours?: number | undefined;
516
+ actualHours?: number | undefined;
517
+ }, {
518
+ workOrderNumber?: string | undefined;
519
+ contractor?: string | undefined;
520
+ estimatedCost?: number | undefined;
521
+ actualCost?: number | undefined;
522
+ estimatedHours?: number | undefined;
523
+ actualHours?: number | undefined;
524
+ }>>;
525
+ }, "strip", z.ZodTypeAny, {
526
+ title: string;
527
+ description: string;
528
+ category: "SAFETY" | "QUALITY" | "OTHER" | "STRUCTURAL" | "ELECTRICAL" | "PLUMBING" | "HVAC" | "FINISHES" | "EXTERIOR" | "CODE_COMPLIANCE";
529
+ attachments: {
530
+ filename: string;
531
+ url: string;
532
+ addedBy: string;
533
+ addedAt: string;
534
+ fileSize: number;
535
+ mimeType: string;
536
+ }[];
537
+ priority: "LOW" | "MEDIUM" | "HIGH" | "CRITICAL";
538
+ location: {
539
+ area?: string | undefined;
540
+ building?: string | undefined;
541
+ floor?: string | undefined;
542
+ room?: string | undefined;
543
+ coordinates?: {
544
+ x?: number | undefined;
545
+ y?: number | undefined;
546
+ z?: number | undefined;
547
+ } | undefined;
548
+ };
549
+ photos: {
550
+ url: string;
551
+ addedBy: string;
552
+ addedAt: string;
553
+ caption?: string | undefined;
554
+ }[];
555
+ trade: "GENERAL" | "ELECTRICAL" | "PLUMBING" | "HVAC" | "CONCRETE" | "MASONRY" | "STEEL" | "CARPENTRY" | "ROOFING" | "INSULATION" | "DRYWALL" | "FLOORING" | "LANDSCAPING";
556
+ tags: string[];
557
+ blockedTasks: string[];
558
+ relatedDeficiencies: string[];
559
+ dueDate?: string | undefined;
560
+ notes?: string | undefined;
561
+ estimatedCost?: number | undefined;
562
+ estimatedHours?: number | undefined;
563
+ assignedTo?: string | undefined;
564
+ inspectionDate?: string | undefined;
565
+ workOrder?: {
566
+ workOrderNumber?: string | undefined;
567
+ contractor?: string | undefined;
568
+ estimatedCost?: number | undefined;
569
+ actualCost?: number | undefined;
570
+ estimatedHours?: number | undefined;
571
+ actualHours?: number | undefined;
572
+ } | undefined;
573
+ }, {
574
+ title: string;
575
+ description: string;
576
+ category: "SAFETY" | "QUALITY" | "OTHER" | "STRUCTURAL" | "ELECTRICAL" | "PLUMBING" | "HVAC" | "FINISHES" | "EXTERIOR" | "CODE_COMPLIANCE";
577
+ location: {
578
+ area?: string | undefined;
579
+ building?: string | undefined;
580
+ floor?: string | undefined;
581
+ room?: string | undefined;
582
+ coordinates?: {
583
+ x?: number | undefined;
584
+ y?: number | undefined;
585
+ z?: number | undefined;
586
+ } | undefined;
587
+ };
588
+ dueDate?: string | undefined;
589
+ attachments?: {
590
+ filename: string;
591
+ url: string;
592
+ addedBy: string;
593
+ addedAt: string;
594
+ fileSize: number;
595
+ mimeType: string;
596
+ }[] | undefined;
597
+ notes?: string | undefined;
598
+ priority?: "LOW" | "MEDIUM" | "HIGH" | "CRITICAL" | undefined;
599
+ photos?: {
600
+ url: string;
601
+ addedBy: string;
602
+ addedAt: string;
603
+ caption?: string | undefined;
604
+ }[] | undefined;
605
+ estimatedCost?: number | undefined;
606
+ estimatedHours?: number | undefined;
607
+ trade?: "GENERAL" | "ELECTRICAL" | "PLUMBING" | "HVAC" | "CONCRETE" | "MASONRY" | "STEEL" | "CARPENTRY" | "ROOFING" | "INSULATION" | "DRYWALL" | "FLOORING" | "LANDSCAPING" | undefined;
608
+ assignedTo?: string | undefined;
609
+ inspectionDate?: string | undefined;
610
+ tags?: string[] | undefined;
611
+ blockedTasks?: string[] | undefined;
612
+ relatedDeficiencies?: string[] | undefined;
613
+ workOrder?: {
614
+ workOrderNumber?: string | undefined;
615
+ contractor?: string | undefined;
616
+ estimatedCost?: number | undefined;
617
+ actualCost?: number | undefined;
618
+ estimatedHours?: number | undefined;
619
+ actualHours?: number | undefined;
620
+ } | undefined;
621
+ }>;
622
+ export declare const UpdateDeficiencyRequestSchema: z.ZodObject<{
623
+ title: z.ZodOptional<z.ZodString>;
624
+ description: z.ZodOptional<z.ZodString>;
625
+ category: z.ZodOptional<z.ZodEnum<["STRUCTURAL", "ELECTRICAL", "PLUMBING", "HVAC", "FINISHES", "EXTERIOR", "SAFETY", "QUALITY", "CODE_COMPLIANCE", "OTHER"]>>;
626
+ priority: z.ZodOptional<z.ZodDefault<z.ZodEnum<["LOW", "MEDIUM", "HIGH", "CRITICAL"]>>>;
627
+ trade: z.ZodOptional<z.ZodDefault<z.ZodEnum<["GENERAL", "CONCRETE", "MASONRY", "STEEL", "CARPENTRY", "ROOFING", "ELECTRICAL", "PLUMBING", "HVAC", "INSULATION", "DRYWALL", "FLOORING", "LANDSCAPING"]>>>;
628
+ location: z.ZodOptional<z.ZodObject<{
629
+ building: z.ZodOptional<z.ZodString>;
630
+ floor: z.ZodOptional<z.ZodString>;
631
+ room: z.ZodOptional<z.ZodString>;
632
+ area: z.ZodOptional<z.ZodString>;
633
+ coordinates: z.ZodOptional<z.ZodObject<{
634
+ x: z.ZodOptional<z.ZodNumber>;
635
+ y: z.ZodOptional<z.ZodNumber>;
636
+ z: z.ZodOptional<z.ZodNumber>;
637
+ }, "strip", z.ZodTypeAny, {
638
+ x?: number | undefined;
639
+ y?: number | undefined;
640
+ z?: number | undefined;
641
+ }, {
642
+ x?: number | undefined;
643
+ y?: number | undefined;
644
+ z?: number | undefined;
645
+ }>>;
646
+ }, "strip", z.ZodTypeAny, {
647
+ area?: string | undefined;
648
+ building?: string | undefined;
649
+ floor?: string | undefined;
650
+ room?: string | undefined;
651
+ coordinates?: {
652
+ x?: number | undefined;
653
+ y?: number | undefined;
654
+ z?: number | undefined;
655
+ } | undefined;
656
+ }, {
657
+ area?: string | undefined;
658
+ building?: string | undefined;
659
+ floor?: string | undefined;
660
+ room?: string | undefined;
661
+ coordinates?: {
662
+ x?: number | undefined;
663
+ y?: number | undefined;
664
+ z?: number | undefined;
665
+ } | undefined;
666
+ }>>;
667
+ assignedTo: z.ZodOptional<z.ZodOptional<z.ZodString>>;
668
+ dueDate: z.ZodOptional<z.ZodOptional<z.ZodString>>;
669
+ inspectionDate: z.ZodOptional<z.ZodOptional<z.ZodString>>;
670
+ estimatedCost: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
671
+ estimatedHours: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
672
+ photos: z.ZodOptional<z.ZodDefault<z.ZodArray<z.ZodObject<{
673
+ url: z.ZodString;
674
+ caption: z.ZodOptional<z.ZodString>;
675
+ addedBy: z.ZodString;
676
+ addedAt: z.ZodString;
677
+ }, "strip", z.ZodTypeAny, {
678
+ url: string;
679
+ addedBy: string;
680
+ addedAt: string;
681
+ caption?: string | undefined;
682
+ }, {
683
+ url: string;
684
+ addedBy: string;
685
+ addedAt: string;
686
+ caption?: string | undefined;
687
+ }>, "many">>>;
688
+ attachments: z.ZodOptional<z.ZodDefault<z.ZodArray<z.ZodObject<{
689
+ url: z.ZodString;
690
+ filename: z.ZodString;
691
+ fileSize: z.ZodNumber;
692
+ mimeType: z.ZodString;
693
+ addedBy: z.ZodString;
694
+ addedAt: z.ZodString;
695
+ }, "strip", z.ZodTypeAny, {
696
+ filename: string;
697
+ url: string;
698
+ addedBy: string;
699
+ addedAt: string;
700
+ fileSize: number;
701
+ mimeType: string;
702
+ }, {
703
+ filename: string;
704
+ url: string;
705
+ addedBy: string;
706
+ addedAt: string;
707
+ fileSize: number;
708
+ mimeType: string;
709
+ }>, "many">>>;
710
+ tags: z.ZodOptional<z.ZodDefault<z.ZodArray<z.ZodString, "many">>>;
711
+ notes: z.ZodOptional<z.ZodOptional<z.ZodString>>;
712
+ blockedTasks: z.ZodOptional<z.ZodDefault<z.ZodArray<z.ZodString, "many">>>;
713
+ relatedDeficiencies: z.ZodOptional<z.ZodDefault<z.ZodArray<z.ZodString, "many">>>;
714
+ workOrder: z.ZodOptional<z.ZodOptional<z.ZodObject<{
715
+ workOrderNumber: z.ZodOptional<z.ZodString>;
716
+ contractor: z.ZodOptional<z.ZodString>;
717
+ estimatedCost: z.ZodOptional<z.ZodNumber>;
718
+ actualCost: z.ZodOptional<z.ZodNumber>;
719
+ estimatedHours: z.ZodOptional<z.ZodNumber>;
720
+ actualHours: z.ZodOptional<z.ZodNumber>;
721
+ }, "strip", z.ZodTypeAny, {
722
+ workOrderNumber?: string | undefined;
723
+ contractor?: string | undefined;
724
+ estimatedCost?: number | undefined;
725
+ actualCost?: number | undefined;
726
+ estimatedHours?: number | undefined;
727
+ actualHours?: number | undefined;
728
+ }, {
729
+ workOrderNumber?: string | undefined;
730
+ contractor?: string | undefined;
731
+ estimatedCost?: number | undefined;
732
+ actualCost?: number | undefined;
733
+ estimatedHours?: number | undefined;
734
+ actualHours?: number | undefined;
735
+ }>>>;
736
+ } & {
737
+ status: z.ZodOptional<z.ZodEnum<["OPEN", "IN_PROGRESS", "PENDING_REVIEW", "RESOLVED", "CLOSED", "REJECTED"]>>;
738
+ }, "strip", z.ZodTypeAny, {
739
+ status?: "IN_PROGRESS" | "OPEN" | "CLOSED" | "REJECTED" | "RESOLVED" | "PENDING_REVIEW" | undefined;
740
+ title?: string | undefined;
741
+ description?: string | undefined;
742
+ category?: "SAFETY" | "QUALITY" | "OTHER" | "STRUCTURAL" | "ELECTRICAL" | "PLUMBING" | "HVAC" | "FINISHES" | "EXTERIOR" | "CODE_COMPLIANCE" | undefined;
743
+ dueDate?: string | undefined;
744
+ attachments?: {
745
+ filename: string;
746
+ url: string;
747
+ addedBy: string;
748
+ addedAt: string;
749
+ fileSize: number;
750
+ mimeType: string;
751
+ }[] | undefined;
752
+ notes?: string | undefined;
753
+ priority?: "LOW" | "MEDIUM" | "HIGH" | "CRITICAL" | undefined;
754
+ location?: {
755
+ area?: string | undefined;
756
+ building?: string | undefined;
757
+ floor?: string | undefined;
758
+ room?: string | undefined;
759
+ coordinates?: {
760
+ x?: number | undefined;
761
+ y?: number | undefined;
762
+ z?: number | undefined;
763
+ } | undefined;
764
+ } | undefined;
765
+ photos?: {
766
+ url: string;
767
+ addedBy: string;
768
+ addedAt: string;
769
+ caption?: string | undefined;
770
+ }[] | undefined;
771
+ estimatedCost?: number | undefined;
772
+ estimatedHours?: number | undefined;
773
+ trade?: "GENERAL" | "ELECTRICAL" | "PLUMBING" | "HVAC" | "CONCRETE" | "MASONRY" | "STEEL" | "CARPENTRY" | "ROOFING" | "INSULATION" | "DRYWALL" | "FLOORING" | "LANDSCAPING" | undefined;
774
+ assignedTo?: string | undefined;
775
+ inspectionDate?: string | undefined;
776
+ tags?: string[] | undefined;
777
+ blockedTasks?: string[] | undefined;
778
+ relatedDeficiencies?: string[] | undefined;
779
+ workOrder?: {
780
+ workOrderNumber?: string | undefined;
781
+ contractor?: string | undefined;
782
+ estimatedCost?: number | undefined;
783
+ actualCost?: number | undefined;
784
+ estimatedHours?: number | undefined;
785
+ actualHours?: number | undefined;
786
+ } | undefined;
787
+ }, {
788
+ status?: "IN_PROGRESS" | "OPEN" | "CLOSED" | "REJECTED" | "RESOLVED" | "PENDING_REVIEW" | undefined;
789
+ title?: string | undefined;
790
+ description?: string | undefined;
791
+ category?: "SAFETY" | "QUALITY" | "OTHER" | "STRUCTURAL" | "ELECTRICAL" | "PLUMBING" | "HVAC" | "FINISHES" | "EXTERIOR" | "CODE_COMPLIANCE" | undefined;
792
+ dueDate?: string | undefined;
793
+ attachments?: {
794
+ filename: string;
795
+ url: string;
796
+ addedBy: string;
797
+ addedAt: string;
798
+ fileSize: number;
799
+ mimeType: string;
800
+ }[] | undefined;
801
+ notes?: string | undefined;
802
+ priority?: "LOW" | "MEDIUM" | "HIGH" | "CRITICAL" | undefined;
803
+ location?: {
804
+ area?: string | undefined;
805
+ building?: string | undefined;
806
+ floor?: string | undefined;
807
+ room?: string | undefined;
808
+ coordinates?: {
809
+ x?: number | undefined;
810
+ y?: number | undefined;
811
+ z?: number | undefined;
812
+ } | undefined;
813
+ } | undefined;
814
+ photos?: {
815
+ url: string;
816
+ addedBy: string;
817
+ addedAt: string;
818
+ caption?: string | undefined;
819
+ }[] | undefined;
820
+ estimatedCost?: number | undefined;
821
+ estimatedHours?: number | undefined;
822
+ trade?: "GENERAL" | "ELECTRICAL" | "PLUMBING" | "HVAC" | "CONCRETE" | "MASONRY" | "STEEL" | "CARPENTRY" | "ROOFING" | "INSULATION" | "DRYWALL" | "FLOORING" | "LANDSCAPING" | undefined;
823
+ assignedTo?: string | undefined;
824
+ inspectionDate?: string | undefined;
825
+ tags?: string[] | undefined;
826
+ blockedTasks?: string[] | undefined;
827
+ relatedDeficiencies?: string[] | undefined;
828
+ workOrder?: {
829
+ workOrderNumber?: string | undefined;
830
+ contractor?: string | undefined;
831
+ estimatedCost?: number | undefined;
832
+ actualCost?: number | undefined;
833
+ estimatedHours?: number | undefined;
834
+ actualHours?: number | undefined;
835
+ } | undefined;
836
+ }>;
837
+ export declare const DeficiencyStatusUpdateRequestSchema: z.ZodObject<{
838
+ status: z.ZodEnum<["OPEN", "IN_PROGRESS", "PENDING_REVIEW", "RESOLVED", "CLOSED", "REJECTED"]>;
839
+ notes: z.ZodOptional<z.ZodString>;
840
+ resolution: z.ZodOptional<z.ZodObject<{
841
+ description: z.ZodString;
842
+ resolvedBy: z.ZodString;
843
+ resolvedAt: z.ZodString;
844
+ verifiedBy: z.ZodOptional<z.ZodString>;
845
+ verifiedAt: z.ZodOptional<z.ZodString>;
846
+ notes: z.ZodOptional<z.ZodString>;
847
+ }, "strip", z.ZodTypeAny, {
848
+ description: string;
849
+ resolvedBy: string;
850
+ resolvedAt: string;
851
+ notes?: string | undefined;
852
+ verifiedBy?: string | undefined;
853
+ verifiedAt?: string | undefined;
854
+ }, {
855
+ description: string;
856
+ resolvedBy: string;
857
+ resolvedAt: string;
858
+ notes?: string | undefined;
859
+ verifiedBy?: string | undefined;
860
+ verifiedAt?: string | undefined;
861
+ }>>;
862
+ assignedTo: z.ZodOptional<z.ZodString>;
863
+ dueDate: z.ZodOptional<z.ZodString>;
864
+ completionDate: z.ZodOptional<z.ZodString>;
865
+ actualCost: z.ZodOptional<z.ZodNumber>;
866
+ actualHours: z.ZodOptional<z.ZodNumber>;
867
+ }, "strip", z.ZodTypeAny, {
868
+ status: "IN_PROGRESS" | "OPEN" | "CLOSED" | "REJECTED" | "RESOLVED" | "PENDING_REVIEW";
869
+ dueDate?: string | undefined;
870
+ notes?: string | undefined;
871
+ actualCost?: number | undefined;
872
+ actualHours?: number | undefined;
873
+ assignedTo?: string | undefined;
874
+ completionDate?: string | undefined;
875
+ resolution?: {
876
+ description: string;
877
+ resolvedBy: string;
878
+ resolvedAt: string;
879
+ notes?: string | undefined;
880
+ verifiedBy?: string | undefined;
881
+ verifiedAt?: string | undefined;
882
+ } | undefined;
883
+ }, {
884
+ status: "IN_PROGRESS" | "OPEN" | "CLOSED" | "REJECTED" | "RESOLVED" | "PENDING_REVIEW";
885
+ dueDate?: string | undefined;
886
+ notes?: string | undefined;
887
+ actualCost?: number | undefined;
888
+ actualHours?: number | undefined;
889
+ assignedTo?: string | undefined;
890
+ completionDate?: string | undefined;
891
+ resolution?: {
892
+ description: string;
893
+ resolvedBy: string;
894
+ resolvedAt: string;
895
+ notes?: string | undefined;
896
+ verifiedBy?: string | undefined;
897
+ verifiedAt?: string | undefined;
898
+ } | undefined;
899
+ }>;
900
+ export declare const DeficiencyAssignmentRequestSchema: z.ZodObject<{
901
+ assignedToId: z.ZodString;
902
+ dueDate: z.ZodOptional<z.ZodString>;
903
+ notes: z.ZodOptional<z.ZodString>;
904
+ }, "strip", z.ZodTypeAny, {
905
+ assignedToId: string;
906
+ dueDate?: string | undefined;
907
+ notes?: string | undefined;
908
+ }, {
909
+ assignedToId: string;
910
+ dueDate?: string | undefined;
911
+ notes?: string | undefined;
912
+ }>;
913
+ export declare const DeficiencyFiltersSchema: z.ZodObject<{
914
+ status: z.ZodOptional<z.ZodEnum<["OPEN", "IN_PROGRESS", "PENDING_REVIEW", "RESOLVED", "CLOSED", "REJECTED"]>>;
915
+ priority: z.ZodOptional<z.ZodEnum<["LOW", "MEDIUM", "HIGH", "CRITICAL"]>>;
916
+ category: z.ZodOptional<z.ZodEnum<["STRUCTURAL", "ELECTRICAL", "PLUMBING", "HVAC", "FINISHES", "EXTERIOR", "SAFETY", "QUALITY", "CODE_COMPLIANCE", "OTHER"]>>;
917
+ trade: z.ZodOptional<z.ZodEnum<["GENERAL", "CONCRETE", "MASONRY", "STEEL", "CARPENTRY", "ROOFING", "ELECTRICAL", "PLUMBING", "HVAC", "INSULATION", "DRYWALL", "FLOORING", "LANDSCAPING"]>>;
918
+ assignedTo: z.ZodOptional<z.ZodString>;
919
+ reportedBy: z.ZodOptional<z.ZodString>;
920
+ reportedAfter: z.ZodOptional<z.ZodString>;
921
+ reportedBefore: z.ZodOptional<z.ZodString>;
922
+ dueBefore: z.ZodOptional<z.ZodString>;
923
+ dueAfter: z.ZodOptional<z.ZodString>;
924
+ completedAfter: z.ZodOptional<z.ZodString>;
925
+ completedBefore: z.ZodOptional<z.ZodString>;
926
+ location: z.ZodOptional<z.ZodObject<{
927
+ building: z.ZodOptional<z.ZodString>;
928
+ floor: z.ZodOptional<z.ZodString>;
929
+ room: z.ZodOptional<z.ZodString>;
930
+ area: z.ZodOptional<z.ZodString>;
931
+ }, "strip", z.ZodTypeAny, {
932
+ area?: string | undefined;
933
+ building?: string | undefined;
934
+ floor?: string | undefined;
935
+ room?: string | undefined;
936
+ }, {
937
+ area?: string | undefined;
938
+ building?: string | undefined;
939
+ floor?: string | undefined;
940
+ room?: string | undefined;
941
+ }>>;
942
+ costRange: z.ZodOptional<z.ZodObject<{
943
+ min: z.ZodOptional<z.ZodNumber>;
944
+ max: z.ZodOptional<z.ZodNumber>;
945
+ }, "strip", z.ZodTypeAny, {
946
+ min?: number | undefined;
947
+ max?: number | undefined;
948
+ }, {
949
+ min?: number | undefined;
950
+ max?: number | undefined;
951
+ }>>;
952
+ hoursRange: z.ZodOptional<z.ZodObject<{
953
+ min: z.ZodOptional<z.ZodNumber>;
954
+ max: z.ZodOptional<z.ZodNumber>;
955
+ }, "strip", z.ZodTypeAny, {
956
+ min?: number | undefined;
957
+ max?: number | undefined;
958
+ }, {
959
+ min?: number | undefined;
960
+ max?: number | undefined;
961
+ }>>;
962
+ hasPhotos: z.ZodOptional<z.ZodBoolean>;
963
+ hasAttachments: z.ZodOptional<z.ZodBoolean>;
964
+ hasWorkOrder: z.ZodOptional<z.ZodBoolean>;
965
+ isResolved: z.ZodOptional<z.ZodBoolean>;
966
+ isOverdue: z.ZodOptional<z.ZodBoolean>;
967
+ tags: z.ZodOptional<z.ZodString>;
968
+ search: z.ZodOptional<z.ZodString>;
969
+ page: z.ZodDefault<z.ZodNumber>;
970
+ limit: z.ZodDefault<z.ZodNumber>;
971
+ }, "strip", z.ZodTypeAny, {
972
+ page: number;
973
+ limit: number;
974
+ status?: "IN_PROGRESS" | "OPEN" | "CLOSED" | "REJECTED" | "RESOLVED" | "PENDING_REVIEW" | undefined;
975
+ search?: string | undefined;
976
+ category?: "SAFETY" | "QUALITY" | "OTHER" | "STRUCTURAL" | "ELECTRICAL" | "PLUMBING" | "HVAC" | "FINISHES" | "EXTERIOR" | "CODE_COMPLIANCE" | undefined;
977
+ priority?: "LOW" | "MEDIUM" | "HIGH" | "CRITICAL" | undefined;
978
+ location?: {
979
+ area?: string | undefined;
980
+ building?: string | undefined;
981
+ floor?: string | undefined;
982
+ room?: string | undefined;
983
+ } | undefined;
984
+ trade?: "GENERAL" | "ELECTRICAL" | "PLUMBING" | "HVAC" | "CONCRETE" | "MASONRY" | "STEEL" | "CARPENTRY" | "ROOFING" | "INSULATION" | "DRYWALL" | "FLOORING" | "LANDSCAPING" | undefined;
985
+ reportedBy?: string | undefined;
986
+ assignedTo?: string | undefined;
987
+ tags?: string | undefined;
988
+ reportedAfter?: string | undefined;
989
+ reportedBefore?: string | undefined;
990
+ dueBefore?: string | undefined;
991
+ dueAfter?: string | undefined;
992
+ completedAfter?: string | undefined;
993
+ completedBefore?: string | undefined;
994
+ costRange?: {
995
+ min?: number | undefined;
996
+ max?: number | undefined;
997
+ } | undefined;
998
+ hoursRange?: {
999
+ min?: number | undefined;
1000
+ max?: number | undefined;
1001
+ } | undefined;
1002
+ hasPhotos?: boolean | undefined;
1003
+ hasAttachments?: boolean | undefined;
1004
+ hasWorkOrder?: boolean | undefined;
1005
+ isResolved?: boolean | undefined;
1006
+ isOverdue?: boolean | undefined;
1007
+ }, {
1008
+ status?: "IN_PROGRESS" | "OPEN" | "CLOSED" | "REJECTED" | "RESOLVED" | "PENDING_REVIEW" | undefined;
1009
+ page?: number | undefined;
1010
+ limit?: number | undefined;
1011
+ search?: string | undefined;
1012
+ category?: "SAFETY" | "QUALITY" | "OTHER" | "STRUCTURAL" | "ELECTRICAL" | "PLUMBING" | "HVAC" | "FINISHES" | "EXTERIOR" | "CODE_COMPLIANCE" | undefined;
1013
+ priority?: "LOW" | "MEDIUM" | "HIGH" | "CRITICAL" | undefined;
1014
+ location?: {
1015
+ area?: string | undefined;
1016
+ building?: string | undefined;
1017
+ floor?: string | undefined;
1018
+ room?: string | undefined;
1019
+ } | undefined;
1020
+ trade?: "GENERAL" | "ELECTRICAL" | "PLUMBING" | "HVAC" | "CONCRETE" | "MASONRY" | "STEEL" | "CARPENTRY" | "ROOFING" | "INSULATION" | "DRYWALL" | "FLOORING" | "LANDSCAPING" | undefined;
1021
+ reportedBy?: string | undefined;
1022
+ assignedTo?: string | undefined;
1023
+ tags?: string | undefined;
1024
+ reportedAfter?: string | undefined;
1025
+ reportedBefore?: string | undefined;
1026
+ dueBefore?: string | undefined;
1027
+ dueAfter?: string | undefined;
1028
+ completedAfter?: string | undefined;
1029
+ completedBefore?: string | undefined;
1030
+ costRange?: {
1031
+ min?: number | undefined;
1032
+ max?: number | undefined;
1033
+ } | undefined;
1034
+ hoursRange?: {
1035
+ min?: number | undefined;
1036
+ max?: number | undefined;
1037
+ } | undefined;
1038
+ hasPhotos?: boolean | undefined;
1039
+ hasAttachments?: boolean | undefined;
1040
+ hasWorkOrder?: boolean | undefined;
1041
+ isResolved?: boolean | undefined;
1042
+ isOverdue?: boolean | undefined;
1043
+ }>;
1044
+ export declare const DeficiencyQueryParamsSchema: z.ZodObject<{
1045
+ companyId: z.ZodOptional<z.ZodString>;
1046
+ }, "strip", z.ZodTypeAny, {
1047
+ companyId?: string | undefined;
1048
+ }, {
1049
+ companyId?: string | undefined;
1050
+ }>;
1051
+ export declare const DeficiencyStatsQuerySchema: z.ZodObject<{
1052
+ companyId: z.ZodOptional<z.ZodString>;
1053
+ } & {
1054
+ projectId: z.ZodString;
1055
+ startDate: z.ZodOptional<z.ZodString>;
1056
+ endDate: z.ZodOptional<z.ZodString>;
1057
+ groupBy: z.ZodOptional<z.ZodEnum<["status", "priority", "category", "trade", "assignee"]>>;
1058
+ }, "strip", z.ZodTypeAny, {
1059
+ projectId: string;
1060
+ companyId?: string | undefined;
1061
+ startDate?: string | undefined;
1062
+ endDate?: string | undefined;
1063
+ groupBy?: "status" | "category" | "priority" | "trade" | "assignee" | undefined;
1064
+ }, {
1065
+ projectId: string;
1066
+ companyId?: string | undefined;
1067
+ startDate?: string | undefined;
1068
+ endDate?: string | undefined;
1069
+ groupBy?: "status" | "category" | "priority" | "trade" | "assignee" | undefined;
1070
+ }>;
1071
+ export declare const DeficiencyTemplateQuerySchema: z.ZodObject<{
1072
+ companyId: z.ZodOptional<z.ZodString>;
1073
+ } & {
1074
+ category: z.ZodOptional<z.ZodEnum<["STRUCTURAL", "ELECTRICAL", "PLUMBING", "HVAC", "FINISHES", "EXTERIOR", "SAFETY", "QUALITY", "CODE_COMPLIANCE", "OTHER"]>>;
1075
+ }, "strip", z.ZodTypeAny, {
1076
+ companyId?: string | undefined;
1077
+ category?: "SAFETY" | "QUALITY" | "OTHER" | "STRUCTURAL" | "ELECTRICAL" | "PLUMBING" | "HVAC" | "FINISHES" | "EXTERIOR" | "CODE_COMPLIANCE" | undefined;
1078
+ }, {
1079
+ companyId?: string | undefined;
1080
+ category?: "SAFETY" | "QUALITY" | "OTHER" | "STRUCTURAL" | "ELECTRICAL" | "PLUMBING" | "HVAC" | "FINISHES" | "EXTERIOR" | "CODE_COMPLIANCE" | undefined;
1081
+ }>;
1082
+ export declare const DeficiencyExportFiltersSchema: z.ZodObject<{
1083
+ filters: z.ZodObject<{
1084
+ status: z.ZodOptional<z.ZodEnum<["OPEN", "IN_PROGRESS", "PENDING_REVIEW", "RESOLVED", "CLOSED", "REJECTED"]>>;
1085
+ priority: z.ZodOptional<z.ZodEnum<["LOW", "MEDIUM", "HIGH", "CRITICAL"]>>;
1086
+ category: z.ZodOptional<z.ZodEnum<["STRUCTURAL", "ELECTRICAL", "PLUMBING", "HVAC", "FINISHES", "EXTERIOR", "SAFETY", "QUALITY", "CODE_COMPLIANCE", "OTHER"]>>;
1087
+ trade: z.ZodOptional<z.ZodEnum<["GENERAL", "CONCRETE", "MASONRY", "STEEL", "CARPENTRY", "ROOFING", "ELECTRICAL", "PLUMBING", "HVAC", "INSULATION", "DRYWALL", "FLOORING", "LANDSCAPING"]>>;
1088
+ assignedTo: z.ZodOptional<z.ZodString>;
1089
+ reportedBy: z.ZodOptional<z.ZodString>;
1090
+ reportedAfter: z.ZodOptional<z.ZodString>;
1091
+ reportedBefore: z.ZodOptional<z.ZodString>;
1092
+ dueBefore: z.ZodOptional<z.ZodString>;
1093
+ dueAfter: z.ZodOptional<z.ZodString>;
1094
+ completedAfter: z.ZodOptional<z.ZodString>;
1095
+ completedBefore: z.ZodOptional<z.ZodString>;
1096
+ location: z.ZodOptional<z.ZodObject<{
1097
+ building: z.ZodOptional<z.ZodString>;
1098
+ floor: z.ZodOptional<z.ZodString>;
1099
+ room: z.ZodOptional<z.ZodString>;
1100
+ area: z.ZodOptional<z.ZodString>;
1101
+ }, "strip", z.ZodTypeAny, {
1102
+ area?: string | undefined;
1103
+ building?: string | undefined;
1104
+ floor?: string | undefined;
1105
+ room?: string | undefined;
1106
+ }, {
1107
+ area?: string | undefined;
1108
+ building?: string | undefined;
1109
+ floor?: string | undefined;
1110
+ room?: string | undefined;
1111
+ }>>;
1112
+ costRange: z.ZodOptional<z.ZodObject<{
1113
+ min: z.ZodOptional<z.ZodNumber>;
1114
+ max: z.ZodOptional<z.ZodNumber>;
1115
+ }, "strip", z.ZodTypeAny, {
1116
+ min?: number | undefined;
1117
+ max?: number | undefined;
1118
+ }, {
1119
+ min?: number | undefined;
1120
+ max?: number | undefined;
1121
+ }>>;
1122
+ hoursRange: z.ZodOptional<z.ZodObject<{
1123
+ min: z.ZodOptional<z.ZodNumber>;
1124
+ max: z.ZodOptional<z.ZodNumber>;
1125
+ }, "strip", z.ZodTypeAny, {
1126
+ min?: number | undefined;
1127
+ max?: number | undefined;
1128
+ }, {
1129
+ min?: number | undefined;
1130
+ max?: number | undefined;
1131
+ }>>;
1132
+ hasPhotos: z.ZodOptional<z.ZodBoolean>;
1133
+ hasAttachments: z.ZodOptional<z.ZodBoolean>;
1134
+ hasWorkOrder: z.ZodOptional<z.ZodBoolean>;
1135
+ isResolved: z.ZodOptional<z.ZodBoolean>;
1136
+ isOverdue: z.ZodOptional<z.ZodBoolean>;
1137
+ tags: z.ZodOptional<z.ZodString>;
1138
+ search: z.ZodOptional<z.ZodString>;
1139
+ page: z.ZodDefault<z.ZodNumber>;
1140
+ limit: z.ZodDefault<z.ZodNumber>;
1141
+ }, "strip", z.ZodTypeAny, {
1142
+ page: number;
1143
+ limit: number;
1144
+ status?: "IN_PROGRESS" | "OPEN" | "CLOSED" | "REJECTED" | "RESOLVED" | "PENDING_REVIEW" | undefined;
1145
+ search?: string | undefined;
1146
+ category?: "SAFETY" | "QUALITY" | "OTHER" | "STRUCTURAL" | "ELECTRICAL" | "PLUMBING" | "HVAC" | "FINISHES" | "EXTERIOR" | "CODE_COMPLIANCE" | undefined;
1147
+ priority?: "LOW" | "MEDIUM" | "HIGH" | "CRITICAL" | undefined;
1148
+ location?: {
1149
+ area?: string | undefined;
1150
+ building?: string | undefined;
1151
+ floor?: string | undefined;
1152
+ room?: string | undefined;
1153
+ } | undefined;
1154
+ trade?: "GENERAL" | "ELECTRICAL" | "PLUMBING" | "HVAC" | "CONCRETE" | "MASONRY" | "STEEL" | "CARPENTRY" | "ROOFING" | "INSULATION" | "DRYWALL" | "FLOORING" | "LANDSCAPING" | undefined;
1155
+ reportedBy?: string | undefined;
1156
+ assignedTo?: string | undefined;
1157
+ tags?: string | undefined;
1158
+ reportedAfter?: string | undefined;
1159
+ reportedBefore?: string | undefined;
1160
+ dueBefore?: string | undefined;
1161
+ dueAfter?: string | undefined;
1162
+ completedAfter?: string | undefined;
1163
+ completedBefore?: string | undefined;
1164
+ costRange?: {
1165
+ min?: number | undefined;
1166
+ max?: number | undefined;
1167
+ } | undefined;
1168
+ hoursRange?: {
1169
+ min?: number | undefined;
1170
+ max?: number | undefined;
1171
+ } | undefined;
1172
+ hasPhotos?: boolean | undefined;
1173
+ hasAttachments?: boolean | undefined;
1174
+ hasWorkOrder?: boolean | undefined;
1175
+ isResolved?: boolean | undefined;
1176
+ isOverdue?: boolean | undefined;
1177
+ }, {
1178
+ status?: "IN_PROGRESS" | "OPEN" | "CLOSED" | "REJECTED" | "RESOLVED" | "PENDING_REVIEW" | undefined;
1179
+ page?: number | undefined;
1180
+ limit?: number | undefined;
1181
+ search?: string | undefined;
1182
+ category?: "SAFETY" | "QUALITY" | "OTHER" | "STRUCTURAL" | "ELECTRICAL" | "PLUMBING" | "HVAC" | "FINISHES" | "EXTERIOR" | "CODE_COMPLIANCE" | undefined;
1183
+ priority?: "LOW" | "MEDIUM" | "HIGH" | "CRITICAL" | undefined;
1184
+ location?: {
1185
+ area?: string | undefined;
1186
+ building?: string | undefined;
1187
+ floor?: string | undefined;
1188
+ room?: string | undefined;
1189
+ } | undefined;
1190
+ trade?: "GENERAL" | "ELECTRICAL" | "PLUMBING" | "HVAC" | "CONCRETE" | "MASONRY" | "STEEL" | "CARPENTRY" | "ROOFING" | "INSULATION" | "DRYWALL" | "FLOORING" | "LANDSCAPING" | undefined;
1191
+ reportedBy?: string | undefined;
1192
+ assignedTo?: string | undefined;
1193
+ tags?: string | undefined;
1194
+ reportedAfter?: string | undefined;
1195
+ reportedBefore?: string | undefined;
1196
+ dueBefore?: string | undefined;
1197
+ dueAfter?: string | undefined;
1198
+ completedAfter?: string | undefined;
1199
+ completedBefore?: string | undefined;
1200
+ costRange?: {
1201
+ min?: number | undefined;
1202
+ max?: number | undefined;
1203
+ } | undefined;
1204
+ hoursRange?: {
1205
+ min?: number | undefined;
1206
+ max?: number | undefined;
1207
+ } | undefined;
1208
+ hasPhotos?: boolean | undefined;
1209
+ hasAttachments?: boolean | undefined;
1210
+ hasWorkOrder?: boolean | undefined;
1211
+ isResolved?: boolean | undefined;
1212
+ isOverdue?: boolean | undefined;
1213
+ }>;
1214
+ }, "strip", z.ZodTypeAny, {
1215
+ filters: {
1216
+ page: number;
1217
+ limit: number;
1218
+ status?: "IN_PROGRESS" | "OPEN" | "CLOSED" | "REJECTED" | "RESOLVED" | "PENDING_REVIEW" | undefined;
1219
+ search?: string | undefined;
1220
+ category?: "SAFETY" | "QUALITY" | "OTHER" | "STRUCTURAL" | "ELECTRICAL" | "PLUMBING" | "HVAC" | "FINISHES" | "EXTERIOR" | "CODE_COMPLIANCE" | undefined;
1221
+ priority?: "LOW" | "MEDIUM" | "HIGH" | "CRITICAL" | undefined;
1222
+ location?: {
1223
+ area?: string | undefined;
1224
+ building?: string | undefined;
1225
+ floor?: string | undefined;
1226
+ room?: string | undefined;
1227
+ } | undefined;
1228
+ trade?: "GENERAL" | "ELECTRICAL" | "PLUMBING" | "HVAC" | "CONCRETE" | "MASONRY" | "STEEL" | "CARPENTRY" | "ROOFING" | "INSULATION" | "DRYWALL" | "FLOORING" | "LANDSCAPING" | undefined;
1229
+ reportedBy?: string | undefined;
1230
+ assignedTo?: string | undefined;
1231
+ tags?: string | undefined;
1232
+ reportedAfter?: string | undefined;
1233
+ reportedBefore?: string | undefined;
1234
+ dueBefore?: string | undefined;
1235
+ dueAfter?: string | undefined;
1236
+ completedAfter?: string | undefined;
1237
+ completedBefore?: string | undefined;
1238
+ costRange?: {
1239
+ min?: number | undefined;
1240
+ max?: number | undefined;
1241
+ } | undefined;
1242
+ hoursRange?: {
1243
+ min?: number | undefined;
1244
+ max?: number | undefined;
1245
+ } | undefined;
1246
+ hasPhotos?: boolean | undefined;
1247
+ hasAttachments?: boolean | undefined;
1248
+ hasWorkOrder?: boolean | undefined;
1249
+ isResolved?: boolean | undefined;
1250
+ isOverdue?: boolean | undefined;
1251
+ };
1252
+ }, {
1253
+ filters: {
1254
+ status?: "IN_PROGRESS" | "OPEN" | "CLOSED" | "REJECTED" | "RESOLVED" | "PENDING_REVIEW" | undefined;
1255
+ page?: number | undefined;
1256
+ limit?: number | undefined;
1257
+ search?: string | undefined;
1258
+ category?: "SAFETY" | "QUALITY" | "OTHER" | "STRUCTURAL" | "ELECTRICAL" | "PLUMBING" | "HVAC" | "FINISHES" | "EXTERIOR" | "CODE_COMPLIANCE" | undefined;
1259
+ priority?: "LOW" | "MEDIUM" | "HIGH" | "CRITICAL" | undefined;
1260
+ location?: {
1261
+ area?: string | undefined;
1262
+ building?: string | undefined;
1263
+ floor?: string | undefined;
1264
+ room?: string | undefined;
1265
+ } | undefined;
1266
+ trade?: "GENERAL" | "ELECTRICAL" | "PLUMBING" | "HVAC" | "CONCRETE" | "MASONRY" | "STEEL" | "CARPENTRY" | "ROOFING" | "INSULATION" | "DRYWALL" | "FLOORING" | "LANDSCAPING" | undefined;
1267
+ reportedBy?: string | undefined;
1268
+ assignedTo?: string | undefined;
1269
+ tags?: string | undefined;
1270
+ reportedAfter?: string | undefined;
1271
+ reportedBefore?: string | undefined;
1272
+ dueBefore?: string | undefined;
1273
+ dueAfter?: string | undefined;
1274
+ completedAfter?: string | undefined;
1275
+ completedBefore?: string | undefined;
1276
+ costRange?: {
1277
+ min?: number | undefined;
1278
+ max?: number | undefined;
1279
+ } | undefined;
1280
+ hoursRange?: {
1281
+ min?: number | undefined;
1282
+ max?: number | undefined;
1283
+ } | undefined;
1284
+ hasPhotos?: boolean | undefined;
1285
+ hasAttachments?: boolean | undefined;
1286
+ hasWorkOrder?: boolean | undefined;
1287
+ isResolved?: boolean | undefined;
1288
+ isOverdue?: boolean | undefined;
1289
+ };
1290
+ }>;
1291
+ export declare const BulkDeficiencyActionRequestSchema: z.ZodObject<{
1292
+ deficiencyIds: z.ZodArray<z.ZodString, "many">;
1293
+ action: z.ZodEnum<["ASSIGN", "UPDATE_STATUS", "UPDATE_PRIORITY", "ADD_TAGS"]>;
1294
+ actionData: z.ZodObject<{
1295
+ assignedTo: z.ZodOptional<z.ZodString>;
1296
+ status: z.ZodOptional<z.ZodEnum<["OPEN", "IN_PROGRESS", "PENDING_REVIEW", "RESOLVED", "CLOSED", "REJECTED"]>>;
1297
+ priority: z.ZodOptional<z.ZodEnum<["LOW", "MEDIUM", "HIGH", "CRITICAL"]>>;
1298
+ tags: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
1299
+ dueDate: z.ZodOptional<z.ZodString>;
1300
+ notes: z.ZodOptional<z.ZodString>;
1301
+ }, "strip", z.ZodTypeAny, {
1302
+ status?: "IN_PROGRESS" | "OPEN" | "CLOSED" | "REJECTED" | "RESOLVED" | "PENDING_REVIEW" | undefined;
1303
+ dueDate?: string | undefined;
1304
+ notes?: string | undefined;
1305
+ priority?: "LOW" | "MEDIUM" | "HIGH" | "CRITICAL" | undefined;
1306
+ assignedTo?: string | undefined;
1307
+ tags?: string[] | undefined;
1308
+ }, {
1309
+ status?: "IN_PROGRESS" | "OPEN" | "CLOSED" | "REJECTED" | "RESOLVED" | "PENDING_REVIEW" | undefined;
1310
+ dueDate?: string | undefined;
1311
+ notes?: string | undefined;
1312
+ priority?: "LOW" | "MEDIUM" | "HIGH" | "CRITICAL" | undefined;
1313
+ assignedTo?: string | undefined;
1314
+ tags?: string[] | undefined;
1315
+ }>;
1316
+ }, "strip", z.ZodTypeAny, {
1317
+ deficiencyIds: string[];
1318
+ action: "ASSIGN" | "UPDATE_STATUS" | "UPDATE_PRIORITY" | "ADD_TAGS";
1319
+ actionData: {
1320
+ status?: "IN_PROGRESS" | "OPEN" | "CLOSED" | "REJECTED" | "RESOLVED" | "PENDING_REVIEW" | undefined;
1321
+ dueDate?: string | undefined;
1322
+ notes?: string | undefined;
1323
+ priority?: "LOW" | "MEDIUM" | "HIGH" | "CRITICAL" | undefined;
1324
+ assignedTo?: string | undefined;
1325
+ tags?: string[] | undefined;
1326
+ };
1327
+ }, {
1328
+ deficiencyIds: string[];
1329
+ action: "ASSIGN" | "UPDATE_STATUS" | "UPDATE_PRIORITY" | "ADD_TAGS";
1330
+ actionData: {
1331
+ status?: "IN_PROGRESS" | "OPEN" | "CLOSED" | "REJECTED" | "RESOLVED" | "PENDING_REVIEW" | undefined;
1332
+ dueDate?: string | undefined;
1333
+ notes?: string | undefined;
1334
+ priority?: "LOW" | "MEDIUM" | "HIGH" | "CRITICAL" | undefined;
1335
+ assignedTo?: string | undefined;
1336
+ tags?: string[] | undefined;
1337
+ };
1338
+ }>;
1339
+ export declare const ExportFormatSchema: z.ZodEnum<["PDF", "EXCEL", "CSV"]>;
1340
+ /** Only CSV exports are implemented; PDF/Excel are rejected at the API layer. */
1341
+ export declare const DeficiencyExportRequestFormatSchema: z.ZodEnum<["CSV"]>;
1342
+ export declare const DeficiencyExportRequestSchema: z.ZodObject<{
1343
+ format: z.ZodEnum<["CSV"]>;
1344
+ filters: z.ZodOptional<z.ZodObject<{
1345
+ status: z.ZodOptional<z.ZodEnum<["OPEN", "IN_PROGRESS", "PENDING_REVIEW", "RESOLVED", "CLOSED", "REJECTED"]>>;
1346
+ priority: z.ZodOptional<z.ZodEnum<["LOW", "MEDIUM", "HIGH", "CRITICAL"]>>;
1347
+ category: z.ZodOptional<z.ZodEnum<["STRUCTURAL", "ELECTRICAL", "PLUMBING", "HVAC", "FINISHES", "EXTERIOR", "SAFETY", "QUALITY", "CODE_COMPLIANCE", "OTHER"]>>;
1348
+ trade: z.ZodOptional<z.ZodEnum<["GENERAL", "CONCRETE", "MASONRY", "STEEL", "CARPENTRY", "ROOFING", "ELECTRICAL", "PLUMBING", "HVAC", "INSULATION", "DRYWALL", "FLOORING", "LANDSCAPING"]>>;
1349
+ assignedTo: z.ZodOptional<z.ZodString>;
1350
+ reportedBy: z.ZodOptional<z.ZodString>;
1351
+ reportedAfter: z.ZodOptional<z.ZodString>;
1352
+ reportedBefore: z.ZodOptional<z.ZodString>;
1353
+ dueBefore: z.ZodOptional<z.ZodString>;
1354
+ dueAfter: z.ZodOptional<z.ZodString>;
1355
+ completedAfter: z.ZodOptional<z.ZodString>;
1356
+ completedBefore: z.ZodOptional<z.ZodString>;
1357
+ location: z.ZodOptional<z.ZodObject<{
1358
+ building: z.ZodOptional<z.ZodString>;
1359
+ floor: z.ZodOptional<z.ZodString>;
1360
+ room: z.ZodOptional<z.ZodString>;
1361
+ area: z.ZodOptional<z.ZodString>;
1362
+ }, "strip", z.ZodTypeAny, {
1363
+ area?: string | undefined;
1364
+ building?: string | undefined;
1365
+ floor?: string | undefined;
1366
+ room?: string | undefined;
1367
+ }, {
1368
+ area?: string | undefined;
1369
+ building?: string | undefined;
1370
+ floor?: string | undefined;
1371
+ room?: string | undefined;
1372
+ }>>;
1373
+ costRange: z.ZodOptional<z.ZodObject<{
1374
+ min: z.ZodOptional<z.ZodNumber>;
1375
+ max: z.ZodOptional<z.ZodNumber>;
1376
+ }, "strip", z.ZodTypeAny, {
1377
+ min?: number | undefined;
1378
+ max?: number | undefined;
1379
+ }, {
1380
+ min?: number | undefined;
1381
+ max?: number | undefined;
1382
+ }>>;
1383
+ hoursRange: z.ZodOptional<z.ZodObject<{
1384
+ min: z.ZodOptional<z.ZodNumber>;
1385
+ max: z.ZodOptional<z.ZodNumber>;
1386
+ }, "strip", z.ZodTypeAny, {
1387
+ min?: number | undefined;
1388
+ max?: number | undefined;
1389
+ }, {
1390
+ min?: number | undefined;
1391
+ max?: number | undefined;
1392
+ }>>;
1393
+ hasPhotos: z.ZodOptional<z.ZodBoolean>;
1394
+ hasAttachments: z.ZodOptional<z.ZodBoolean>;
1395
+ hasWorkOrder: z.ZodOptional<z.ZodBoolean>;
1396
+ isResolved: z.ZodOptional<z.ZodBoolean>;
1397
+ isOverdue: z.ZodOptional<z.ZodBoolean>;
1398
+ tags: z.ZodOptional<z.ZodString>;
1399
+ search: z.ZodOptional<z.ZodString>;
1400
+ page: z.ZodDefault<z.ZodNumber>;
1401
+ limit: z.ZodDefault<z.ZodNumber>;
1402
+ }, "strip", z.ZodTypeAny, {
1403
+ page: number;
1404
+ limit: number;
1405
+ status?: "IN_PROGRESS" | "OPEN" | "CLOSED" | "REJECTED" | "RESOLVED" | "PENDING_REVIEW" | undefined;
1406
+ search?: string | undefined;
1407
+ category?: "SAFETY" | "QUALITY" | "OTHER" | "STRUCTURAL" | "ELECTRICAL" | "PLUMBING" | "HVAC" | "FINISHES" | "EXTERIOR" | "CODE_COMPLIANCE" | undefined;
1408
+ priority?: "LOW" | "MEDIUM" | "HIGH" | "CRITICAL" | undefined;
1409
+ location?: {
1410
+ area?: string | undefined;
1411
+ building?: string | undefined;
1412
+ floor?: string | undefined;
1413
+ room?: string | undefined;
1414
+ } | undefined;
1415
+ trade?: "GENERAL" | "ELECTRICAL" | "PLUMBING" | "HVAC" | "CONCRETE" | "MASONRY" | "STEEL" | "CARPENTRY" | "ROOFING" | "INSULATION" | "DRYWALL" | "FLOORING" | "LANDSCAPING" | undefined;
1416
+ reportedBy?: string | undefined;
1417
+ assignedTo?: string | undefined;
1418
+ tags?: string | undefined;
1419
+ reportedAfter?: string | undefined;
1420
+ reportedBefore?: string | undefined;
1421
+ dueBefore?: string | undefined;
1422
+ dueAfter?: string | undefined;
1423
+ completedAfter?: string | undefined;
1424
+ completedBefore?: string | undefined;
1425
+ costRange?: {
1426
+ min?: number | undefined;
1427
+ max?: number | undefined;
1428
+ } | undefined;
1429
+ hoursRange?: {
1430
+ min?: number | undefined;
1431
+ max?: number | undefined;
1432
+ } | undefined;
1433
+ hasPhotos?: boolean | undefined;
1434
+ hasAttachments?: boolean | undefined;
1435
+ hasWorkOrder?: boolean | undefined;
1436
+ isResolved?: boolean | undefined;
1437
+ isOverdue?: boolean | undefined;
1438
+ }, {
1439
+ status?: "IN_PROGRESS" | "OPEN" | "CLOSED" | "REJECTED" | "RESOLVED" | "PENDING_REVIEW" | undefined;
1440
+ page?: number | undefined;
1441
+ limit?: number | undefined;
1442
+ search?: string | undefined;
1443
+ category?: "SAFETY" | "QUALITY" | "OTHER" | "STRUCTURAL" | "ELECTRICAL" | "PLUMBING" | "HVAC" | "FINISHES" | "EXTERIOR" | "CODE_COMPLIANCE" | undefined;
1444
+ priority?: "LOW" | "MEDIUM" | "HIGH" | "CRITICAL" | undefined;
1445
+ location?: {
1446
+ area?: string | undefined;
1447
+ building?: string | undefined;
1448
+ floor?: string | undefined;
1449
+ room?: string | undefined;
1450
+ } | undefined;
1451
+ trade?: "GENERAL" | "ELECTRICAL" | "PLUMBING" | "HVAC" | "CONCRETE" | "MASONRY" | "STEEL" | "CARPENTRY" | "ROOFING" | "INSULATION" | "DRYWALL" | "FLOORING" | "LANDSCAPING" | undefined;
1452
+ reportedBy?: string | undefined;
1453
+ assignedTo?: string | undefined;
1454
+ tags?: string | undefined;
1455
+ reportedAfter?: string | undefined;
1456
+ reportedBefore?: string | undefined;
1457
+ dueBefore?: string | undefined;
1458
+ dueAfter?: string | undefined;
1459
+ completedAfter?: string | undefined;
1460
+ completedBefore?: string | undefined;
1461
+ costRange?: {
1462
+ min?: number | undefined;
1463
+ max?: number | undefined;
1464
+ } | undefined;
1465
+ hoursRange?: {
1466
+ min?: number | undefined;
1467
+ max?: number | undefined;
1468
+ } | undefined;
1469
+ hasPhotos?: boolean | undefined;
1470
+ hasAttachments?: boolean | undefined;
1471
+ hasWorkOrder?: boolean | undefined;
1472
+ isResolved?: boolean | undefined;
1473
+ isOverdue?: boolean | undefined;
1474
+ }>>;
1475
+ options: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
1476
+ }, "strip", z.ZodTypeAny, {
1477
+ format: "CSV";
1478
+ options?: Record<string, unknown> | undefined;
1479
+ filters?: {
1480
+ page: number;
1481
+ limit: number;
1482
+ status?: "IN_PROGRESS" | "OPEN" | "CLOSED" | "REJECTED" | "RESOLVED" | "PENDING_REVIEW" | undefined;
1483
+ search?: string | undefined;
1484
+ category?: "SAFETY" | "QUALITY" | "OTHER" | "STRUCTURAL" | "ELECTRICAL" | "PLUMBING" | "HVAC" | "FINISHES" | "EXTERIOR" | "CODE_COMPLIANCE" | undefined;
1485
+ priority?: "LOW" | "MEDIUM" | "HIGH" | "CRITICAL" | undefined;
1486
+ location?: {
1487
+ area?: string | undefined;
1488
+ building?: string | undefined;
1489
+ floor?: string | undefined;
1490
+ room?: string | undefined;
1491
+ } | undefined;
1492
+ trade?: "GENERAL" | "ELECTRICAL" | "PLUMBING" | "HVAC" | "CONCRETE" | "MASONRY" | "STEEL" | "CARPENTRY" | "ROOFING" | "INSULATION" | "DRYWALL" | "FLOORING" | "LANDSCAPING" | undefined;
1493
+ reportedBy?: string | undefined;
1494
+ assignedTo?: string | undefined;
1495
+ tags?: string | undefined;
1496
+ reportedAfter?: string | undefined;
1497
+ reportedBefore?: string | undefined;
1498
+ dueBefore?: string | undefined;
1499
+ dueAfter?: string | undefined;
1500
+ completedAfter?: string | undefined;
1501
+ completedBefore?: string | undefined;
1502
+ costRange?: {
1503
+ min?: number | undefined;
1504
+ max?: number | undefined;
1505
+ } | undefined;
1506
+ hoursRange?: {
1507
+ min?: number | undefined;
1508
+ max?: number | undefined;
1509
+ } | undefined;
1510
+ hasPhotos?: boolean | undefined;
1511
+ hasAttachments?: boolean | undefined;
1512
+ hasWorkOrder?: boolean | undefined;
1513
+ isResolved?: boolean | undefined;
1514
+ isOverdue?: boolean | undefined;
1515
+ } | undefined;
1516
+ }, {
1517
+ format: "CSV";
1518
+ options?: Record<string, unknown> | undefined;
1519
+ filters?: {
1520
+ status?: "IN_PROGRESS" | "OPEN" | "CLOSED" | "REJECTED" | "RESOLVED" | "PENDING_REVIEW" | undefined;
1521
+ page?: number | undefined;
1522
+ limit?: number | undefined;
1523
+ search?: string | undefined;
1524
+ category?: "SAFETY" | "QUALITY" | "OTHER" | "STRUCTURAL" | "ELECTRICAL" | "PLUMBING" | "HVAC" | "FINISHES" | "EXTERIOR" | "CODE_COMPLIANCE" | undefined;
1525
+ priority?: "LOW" | "MEDIUM" | "HIGH" | "CRITICAL" | undefined;
1526
+ location?: {
1527
+ area?: string | undefined;
1528
+ building?: string | undefined;
1529
+ floor?: string | undefined;
1530
+ room?: string | undefined;
1531
+ } | undefined;
1532
+ trade?: "GENERAL" | "ELECTRICAL" | "PLUMBING" | "HVAC" | "CONCRETE" | "MASONRY" | "STEEL" | "CARPENTRY" | "ROOFING" | "INSULATION" | "DRYWALL" | "FLOORING" | "LANDSCAPING" | undefined;
1533
+ reportedBy?: string | undefined;
1534
+ assignedTo?: string | undefined;
1535
+ tags?: string | undefined;
1536
+ reportedAfter?: string | undefined;
1537
+ reportedBefore?: string | undefined;
1538
+ dueBefore?: string | undefined;
1539
+ dueAfter?: string | undefined;
1540
+ completedAfter?: string | undefined;
1541
+ completedBefore?: string | undefined;
1542
+ costRange?: {
1543
+ min?: number | undefined;
1544
+ max?: number | undefined;
1545
+ } | undefined;
1546
+ hoursRange?: {
1547
+ min?: number | undefined;
1548
+ max?: number | undefined;
1549
+ } | undefined;
1550
+ hasPhotos?: boolean | undefined;
1551
+ hasAttachments?: boolean | undefined;
1552
+ hasWorkOrder?: boolean | undefined;
1553
+ isResolved?: boolean | undefined;
1554
+ isOverdue?: boolean | undefined;
1555
+ } | undefined;
1556
+ }>;
1557
+ export declare const ExportStatusSchema: z.ZodEnum<["PENDING", "IN_PROGRESS", "COMPLETED", "FAILED"]>;
1558
+ export declare const DeficiencyExportResourceSchema: z.ZodObject<{
1559
+ id: z.ZodString;
1560
+ status: z.ZodEnum<["PENDING", "IN_PROGRESS", "COMPLETED", "FAILED"]>;
1561
+ format: z.ZodEnum<["PDF", "EXCEL", "CSV"]>;
1562
+ progress: z.ZodNumber;
1563
+ totalItems: z.ZodNumber;
1564
+ processedItems: z.ZodNumber;
1565
+ startedAt: z.ZodString;
1566
+ completedAt: z.ZodOptional<z.ZodString>;
1567
+ estimatedCompletionTime: z.ZodOptional<z.ZodString>;
1568
+ downloadUrl: z.ZodOptional<z.ZodString>;
1569
+ error: z.ZodOptional<z.ZodString>;
1570
+ }, "strip", z.ZodTypeAny, {
1571
+ id: string;
1572
+ status: "COMPLETED" | "IN_PROGRESS" | "PENDING" | "FAILED";
1573
+ format: "PDF" | "EXCEL" | "CSV";
1574
+ startedAt: string;
1575
+ progress: number;
1576
+ totalItems: number;
1577
+ processedItems: number;
1578
+ error?: string | undefined;
1579
+ completedAt?: string | undefined;
1580
+ estimatedCompletionTime?: string | undefined;
1581
+ downloadUrl?: string | undefined;
1582
+ }, {
1583
+ id: string;
1584
+ status: "COMPLETED" | "IN_PROGRESS" | "PENDING" | "FAILED";
1585
+ format: "PDF" | "EXCEL" | "CSV";
1586
+ startedAt: string;
1587
+ progress: number;
1588
+ totalItems: number;
1589
+ processedItems: number;
1590
+ error?: string | undefined;
1591
+ completedAt?: string | undefined;
1592
+ estimatedCompletionTime?: string | undefined;
1593
+ downloadUrl?: string | undefined;
1594
+ }>;
1595
+ export declare const DeficiencyResourceSchema: z.ZodObject<{
1596
+ type: z.ZodLiteral<"deficiencies">;
1597
+ id: z.ZodString;
1598
+ attributes: z.ZodObject<{
1599
+ id: z.ZodString;
1600
+ projectId: z.ZodString;
1601
+ title: z.ZodString;
1602
+ description: z.ZodString;
1603
+ category: z.ZodEnum<["STRUCTURAL", "ELECTRICAL", "PLUMBING", "HVAC", "FINISHES", "EXTERIOR", "SAFETY", "QUALITY", "CODE_COMPLIANCE", "OTHER"]>;
1604
+ priority: z.ZodEnum<["LOW", "MEDIUM", "HIGH", "CRITICAL"]>;
1605
+ status: z.ZodEnum<["OPEN", "IN_PROGRESS", "PENDING_REVIEW", "RESOLVED", "CLOSED", "REJECTED"]>;
1606
+ trade: z.ZodEnum<["GENERAL", "CONCRETE", "MASONRY", "STEEL", "CARPENTRY", "ROOFING", "ELECTRICAL", "PLUMBING", "HVAC", "INSULATION", "DRYWALL", "FLOORING", "LANDSCAPING"]>;
1607
+ location: z.ZodObject<{
1608
+ building: z.ZodOptional<z.ZodString>;
1609
+ floor: z.ZodOptional<z.ZodString>;
1610
+ room: z.ZodOptional<z.ZodString>;
1611
+ area: z.ZodOptional<z.ZodString>;
1612
+ coordinates: z.ZodOptional<z.ZodObject<{
1613
+ x: z.ZodOptional<z.ZodNumber>;
1614
+ y: z.ZodOptional<z.ZodNumber>;
1615
+ z: z.ZodOptional<z.ZodNumber>;
1616
+ }, "strip", z.ZodTypeAny, {
1617
+ x?: number | undefined;
1618
+ y?: number | undefined;
1619
+ z?: number | undefined;
1620
+ }, {
1621
+ x?: number | undefined;
1622
+ y?: number | undefined;
1623
+ z?: number | undefined;
1624
+ }>>;
1625
+ }, "strip", z.ZodTypeAny, {
1626
+ area?: string | undefined;
1627
+ building?: string | undefined;
1628
+ floor?: string | undefined;
1629
+ room?: string | undefined;
1630
+ coordinates?: {
1631
+ x?: number | undefined;
1632
+ y?: number | undefined;
1633
+ z?: number | undefined;
1634
+ } | undefined;
1635
+ }, {
1636
+ area?: string | undefined;
1637
+ building?: string | undefined;
1638
+ floor?: string | undefined;
1639
+ room?: string | undefined;
1640
+ coordinates?: {
1641
+ x?: number | undefined;
1642
+ y?: number | undefined;
1643
+ z?: number | undefined;
1644
+ } | undefined;
1645
+ }>;
1646
+ reportedBy: z.ZodString;
1647
+ reportedAt: z.ZodString;
1648
+ assignedTo: z.ZodOptional<z.ZodString>;
1649
+ assignedAt: z.ZodOptional<z.ZodString>;
1650
+ dueDate: z.ZodOptional<z.ZodString>;
1651
+ inspectionDate: z.ZodOptional<z.ZodString>;
1652
+ completionDate: z.ZodOptional<z.ZodString>;
1653
+ estimatedCost: z.ZodOptional<z.ZodNumber>;
1654
+ actualCost: z.ZodOptional<z.ZodNumber>;
1655
+ estimatedHours: z.ZodOptional<z.ZodNumber>;
1656
+ actualHours: z.ZodOptional<z.ZodNumber>;
1657
+ photos: z.ZodDefault<z.ZodArray<z.ZodObject<{
1658
+ url: z.ZodString;
1659
+ caption: z.ZodOptional<z.ZodString>;
1660
+ addedBy: z.ZodString;
1661
+ addedAt: z.ZodString;
1662
+ }, "strip", z.ZodTypeAny, {
1663
+ url: string;
1664
+ addedBy: string;
1665
+ addedAt: string;
1666
+ caption?: string | undefined;
1667
+ }, {
1668
+ url: string;
1669
+ addedBy: string;
1670
+ addedAt: string;
1671
+ caption?: string | undefined;
1672
+ }>, "many">>;
1673
+ attachments: z.ZodDefault<z.ZodArray<z.ZodObject<{
1674
+ url: z.ZodString;
1675
+ filename: z.ZodString;
1676
+ fileSize: z.ZodNumber;
1677
+ mimeType: z.ZodString;
1678
+ addedBy: z.ZodString;
1679
+ addedAt: z.ZodString;
1680
+ }, "strip", z.ZodTypeAny, {
1681
+ filename: string;
1682
+ url: string;
1683
+ addedBy: string;
1684
+ addedAt: string;
1685
+ fileSize: number;
1686
+ mimeType: string;
1687
+ }, {
1688
+ filename: string;
1689
+ url: string;
1690
+ addedBy: string;
1691
+ addedAt: string;
1692
+ fileSize: number;
1693
+ mimeType: string;
1694
+ }>, "many">>;
1695
+ tags: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
1696
+ notes: z.ZodOptional<z.ZodString>;
1697
+ blockedTasks: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
1698
+ relatedDeficiencies: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
1699
+ workOrder: z.ZodOptional<z.ZodObject<{
1700
+ workOrderNumber: z.ZodOptional<z.ZodString>;
1701
+ contractor: z.ZodOptional<z.ZodString>;
1702
+ estimatedCost: z.ZodOptional<z.ZodNumber>;
1703
+ actualCost: z.ZodOptional<z.ZodNumber>;
1704
+ estimatedHours: z.ZodOptional<z.ZodNumber>;
1705
+ actualHours: z.ZodOptional<z.ZodNumber>;
1706
+ }, "strip", z.ZodTypeAny, {
1707
+ workOrderNumber?: string | undefined;
1708
+ contractor?: string | undefined;
1709
+ estimatedCost?: number | undefined;
1710
+ actualCost?: number | undefined;
1711
+ estimatedHours?: number | undefined;
1712
+ actualHours?: number | undefined;
1713
+ }, {
1714
+ workOrderNumber?: string | undefined;
1715
+ contractor?: string | undefined;
1716
+ estimatedCost?: number | undefined;
1717
+ actualCost?: number | undefined;
1718
+ estimatedHours?: number | undefined;
1719
+ actualHours?: number | undefined;
1720
+ }>>;
1721
+ resolution: z.ZodOptional<z.ZodObject<{
1722
+ description: z.ZodString;
1723
+ resolvedBy: z.ZodString;
1724
+ resolvedAt: z.ZodString;
1725
+ verifiedBy: z.ZodOptional<z.ZodString>;
1726
+ verifiedAt: z.ZodOptional<z.ZodString>;
1727
+ notes: z.ZodOptional<z.ZodString>;
1728
+ }, "strip", z.ZodTypeAny, {
1729
+ description: string;
1730
+ resolvedBy: string;
1731
+ resolvedAt: string;
1732
+ notes?: string | undefined;
1733
+ verifiedBy?: string | undefined;
1734
+ verifiedAt?: string | undefined;
1735
+ }, {
1736
+ description: string;
1737
+ resolvedBy: string;
1738
+ resolvedAt: string;
1739
+ notes?: string | undefined;
1740
+ verifiedBy?: string | undefined;
1741
+ verifiedAt?: string | undefined;
1742
+ }>>;
1743
+ createdAt: z.ZodString;
1744
+ updatedAt: z.ZodString;
1745
+ companyId: z.ZodString;
1746
+ }, "strip", z.ZodTypeAny, {
1747
+ id: string;
1748
+ createdAt: string;
1749
+ updatedAt: string;
1750
+ companyId: string;
1751
+ status: "IN_PROGRESS" | "OPEN" | "CLOSED" | "REJECTED" | "RESOLVED" | "PENDING_REVIEW";
1752
+ title: string;
1753
+ projectId: string;
1754
+ description: string;
1755
+ category: "SAFETY" | "QUALITY" | "OTHER" | "STRUCTURAL" | "ELECTRICAL" | "PLUMBING" | "HVAC" | "FINISHES" | "EXTERIOR" | "CODE_COMPLIANCE";
1756
+ attachments: {
1757
+ filename: string;
1758
+ url: string;
1759
+ addedBy: string;
1760
+ addedAt: string;
1761
+ fileSize: number;
1762
+ mimeType: string;
1763
+ }[];
1764
+ priority: "LOW" | "MEDIUM" | "HIGH" | "CRITICAL";
1765
+ location: {
1766
+ area?: string | undefined;
1767
+ building?: string | undefined;
1768
+ floor?: string | undefined;
1769
+ room?: string | undefined;
1770
+ coordinates?: {
1771
+ x?: number | undefined;
1772
+ y?: number | undefined;
1773
+ z?: number | undefined;
1774
+ } | undefined;
1775
+ };
1776
+ photos: {
1777
+ url: string;
1778
+ addedBy: string;
1779
+ addedAt: string;
1780
+ caption?: string | undefined;
1781
+ }[];
1782
+ trade: "GENERAL" | "ELECTRICAL" | "PLUMBING" | "HVAC" | "CONCRETE" | "MASONRY" | "STEEL" | "CARPENTRY" | "ROOFING" | "INSULATION" | "DRYWALL" | "FLOORING" | "LANDSCAPING";
1783
+ reportedBy: string;
1784
+ reportedAt: string;
1785
+ tags: string[];
1786
+ blockedTasks: string[];
1787
+ relatedDeficiencies: string[];
1788
+ assignedAt?: string | undefined;
1789
+ dueDate?: string | undefined;
1790
+ notes?: string | undefined;
1791
+ estimatedCost?: number | undefined;
1792
+ actualCost?: number | undefined;
1793
+ estimatedHours?: number | undefined;
1794
+ actualHours?: number | undefined;
1795
+ assignedTo?: string | undefined;
1796
+ inspectionDate?: string | undefined;
1797
+ completionDate?: string | undefined;
1798
+ workOrder?: {
1799
+ workOrderNumber?: string | undefined;
1800
+ contractor?: string | undefined;
1801
+ estimatedCost?: number | undefined;
1802
+ actualCost?: number | undefined;
1803
+ estimatedHours?: number | undefined;
1804
+ actualHours?: number | undefined;
1805
+ } | undefined;
1806
+ resolution?: {
1807
+ description: string;
1808
+ resolvedBy: string;
1809
+ resolvedAt: string;
1810
+ notes?: string | undefined;
1811
+ verifiedBy?: string | undefined;
1812
+ verifiedAt?: string | undefined;
1813
+ } | undefined;
1814
+ }, {
1815
+ id: string;
1816
+ createdAt: string;
1817
+ updatedAt: string;
1818
+ companyId: string;
1819
+ status: "IN_PROGRESS" | "OPEN" | "CLOSED" | "REJECTED" | "RESOLVED" | "PENDING_REVIEW";
1820
+ title: string;
1821
+ projectId: string;
1822
+ description: string;
1823
+ category: "SAFETY" | "QUALITY" | "OTHER" | "STRUCTURAL" | "ELECTRICAL" | "PLUMBING" | "HVAC" | "FINISHES" | "EXTERIOR" | "CODE_COMPLIANCE";
1824
+ priority: "LOW" | "MEDIUM" | "HIGH" | "CRITICAL";
1825
+ location: {
1826
+ area?: string | undefined;
1827
+ building?: string | undefined;
1828
+ floor?: string | undefined;
1829
+ room?: string | undefined;
1830
+ coordinates?: {
1831
+ x?: number | undefined;
1832
+ y?: number | undefined;
1833
+ z?: number | undefined;
1834
+ } | undefined;
1835
+ };
1836
+ trade: "GENERAL" | "ELECTRICAL" | "PLUMBING" | "HVAC" | "CONCRETE" | "MASONRY" | "STEEL" | "CARPENTRY" | "ROOFING" | "INSULATION" | "DRYWALL" | "FLOORING" | "LANDSCAPING";
1837
+ reportedBy: string;
1838
+ reportedAt: string;
1839
+ assignedAt?: string | undefined;
1840
+ dueDate?: string | undefined;
1841
+ attachments?: {
1842
+ filename: string;
1843
+ url: string;
1844
+ addedBy: string;
1845
+ addedAt: string;
1846
+ fileSize: number;
1847
+ mimeType: string;
1848
+ }[] | undefined;
1849
+ notes?: string | undefined;
1850
+ photos?: {
1851
+ url: string;
1852
+ addedBy: string;
1853
+ addedAt: string;
1854
+ caption?: string | undefined;
1855
+ }[] | undefined;
1856
+ estimatedCost?: number | undefined;
1857
+ actualCost?: number | undefined;
1858
+ estimatedHours?: number | undefined;
1859
+ actualHours?: number | undefined;
1860
+ assignedTo?: string | undefined;
1861
+ inspectionDate?: string | undefined;
1862
+ completionDate?: string | undefined;
1863
+ tags?: string[] | undefined;
1864
+ blockedTasks?: string[] | undefined;
1865
+ relatedDeficiencies?: string[] | undefined;
1866
+ workOrder?: {
1867
+ workOrderNumber?: string | undefined;
1868
+ contractor?: string | undefined;
1869
+ estimatedCost?: number | undefined;
1870
+ actualCost?: number | undefined;
1871
+ estimatedHours?: number | undefined;
1872
+ actualHours?: number | undefined;
1873
+ } | undefined;
1874
+ resolution?: {
1875
+ description: string;
1876
+ resolvedBy: string;
1877
+ resolvedAt: string;
1878
+ notes?: string | undefined;
1879
+ verifiedBy?: string | undefined;
1880
+ verifiedAt?: string | undefined;
1881
+ } | undefined;
1882
+ }>;
1883
+ }, "strip", z.ZodTypeAny, {
1884
+ id: string;
1885
+ type: "deficiencies";
1886
+ attributes: {
1887
+ id: string;
1888
+ createdAt: string;
1889
+ updatedAt: string;
1890
+ companyId: string;
1891
+ status: "IN_PROGRESS" | "OPEN" | "CLOSED" | "REJECTED" | "RESOLVED" | "PENDING_REVIEW";
1892
+ title: string;
1893
+ projectId: string;
1894
+ description: string;
1895
+ category: "SAFETY" | "QUALITY" | "OTHER" | "STRUCTURAL" | "ELECTRICAL" | "PLUMBING" | "HVAC" | "FINISHES" | "EXTERIOR" | "CODE_COMPLIANCE";
1896
+ attachments: {
1897
+ filename: string;
1898
+ url: string;
1899
+ addedBy: string;
1900
+ addedAt: string;
1901
+ fileSize: number;
1902
+ mimeType: string;
1903
+ }[];
1904
+ priority: "LOW" | "MEDIUM" | "HIGH" | "CRITICAL";
1905
+ location: {
1906
+ area?: string | undefined;
1907
+ building?: string | undefined;
1908
+ floor?: string | undefined;
1909
+ room?: string | undefined;
1910
+ coordinates?: {
1911
+ x?: number | undefined;
1912
+ y?: number | undefined;
1913
+ z?: number | undefined;
1914
+ } | undefined;
1915
+ };
1916
+ photos: {
1917
+ url: string;
1918
+ addedBy: string;
1919
+ addedAt: string;
1920
+ caption?: string | undefined;
1921
+ }[];
1922
+ trade: "GENERAL" | "ELECTRICAL" | "PLUMBING" | "HVAC" | "CONCRETE" | "MASONRY" | "STEEL" | "CARPENTRY" | "ROOFING" | "INSULATION" | "DRYWALL" | "FLOORING" | "LANDSCAPING";
1923
+ reportedBy: string;
1924
+ reportedAt: string;
1925
+ tags: string[];
1926
+ blockedTasks: string[];
1927
+ relatedDeficiencies: string[];
1928
+ assignedAt?: string | undefined;
1929
+ dueDate?: string | undefined;
1930
+ notes?: string | undefined;
1931
+ estimatedCost?: number | undefined;
1932
+ actualCost?: number | undefined;
1933
+ estimatedHours?: number | undefined;
1934
+ actualHours?: number | undefined;
1935
+ assignedTo?: string | undefined;
1936
+ inspectionDate?: string | undefined;
1937
+ completionDate?: string | undefined;
1938
+ workOrder?: {
1939
+ workOrderNumber?: string | undefined;
1940
+ contractor?: string | undefined;
1941
+ estimatedCost?: number | undefined;
1942
+ actualCost?: number | undefined;
1943
+ estimatedHours?: number | undefined;
1944
+ actualHours?: number | undefined;
1945
+ } | undefined;
1946
+ resolution?: {
1947
+ description: string;
1948
+ resolvedBy: string;
1949
+ resolvedAt: string;
1950
+ notes?: string | undefined;
1951
+ verifiedBy?: string | undefined;
1952
+ verifiedAt?: string | undefined;
1953
+ } | undefined;
1954
+ };
1955
+ }, {
1956
+ id: string;
1957
+ type: "deficiencies";
1958
+ attributes: {
1959
+ id: string;
1960
+ createdAt: string;
1961
+ updatedAt: string;
1962
+ companyId: string;
1963
+ status: "IN_PROGRESS" | "OPEN" | "CLOSED" | "REJECTED" | "RESOLVED" | "PENDING_REVIEW";
1964
+ title: string;
1965
+ projectId: string;
1966
+ description: string;
1967
+ category: "SAFETY" | "QUALITY" | "OTHER" | "STRUCTURAL" | "ELECTRICAL" | "PLUMBING" | "HVAC" | "FINISHES" | "EXTERIOR" | "CODE_COMPLIANCE";
1968
+ priority: "LOW" | "MEDIUM" | "HIGH" | "CRITICAL";
1969
+ location: {
1970
+ area?: string | undefined;
1971
+ building?: string | undefined;
1972
+ floor?: string | undefined;
1973
+ room?: string | undefined;
1974
+ coordinates?: {
1975
+ x?: number | undefined;
1976
+ y?: number | undefined;
1977
+ z?: number | undefined;
1978
+ } | undefined;
1979
+ };
1980
+ trade: "GENERAL" | "ELECTRICAL" | "PLUMBING" | "HVAC" | "CONCRETE" | "MASONRY" | "STEEL" | "CARPENTRY" | "ROOFING" | "INSULATION" | "DRYWALL" | "FLOORING" | "LANDSCAPING";
1981
+ reportedBy: string;
1982
+ reportedAt: string;
1983
+ assignedAt?: string | undefined;
1984
+ dueDate?: string | undefined;
1985
+ attachments?: {
1986
+ filename: string;
1987
+ url: string;
1988
+ addedBy: string;
1989
+ addedAt: string;
1990
+ fileSize: number;
1991
+ mimeType: string;
1992
+ }[] | undefined;
1993
+ notes?: string | undefined;
1994
+ photos?: {
1995
+ url: string;
1996
+ addedBy: string;
1997
+ addedAt: string;
1998
+ caption?: string | undefined;
1999
+ }[] | undefined;
2000
+ estimatedCost?: number | undefined;
2001
+ actualCost?: number | undefined;
2002
+ estimatedHours?: number | undefined;
2003
+ actualHours?: number | undefined;
2004
+ assignedTo?: string | undefined;
2005
+ inspectionDate?: string | undefined;
2006
+ completionDate?: string | undefined;
2007
+ tags?: string[] | undefined;
2008
+ blockedTasks?: string[] | undefined;
2009
+ relatedDeficiencies?: string[] | undefined;
2010
+ workOrder?: {
2011
+ workOrderNumber?: string | undefined;
2012
+ contractor?: string | undefined;
2013
+ estimatedCost?: number | undefined;
2014
+ actualCost?: number | undefined;
2015
+ estimatedHours?: number | undefined;
2016
+ actualHours?: number | undefined;
2017
+ } | undefined;
2018
+ resolution?: {
2019
+ description: string;
2020
+ resolvedBy: string;
2021
+ resolvedAt: string;
2022
+ notes?: string | undefined;
2023
+ verifiedBy?: string | undefined;
2024
+ verifiedAt?: string | undefined;
2025
+ } | undefined;
2026
+ };
2027
+ }>;
2028
+ export declare const BulkDeficiencyActionResourceSchema: z.ZodObject<{
2029
+ type: z.ZodLiteral<"bulk-deficiency-actions">;
2030
+ id: z.ZodString;
2031
+ attributes: z.ZodObject<{
2032
+ action: z.ZodEnum<["ASSIGN", "UPDATE_STATUS", "UPDATE_PRIORITY", "ADD_TAGS"]>;
2033
+ affectedCount: z.ZodNumber;
2034
+ successfulIds: z.ZodArray<z.ZodString, "many">;
2035
+ failedIds: z.ZodArray<z.ZodString, "many">;
2036
+ errors: z.ZodArray<z.ZodObject<{
2037
+ deficiencyId: z.ZodString;
2038
+ error: z.ZodString;
2039
+ }, "strip", z.ZodTypeAny, {
2040
+ error: string;
2041
+ deficiencyId: string;
2042
+ }, {
2043
+ error: string;
2044
+ deficiencyId: string;
2045
+ }>, "many">;
2046
+ completedAt: z.ZodString;
2047
+ }, "strip", z.ZodTypeAny, {
2048
+ errors: {
2049
+ error: string;
2050
+ deficiencyId: string;
2051
+ }[];
2052
+ action: "ASSIGN" | "UPDATE_STATUS" | "UPDATE_PRIORITY" | "ADD_TAGS";
2053
+ completedAt: string;
2054
+ affectedCount: number;
2055
+ successfulIds: string[];
2056
+ failedIds: string[];
2057
+ }, {
2058
+ errors: {
2059
+ error: string;
2060
+ deficiencyId: string;
2061
+ }[];
2062
+ action: "ASSIGN" | "UPDATE_STATUS" | "UPDATE_PRIORITY" | "ADD_TAGS";
2063
+ completedAt: string;
2064
+ affectedCount: number;
2065
+ successfulIds: string[];
2066
+ failedIds: string[];
2067
+ }>;
2068
+ }, "strip", z.ZodTypeAny, {
2069
+ id: string;
2070
+ type: "bulk-deficiency-actions";
2071
+ attributes: {
2072
+ errors: {
2073
+ error: string;
2074
+ deficiencyId: string;
2075
+ }[];
2076
+ action: "ASSIGN" | "UPDATE_STATUS" | "UPDATE_PRIORITY" | "ADD_TAGS";
2077
+ completedAt: string;
2078
+ affectedCount: number;
2079
+ successfulIds: string[];
2080
+ failedIds: string[];
2081
+ };
2082
+ }, {
2083
+ id: string;
2084
+ type: "bulk-deficiency-actions";
2085
+ attributes: {
2086
+ errors: {
2087
+ error: string;
2088
+ deficiencyId: string;
2089
+ }[];
2090
+ action: "ASSIGN" | "UPDATE_STATUS" | "UPDATE_PRIORITY" | "ADD_TAGS";
2091
+ completedAt: string;
2092
+ affectedCount: number;
2093
+ successfulIds: string[];
2094
+ failedIds: string[];
2095
+ };
2096
+ }>;
2097
+ export declare const DeficiencyStatsResourceSchema: z.ZodObject<{
2098
+ type: z.ZodLiteral<"deficiency-statistics">;
2099
+ id: z.ZodString;
2100
+ attributes: z.ZodObject<{
2101
+ summary: z.ZodObject<{
2102
+ total: z.ZodNumber;
2103
+ open: z.ZodNumber;
2104
+ inProgress: z.ZodNumber;
2105
+ resolved: z.ZodNumber;
2106
+ closed: z.ZodNumber;
2107
+ overdue: z.ZodNumber;
2108
+ }, "strip", z.ZodTypeAny, {
2109
+ total: number;
2110
+ open: number;
2111
+ inProgress: number;
2112
+ resolved: number;
2113
+ closed: number;
2114
+ overdue: number;
2115
+ }, {
2116
+ total: number;
2117
+ open: number;
2118
+ inProgress: number;
2119
+ resolved: number;
2120
+ closed: number;
2121
+ overdue: number;
2122
+ }>;
2123
+ byCategory: z.ZodArray<z.ZodObject<{
2124
+ category: z.ZodEnum<["STRUCTURAL", "ELECTRICAL", "PLUMBING", "HVAC", "FINISHES", "EXTERIOR", "SAFETY", "QUALITY", "CODE_COMPLIANCE", "OTHER"]>;
2125
+ count: z.ZodNumber;
2126
+ percentage: z.ZodNumber;
2127
+ }, "strip", z.ZodTypeAny, {
2128
+ category: "SAFETY" | "QUALITY" | "OTHER" | "STRUCTURAL" | "ELECTRICAL" | "PLUMBING" | "HVAC" | "FINISHES" | "EXTERIOR" | "CODE_COMPLIANCE";
2129
+ count: number;
2130
+ percentage: number;
2131
+ }, {
2132
+ category: "SAFETY" | "QUALITY" | "OTHER" | "STRUCTURAL" | "ELECTRICAL" | "PLUMBING" | "HVAC" | "FINISHES" | "EXTERIOR" | "CODE_COMPLIANCE";
2133
+ count: number;
2134
+ percentage: number;
2135
+ }>, "many">;
2136
+ byPriority: z.ZodArray<z.ZodObject<{
2137
+ priority: z.ZodEnum<["LOW", "MEDIUM", "HIGH", "CRITICAL"]>;
2138
+ count: z.ZodNumber;
2139
+ percentage: z.ZodNumber;
2140
+ }, "strip", z.ZodTypeAny, {
2141
+ priority: "LOW" | "MEDIUM" | "HIGH" | "CRITICAL";
2142
+ count: number;
2143
+ percentage: number;
2144
+ }, {
2145
+ priority: "LOW" | "MEDIUM" | "HIGH" | "CRITICAL";
2146
+ count: number;
2147
+ percentage: number;
2148
+ }>, "many">;
2149
+ byTrade: z.ZodArray<z.ZodObject<{
2150
+ trade: z.ZodEnum<["GENERAL", "CONCRETE", "MASONRY", "STEEL", "CARPENTRY", "ROOFING", "ELECTRICAL", "PLUMBING", "HVAC", "INSULATION", "DRYWALL", "FLOORING", "LANDSCAPING"]>;
2151
+ count: z.ZodNumber;
2152
+ percentage: z.ZodNumber;
2153
+ }, "strip", z.ZodTypeAny, {
2154
+ trade: "GENERAL" | "ELECTRICAL" | "PLUMBING" | "HVAC" | "CONCRETE" | "MASONRY" | "STEEL" | "CARPENTRY" | "ROOFING" | "INSULATION" | "DRYWALL" | "FLOORING" | "LANDSCAPING";
2155
+ count: number;
2156
+ percentage: number;
2157
+ }, {
2158
+ trade: "GENERAL" | "ELECTRICAL" | "PLUMBING" | "HVAC" | "CONCRETE" | "MASONRY" | "STEEL" | "CARPENTRY" | "ROOFING" | "INSULATION" | "DRYWALL" | "FLOORING" | "LANDSCAPING";
2159
+ count: number;
2160
+ percentage: number;
2161
+ }>, "many">;
2162
+ trends: z.ZodArray<z.ZodObject<{
2163
+ date: z.ZodString;
2164
+ opened: z.ZodNumber;
2165
+ resolved: z.ZodNumber;
2166
+ pending: z.ZodNumber;
2167
+ }, "strip", z.ZodTypeAny, {
2168
+ date: string;
2169
+ resolved: number;
2170
+ opened: number;
2171
+ pending: number;
2172
+ }, {
2173
+ date: string;
2174
+ resolved: number;
2175
+ opened: number;
2176
+ pending: number;
2177
+ }>, "many">;
2178
+ averageResolutionTime: z.ZodNumber;
2179
+ totalCost: z.ZodNumber;
2180
+ generatedAt: z.ZodString;
2181
+ }, "strip", z.ZodTypeAny, {
2182
+ summary: {
2183
+ total: number;
2184
+ open: number;
2185
+ inProgress: number;
2186
+ resolved: number;
2187
+ closed: number;
2188
+ overdue: number;
2189
+ };
2190
+ trends: {
2191
+ date: string;
2192
+ resolved: number;
2193
+ opened: number;
2194
+ pending: number;
2195
+ }[];
2196
+ byCategory: {
2197
+ category: "SAFETY" | "QUALITY" | "OTHER" | "STRUCTURAL" | "ELECTRICAL" | "PLUMBING" | "HVAC" | "FINISHES" | "EXTERIOR" | "CODE_COMPLIANCE";
2198
+ count: number;
2199
+ percentage: number;
2200
+ }[];
2201
+ byPriority: {
2202
+ priority: "LOW" | "MEDIUM" | "HIGH" | "CRITICAL";
2203
+ count: number;
2204
+ percentage: number;
2205
+ }[];
2206
+ byTrade: {
2207
+ trade: "GENERAL" | "ELECTRICAL" | "PLUMBING" | "HVAC" | "CONCRETE" | "MASONRY" | "STEEL" | "CARPENTRY" | "ROOFING" | "INSULATION" | "DRYWALL" | "FLOORING" | "LANDSCAPING";
2208
+ count: number;
2209
+ percentage: number;
2210
+ }[];
2211
+ averageResolutionTime: number;
2212
+ totalCost: number;
2213
+ generatedAt: string;
2214
+ }, {
2215
+ summary: {
2216
+ total: number;
2217
+ open: number;
2218
+ inProgress: number;
2219
+ resolved: number;
2220
+ closed: number;
2221
+ overdue: number;
2222
+ };
2223
+ trends: {
2224
+ date: string;
2225
+ resolved: number;
2226
+ opened: number;
2227
+ pending: number;
2228
+ }[];
2229
+ byCategory: {
2230
+ category: "SAFETY" | "QUALITY" | "OTHER" | "STRUCTURAL" | "ELECTRICAL" | "PLUMBING" | "HVAC" | "FINISHES" | "EXTERIOR" | "CODE_COMPLIANCE";
2231
+ count: number;
2232
+ percentage: number;
2233
+ }[];
2234
+ byPriority: {
2235
+ priority: "LOW" | "MEDIUM" | "HIGH" | "CRITICAL";
2236
+ count: number;
2237
+ percentage: number;
2238
+ }[];
2239
+ byTrade: {
2240
+ trade: "GENERAL" | "ELECTRICAL" | "PLUMBING" | "HVAC" | "CONCRETE" | "MASONRY" | "STEEL" | "CARPENTRY" | "ROOFING" | "INSULATION" | "DRYWALL" | "FLOORING" | "LANDSCAPING";
2241
+ count: number;
2242
+ percentage: number;
2243
+ }[];
2244
+ averageResolutionTime: number;
2245
+ totalCost: number;
2246
+ generatedAt: string;
2247
+ }>;
2248
+ }, "strip", z.ZodTypeAny, {
2249
+ id: string;
2250
+ type: "deficiency-statistics";
2251
+ attributes: {
2252
+ summary: {
2253
+ total: number;
2254
+ open: number;
2255
+ inProgress: number;
2256
+ resolved: number;
2257
+ closed: number;
2258
+ overdue: number;
2259
+ };
2260
+ trends: {
2261
+ date: string;
2262
+ resolved: number;
2263
+ opened: number;
2264
+ pending: number;
2265
+ }[];
2266
+ byCategory: {
2267
+ category: "SAFETY" | "QUALITY" | "OTHER" | "STRUCTURAL" | "ELECTRICAL" | "PLUMBING" | "HVAC" | "FINISHES" | "EXTERIOR" | "CODE_COMPLIANCE";
2268
+ count: number;
2269
+ percentage: number;
2270
+ }[];
2271
+ byPriority: {
2272
+ priority: "LOW" | "MEDIUM" | "HIGH" | "CRITICAL";
2273
+ count: number;
2274
+ percentage: number;
2275
+ }[];
2276
+ byTrade: {
2277
+ trade: "GENERAL" | "ELECTRICAL" | "PLUMBING" | "HVAC" | "CONCRETE" | "MASONRY" | "STEEL" | "CARPENTRY" | "ROOFING" | "INSULATION" | "DRYWALL" | "FLOORING" | "LANDSCAPING";
2278
+ count: number;
2279
+ percentage: number;
2280
+ }[];
2281
+ averageResolutionTime: number;
2282
+ totalCost: number;
2283
+ generatedAt: string;
2284
+ };
2285
+ }, {
2286
+ id: string;
2287
+ type: "deficiency-statistics";
2288
+ attributes: {
2289
+ summary: {
2290
+ total: number;
2291
+ open: number;
2292
+ inProgress: number;
2293
+ resolved: number;
2294
+ closed: number;
2295
+ overdue: number;
2296
+ };
2297
+ trends: {
2298
+ date: string;
2299
+ resolved: number;
2300
+ opened: number;
2301
+ pending: number;
2302
+ }[];
2303
+ byCategory: {
2304
+ category: "SAFETY" | "QUALITY" | "OTHER" | "STRUCTURAL" | "ELECTRICAL" | "PLUMBING" | "HVAC" | "FINISHES" | "EXTERIOR" | "CODE_COMPLIANCE";
2305
+ count: number;
2306
+ percentage: number;
2307
+ }[];
2308
+ byPriority: {
2309
+ priority: "LOW" | "MEDIUM" | "HIGH" | "CRITICAL";
2310
+ count: number;
2311
+ percentage: number;
2312
+ }[];
2313
+ byTrade: {
2314
+ trade: "GENERAL" | "ELECTRICAL" | "PLUMBING" | "HVAC" | "CONCRETE" | "MASONRY" | "STEEL" | "CARPENTRY" | "ROOFING" | "INSULATION" | "DRYWALL" | "FLOORING" | "LANDSCAPING";
2315
+ count: number;
2316
+ percentage: number;
2317
+ }[];
2318
+ averageResolutionTime: number;
2319
+ totalCost: number;
2320
+ generatedAt: string;
2321
+ };
2322
+ }>;
2323
+ export declare const DeficiencyTemplateResourceSchema: z.ZodObject<{
2324
+ type: z.ZodLiteral<"deficiency-templates">;
2325
+ id: z.ZodString;
2326
+ attributes: z.ZodObject<{
2327
+ category: z.ZodEnum<["STRUCTURAL", "ELECTRICAL", "PLUMBING", "HVAC", "FINISHES", "EXTERIOR", "SAFETY", "QUALITY", "CODE_COMPLIANCE", "OTHER"]>;
2328
+ templates: z.ZodArray<z.ZodObject<{
2329
+ id: z.ZodString;
2330
+ title: z.ZodString;
2331
+ description: z.ZodString;
2332
+ trade: z.ZodEnum<["GENERAL", "CONCRETE", "MASONRY", "STEEL", "CARPENTRY", "ROOFING", "ELECTRICAL", "PLUMBING", "HVAC", "INSULATION", "DRYWALL", "FLOORING", "LANDSCAPING"]>;
2333
+ priority: z.ZodEnum<["LOW", "MEDIUM", "HIGH", "CRITICAL"]>;
2334
+ estimatedHours: z.ZodOptional<z.ZodNumber>;
2335
+ estimatedCost: z.ZodOptional<z.ZodNumber>;
2336
+ tags: z.ZodArray<z.ZodString, "many">;
2337
+ checklist: z.ZodArray<z.ZodObject<{
2338
+ item: z.ZodString;
2339
+ required: z.ZodBoolean;
2340
+ }, "strip", z.ZodTypeAny, {
2341
+ item: string;
2342
+ required: boolean;
2343
+ }, {
2344
+ item: string;
2345
+ required: boolean;
2346
+ }>, "many">;
2347
+ usageCount: z.ZodNumber;
2348
+ lastUsed: z.ZodOptional<z.ZodString>;
2349
+ }, "strip", z.ZodTypeAny, {
2350
+ id: string;
2351
+ title: string;
2352
+ description: string;
2353
+ priority: "LOW" | "MEDIUM" | "HIGH" | "CRITICAL";
2354
+ trade: "GENERAL" | "ELECTRICAL" | "PLUMBING" | "HVAC" | "CONCRETE" | "MASONRY" | "STEEL" | "CARPENTRY" | "ROOFING" | "INSULATION" | "DRYWALL" | "FLOORING" | "LANDSCAPING";
2355
+ tags: string[];
2356
+ checklist: {
2357
+ item: string;
2358
+ required: boolean;
2359
+ }[];
2360
+ usageCount: number;
2361
+ estimatedCost?: number | undefined;
2362
+ estimatedHours?: number | undefined;
2363
+ lastUsed?: string | undefined;
2364
+ }, {
2365
+ id: string;
2366
+ title: string;
2367
+ description: string;
2368
+ priority: "LOW" | "MEDIUM" | "HIGH" | "CRITICAL";
2369
+ trade: "GENERAL" | "ELECTRICAL" | "PLUMBING" | "HVAC" | "CONCRETE" | "MASONRY" | "STEEL" | "CARPENTRY" | "ROOFING" | "INSULATION" | "DRYWALL" | "FLOORING" | "LANDSCAPING";
2370
+ tags: string[];
2371
+ checklist: {
2372
+ item: string;
2373
+ required: boolean;
2374
+ }[];
2375
+ usageCount: number;
2376
+ estimatedCost?: number | undefined;
2377
+ estimatedHours?: number | undefined;
2378
+ lastUsed?: string | undefined;
2379
+ }>, "many">;
2380
+ generatedAt: z.ZodString;
2381
+ }, "strip", z.ZodTypeAny, {
2382
+ category: "SAFETY" | "QUALITY" | "OTHER" | "STRUCTURAL" | "ELECTRICAL" | "PLUMBING" | "HVAC" | "FINISHES" | "EXTERIOR" | "CODE_COMPLIANCE";
2383
+ generatedAt: string;
2384
+ templates: {
2385
+ id: string;
2386
+ title: string;
2387
+ description: string;
2388
+ priority: "LOW" | "MEDIUM" | "HIGH" | "CRITICAL";
2389
+ trade: "GENERAL" | "ELECTRICAL" | "PLUMBING" | "HVAC" | "CONCRETE" | "MASONRY" | "STEEL" | "CARPENTRY" | "ROOFING" | "INSULATION" | "DRYWALL" | "FLOORING" | "LANDSCAPING";
2390
+ tags: string[];
2391
+ checklist: {
2392
+ item: string;
2393
+ required: boolean;
2394
+ }[];
2395
+ usageCount: number;
2396
+ estimatedCost?: number | undefined;
2397
+ estimatedHours?: number | undefined;
2398
+ lastUsed?: string | undefined;
2399
+ }[];
2400
+ }, {
2401
+ category: "SAFETY" | "QUALITY" | "OTHER" | "STRUCTURAL" | "ELECTRICAL" | "PLUMBING" | "HVAC" | "FINISHES" | "EXTERIOR" | "CODE_COMPLIANCE";
2402
+ generatedAt: string;
2403
+ templates: {
2404
+ id: string;
2405
+ title: string;
2406
+ description: string;
2407
+ priority: "LOW" | "MEDIUM" | "HIGH" | "CRITICAL";
2408
+ trade: "GENERAL" | "ELECTRICAL" | "PLUMBING" | "HVAC" | "CONCRETE" | "MASONRY" | "STEEL" | "CARPENTRY" | "ROOFING" | "INSULATION" | "DRYWALL" | "FLOORING" | "LANDSCAPING";
2409
+ tags: string[];
2410
+ checklist: {
2411
+ item: string;
2412
+ required: boolean;
2413
+ }[];
2414
+ usageCount: number;
2415
+ estimatedCost?: number | undefined;
2416
+ estimatedHours?: number | undefined;
2417
+ lastUsed?: string | undefined;
2418
+ }[];
2419
+ }>;
2420
+ }, "strip", z.ZodTypeAny, {
2421
+ id: string;
2422
+ type: "deficiency-templates";
2423
+ attributes: {
2424
+ category: "SAFETY" | "QUALITY" | "OTHER" | "STRUCTURAL" | "ELECTRICAL" | "PLUMBING" | "HVAC" | "FINISHES" | "EXTERIOR" | "CODE_COMPLIANCE";
2425
+ generatedAt: string;
2426
+ templates: {
2427
+ id: string;
2428
+ title: string;
2429
+ description: string;
2430
+ priority: "LOW" | "MEDIUM" | "HIGH" | "CRITICAL";
2431
+ trade: "GENERAL" | "ELECTRICAL" | "PLUMBING" | "HVAC" | "CONCRETE" | "MASONRY" | "STEEL" | "CARPENTRY" | "ROOFING" | "INSULATION" | "DRYWALL" | "FLOORING" | "LANDSCAPING";
2432
+ tags: string[];
2433
+ checklist: {
2434
+ item: string;
2435
+ required: boolean;
2436
+ }[];
2437
+ usageCount: number;
2438
+ estimatedCost?: number | undefined;
2439
+ estimatedHours?: number | undefined;
2440
+ lastUsed?: string | undefined;
2441
+ }[];
2442
+ };
2443
+ }, {
2444
+ id: string;
2445
+ type: "deficiency-templates";
2446
+ attributes: {
2447
+ category: "SAFETY" | "QUALITY" | "OTHER" | "STRUCTURAL" | "ELECTRICAL" | "PLUMBING" | "HVAC" | "FINISHES" | "EXTERIOR" | "CODE_COMPLIANCE";
2448
+ generatedAt: string;
2449
+ templates: {
2450
+ id: string;
2451
+ title: string;
2452
+ description: string;
2453
+ priority: "LOW" | "MEDIUM" | "HIGH" | "CRITICAL";
2454
+ trade: "GENERAL" | "ELECTRICAL" | "PLUMBING" | "HVAC" | "CONCRETE" | "MASONRY" | "STEEL" | "CARPENTRY" | "ROOFING" | "INSULATION" | "DRYWALL" | "FLOORING" | "LANDSCAPING";
2455
+ tags: string[];
2456
+ checklist: {
2457
+ item: string;
2458
+ required: boolean;
2459
+ }[];
2460
+ usageCount: number;
2461
+ estimatedCost?: number | undefined;
2462
+ estimatedHours?: number | undefined;
2463
+ lastUsed?: string | undefined;
2464
+ }[];
2465
+ };
2466
+ }>;
2467
+ export declare const PaginationQuerySchema: z.ZodObject<{
2468
+ page: z.ZodDefault<z.ZodNumber>;
2469
+ limit: z.ZodDefault<z.ZodNumber>;
2470
+ }, "strip", z.ZodTypeAny, {
2471
+ page: number;
2472
+ limit: number;
2473
+ }, {
2474
+ page?: number | undefined;
2475
+ limit?: number | undefined;
2476
+ }>;
2477
+ export type Deficiency = z.infer<typeof DeficiencySchema>;
2478
+ export type CreateDeficiencyRequest = z.infer<typeof CreateDeficiencyRequestSchema>;
2479
+ export type UpdateDeficiencyRequest = z.infer<typeof UpdateDeficiencyRequestSchema>;
2480
+ export type DeficiencyStatusUpdateRequest = z.infer<typeof DeficiencyStatusUpdateRequestSchema>;
2481
+ export type DeficiencyAssignmentRequest = z.infer<typeof DeficiencyAssignmentRequestSchema>;
2482
+ export type DeficiencyFilters = z.infer<typeof DeficiencyFiltersSchema>;
2483
+ export type DeficiencyQueryParams = z.infer<typeof DeficiencyQueryParamsSchema>;
2484
+ export type DeficiencyStatsQuery = z.infer<typeof DeficiencyStatsQuerySchema>;
2485
+ export type DeficiencyTemplateQuery = z.infer<typeof DeficiencyTemplateQuerySchema>;
2486
+ export type BulkDeficiencyActionRequest = z.infer<typeof BulkDeficiencyActionRequestSchema>;
2487
+ export type DeficiencyExportRequest = z.infer<typeof DeficiencyExportRequestSchema>;
2488
+ export type DeficiencyLocation = z.infer<typeof DeficiencyLocationSchema>;
2489
+ export type DeficiencyPhoto = z.infer<typeof DeficiencyPhotoSchema>;
2490
+ export type DeficiencyAttachment = z.infer<typeof DeficiencyAttachmentSchema>;
2491
+ export type DeficiencyWorkOrder = z.infer<typeof DeficiencyWorkOrderSchema>;
2492
+ export type DeficiencyResolution = z.infer<typeof DeficiencyResolutionSchema>;
2493
+ export type DeficiencyCategory = z.infer<typeof DeficiencyCategorySchema>;
2494
+ export type DeficiencyStatus = z.infer<typeof DeficiencyStatusSchema>;
2495
+ export type DeficiencyTrade = z.infer<typeof DeficiencyTradeSchema>;
2496
+ //# sourceMappingURL=deficiencies.d.ts.map