@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,3641 @@
1
+ import { z } from 'zod';
2
+ export declare const authContract: {
3
+ login: {
4
+ summary: "Login user with email and password";
5
+ method: "POST";
6
+ body: z.ZodObject<{
7
+ email: z.ZodString;
8
+ password: z.ZodString;
9
+ mfaCode: z.ZodOptional<z.ZodString>;
10
+ companyId: z.ZodOptional<z.ZodString>;
11
+ }, "strip", z.ZodTypeAny, {
12
+ email: string;
13
+ password: string;
14
+ companyId?: string | undefined;
15
+ mfaCode?: string | undefined;
16
+ }, {
17
+ email: string;
18
+ password: string;
19
+ companyId?: string | undefined;
20
+ mfaCode?: string | undefined;
21
+ }>;
22
+ path: "/login";
23
+ responses: {
24
+ 200: z.ZodObject<{
25
+ data: z.ZodObject<{
26
+ type: z.ZodLiteral<"login-responses">;
27
+ id: z.ZodString;
28
+ attributes: z.ZodObject<{
29
+ user: z.ZodObject<{
30
+ id: z.ZodString;
31
+ email: z.ZodString;
32
+ firstName: z.ZodString;
33
+ lastName: z.ZodString;
34
+ phone: z.ZodOptional<z.ZodNullable<z.ZodString>>;
35
+ title: z.ZodOptional<z.ZodNullable<z.ZodString>>;
36
+ companyId: z.ZodOptional<z.ZodString>;
37
+ mfaEnabled: z.ZodBoolean;
38
+ isActive: z.ZodBoolean;
39
+ lastLoginAt: z.ZodNullable<z.ZodString>;
40
+ role: z.ZodEnum<["SUPER_ADMIN", "COMPANY_ADMIN", "EXECUTIVE", "PROJECT_MANAGER", "ASSISTANT_PROJECT_MANAGER", "SITE_MANAGER", "SUPERINTENDENT", "FINANCE_MANAGER", "SAFETY_MANAGER", "QA_MANAGER", "ARCHITECT", "ENGINEER", "ESTIMATOR", "SCHEDULER", "DOCUMENT_CONTROLLER", "ACCOUNTANT", "PROCUREMENT_OFFICER", "CONTRACTOR", "SUBCONTRACTOR", "FIELD_WORKER", "TRADE_SPECIALIST", "EQUIPMENT_OPERATOR", "INSPECTOR", "CLIENT", "CONSULTANT", "VENDOR"]>;
41
+ permissions: z.ZodArray<z.ZodEnum<["manage_all_companies", "create_companies", "view_all_companies", "manage_system_settings", "manage_company", "manage_users", "manage_projects", "manage_company_settings", "view_company_analytics", "create_projects", "manage_project_team", "approve_budgets", "view_all_projects", "review_technical_plans", "approve_technical_changes", "sign_off_designs", "manage_specifications", "supervise_field_work", "assign_daily_tasks", "manage_crew", "approve_timesheets", "view_assigned_tasks", "update_task_status", "report_issues", "upload_field_photos", "record_time", "view_project_status", "view_reports", "comment_on_project", "request_changes", "view_projects", "view_documents", "view_profile", "access_mobile_app", "view_boq", "manage_boq", "certify_valuation", "manage_qaqc", "view_hub", "manage_hub", "view_contractor_ledger", "manage_proof", "manage_commercial"]>, "many">;
42
+ createdAt: z.ZodString;
43
+ updatedAt: z.ZodString;
44
+ }, "strip", z.ZodTypeAny, {
45
+ id: string;
46
+ createdAt: string;
47
+ updatedAt: string;
48
+ isActive: boolean;
49
+ permissions: ("manage_all_companies" | "create_companies" | "view_all_companies" | "manage_system_settings" | "manage_company" | "manage_users" | "manage_projects" | "manage_company_settings" | "view_company_analytics" | "create_projects" | "manage_project_team" | "approve_budgets" | "view_all_projects" | "review_technical_plans" | "approve_technical_changes" | "sign_off_designs" | "manage_specifications" | "supervise_field_work" | "assign_daily_tasks" | "manage_crew" | "approve_timesheets" | "view_assigned_tasks" | "update_task_status" | "report_issues" | "upload_field_photos" | "record_time" | "view_project_status" | "view_reports" | "comment_on_project" | "request_changes" | "view_projects" | "view_documents" | "view_profile" | "access_mobile_app" | "view_boq" | "manage_boq" | "certify_valuation" | "manage_qaqc" | "view_hub" | "manage_hub" | "view_contractor_ledger" | "manage_proof" | "manage_commercial")[];
50
+ role: "SUPER_ADMIN" | "COMPANY_ADMIN" | "EXECUTIVE" | "PROJECT_MANAGER" | "ASSISTANT_PROJECT_MANAGER" | "SITE_MANAGER" | "SUPERINTENDENT" | "FINANCE_MANAGER" | "SAFETY_MANAGER" | "QA_MANAGER" | "ARCHITECT" | "ENGINEER" | "ESTIMATOR" | "SCHEDULER" | "DOCUMENT_CONTROLLER" | "ACCOUNTANT" | "PROCUREMENT_OFFICER" | "CONTRACTOR" | "SUBCONTRACTOR" | "FIELD_WORKER" | "TRADE_SPECIALIST" | "EQUIPMENT_OPERATOR" | "INSPECTOR" | "CLIENT" | "CONSULTANT" | "VENDOR";
51
+ email: string;
52
+ firstName: string;
53
+ lastName: string;
54
+ mfaEnabled: boolean;
55
+ lastLoginAt: string | null;
56
+ companyId?: string | undefined;
57
+ title?: string | null | undefined;
58
+ phone?: string | null | undefined;
59
+ }, {
60
+ id: string;
61
+ createdAt: string;
62
+ updatedAt: string;
63
+ isActive: boolean;
64
+ permissions: ("manage_all_companies" | "create_companies" | "view_all_companies" | "manage_system_settings" | "manage_company" | "manage_users" | "manage_projects" | "manage_company_settings" | "view_company_analytics" | "create_projects" | "manage_project_team" | "approve_budgets" | "view_all_projects" | "review_technical_plans" | "approve_technical_changes" | "sign_off_designs" | "manage_specifications" | "supervise_field_work" | "assign_daily_tasks" | "manage_crew" | "approve_timesheets" | "view_assigned_tasks" | "update_task_status" | "report_issues" | "upload_field_photos" | "record_time" | "view_project_status" | "view_reports" | "comment_on_project" | "request_changes" | "view_projects" | "view_documents" | "view_profile" | "access_mobile_app" | "view_boq" | "manage_boq" | "certify_valuation" | "manage_qaqc" | "view_hub" | "manage_hub" | "view_contractor_ledger" | "manage_proof" | "manage_commercial")[];
65
+ role: "SUPER_ADMIN" | "COMPANY_ADMIN" | "EXECUTIVE" | "PROJECT_MANAGER" | "ASSISTANT_PROJECT_MANAGER" | "SITE_MANAGER" | "SUPERINTENDENT" | "FINANCE_MANAGER" | "SAFETY_MANAGER" | "QA_MANAGER" | "ARCHITECT" | "ENGINEER" | "ESTIMATOR" | "SCHEDULER" | "DOCUMENT_CONTROLLER" | "ACCOUNTANT" | "PROCUREMENT_OFFICER" | "CONTRACTOR" | "SUBCONTRACTOR" | "FIELD_WORKER" | "TRADE_SPECIALIST" | "EQUIPMENT_OPERATOR" | "INSPECTOR" | "CLIENT" | "CONSULTANT" | "VENDOR";
66
+ email: string;
67
+ firstName: string;
68
+ lastName: string;
69
+ mfaEnabled: boolean;
70
+ lastLoginAt: string | null;
71
+ companyId?: string | undefined;
72
+ title?: string | null | undefined;
73
+ phone?: string | null | undefined;
74
+ }>;
75
+ tokens: z.ZodObject<{
76
+ accessToken: z.ZodString;
77
+ refreshToken: z.ZodString;
78
+ expiresIn: z.ZodNumber;
79
+ }, "strip", z.ZodTypeAny, {
80
+ refreshToken: string;
81
+ accessToken: string;
82
+ expiresIn: number;
83
+ }, {
84
+ refreshToken: string;
85
+ accessToken: string;
86
+ expiresIn: number;
87
+ }>;
88
+ }, "strip", z.ZodTypeAny, {
89
+ user: {
90
+ id: string;
91
+ createdAt: string;
92
+ updatedAt: string;
93
+ isActive: boolean;
94
+ permissions: ("manage_all_companies" | "create_companies" | "view_all_companies" | "manage_system_settings" | "manage_company" | "manage_users" | "manage_projects" | "manage_company_settings" | "view_company_analytics" | "create_projects" | "manage_project_team" | "approve_budgets" | "view_all_projects" | "review_technical_plans" | "approve_technical_changes" | "sign_off_designs" | "manage_specifications" | "supervise_field_work" | "assign_daily_tasks" | "manage_crew" | "approve_timesheets" | "view_assigned_tasks" | "update_task_status" | "report_issues" | "upload_field_photos" | "record_time" | "view_project_status" | "view_reports" | "comment_on_project" | "request_changes" | "view_projects" | "view_documents" | "view_profile" | "access_mobile_app" | "view_boq" | "manage_boq" | "certify_valuation" | "manage_qaqc" | "view_hub" | "manage_hub" | "view_contractor_ledger" | "manage_proof" | "manage_commercial")[];
95
+ role: "SUPER_ADMIN" | "COMPANY_ADMIN" | "EXECUTIVE" | "PROJECT_MANAGER" | "ASSISTANT_PROJECT_MANAGER" | "SITE_MANAGER" | "SUPERINTENDENT" | "FINANCE_MANAGER" | "SAFETY_MANAGER" | "QA_MANAGER" | "ARCHITECT" | "ENGINEER" | "ESTIMATOR" | "SCHEDULER" | "DOCUMENT_CONTROLLER" | "ACCOUNTANT" | "PROCUREMENT_OFFICER" | "CONTRACTOR" | "SUBCONTRACTOR" | "FIELD_WORKER" | "TRADE_SPECIALIST" | "EQUIPMENT_OPERATOR" | "INSPECTOR" | "CLIENT" | "CONSULTANT" | "VENDOR";
96
+ email: string;
97
+ firstName: string;
98
+ lastName: string;
99
+ mfaEnabled: boolean;
100
+ lastLoginAt: string | null;
101
+ companyId?: string | undefined;
102
+ title?: string | null | undefined;
103
+ phone?: string | null | undefined;
104
+ };
105
+ tokens: {
106
+ refreshToken: string;
107
+ accessToken: string;
108
+ expiresIn: number;
109
+ };
110
+ }, {
111
+ user: {
112
+ id: string;
113
+ createdAt: string;
114
+ updatedAt: string;
115
+ isActive: boolean;
116
+ permissions: ("manage_all_companies" | "create_companies" | "view_all_companies" | "manage_system_settings" | "manage_company" | "manage_users" | "manage_projects" | "manage_company_settings" | "view_company_analytics" | "create_projects" | "manage_project_team" | "approve_budgets" | "view_all_projects" | "review_technical_plans" | "approve_technical_changes" | "sign_off_designs" | "manage_specifications" | "supervise_field_work" | "assign_daily_tasks" | "manage_crew" | "approve_timesheets" | "view_assigned_tasks" | "update_task_status" | "report_issues" | "upload_field_photos" | "record_time" | "view_project_status" | "view_reports" | "comment_on_project" | "request_changes" | "view_projects" | "view_documents" | "view_profile" | "access_mobile_app" | "view_boq" | "manage_boq" | "certify_valuation" | "manage_qaqc" | "view_hub" | "manage_hub" | "view_contractor_ledger" | "manage_proof" | "manage_commercial")[];
117
+ role: "SUPER_ADMIN" | "COMPANY_ADMIN" | "EXECUTIVE" | "PROJECT_MANAGER" | "ASSISTANT_PROJECT_MANAGER" | "SITE_MANAGER" | "SUPERINTENDENT" | "FINANCE_MANAGER" | "SAFETY_MANAGER" | "QA_MANAGER" | "ARCHITECT" | "ENGINEER" | "ESTIMATOR" | "SCHEDULER" | "DOCUMENT_CONTROLLER" | "ACCOUNTANT" | "PROCUREMENT_OFFICER" | "CONTRACTOR" | "SUBCONTRACTOR" | "FIELD_WORKER" | "TRADE_SPECIALIST" | "EQUIPMENT_OPERATOR" | "INSPECTOR" | "CLIENT" | "CONSULTANT" | "VENDOR";
118
+ email: string;
119
+ firstName: string;
120
+ lastName: string;
121
+ mfaEnabled: boolean;
122
+ lastLoginAt: string | null;
123
+ companyId?: string | undefined;
124
+ title?: string | null | undefined;
125
+ phone?: string | null | undefined;
126
+ };
127
+ tokens: {
128
+ refreshToken: string;
129
+ accessToken: string;
130
+ expiresIn: number;
131
+ };
132
+ }>;
133
+ }, "strip", z.ZodTypeAny, {
134
+ id: string;
135
+ type: "login-responses";
136
+ attributes: {
137
+ user: {
138
+ id: string;
139
+ createdAt: string;
140
+ updatedAt: string;
141
+ isActive: boolean;
142
+ permissions: ("manage_all_companies" | "create_companies" | "view_all_companies" | "manage_system_settings" | "manage_company" | "manage_users" | "manage_projects" | "manage_company_settings" | "view_company_analytics" | "create_projects" | "manage_project_team" | "approve_budgets" | "view_all_projects" | "review_technical_plans" | "approve_technical_changes" | "sign_off_designs" | "manage_specifications" | "supervise_field_work" | "assign_daily_tasks" | "manage_crew" | "approve_timesheets" | "view_assigned_tasks" | "update_task_status" | "report_issues" | "upload_field_photos" | "record_time" | "view_project_status" | "view_reports" | "comment_on_project" | "request_changes" | "view_projects" | "view_documents" | "view_profile" | "access_mobile_app" | "view_boq" | "manage_boq" | "certify_valuation" | "manage_qaqc" | "view_hub" | "manage_hub" | "view_contractor_ledger" | "manage_proof" | "manage_commercial")[];
143
+ role: "SUPER_ADMIN" | "COMPANY_ADMIN" | "EXECUTIVE" | "PROJECT_MANAGER" | "ASSISTANT_PROJECT_MANAGER" | "SITE_MANAGER" | "SUPERINTENDENT" | "FINANCE_MANAGER" | "SAFETY_MANAGER" | "QA_MANAGER" | "ARCHITECT" | "ENGINEER" | "ESTIMATOR" | "SCHEDULER" | "DOCUMENT_CONTROLLER" | "ACCOUNTANT" | "PROCUREMENT_OFFICER" | "CONTRACTOR" | "SUBCONTRACTOR" | "FIELD_WORKER" | "TRADE_SPECIALIST" | "EQUIPMENT_OPERATOR" | "INSPECTOR" | "CLIENT" | "CONSULTANT" | "VENDOR";
144
+ email: string;
145
+ firstName: string;
146
+ lastName: string;
147
+ mfaEnabled: boolean;
148
+ lastLoginAt: string | null;
149
+ companyId?: string | undefined;
150
+ title?: string | null | undefined;
151
+ phone?: string | null | undefined;
152
+ };
153
+ tokens: {
154
+ refreshToken: string;
155
+ accessToken: string;
156
+ expiresIn: number;
157
+ };
158
+ };
159
+ }, {
160
+ id: string;
161
+ type: "login-responses";
162
+ attributes: {
163
+ user: {
164
+ id: string;
165
+ createdAt: string;
166
+ updatedAt: string;
167
+ isActive: boolean;
168
+ permissions: ("manage_all_companies" | "create_companies" | "view_all_companies" | "manage_system_settings" | "manage_company" | "manage_users" | "manage_projects" | "manage_company_settings" | "view_company_analytics" | "create_projects" | "manage_project_team" | "approve_budgets" | "view_all_projects" | "review_technical_plans" | "approve_technical_changes" | "sign_off_designs" | "manage_specifications" | "supervise_field_work" | "assign_daily_tasks" | "manage_crew" | "approve_timesheets" | "view_assigned_tasks" | "update_task_status" | "report_issues" | "upload_field_photos" | "record_time" | "view_project_status" | "view_reports" | "comment_on_project" | "request_changes" | "view_projects" | "view_documents" | "view_profile" | "access_mobile_app" | "view_boq" | "manage_boq" | "certify_valuation" | "manage_qaqc" | "view_hub" | "manage_hub" | "view_contractor_ledger" | "manage_proof" | "manage_commercial")[];
169
+ role: "SUPER_ADMIN" | "COMPANY_ADMIN" | "EXECUTIVE" | "PROJECT_MANAGER" | "ASSISTANT_PROJECT_MANAGER" | "SITE_MANAGER" | "SUPERINTENDENT" | "FINANCE_MANAGER" | "SAFETY_MANAGER" | "QA_MANAGER" | "ARCHITECT" | "ENGINEER" | "ESTIMATOR" | "SCHEDULER" | "DOCUMENT_CONTROLLER" | "ACCOUNTANT" | "PROCUREMENT_OFFICER" | "CONTRACTOR" | "SUBCONTRACTOR" | "FIELD_WORKER" | "TRADE_SPECIALIST" | "EQUIPMENT_OPERATOR" | "INSPECTOR" | "CLIENT" | "CONSULTANT" | "VENDOR";
170
+ email: string;
171
+ firstName: string;
172
+ lastName: string;
173
+ mfaEnabled: boolean;
174
+ lastLoginAt: string | null;
175
+ companyId?: string | undefined;
176
+ title?: string | null | undefined;
177
+ phone?: string | null | undefined;
178
+ };
179
+ tokens: {
180
+ refreshToken: string;
181
+ accessToken: string;
182
+ expiresIn: number;
183
+ };
184
+ };
185
+ }>;
186
+ meta: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
187
+ links: z.ZodOptional<z.ZodObject<{
188
+ self: z.ZodString;
189
+ first: z.ZodOptional<z.ZodString>;
190
+ last: z.ZodOptional<z.ZodString>;
191
+ prev: z.ZodOptional<z.ZodString>;
192
+ next: z.ZodOptional<z.ZodString>;
193
+ }, "strip", z.ZodTypeAny, {
194
+ self: string;
195
+ first?: string | undefined;
196
+ last?: string | undefined;
197
+ prev?: string | undefined;
198
+ next?: string | undefined;
199
+ }, {
200
+ self: string;
201
+ first?: string | undefined;
202
+ last?: string | undefined;
203
+ prev?: string | undefined;
204
+ next?: string | undefined;
205
+ }>>;
206
+ errors: z.ZodOptional<z.ZodArray<z.ZodObject<{
207
+ status: z.ZodString;
208
+ title: z.ZodString;
209
+ detail: z.ZodOptional<z.ZodString>;
210
+ meta: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
211
+ }, "strip", z.ZodTypeAny, {
212
+ status: string;
213
+ title: string;
214
+ detail?: string | undefined;
215
+ meta?: Record<string, unknown> | undefined;
216
+ }, {
217
+ status: string;
218
+ title: string;
219
+ detail?: string | undefined;
220
+ meta?: Record<string, unknown> | undefined;
221
+ }>, "many">>;
222
+ }, "strip", z.ZodTypeAny, {
223
+ data: {
224
+ id: string;
225
+ type: "login-responses";
226
+ attributes: {
227
+ user: {
228
+ id: string;
229
+ createdAt: string;
230
+ updatedAt: string;
231
+ isActive: boolean;
232
+ permissions: ("manage_all_companies" | "create_companies" | "view_all_companies" | "manage_system_settings" | "manage_company" | "manage_users" | "manage_projects" | "manage_company_settings" | "view_company_analytics" | "create_projects" | "manage_project_team" | "approve_budgets" | "view_all_projects" | "review_technical_plans" | "approve_technical_changes" | "sign_off_designs" | "manage_specifications" | "supervise_field_work" | "assign_daily_tasks" | "manage_crew" | "approve_timesheets" | "view_assigned_tasks" | "update_task_status" | "report_issues" | "upload_field_photos" | "record_time" | "view_project_status" | "view_reports" | "comment_on_project" | "request_changes" | "view_projects" | "view_documents" | "view_profile" | "access_mobile_app" | "view_boq" | "manage_boq" | "certify_valuation" | "manage_qaqc" | "view_hub" | "manage_hub" | "view_contractor_ledger" | "manage_proof" | "manage_commercial")[];
233
+ role: "SUPER_ADMIN" | "COMPANY_ADMIN" | "EXECUTIVE" | "PROJECT_MANAGER" | "ASSISTANT_PROJECT_MANAGER" | "SITE_MANAGER" | "SUPERINTENDENT" | "FINANCE_MANAGER" | "SAFETY_MANAGER" | "QA_MANAGER" | "ARCHITECT" | "ENGINEER" | "ESTIMATOR" | "SCHEDULER" | "DOCUMENT_CONTROLLER" | "ACCOUNTANT" | "PROCUREMENT_OFFICER" | "CONTRACTOR" | "SUBCONTRACTOR" | "FIELD_WORKER" | "TRADE_SPECIALIST" | "EQUIPMENT_OPERATOR" | "INSPECTOR" | "CLIENT" | "CONSULTANT" | "VENDOR";
234
+ email: string;
235
+ firstName: string;
236
+ lastName: string;
237
+ mfaEnabled: boolean;
238
+ lastLoginAt: string | null;
239
+ companyId?: string | undefined;
240
+ title?: string | null | undefined;
241
+ phone?: string | null | undefined;
242
+ };
243
+ tokens: {
244
+ refreshToken: string;
245
+ accessToken: string;
246
+ expiresIn: number;
247
+ };
248
+ };
249
+ };
250
+ meta?: Record<string, unknown> | undefined;
251
+ links?: {
252
+ self: string;
253
+ first?: string | undefined;
254
+ last?: string | undefined;
255
+ prev?: string | undefined;
256
+ next?: string | undefined;
257
+ } | undefined;
258
+ errors?: {
259
+ status: string;
260
+ title: string;
261
+ detail?: string | undefined;
262
+ meta?: Record<string, unknown> | undefined;
263
+ }[] | undefined;
264
+ }, {
265
+ data: {
266
+ id: string;
267
+ type: "login-responses";
268
+ attributes: {
269
+ user: {
270
+ id: string;
271
+ createdAt: string;
272
+ updatedAt: string;
273
+ isActive: boolean;
274
+ permissions: ("manage_all_companies" | "create_companies" | "view_all_companies" | "manage_system_settings" | "manage_company" | "manage_users" | "manage_projects" | "manage_company_settings" | "view_company_analytics" | "create_projects" | "manage_project_team" | "approve_budgets" | "view_all_projects" | "review_technical_plans" | "approve_technical_changes" | "sign_off_designs" | "manage_specifications" | "supervise_field_work" | "assign_daily_tasks" | "manage_crew" | "approve_timesheets" | "view_assigned_tasks" | "update_task_status" | "report_issues" | "upload_field_photos" | "record_time" | "view_project_status" | "view_reports" | "comment_on_project" | "request_changes" | "view_projects" | "view_documents" | "view_profile" | "access_mobile_app" | "view_boq" | "manage_boq" | "certify_valuation" | "manage_qaqc" | "view_hub" | "manage_hub" | "view_contractor_ledger" | "manage_proof" | "manage_commercial")[];
275
+ role: "SUPER_ADMIN" | "COMPANY_ADMIN" | "EXECUTIVE" | "PROJECT_MANAGER" | "ASSISTANT_PROJECT_MANAGER" | "SITE_MANAGER" | "SUPERINTENDENT" | "FINANCE_MANAGER" | "SAFETY_MANAGER" | "QA_MANAGER" | "ARCHITECT" | "ENGINEER" | "ESTIMATOR" | "SCHEDULER" | "DOCUMENT_CONTROLLER" | "ACCOUNTANT" | "PROCUREMENT_OFFICER" | "CONTRACTOR" | "SUBCONTRACTOR" | "FIELD_WORKER" | "TRADE_SPECIALIST" | "EQUIPMENT_OPERATOR" | "INSPECTOR" | "CLIENT" | "CONSULTANT" | "VENDOR";
276
+ email: string;
277
+ firstName: string;
278
+ lastName: string;
279
+ mfaEnabled: boolean;
280
+ lastLoginAt: string | null;
281
+ companyId?: string | undefined;
282
+ title?: string | null | undefined;
283
+ phone?: string | null | undefined;
284
+ };
285
+ tokens: {
286
+ refreshToken: string;
287
+ accessToken: string;
288
+ expiresIn: number;
289
+ };
290
+ };
291
+ };
292
+ meta?: Record<string, unknown> | undefined;
293
+ links?: {
294
+ self: string;
295
+ first?: string | undefined;
296
+ last?: string | undefined;
297
+ prev?: string | undefined;
298
+ next?: string | undefined;
299
+ } | undefined;
300
+ errors?: {
301
+ status: string;
302
+ title: string;
303
+ detail?: string | undefined;
304
+ meta?: Record<string, unknown> | undefined;
305
+ }[] | undefined;
306
+ }>;
307
+ 400: z.ZodObject<{
308
+ errors: z.ZodArray<z.ZodObject<{
309
+ status: z.ZodString;
310
+ title: z.ZodString;
311
+ detail: z.ZodOptional<z.ZodString>;
312
+ meta: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
313
+ }, "strip", z.ZodTypeAny, {
314
+ status: string;
315
+ title: string;
316
+ detail?: string | undefined;
317
+ meta?: Record<string, unknown> | undefined;
318
+ }, {
319
+ status: string;
320
+ title: string;
321
+ detail?: string | undefined;
322
+ meta?: Record<string, unknown> | undefined;
323
+ }>, "many">;
324
+ }, "strip", z.ZodTypeAny, {
325
+ errors: {
326
+ status: string;
327
+ title: string;
328
+ detail?: string | undefined;
329
+ meta?: Record<string, unknown> | undefined;
330
+ }[];
331
+ }, {
332
+ errors: {
333
+ status: string;
334
+ title: string;
335
+ detail?: string | undefined;
336
+ meta?: Record<string, unknown> | undefined;
337
+ }[];
338
+ }>;
339
+ 401: z.ZodObject<{
340
+ errors: z.ZodArray<z.ZodObject<{
341
+ status: z.ZodString;
342
+ title: z.ZodString;
343
+ detail: z.ZodOptional<z.ZodString>;
344
+ meta: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
345
+ }, "strip", z.ZodTypeAny, {
346
+ status: string;
347
+ title: string;
348
+ detail?: string | undefined;
349
+ meta?: Record<string, unknown> | undefined;
350
+ }, {
351
+ status: string;
352
+ title: string;
353
+ detail?: string | undefined;
354
+ meta?: Record<string, unknown> | undefined;
355
+ }>, "many">;
356
+ }, "strip", z.ZodTypeAny, {
357
+ errors: {
358
+ status: string;
359
+ title: string;
360
+ detail?: string | undefined;
361
+ meta?: Record<string, unknown> | undefined;
362
+ }[];
363
+ }, {
364
+ errors: {
365
+ status: string;
366
+ title: string;
367
+ detail?: string | undefined;
368
+ meta?: Record<string, unknown> | undefined;
369
+ }[];
370
+ }>;
371
+ };
372
+ };
373
+ register: {
374
+ summary: "Register a new user account";
375
+ method: "POST";
376
+ body: z.ZodEffects<z.ZodObject<{
377
+ email: z.ZodString;
378
+ password: z.ZodString;
379
+ firstName: z.ZodString;
380
+ lastName: z.ZodString;
381
+ companyName: z.ZodOptional<z.ZodString>;
382
+ companyId: z.ZodOptional<z.ZodString>;
383
+ inviteToken: z.ZodOptional<z.ZodString>;
384
+ }, "strip", z.ZodTypeAny, {
385
+ email: string;
386
+ password: string;
387
+ firstName: string;
388
+ lastName: string;
389
+ companyId?: string | undefined;
390
+ companyName?: string | undefined;
391
+ inviteToken?: string | undefined;
392
+ }, {
393
+ email: string;
394
+ password: string;
395
+ firstName: string;
396
+ lastName: string;
397
+ companyId?: string | undefined;
398
+ companyName?: string | undefined;
399
+ inviteToken?: string | undefined;
400
+ }>, {
401
+ email: string;
402
+ password: string;
403
+ firstName: string;
404
+ lastName: string;
405
+ companyId?: string | undefined;
406
+ companyName?: string | undefined;
407
+ inviteToken?: string | undefined;
408
+ }, {
409
+ email: string;
410
+ password: string;
411
+ firstName: string;
412
+ lastName: string;
413
+ companyId?: string | undefined;
414
+ companyName?: string | undefined;
415
+ inviteToken?: string | undefined;
416
+ }>;
417
+ path: "/register";
418
+ responses: {
419
+ 201: z.ZodObject<{
420
+ data: z.ZodObject<{
421
+ type: z.ZodLiteral<"register-responses">;
422
+ id: z.ZodString;
423
+ attributes: z.ZodObject<{
424
+ user: z.ZodObject<{
425
+ id: z.ZodString;
426
+ email: z.ZodString;
427
+ firstName: z.ZodString;
428
+ lastName: z.ZodString;
429
+ phone: z.ZodOptional<z.ZodNullable<z.ZodString>>;
430
+ title: z.ZodOptional<z.ZodNullable<z.ZodString>>;
431
+ companyId: z.ZodOptional<z.ZodString>;
432
+ mfaEnabled: z.ZodBoolean;
433
+ isActive: z.ZodBoolean;
434
+ lastLoginAt: z.ZodNullable<z.ZodString>;
435
+ role: z.ZodEnum<["SUPER_ADMIN", "COMPANY_ADMIN", "EXECUTIVE", "PROJECT_MANAGER", "ASSISTANT_PROJECT_MANAGER", "SITE_MANAGER", "SUPERINTENDENT", "FINANCE_MANAGER", "SAFETY_MANAGER", "QA_MANAGER", "ARCHITECT", "ENGINEER", "ESTIMATOR", "SCHEDULER", "DOCUMENT_CONTROLLER", "ACCOUNTANT", "PROCUREMENT_OFFICER", "CONTRACTOR", "SUBCONTRACTOR", "FIELD_WORKER", "TRADE_SPECIALIST", "EQUIPMENT_OPERATOR", "INSPECTOR", "CLIENT", "CONSULTANT", "VENDOR"]>;
436
+ permissions: z.ZodArray<z.ZodEnum<["manage_all_companies", "create_companies", "view_all_companies", "manage_system_settings", "manage_company", "manage_users", "manage_projects", "manage_company_settings", "view_company_analytics", "create_projects", "manage_project_team", "approve_budgets", "view_all_projects", "review_technical_plans", "approve_technical_changes", "sign_off_designs", "manage_specifications", "supervise_field_work", "assign_daily_tasks", "manage_crew", "approve_timesheets", "view_assigned_tasks", "update_task_status", "report_issues", "upload_field_photos", "record_time", "view_project_status", "view_reports", "comment_on_project", "request_changes", "view_projects", "view_documents", "view_profile", "access_mobile_app", "view_boq", "manage_boq", "certify_valuation", "manage_qaqc", "view_hub", "manage_hub", "view_contractor_ledger", "manage_proof", "manage_commercial"]>, "many">;
437
+ createdAt: z.ZodString;
438
+ updatedAt: z.ZodString;
439
+ }, "strip", z.ZodTypeAny, {
440
+ id: string;
441
+ createdAt: string;
442
+ updatedAt: string;
443
+ isActive: boolean;
444
+ permissions: ("manage_all_companies" | "create_companies" | "view_all_companies" | "manage_system_settings" | "manage_company" | "manage_users" | "manage_projects" | "manage_company_settings" | "view_company_analytics" | "create_projects" | "manage_project_team" | "approve_budgets" | "view_all_projects" | "review_technical_plans" | "approve_technical_changes" | "sign_off_designs" | "manage_specifications" | "supervise_field_work" | "assign_daily_tasks" | "manage_crew" | "approve_timesheets" | "view_assigned_tasks" | "update_task_status" | "report_issues" | "upload_field_photos" | "record_time" | "view_project_status" | "view_reports" | "comment_on_project" | "request_changes" | "view_projects" | "view_documents" | "view_profile" | "access_mobile_app" | "view_boq" | "manage_boq" | "certify_valuation" | "manage_qaqc" | "view_hub" | "manage_hub" | "view_contractor_ledger" | "manage_proof" | "manage_commercial")[];
445
+ role: "SUPER_ADMIN" | "COMPANY_ADMIN" | "EXECUTIVE" | "PROJECT_MANAGER" | "ASSISTANT_PROJECT_MANAGER" | "SITE_MANAGER" | "SUPERINTENDENT" | "FINANCE_MANAGER" | "SAFETY_MANAGER" | "QA_MANAGER" | "ARCHITECT" | "ENGINEER" | "ESTIMATOR" | "SCHEDULER" | "DOCUMENT_CONTROLLER" | "ACCOUNTANT" | "PROCUREMENT_OFFICER" | "CONTRACTOR" | "SUBCONTRACTOR" | "FIELD_WORKER" | "TRADE_SPECIALIST" | "EQUIPMENT_OPERATOR" | "INSPECTOR" | "CLIENT" | "CONSULTANT" | "VENDOR";
446
+ email: string;
447
+ firstName: string;
448
+ lastName: string;
449
+ mfaEnabled: boolean;
450
+ lastLoginAt: string | null;
451
+ companyId?: string | undefined;
452
+ title?: string | null | undefined;
453
+ phone?: string | null | undefined;
454
+ }, {
455
+ id: string;
456
+ createdAt: string;
457
+ updatedAt: string;
458
+ isActive: boolean;
459
+ permissions: ("manage_all_companies" | "create_companies" | "view_all_companies" | "manage_system_settings" | "manage_company" | "manage_users" | "manage_projects" | "manage_company_settings" | "view_company_analytics" | "create_projects" | "manage_project_team" | "approve_budgets" | "view_all_projects" | "review_technical_plans" | "approve_technical_changes" | "sign_off_designs" | "manage_specifications" | "supervise_field_work" | "assign_daily_tasks" | "manage_crew" | "approve_timesheets" | "view_assigned_tasks" | "update_task_status" | "report_issues" | "upload_field_photos" | "record_time" | "view_project_status" | "view_reports" | "comment_on_project" | "request_changes" | "view_projects" | "view_documents" | "view_profile" | "access_mobile_app" | "view_boq" | "manage_boq" | "certify_valuation" | "manage_qaqc" | "view_hub" | "manage_hub" | "view_contractor_ledger" | "manage_proof" | "manage_commercial")[];
460
+ role: "SUPER_ADMIN" | "COMPANY_ADMIN" | "EXECUTIVE" | "PROJECT_MANAGER" | "ASSISTANT_PROJECT_MANAGER" | "SITE_MANAGER" | "SUPERINTENDENT" | "FINANCE_MANAGER" | "SAFETY_MANAGER" | "QA_MANAGER" | "ARCHITECT" | "ENGINEER" | "ESTIMATOR" | "SCHEDULER" | "DOCUMENT_CONTROLLER" | "ACCOUNTANT" | "PROCUREMENT_OFFICER" | "CONTRACTOR" | "SUBCONTRACTOR" | "FIELD_WORKER" | "TRADE_SPECIALIST" | "EQUIPMENT_OPERATOR" | "INSPECTOR" | "CLIENT" | "CONSULTANT" | "VENDOR";
461
+ email: string;
462
+ firstName: string;
463
+ lastName: string;
464
+ mfaEnabled: boolean;
465
+ lastLoginAt: string | null;
466
+ companyId?: string | undefined;
467
+ title?: string | null | undefined;
468
+ phone?: string | null | undefined;
469
+ }>;
470
+ tokens: z.ZodOptional<z.ZodObject<{
471
+ accessToken: z.ZodString;
472
+ refreshToken: z.ZodString;
473
+ expiresIn: z.ZodNumber;
474
+ }, "strip", z.ZodTypeAny, {
475
+ refreshToken: string;
476
+ accessToken: string;
477
+ expiresIn: number;
478
+ }, {
479
+ refreshToken: string;
480
+ accessToken: string;
481
+ expiresIn: number;
482
+ }>>;
483
+ requiresEmailVerification: z.ZodOptional<z.ZodBoolean>;
484
+ message: z.ZodOptional<z.ZodString>;
485
+ }, "strip", z.ZodTypeAny, {
486
+ user: {
487
+ id: string;
488
+ createdAt: string;
489
+ updatedAt: string;
490
+ isActive: boolean;
491
+ permissions: ("manage_all_companies" | "create_companies" | "view_all_companies" | "manage_system_settings" | "manage_company" | "manage_users" | "manage_projects" | "manage_company_settings" | "view_company_analytics" | "create_projects" | "manage_project_team" | "approve_budgets" | "view_all_projects" | "review_technical_plans" | "approve_technical_changes" | "sign_off_designs" | "manage_specifications" | "supervise_field_work" | "assign_daily_tasks" | "manage_crew" | "approve_timesheets" | "view_assigned_tasks" | "update_task_status" | "report_issues" | "upload_field_photos" | "record_time" | "view_project_status" | "view_reports" | "comment_on_project" | "request_changes" | "view_projects" | "view_documents" | "view_profile" | "access_mobile_app" | "view_boq" | "manage_boq" | "certify_valuation" | "manage_qaqc" | "view_hub" | "manage_hub" | "view_contractor_ledger" | "manage_proof" | "manage_commercial")[];
492
+ role: "SUPER_ADMIN" | "COMPANY_ADMIN" | "EXECUTIVE" | "PROJECT_MANAGER" | "ASSISTANT_PROJECT_MANAGER" | "SITE_MANAGER" | "SUPERINTENDENT" | "FINANCE_MANAGER" | "SAFETY_MANAGER" | "QA_MANAGER" | "ARCHITECT" | "ENGINEER" | "ESTIMATOR" | "SCHEDULER" | "DOCUMENT_CONTROLLER" | "ACCOUNTANT" | "PROCUREMENT_OFFICER" | "CONTRACTOR" | "SUBCONTRACTOR" | "FIELD_WORKER" | "TRADE_SPECIALIST" | "EQUIPMENT_OPERATOR" | "INSPECTOR" | "CLIENT" | "CONSULTANT" | "VENDOR";
493
+ email: string;
494
+ firstName: string;
495
+ lastName: string;
496
+ mfaEnabled: boolean;
497
+ lastLoginAt: string | null;
498
+ companyId?: string | undefined;
499
+ title?: string | null | undefined;
500
+ phone?: string | null | undefined;
501
+ };
502
+ message?: string | undefined;
503
+ tokens?: {
504
+ refreshToken: string;
505
+ accessToken: string;
506
+ expiresIn: number;
507
+ } | undefined;
508
+ requiresEmailVerification?: boolean | undefined;
509
+ }, {
510
+ user: {
511
+ id: string;
512
+ createdAt: string;
513
+ updatedAt: string;
514
+ isActive: boolean;
515
+ permissions: ("manage_all_companies" | "create_companies" | "view_all_companies" | "manage_system_settings" | "manage_company" | "manage_users" | "manage_projects" | "manage_company_settings" | "view_company_analytics" | "create_projects" | "manage_project_team" | "approve_budgets" | "view_all_projects" | "review_technical_plans" | "approve_technical_changes" | "sign_off_designs" | "manage_specifications" | "supervise_field_work" | "assign_daily_tasks" | "manage_crew" | "approve_timesheets" | "view_assigned_tasks" | "update_task_status" | "report_issues" | "upload_field_photos" | "record_time" | "view_project_status" | "view_reports" | "comment_on_project" | "request_changes" | "view_projects" | "view_documents" | "view_profile" | "access_mobile_app" | "view_boq" | "manage_boq" | "certify_valuation" | "manage_qaqc" | "view_hub" | "manage_hub" | "view_contractor_ledger" | "manage_proof" | "manage_commercial")[];
516
+ role: "SUPER_ADMIN" | "COMPANY_ADMIN" | "EXECUTIVE" | "PROJECT_MANAGER" | "ASSISTANT_PROJECT_MANAGER" | "SITE_MANAGER" | "SUPERINTENDENT" | "FINANCE_MANAGER" | "SAFETY_MANAGER" | "QA_MANAGER" | "ARCHITECT" | "ENGINEER" | "ESTIMATOR" | "SCHEDULER" | "DOCUMENT_CONTROLLER" | "ACCOUNTANT" | "PROCUREMENT_OFFICER" | "CONTRACTOR" | "SUBCONTRACTOR" | "FIELD_WORKER" | "TRADE_SPECIALIST" | "EQUIPMENT_OPERATOR" | "INSPECTOR" | "CLIENT" | "CONSULTANT" | "VENDOR";
517
+ email: string;
518
+ firstName: string;
519
+ lastName: string;
520
+ mfaEnabled: boolean;
521
+ lastLoginAt: string | null;
522
+ companyId?: string | undefined;
523
+ title?: string | null | undefined;
524
+ phone?: string | null | undefined;
525
+ };
526
+ message?: string | undefined;
527
+ tokens?: {
528
+ refreshToken: string;
529
+ accessToken: string;
530
+ expiresIn: number;
531
+ } | undefined;
532
+ requiresEmailVerification?: boolean | undefined;
533
+ }>;
534
+ }, "strip", z.ZodTypeAny, {
535
+ id: string;
536
+ type: "register-responses";
537
+ attributes: {
538
+ user: {
539
+ id: string;
540
+ createdAt: string;
541
+ updatedAt: string;
542
+ isActive: boolean;
543
+ permissions: ("manage_all_companies" | "create_companies" | "view_all_companies" | "manage_system_settings" | "manage_company" | "manage_users" | "manage_projects" | "manage_company_settings" | "view_company_analytics" | "create_projects" | "manage_project_team" | "approve_budgets" | "view_all_projects" | "review_technical_plans" | "approve_technical_changes" | "sign_off_designs" | "manage_specifications" | "supervise_field_work" | "assign_daily_tasks" | "manage_crew" | "approve_timesheets" | "view_assigned_tasks" | "update_task_status" | "report_issues" | "upload_field_photos" | "record_time" | "view_project_status" | "view_reports" | "comment_on_project" | "request_changes" | "view_projects" | "view_documents" | "view_profile" | "access_mobile_app" | "view_boq" | "manage_boq" | "certify_valuation" | "manage_qaqc" | "view_hub" | "manage_hub" | "view_contractor_ledger" | "manage_proof" | "manage_commercial")[];
544
+ role: "SUPER_ADMIN" | "COMPANY_ADMIN" | "EXECUTIVE" | "PROJECT_MANAGER" | "ASSISTANT_PROJECT_MANAGER" | "SITE_MANAGER" | "SUPERINTENDENT" | "FINANCE_MANAGER" | "SAFETY_MANAGER" | "QA_MANAGER" | "ARCHITECT" | "ENGINEER" | "ESTIMATOR" | "SCHEDULER" | "DOCUMENT_CONTROLLER" | "ACCOUNTANT" | "PROCUREMENT_OFFICER" | "CONTRACTOR" | "SUBCONTRACTOR" | "FIELD_WORKER" | "TRADE_SPECIALIST" | "EQUIPMENT_OPERATOR" | "INSPECTOR" | "CLIENT" | "CONSULTANT" | "VENDOR";
545
+ email: string;
546
+ firstName: string;
547
+ lastName: string;
548
+ mfaEnabled: boolean;
549
+ lastLoginAt: string | null;
550
+ companyId?: string | undefined;
551
+ title?: string | null | undefined;
552
+ phone?: string | null | undefined;
553
+ };
554
+ message?: string | undefined;
555
+ tokens?: {
556
+ refreshToken: string;
557
+ accessToken: string;
558
+ expiresIn: number;
559
+ } | undefined;
560
+ requiresEmailVerification?: boolean | undefined;
561
+ };
562
+ }, {
563
+ id: string;
564
+ type: "register-responses";
565
+ attributes: {
566
+ user: {
567
+ id: string;
568
+ createdAt: string;
569
+ updatedAt: string;
570
+ isActive: boolean;
571
+ permissions: ("manage_all_companies" | "create_companies" | "view_all_companies" | "manage_system_settings" | "manage_company" | "manage_users" | "manage_projects" | "manage_company_settings" | "view_company_analytics" | "create_projects" | "manage_project_team" | "approve_budgets" | "view_all_projects" | "review_technical_plans" | "approve_technical_changes" | "sign_off_designs" | "manage_specifications" | "supervise_field_work" | "assign_daily_tasks" | "manage_crew" | "approve_timesheets" | "view_assigned_tasks" | "update_task_status" | "report_issues" | "upload_field_photos" | "record_time" | "view_project_status" | "view_reports" | "comment_on_project" | "request_changes" | "view_projects" | "view_documents" | "view_profile" | "access_mobile_app" | "view_boq" | "manage_boq" | "certify_valuation" | "manage_qaqc" | "view_hub" | "manage_hub" | "view_contractor_ledger" | "manage_proof" | "manage_commercial")[];
572
+ role: "SUPER_ADMIN" | "COMPANY_ADMIN" | "EXECUTIVE" | "PROJECT_MANAGER" | "ASSISTANT_PROJECT_MANAGER" | "SITE_MANAGER" | "SUPERINTENDENT" | "FINANCE_MANAGER" | "SAFETY_MANAGER" | "QA_MANAGER" | "ARCHITECT" | "ENGINEER" | "ESTIMATOR" | "SCHEDULER" | "DOCUMENT_CONTROLLER" | "ACCOUNTANT" | "PROCUREMENT_OFFICER" | "CONTRACTOR" | "SUBCONTRACTOR" | "FIELD_WORKER" | "TRADE_SPECIALIST" | "EQUIPMENT_OPERATOR" | "INSPECTOR" | "CLIENT" | "CONSULTANT" | "VENDOR";
573
+ email: string;
574
+ firstName: string;
575
+ lastName: string;
576
+ mfaEnabled: boolean;
577
+ lastLoginAt: string | null;
578
+ companyId?: string | undefined;
579
+ title?: string | null | undefined;
580
+ phone?: string | null | undefined;
581
+ };
582
+ message?: string | undefined;
583
+ tokens?: {
584
+ refreshToken: string;
585
+ accessToken: string;
586
+ expiresIn: number;
587
+ } | undefined;
588
+ requiresEmailVerification?: boolean | undefined;
589
+ };
590
+ }>;
591
+ meta: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
592
+ links: z.ZodOptional<z.ZodObject<{
593
+ self: z.ZodString;
594
+ first: z.ZodOptional<z.ZodString>;
595
+ last: z.ZodOptional<z.ZodString>;
596
+ prev: z.ZodOptional<z.ZodString>;
597
+ next: z.ZodOptional<z.ZodString>;
598
+ }, "strip", z.ZodTypeAny, {
599
+ self: string;
600
+ first?: string | undefined;
601
+ last?: string | undefined;
602
+ prev?: string | undefined;
603
+ next?: string | undefined;
604
+ }, {
605
+ self: string;
606
+ first?: string | undefined;
607
+ last?: string | undefined;
608
+ prev?: string | undefined;
609
+ next?: string | undefined;
610
+ }>>;
611
+ errors: z.ZodOptional<z.ZodArray<z.ZodObject<{
612
+ status: z.ZodString;
613
+ title: z.ZodString;
614
+ detail: z.ZodOptional<z.ZodString>;
615
+ meta: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
616
+ }, "strip", z.ZodTypeAny, {
617
+ status: string;
618
+ title: string;
619
+ detail?: string | undefined;
620
+ meta?: Record<string, unknown> | undefined;
621
+ }, {
622
+ status: string;
623
+ title: string;
624
+ detail?: string | undefined;
625
+ meta?: Record<string, unknown> | undefined;
626
+ }>, "many">>;
627
+ }, "strip", z.ZodTypeAny, {
628
+ data: {
629
+ id: string;
630
+ type: "register-responses";
631
+ attributes: {
632
+ user: {
633
+ id: string;
634
+ createdAt: string;
635
+ updatedAt: string;
636
+ isActive: boolean;
637
+ permissions: ("manage_all_companies" | "create_companies" | "view_all_companies" | "manage_system_settings" | "manage_company" | "manage_users" | "manage_projects" | "manage_company_settings" | "view_company_analytics" | "create_projects" | "manage_project_team" | "approve_budgets" | "view_all_projects" | "review_technical_plans" | "approve_technical_changes" | "sign_off_designs" | "manage_specifications" | "supervise_field_work" | "assign_daily_tasks" | "manage_crew" | "approve_timesheets" | "view_assigned_tasks" | "update_task_status" | "report_issues" | "upload_field_photos" | "record_time" | "view_project_status" | "view_reports" | "comment_on_project" | "request_changes" | "view_projects" | "view_documents" | "view_profile" | "access_mobile_app" | "view_boq" | "manage_boq" | "certify_valuation" | "manage_qaqc" | "view_hub" | "manage_hub" | "view_contractor_ledger" | "manage_proof" | "manage_commercial")[];
638
+ role: "SUPER_ADMIN" | "COMPANY_ADMIN" | "EXECUTIVE" | "PROJECT_MANAGER" | "ASSISTANT_PROJECT_MANAGER" | "SITE_MANAGER" | "SUPERINTENDENT" | "FINANCE_MANAGER" | "SAFETY_MANAGER" | "QA_MANAGER" | "ARCHITECT" | "ENGINEER" | "ESTIMATOR" | "SCHEDULER" | "DOCUMENT_CONTROLLER" | "ACCOUNTANT" | "PROCUREMENT_OFFICER" | "CONTRACTOR" | "SUBCONTRACTOR" | "FIELD_WORKER" | "TRADE_SPECIALIST" | "EQUIPMENT_OPERATOR" | "INSPECTOR" | "CLIENT" | "CONSULTANT" | "VENDOR";
639
+ email: string;
640
+ firstName: string;
641
+ lastName: string;
642
+ mfaEnabled: boolean;
643
+ lastLoginAt: string | null;
644
+ companyId?: string | undefined;
645
+ title?: string | null | undefined;
646
+ phone?: string | null | undefined;
647
+ };
648
+ message?: string | undefined;
649
+ tokens?: {
650
+ refreshToken: string;
651
+ accessToken: string;
652
+ expiresIn: number;
653
+ } | undefined;
654
+ requiresEmailVerification?: boolean | undefined;
655
+ };
656
+ };
657
+ meta?: Record<string, unknown> | undefined;
658
+ links?: {
659
+ self: string;
660
+ first?: string | undefined;
661
+ last?: string | undefined;
662
+ prev?: string | undefined;
663
+ next?: string | undefined;
664
+ } | undefined;
665
+ errors?: {
666
+ status: string;
667
+ title: string;
668
+ detail?: string | undefined;
669
+ meta?: Record<string, unknown> | undefined;
670
+ }[] | undefined;
671
+ }, {
672
+ data: {
673
+ id: string;
674
+ type: "register-responses";
675
+ attributes: {
676
+ user: {
677
+ id: string;
678
+ createdAt: string;
679
+ updatedAt: string;
680
+ isActive: boolean;
681
+ permissions: ("manage_all_companies" | "create_companies" | "view_all_companies" | "manage_system_settings" | "manage_company" | "manage_users" | "manage_projects" | "manage_company_settings" | "view_company_analytics" | "create_projects" | "manage_project_team" | "approve_budgets" | "view_all_projects" | "review_technical_plans" | "approve_technical_changes" | "sign_off_designs" | "manage_specifications" | "supervise_field_work" | "assign_daily_tasks" | "manage_crew" | "approve_timesheets" | "view_assigned_tasks" | "update_task_status" | "report_issues" | "upload_field_photos" | "record_time" | "view_project_status" | "view_reports" | "comment_on_project" | "request_changes" | "view_projects" | "view_documents" | "view_profile" | "access_mobile_app" | "view_boq" | "manage_boq" | "certify_valuation" | "manage_qaqc" | "view_hub" | "manage_hub" | "view_contractor_ledger" | "manage_proof" | "manage_commercial")[];
682
+ role: "SUPER_ADMIN" | "COMPANY_ADMIN" | "EXECUTIVE" | "PROJECT_MANAGER" | "ASSISTANT_PROJECT_MANAGER" | "SITE_MANAGER" | "SUPERINTENDENT" | "FINANCE_MANAGER" | "SAFETY_MANAGER" | "QA_MANAGER" | "ARCHITECT" | "ENGINEER" | "ESTIMATOR" | "SCHEDULER" | "DOCUMENT_CONTROLLER" | "ACCOUNTANT" | "PROCUREMENT_OFFICER" | "CONTRACTOR" | "SUBCONTRACTOR" | "FIELD_WORKER" | "TRADE_SPECIALIST" | "EQUIPMENT_OPERATOR" | "INSPECTOR" | "CLIENT" | "CONSULTANT" | "VENDOR";
683
+ email: string;
684
+ firstName: string;
685
+ lastName: string;
686
+ mfaEnabled: boolean;
687
+ lastLoginAt: string | null;
688
+ companyId?: string | undefined;
689
+ title?: string | null | undefined;
690
+ phone?: string | null | undefined;
691
+ };
692
+ message?: string | undefined;
693
+ tokens?: {
694
+ refreshToken: string;
695
+ accessToken: string;
696
+ expiresIn: number;
697
+ } | undefined;
698
+ requiresEmailVerification?: boolean | undefined;
699
+ };
700
+ };
701
+ meta?: Record<string, unknown> | undefined;
702
+ links?: {
703
+ self: string;
704
+ first?: string | undefined;
705
+ last?: string | undefined;
706
+ prev?: string | undefined;
707
+ next?: string | undefined;
708
+ } | undefined;
709
+ errors?: {
710
+ status: string;
711
+ title: string;
712
+ detail?: string | undefined;
713
+ meta?: Record<string, unknown> | undefined;
714
+ }[] | undefined;
715
+ }>;
716
+ 400: z.ZodObject<{
717
+ errors: z.ZodArray<z.ZodObject<{
718
+ status: z.ZodString;
719
+ title: z.ZodString;
720
+ detail: z.ZodOptional<z.ZodString>;
721
+ meta: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
722
+ }, "strip", z.ZodTypeAny, {
723
+ status: string;
724
+ title: string;
725
+ detail?: string | undefined;
726
+ meta?: Record<string, unknown> | undefined;
727
+ }, {
728
+ status: string;
729
+ title: string;
730
+ detail?: string | undefined;
731
+ meta?: Record<string, unknown> | undefined;
732
+ }>, "many">;
733
+ }, "strip", z.ZodTypeAny, {
734
+ errors: {
735
+ status: string;
736
+ title: string;
737
+ detail?: string | undefined;
738
+ meta?: Record<string, unknown> | undefined;
739
+ }[];
740
+ }, {
741
+ errors: {
742
+ status: string;
743
+ title: string;
744
+ detail?: string | undefined;
745
+ meta?: Record<string, unknown> | undefined;
746
+ }[];
747
+ }>;
748
+ 409: z.ZodObject<{
749
+ errors: z.ZodArray<z.ZodObject<{
750
+ status: z.ZodString;
751
+ title: z.ZodString;
752
+ detail: z.ZodOptional<z.ZodString>;
753
+ meta: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
754
+ }, "strip", z.ZodTypeAny, {
755
+ status: string;
756
+ title: string;
757
+ detail?: string | undefined;
758
+ meta?: Record<string, unknown> | undefined;
759
+ }, {
760
+ status: string;
761
+ title: string;
762
+ detail?: string | undefined;
763
+ meta?: Record<string, unknown> | undefined;
764
+ }>, "many">;
765
+ }, "strip", z.ZodTypeAny, {
766
+ errors: {
767
+ status: string;
768
+ title: string;
769
+ detail?: string | undefined;
770
+ meta?: Record<string, unknown> | undefined;
771
+ }[];
772
+ }, {
773
+ errors: {
774
+ status: string;
775
+ title: string;
776
+ detail?: string | undefined;
777
+ meta?: Record<string, unknown> | undefined;
778
+ }[];
779
+ }>;
780
+ };
781
+ };
782
+ refreshToken: {
783
+ summary: "Refresh access token using refresh token";
784
+ method: "POST";
785
+ body: z.ZodObject<{
786
+ refreshToken: z.ZodString;
787
+ }, "strip", z.ZodTypeAny, {
788
+ refreshToken: string;
789
+ }, {
790
+ refreshToken: string;
791
+ }>;
792
+ path: "/refresh";
793
+ responses: {
794
+ 200: z.ZodObject<{
795
+ data: z.ZodObject<{
796
+ type: z.ZodLiteral<"auth-tokens">;
797
+ id: z.ZodString;
798
+ attributes: z.ZodObject<{
799
+ accessToken: z.ZodString;
800
+ refreshToken: z.ZodString;
801
+ expiresIn: z.ZodNumber;
802
+ }, "strip", z.ZodTypeAny, {
803
+ refreshToken: string;
804
+ accessToken: string;
805
+ expiresIn: number;
806
+ }, {
807
+ refreshToken: string;
808
+ accessToken: string;
809
+ expiresIn: number;
810
+ }>;
811
+ }, "strip", z.ZodTypeAny, {
812
+ id: string;
813
+ type: "auth-tokens";
814
+ attributes: {
815
+ refreshToken: string;
816
+ accessToken: string;
817
+ expiresIn: number;
818
+ };
819
+ }, {
820
+ id: string;
821
+ type: "auth-tokens";
822
+ attributes: {
823
+ refreshToken: string;
824
+ accessToken: string;
825
+ expiresIn: number;
826
+ };
827
+ }>;
828
+ meta: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
829
+ links: z.ZodOptional<z.ZodObject<{
830
+ self: z.ZodString;
831
+ first: z.ZodOptional<z.ZodString>;
832
+ last: z.ZodOptional<z.ZodString>;
833
+ prev: z.ZodOptional<z.ZodString>;
834
+ next: z.ZodOptional<z.ZodString>;
835
+ }, "strip", z.ZodTypeAny, {
836
+ self: string;
837
+ first?: string | undefined;
838
+ last?: string | undefined;
839
+ prev?: string | undefined;
840
+ next?: string | undefined;
841
+ }, {
842
+ self: string;
843
+ first?: string | undefined;
844
+ last?: string | undefined;
845
+ prev?: string | undefined;
846
+ next?: string | undefined;
847
+ }>>;
848
+ errors: z.ZodOptional<z.ZodArray<z.ZodObject<{
849
+ status: z.ZodString;
850
+ title: z.ZodString;
851
+ detail: z.ZodOptional<z.ZodString>;
852
+ meta: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
853
+ }, "strip", z.ZodTypeAny, {
854
+ status: string;
855
+ title: string;
856
+ detail?: string | undefined;
857
+ meta?: Record<string, unknown> | undefined;
858
+ }, {
859
+ status: string;
860
+ title: string;
861
+ detail?: string | undefined;
862
+ meta?: Record<string, unknown> | undefined;
863
+ }>, "many">>;
864
+ }, "strip", z.ZodTypeAny, {
865
+ data: {
866
+ id: string;
867
+ type: "auth-tokens";
868
+ attributes: {
869
+ refreshToken: string;
870
+ accessToken: string;
871
+ expiresIn: number;
872
+ };
873
+ };
874
+ meta?: Record<string, unknown> | undefined;
875
+ links?: {
876
+ self: string;
877
+ first?: string | undefined;
878
+ last?: string | undefined;
879
+ prev?: string | undefined;
880
+ next?: string | undefined;
881
+ } | undefined;
882
+ errors?: {
883
+ status: string;
884
+ title: string;
885
+ detail?: string | undefined;
886
+ meta?: Record<string, unknown> | undefined;
887
+ }[] | undefined;
888
+ }, {
889
+ data: {
890
+ id: string;
891
+ type: "auth-tokens";
892
+ attributes: {
893
+ refreshToken: string;
894
+ accessToken: string;
895
+ expiresIn: number;
896
+ };
897
+ };
898
+ meta?: Record<string, unknown> | undefined;
899
+ links?: {
900
+ self: string;
901
+ first?: string | undefined;
902
+ last?: string | undefined;
903
+ prev?: string | undefined;
904
+ next?: string | undefined;
905
+ } | undefined;
906
+ errors?: {
907
+ status: string;
908
+ title: string;
909
+ detail?: string | undefined;
910
+ meta?: Record<string, unknown> | undefined;
911
+ }[] | undefined;
912
+ }>;
913
+ 401: z.ZodObject<{
914
+ errors: z.ZodArray<z.ZodObject<{
915
+ status: z.ZodString;
916
+ title: z.ZodString;
917
+ detail: z.ZodOptional<z.ZodString>;
918
+ meta: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
919
+ }, "strip", z.ZodTypeAny, {
920
+ status: string;
921
+ title: string;
922
+ detail?: string | undefined;
923
+ meta?: Record<string, unknown> | undefined;
924
+ }, {
925
+ status: string;
926
+ title: string;
927
+ detail?: string | undefined;
928
+ meta?: Record<string, unknown> | undefined;
929
+ }>, "many">;
930
+ }, "strip", z.ZodTypeAny, {
931
+ errors: {
932
+ status: string;
933
+ title: string;
934
+ detail?: string | undefined;
935
+ meta?: Record<string, unknown> | undefined;
936
+ }[];
937
+ }, {
938
+ errors: {
939
+ status: string;
940
+ title: string;
941
+ detail?: string | undefined;
942
+ meta?: Record<string, unknown> | undefined;
943
+ }[];
944
+ }>;
945
+ };
946
+ };
947
+ logout: {
948
+ summary: "Logout user and invalidate tokens";
949
+ method: "POST";
950
+ body: z.ZodObject<{}, "strip", z.ZodTypeAny, {}, {}>;
951
+ path: "/logout";
952
+ responses: {
953
+ 200: z.ZodObject<{
954
+ data: z.ZodObject<{
955
+ type: z.ZodLiteral<"messages">;
956
+ id: z.ZodString;
957
+ attributes: z.ZodObject<{
958
+ message: z.ZodString;
959
+ }, "strip", z.ZodTypeAny, {
960
+ message: string;
961
+ }, {
962
+ message: string;
963
+ }>;
964
+ }, "strip", z.ZodTypeAny, {
965
+ id: string;
966
+ type: "messages";
967
+ attributes: {
968
+ message: string;
969
+ };
970
+ }, {
971
+ id: string;
972
+ type: "messages";
973
+ attributes: {
974
+ message: string;
975
+ };
976
+ }>;
977
+ meta: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
978
+ links: z.ZodOptional<z.ZodObject<{
979
+ self: z.ZodString;
980
+ first: z.ZodOptional<z.ZodString>;
981
+ last: z.ZodOptional<z.ZodString>;
982
+ prev: z.ZodOptional<z.ZodString>;
983
+ next: z.ZodOptional<z.ZodString>;
984
+ }, "strip", z.ZodTypeAny, {
985
+ self: string;
986
+ first?: string | undefined;
987
+ last?: string | undefined;
988
+ prev?: string | undefined;
989
+ next?: string | undefined;
990
+ }, {
991
+ self: string;
992
+ first?: string | undefined;
993
+ last?: string | undefined;
994
+ prev?: string | undefined;
995
+ next?: string | undefined;
996
+ }>>;
997
+ errors: z.ZodOptional<z.ZodArray<z.ZodObject<{
998
+ status: z.ZodString;
999
+ title: z.ZodString;
1000
+ detail: z.ZodOptional<z.ZodString>;
1001
+ meta: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
1002
+ }, "strip", z.ZodTypeAny, {
1003
+ status: string;
1004
+ title: string;
1005
+ detail?: string | undefined;
1006
+ meta?: Record<string, unknown> | undefined;
1007
+ }, {
1008
+ status: string;
1009
+ title: string;
1010
+ detail?: string | undefined;
1011
+ meta?: Record<string, unknown> | undefined;
1012
+ }>, "many">>;
1013
+ }, "strip", z.ZodTypeAny, {
1014
+ data: {
1015
+ id: string;
1016
+ type: "messages";
1017
+ attributes: {
1018
+ message: string;
1019
+ };
1020
+ };
1021
+ meta?: Record<string, unknown> | undefined;
1022
+ links?: {
1023
+ self: string;
1024
+ first?: string | undefined;
1025
+ last?: string | undefined;
1026
+ prev?: string | undefined;
1027
+ next?: string | undefined;
1028
+ } | undefined;
1029
+ errors?: {
1030
+ status: string;
1031
+ title: string;
1032
+ detail?: string | undefined;
1033
+ meta?: Record<string, unknown> | undefined;
1034
+ }[] | undefined;
1035
+ }, {
1036
+ data: {
1037
+ id: string;
1038
+ type: "messages";
1039
+ attributes: {
1040
+ message: string;
1041
+ };
1042
+ };
1043
+ meta?: Record<string, unknown> | undefined;
1044
+ links?: {
1045
+ self: string;
1046
+ first?: string | undefined;
1047
+ last?: string | undefined;
1048
+ prev?: string | undefined;
1049
+ next?: string | undefined;
1050
+ } | undefined;
1051
+ errors?: {
1052
+ status: string;
1053
+ title: string;
1054
+ detail?: string | undefined;
1055
+ meta?: Record<string, unknown> | undefined;
1056
+ }[] | undefined;
1057
+ }>;
1058
+ 401: z.ZodObject<{
1059
+ errors: z.ZodArray<z.ZodObject<{
1060
+ status: z.ZodString;
1061
+ title: z.ZodString;
1062
+ detail: z.ZodOptional<z.ZodString>;
1063
+ meta: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
1064
+ }, "strip", z.ZodTypeAny, {
1065
+ status: string;
1066
+ title: string;
1067
+ detail?: string | undefined;
1068
+ meta?: Record<string, unknown> | undefined;
1069
+ }, {
1070
+ status: string;
1071
+ title: string;
1072
+ detail?: string | undefined;
1073
+ meta?: Record<string, unknown> | undefined;
1074
+ }>, "many">;
1075
+ }, "strip", z.ZodTypeAny, {
1076
+ errors: {
1077
+ status: string;
1078
+ title: string;
1079
+ detail?: string | undefined;
1080
+ meta?: Record<string, unknown> | undefined;
1081
+ }[];
1082
+ }, {
1083
+ errors: {
1084
+ status: string;
1085
+ title: string;
1086
+ detail?: string | undefined;
1087
+ meta?: Record<string, unknown> | undefined;
1088
+ }[];
1089
+ }>;
1090
+ };
1091
+ };
1092
+ getProfile: {
1093
+ summary: "Get current user profile";
1094
+ method: "GET";
1095
+ path: "/profile";
1096
+ responses: {
1097
+ 200: z.ZodObject<{
1098
+ data: z.ZodObject<{
1099
+ type: z.ZodLiteral<"user-profiles">;
1100
+ id: z.ZodString;
1101
+ attributes: z.ZodObject<{
1102
+ id: z.ZodString;
1103
+ email: z.ZodString;
1104
+ firstName: z.ZodString;
1105
+ lastName: z.ZodString;
1106
+ phone: z.ZodOptional<z.ZodNullable<z.ZodString>>;
1107
+ title: z.ZodOptional<z.ZodNullable<z.ZodString>>;
1108
+ companyId: z.ZodOptional<z.ZodString>;
1109
+ mfaEnabled: z.ZodBoolean;
1110
+ isActive: z.ZodBoolean;
1111
+ lastLoginAt: z.ZodNullable<z.ZodString>;
1112
+ role: z.ZodEnum<["SUPER_ADMIN", "COMPANY_ADMIN", "EXECUTIVE", "PROJECT_MANAGER", "ASSISTANT_PROJECT_MANAGER", "SITE_MANAGER", "SUPERINTENDENT", "FINANCE_MANAGER", "SAFETY_MANAGER", "QA_MANAGER", "ARCHITECT", "ENGINEER", "ESTIMATOR", "SCHEDULER", "DOCUMENT_CONTROLLER", "ACCOUNTANT", "PROCUREMENT_OFFICER", "CONTRACTOR", "SUBCONTRACTOR", "FIELD_WORKER", "TRADE_SPECIALIST", "EQUIPMENT_OPERATOR", "INSPECTOR", "CLIENT", "CONSULTANT", "VENDOR"]>;
1113
+ permissions: z.ZodArray<z.ZodEnum<["manage_all_companies", "create_companies", "view_all_companies", "manage_system_settings", "manage_company", "manage_users", "manage_projects", "manage_company_settings", "view_company_analytics", "create_projects", "manage_project_team", "approve_budgets", "view_all_projects", "review_technical_plans", "approve_technical_changes", "sign_off_designs", "manage_specifications", "supervise_field_work", "assign_daily_tasks", "manage_crew", "approve_timesheets", "view_assigned_tasks", "update_task_status", "report_issues", "upload_field_photos", "record_time", "view_project_status", "view_reports", "comment_on_project", "request_changes", "view_projects", "view_documents", "view_profile", "access_mobile_app", "view_boq", "manage_boq", "certify_valuation", "manage_qaqc", "view_hub", "manage_hub", "view_contractor_ledger", "manage_proof", "manage_commercial"]>, "many">;
1114
+ createdAt: z.ZodString;
1115
+ updatedAt: z.ZodString;
1116
+ }, "strip", z.ZodTypeAny, {
1117
+ id: string;
1118
+ createdAt: string;
1119
+ updatedAt: string;
1120
+ isActive: boolean;
1121
+ permissions: ("manage_all_companies" | "create_companies" | "view_all_companies" | "manage_system_settings" | "manage_company" | "manage_users" | "manage_projects" | "manage_company_settings" | "view_company_analytics" | "create_projects" | "manage_project_team" | "approve_budgets" | "view_all_projects" | "review_technical_plans" | "approve_technical_changes" | "sign_off_designs" | "manage_specifications" | "supervise_field_work" | "assign_daily_tasks" | "manage_crew" | "approve_timesheets" | "view_assigned_tasks" | "update_task_status" | "report_issues" | "upload_field_photos" | "record_time" | "view_project_status" | "view_reports" | "comment_on_project" | "request_changes" | "view_projects" | "view_documents" | "view_profile" | "access_mobile_app" | "view_boq" | "manage_boq" | "certify_valuation" | "manage_qaqc" | "view_hub" | "manage_hub" | "view_contractor_ledger" | "manage_proof" | "manage_commercial")[];
1122
+ role: "SUPER_ADMIN" | "COMPANY_ADMIN" | "EXECUTIVE" | "PROJECT_MANAGER" | "ASSISTANT_PROJECT_MANAGER" | "SITE_MANAGER" | "SUPERINTENDENT" | "FINANCE_MANAGER" | "SAFETY_MANAGER" | "QA_MANAGER" | "ARCHITECT" | "ENGINEER" | "ESTIMATOR" | "SCHEDULER" | "DOCUMENT_CONTROLLER" | "ACCOUNTANT" | "PROCUREMENT_OFFICER" | "CONTRACTOR" | "SUBCONTRACTOR" | "FIELD_WORKER" | "TRADE_SPECIALIST" | "EQUIPMENT_OPERATOR" | "INSPECTOR" | "CLIENT" | "CONSULTANT" | "VENDOR";
1123
+ email: string;
1124
+ firstName: string;
1125
+ lastName: string;
1126
+ mfaEnabled: boolean;
1127
+ lastLoginAt: string | null;
1128
+ companyId?: string | undefined;
1129
+ title?: string | null | undefined;
1130
+ phone?: string | null | undefined;
1131
+ }, {
1132
+ id: string;
1133
+ createdAt: string;
1134
+ updatedAt: string;
1135
+ isActive: boolean;
1136
+ permissions: ("manage_all_companies" | "create_companies" | "view_all_companies" | "manage_system_settings" | "manage_company" | "manage_users" | "manage_projects" | "manage_company_settings" | "view_company_analytics" | "create_projects" | "manage_project_team" | "approve_budgets" | "view_all_projects" | "review_technical_plans" | "approve_technical_changes" | "sign_off_designs" | "manage_specifications" | "supervise_field_work" | "assign_daily_tasks" | "manage_crew" | "approve_timesheets" | "view_assigned_tasks" | "update_task_status" | "report_issues" | "upload_field_photos" | "record_time" | "view_project_status" | "view_reports" | "comment_on_project" | "request_changes" | "view_projects" | "view_documents" | "view_profile" | "access_mobile_app" | "view_boq" | "manage_boq" | "certify_valuation" | "manage_qaqc" | "view_hub" | "manage_hub" | "view_contractor_ledger" | "manage_proof" | "manage_commercial")[];
1137
+ role: "SUPER_ADMIN" | "COMPANY_ADMIN" | "EXECUTIVE" | "PROJECT_MANAGER" | "ASSISTANT_PROJECT_MANAGER" | "SITE_MANAGER" | "SUPERINTENDENT" | "FINANCE_MANAGER" | "SAFETY_MANAGER" | "QA_MANAGER" | "ARCHITECT" | "ENGINEER" | "ESTIMATOR" | "SCHEDULER" | "DOCUMENT_CONTROLLER" | "ACCOUNTANT" | "PROCUREMENT_OFFICER" | "CONTRACTOR" | "SUBCONTRACTOR" | "FIELD_WORKER" | "TRADE_SPECIALIST" | "EQUIPMENT_OPERATOR" | "INSPECTOR" | "CLIENT" | "CONSULTANT" | "VENDOR";
1138
+ email: string;
1139
+ firstName: string;
1140
+ lastName: string;
1141
+ mfaEnabled: boolean;
1142
+ lastLoginAt: string | null;
1143
+ companyId?: string | undefined;
1144
+ title?: string | null | undefined;
1145
+ phone?: string | null | undefined;
1146
+ }>;
1147
+ }, "strip", z.ZodTypeAny, {
1148
+ id: string;
1149
+ type: "user-profiles";
1150
+ attributes: {
1151
+ id: string;
1152
+ createdAt: string;
1153
+ updatedAt: string;
1154
+ isActive: boolean;
1155
+ permissions: ("manage_all_companies" | "create_companies" | "view_all_companies" | "manage_system_settings" | "manage_company" | "manage_users" | "manage_projects" | "manage_company_settings" | "view_company_analytics" | "create_projects" | "manage_project_team" | "approve_budgets" | "view_all_projects" | "review_technical_plans" | "approve_technical_changes" | "sign_off_designs" | "manage_specifications" | "supervise_field_work" | "assign_daily_tasks" | "manage_crew" | "approve_timesheets" | "view_assigned_tasks" | "update_task_status" | "report_issues" | "upload_field_photos" | "record_time" | "view_project_status" | "view_reports" | "comment_on_project" | "request_changes" | "view_projects" | "view_documents" | "view_profile" | "access_mobile_app" | "view_boq" | "manage_boq" | "certify_valuation" | "manage_qaqc" | "view_hub" | "manage_hub" | "view_contractor_ledger" | "manage_proof" | "manage_commercial")[];
1156
+ role: "SUPER_ADMIN" | "COMPANY_ADMIN" | "EXECUTIVE" | "PROJECT_MANAGER" | "ASSISTANT_PROJECT_MANAGER" | "SITE_MANAGER" | "SUPERINTENDENT" | "FINANCE_MANAGER" | "SAFETY_MANAGER" | "QA_MANAGER" | "ARCHITECT" | "ENGINEER" | "ESTIMATOR" | "SCHEDULER" | "DOCUMENT_CONTROLLER" | "ACCOUNTANT" | "PROCUREMENT_OFFICER" | "CONTRACTOR" | "SUBCONTRACTOR" | "FIELD_WORKER" | "TRADE_SPECIALIST" | "EQUIPMENT_OPERATOR" | "INSPECTOR" | "CLIENT" | "CONSULTANT" | "VENDOR";
1157
+ email: string;
1158
+ firstName: string;
1159
+ lastName: string;
1160
+ mfaEnabled: boolean;
1161
+ lastLoginAt: string | null;
1162
+ companyId?: string | undefined;
1163
+ title?: string | null | undefined;
1164
+ phone?: string | null | undefined;
1165
+ };
1166
+ }, {
1167
+ id: string;
1168
+ type: "user-profiles";
1169
+ attributes: {
1170
+ id: string;
1171
+ createdAt: string;
1172
+ updatedAt: string;
1173
+ isActive: boolean;
1174
+ permissions: ("manage_all_companies" | "create_companies" | "view_all_companies" | "manage_system_settings" | "manage_company" | "manage_users" | "manage_projects" | "manage_company_settings" | "view_company_analytics" | "create_projects" | "manage_project_team" | "approve_budgets" | "view_all_projects" | "review_technical_plans" | "approve_technical_changes" | "sign_off_designs" | "manage_specifications" | "supervise_field_work" | "assign_daily_tasks" | "manage_crew" | "approve_timesheets" | "view_assigned_tasks" | "update_task_status" | "report_issues" | "upload_field_photos" | "record_time" | "view_project_status" | "view_reports" | "comment_on_project" | "request_changes" | "view_projects" | "view_documents" | "view_profile" | "access_mobile_app" | "view_boq" | "manage_boq" | "certify_valuation" | "manage_qaqc" | "view_hub" | "manage_hub" | "view_contractor_ledger" | "manage_proof" | "manage_commercial")[];
1175
+ role: "SUPER_ADMIN" | "COMPANY_ADMIN" | "EXECUTIVE" | "PROJECT_MANAGER" | "ASSISTANT_PROJECT_MANAGER" | "SITE_MANAGER" | "SUPERINTENDENT" | "FINANCE_MANAGER" | "SAFETY_MANAGER" | "QA_MANAGER" | "ARCHITECT" | "ENGINEER" | "ESTIMATOR" | "SCHEDULER" | "DOCUMENT_CONTROLLER" | "ACCOUNTANT" | "PROCUREMENT_OFFICER" | "CONTRACTOR" | "SUBCONTRACTOR" | "FIELD_WORKER" | "TRADE_SPECIALIST" | "EQUIPMENT_OPERATOR" | "INSPECTOR" | "CLIENT" | "CONSULTANT" | "VENDOR";
1176
+ email: string;
1177
+ firstName: string;
1178
+ lastName: string;
1179
+ mfaEnabled: boolean;
1180
+ lastLoginAt: string | null;
1181
+ companyId?: string | undefined;
1182
+ title?: string | null | undefined;
1183
+ phone?: string | null | undefined;
1184
+ };
1185
+ }>;
1186
+ meta: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
1187
+ links: z.ZodOptional<z.ZodObject<{
1188
+ self: z.ZodString;
1189
+ first: z.ZodOptional<z.ZodString>;
1190
+ last: z.ZodOptional<z.ZodString>;
1191
+ prev: z.ZodOptional<z.ZodString>;
1192
+ next: z.ZodOptional<z.ZodString>;
1193
+ }, "strip", z.ZodTypeAny, {
1194
+ self: string;
1195
+ first?: string | undefined;
1196
+ last?: string | undefined;
1197
+ prev?: string | undefined;
1198
+ next?: string | undefined;
1199
+ }, {
1200
+ self: string;
1201
+ first?: string | undefined;
1202
+ last?: string | undefined;
1203
+ prev?: string | undefined;
1204
+ next?: string | undefined;
1205
+ }>>;
1206
+ errors: z.ZodOptional<z.ZodArray<z.ZodObject<{
1207
+ status: z.ZodString;
1208
+ title: z.ZodString;
1209
+ detail: z.ZodOptional<z.ZodString>;
1210
+ meta: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
1211
+ }, "strip", z.ZodTypeAny, {
1212
+ status: string;
1213
+ title: string;
1214
+ detail?: string | undefined;
1215
+ meta?: Record<string, unknown> | undefined;
1216
+ }, {
1217
+ status: string;
1218
+ title: string;
1219
+ detail?: string | undefined;
1220
+ meta?: Record<string, unknown> | undefined;
1221
+ }>, "many">>;
1222
+ }, "strip", z.ZodTypeAny, {
1223
+ data: {
1224
+ id: string;
1225
+ type: "user-profiles";
1226
+ attributes: {
1227
+ id: string;
1228
+ createdAt: string;
1229
+ updatedAt: string;
1230
+ isActive: boolean;
1231
+ permissions: ("manage_all_companies" | "create_companies" | "view_all_companies" | "manage_system_settings" | "manage_company" | "manage_users" | "manage_projects" | "manage_company_settings" | "view_company_analytics" | "create_projects" | "manage_project_team" | "approve_budgets" | "view_all_projects" | "review_technical_plans" | "approve_technical_changes" | "sign_off_designs" | "manage_specifications" | "supervise_field_work" | "assign_daily_tasks" | "manage_crew" | "approve_timesheets" | "view_assigned_tasks" | "update_task_status" | "report_issues" | "upload_field_photos" | "record_time" | "view_project_status" | "view_reports" | "comment_on_project" | "request_changes" | "view_projects" | "view_documents" | "view_profile" | "access_mobile_app" | "view_boq" | "manage_boq" | "certify_valuation" | "manage_qaqc" | "view_hub" | "manage_hub" | "view_contractor_ledger" | "manage_proof" | "manage_commercial")[];
1232
+ role: "SUPER_ADMIN" | "COMPANY_ADMIN" | "EXECUTIVE" | "PROJECT_MANAGER" | "ASSISTANT_PROJECT_MANAGER" | "SITE_MANAGER" | "SUPERINTENDENT" | "FINANCE_MANAGER" | "SAFETY_MANAGER" | "QA_MANAGER" | "ARCHITECT" | "ENGINEER" | "ESTIMATOR" | "SCHEDULER" | "DOCUMENT_CONTROLLER" | "ACCOUNTANT" | "PROCUREMENT_OFFICER" | "CONTRACTOR" | "SUBCONTRACTOR" | "FIELD_WORKER" | "TRADE_SPECIALIST" | "EQUIPMENT_OPERATOR" | "INSPECTOR" | "CLIENT" | "CONSULTANT" | "VENDOR";
1233
+ email: string;
1234
+ firstName: string;
1235
+ lastName: string;
1236
+ mfaEnabled: boolean;
1237
+ lastLoginAt: string | null;
1238
+ companyId?: string | undefined;
1239
+ title?: string | null | undefined;
1240
+ phone?: string | null | undefined;
1241
+ };
1242
+ };
1243
+ meta?: Record<string, unknown> | undefined;
1244
+ links?: {
1245
+ self: string;
1246
+ first?: string | undefined;
1247
+ last?: string | undefined;
1248
+ prev?: string | undefined;
1249
+ next?: string | undefined;
1250
+ } | undefined;
1251
+ errors?: {
1252
+ status: string;
1253
+ title: string;
1254
+ detail?: string | undefined;
1255
+ meta?: Record<string, unknown> | undefined;
1256
+ }[] | undefined;
1257
+ }, {
1258
+ data: {
1259
+ id: string;
1260
+ type: "user-profiles";
1261
+ attributes: {
1262
+ id: string;
1263
+ createdAt: string;
1264
+ updatedAt: string;
1265
+ isActive: boolean;
1266
+ permissions: ("manage_all_companies" | "create_companies" | "view_all_companies" | "manage_system_settings" | "manage_company" | "manage_users" | "manage_projects" | "manage_company_settings" | "view_company_analytics" | "create_projects" | "manage_project_team" | "approve_budgets" | "view_all_projects" | "review_technical_plans" | "approve_technical_changes" | "sign_off_designs" | "manage_specifications" | "supervise_field_work" | "assign_daily_tasks" | "manage_crew" | "approve_timesheets" | "view_assigned_tasks" | "update_task_status" | "report_issues" | "upload_field_photos" | "record_time" | "view_project_status" | "view_reports" | "comment_on_project" | "request_changes" | "view_projects" | "view_documents" | "view_profile" | "access_mobile_app" | "view_boq" | "manage_boq" | "certify_valuation" | "manage_qaqc" | "view_hub" | "manage_hub" | "view_contractor_ledger" | "manage_proof" | "manage_commercial")[];
1267
+ role: "SUPER_ADMIN" | "COMPANY_ADMIN" | "EXECUTIVE" | "PROJECT_MANAGER" | "ASSISTANT_PROJECT_MANAGER" | "SITE_MANAGER" | "SUPERINTENDENT" | "FINANCE_MANAGER" | "SAFETY_MANAGER" | "QA_MANAGER" | "ARCHITECT" | "ENGINEER" | "ESTIMATOR" | "SCHEDULER" | "DOCUMENT_CONTROLLER" | "ACCOUNTANT" | "PROCUREMENT_OFFICER" | "CONTRACTOR" | "SUBCONTRACTOR" | "FIELD_WORKER" | "TRADE_SPECIALIST" | "EQUIPMENT_OPERATOR" | "INSPECTOR" | "CLIENT" | "CONSULTANT" | "VENDOR";
1268
+ email: string;
1269
+ firstName: string;
1270
+ lastName: string;
1271
+ mfaEnabled: boolean;
1272
+ lastLoginAt: string | null;
1273
+ companyId?: string | undefined;
1274
+ title?: string | null | undefined;
1275
+ phone?: string | null | undefined;
1276
+ };
1277
+ };
1278
+ meta?: Record<string, unknown> | undefined;
1279
+ links?: {
1280
+ self: string;
1281
+ first?: string | undefined;
1282
+ last?: string | undefined;
1283
+ prev?: string | undefined;
1284
+ next?: string | undefined;
1285
+ } | undefined;
1286
+ errors?: {
1287
+ status: string;
1288
+ title: string;
1289
+ detail?: string | undefined;
1290
+ meta?: Record<string, unknown> | undefined;
1291
+ }[] | undefined;
1292
+ }>;
1293
+ 401: z.ZodObject<{
1294
+ errors: z.ZodArray<z.ZodObject<{
1295
+ status: z.ZodString;
1296
+ title: z.ZodString;
1297
+ detail: z.ZodOptional<z.ZodString>;
1298
+ meta: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
1299
+ }, "strip", z.ZodTypeAny, {
1300
+ status: string;
1301
+ title: string;
1302
+ detail?: string | undefined;
1303
+ meta?: Record<string, unknown> | undefined;
1304
+ }, {
1305
+ status: string;
1306
+ title: string;
1307
+ detail?: string | undefined;
1308
+ meta?: Record<string, unknown> | undefined;
1309
+ }>, "many">;
1310
+ }, "strip", z.ZodTypeAny, {
1311
+ errors: {
1312
+ status: string;
1313
+ title: string;
1314
+ detail?: string | undefined;
1315
+ meta?: Record<string, unknown> | undefined;
1316
+ }[];
1317
+ }, {
1318
+ errors: {
1319
+ status: string;
1320
+ title: string;
1321
+ detail?: string | undefined;
1322
+ meta?: Record<string, unknown> | undefined;
1323
+ }[];
1324
+ }>;
1325
+ };
1326
+ };
1327
+ updateProfile: {
1328
+ summary: "Update current user profile";
1329
+ method: "PUT";
1330
+ body: z.ZodObject<{
1331
+ firstName: z.ZodOptional<z.ZodString>;
1332
+ lastName: z.ZodOptional<z.ZodString>;
1333
+ email: z.ZodOptional<z.ZodString>;
1334
+ phone: z.ZodOptional<z.ZodNullable<z.ZodString>>;
1335
+ title: z.ZodOptional<z.ZodNullable<z.ZodString>>;
1336
+ }, "strip", z.ZodTypeAny, {
1337
+ title?: string | null | undefined;
1338
+ email?: string | undefined;
1339
+ firstName?: string | undefined;
1340
+ lastName?: string | undefined;
1341
+ phone?: string | null | undefined;
1342
+ }, {
1343
+ title?: string | null | undefined;
1344
+ email?: string | undefined;
1345
+ firstName?: string | undefined;
1346
+ lastName?: string | undefined;
1347
+ phone?: string | null | undefined;
1348
+ }>;
1349
+ path: "/profile";
1350
+ responses: {
1351
+ 200: z.ZodObject<{
1352
+ data: z.ZodObject<{
1353
+ type: z.ZodLiteral<"user-profiles">;
1354
+ id: z.ZodString;
1355
+ attributes: z.ZodObject<{
1356
+ id: z.ZodString;
1357
+ email: z.ZodString;
1358
+ firstName: z.ZodString;
1359
+ lastName: z.ZodString;
1360
+ phone: z.ZodOptional<z.ZodNullable<z.ZodString>>;
1361
+ title: z.ZodOptional<z.ZodNullable<z.ZodString>>;
1362
+ companyId: z.ZodOptional<z.ZodString>;
1363
+ mfaEnabled: z.ZodBoolean;
1364
+ isActive: z.ZodBoolean;
1365
+ lastLoginAt: z.ZodNullable<z.ZodString>;
1366
+ role: z.ZodEnum<["SUPER_ADMIN", "COMPANY_ADMIN", "EXECUTIVE", "PROJECT_MANAGER", "ASSISTANT_PROJECT_MANAGER", "SITE_MANAGER", "SUPERINTENDENT", "FINANCE_MANAGER", "SAFETY_MANAGER", "QA_MANAGER", "ARCHITECT", "ENGINEER", "ESTIMATOR", "SCHEDULER", "DOCUMENT_CONTROLLER", "ACCOUNTANT", "PROCUREMENT_OFFICER", "CONTRACTOR", "SUBCONTRACTOR", "FIELD_WORKER", "TRADE_SPECIALIST", "EQUIPMENT_OPERATOR", "INSPECTOR", "CLIENT", "CONSULTANT", "VENDOR"]>;
1367
+ permissions: z.ZodArray<z.ZodEnum<["manage_all_companies", "create_companies", "view_all_companies", "manage_system_settings", "manage_company", "manage_users", "manage_projects", "manage_company_settings", "view_company_analytics", "create_projects", "manage_project_team", "approve_budgets", "view_all_projects", "review_technical_plans", "approve_technical_changes", "sign_off_designs", "manage_specifications", "supervise_field_work", "assign_daily_tasks", "manage_crew", "approve_timesheets", "view_assigned_tasks", "update_task_status", "report_issues", "upload_field_photos", "record_time", "view_project_status", "view_reports", "comment_on_project", "request_changes", "view_projects", "view_documents", "view_profile", "access_mobile_app", "view_boq", "manage_boq", "certify_valuation", "manage_qaqc", "view_hub", "manage_hub", "view_contractor_ledger", "manage_proof", "manage_commercial"]>, "many">;
1368
+ createdAt: z.ZodString;
1369
+ updatedAt: z.ZodString;
1370
+ }, "strip", z.ZodTypeAny, {
1371
+ id: string;
1372
+ createdAt: string;
1373
+ updatedAt: string;
1374
+ isActive: boolean;
1375
+ permissions: ("manage_all_companies" | "create_companies" | "view_all_companies" | "manage_system_settings" | "manage_company" | "manage_users" | "manage_projects" | "manage_company_settings" | "view_company_analytics" | "create_projects" | "manage_project_team" | "approve_budgets" | "view_all_projects" | "review_technical_plans" | "approve_technical_changes" | "sign_off_designs" | "manage_specifications" | "supervise_field_work" | "assign_daily_tasks" | "manage_crew" | "approve_timesheets" | "view_assigned_tasks" | "update_task_status" | "report_issues" | "upload_field_photos" | "record_time" | "view_project_status" | "view_reports" | "comment_on_project" | "request_changes" | "view_projects" | "view_documents" | "view_profile" | "access_mobile_app" | "view_boq" | "manage_boq" | "certify_valuation" | "manage_qaqc" | "view_hub" | "manage_hub" | "view_contractor_ledger" | "manage_proof" | "manage_commercial")[];
1376
+ role: "SUPER_ADMIN" | "COMPANY_ADMIN" | "EXECUTIVE" | "PROJECT_MANAGER" | "ASSISTANT_PROJECT_MANAGER" | "SITE_MANAGER" | "SUPERINTENDENT" | "FINANCE_MANAGER" | "SAFETY_MANAGER" | "QA_MANAGER" | "ARCHITECT" | "ENGINEER" | "ESTIMATOR" | "SCHEDULER" | "DOCUMENT_CONTROLLER" | "ACCOUNTANT" | "PROCUREMENT_OFFICER" | "CONTRACTOR" | "SUBCONTRACTOR" | "FIELD_WORKER" | "TRADE_SPECIALIST" | "EQUIPMENT_OPERATOR" | "INSPECTOR" | "CLIENT" | "CONSULTANT" | "VENDOR";
1377
+ email: string;
1378
+ firstName: string;
1379
+ lastName: string;
1380
+ mfaEnabled: boolean;
1381
+ lastLoginAt: string | null;
1382
+ companyId?: string | undefined;
1383
+ title?: string | null | undefined;
1384
+ phone?: string | null | undefined;
1385
+ }, {
1386
+ id: string;
1387
+ createdAt: string;
1388
+ updatedAt: string;
1389
+ isActive: boolean;
1390
+ permissions: ("manage_all_companies" | "create_companies" | "view_all_companies" | "manage_system_settings" | "manage_company" | "manage_users" | "manage_projects" | "manage_company_settings" | "view_company_analytics" | "create_projects" | "manage_project_team" | "approve_budgets" | "view_all_projects" | "review_technical_plans" | "approve_technical_changes" | "sign_off_designs" | "manage_specifications" | "supervise_field_work" | "assign_daily_tasks" | "manage_crew" | "approve_timesheets" | "view_assigned_tasks" | "update_task_status" | "report_issues" | "upload_field_photos" | "record_time" | "view_project_status" | "view_reports" | "comment_on_project" | "request_changes" | "view_projects" | "view_documents" | "view_profile" | "access_mobile_app" | "view_boq" | "manage_boq" | "certify_valuation" | "manage_qaqc" | "view_hub" | "manage_hub" | "view_contractor_ledger" | "manage_proof" | "manage_commercial")[];
1391
+ role: "SUPER_ADMIN" | "COMPANY_ADMIN" | "EXECUTIVE" | "PROJECT_MANAGER" | "ASSISTANT_PROJECT_MANAGER" | "SITE_MANAGER" | "SUPERINTENDENT" | "FINANCE_MANAGER" | "SAFETY_MANAGER" | "QA_MANAGER" | "ARCHITECT" | "ENGINEER" | "ESTIMATOR" | "SCHEDULER" | "DOCUMENT_CONTROLLER" | "ACCOUNTANT" | "PROCUREMENT_OFFICER" | "CONTRACTOR" | "SUBCONTRACTOR" | "FIELD_WORKER" | "TRADE_SPECIALIST" | "EQUIPMENT_OPERATOR" | "INSPECTOR" | "CLIENT" | "CONSULTANT" | "VENDOR";
1392
+ email: string;
1393
+ firstName: string;
1394
+ lastName: string;
1395
+ mfaEnabled: boolean;
1396
+ lastLoginAt: string | null;
1397
+ companyId?: string | undefined;
1398
+ title?: string | null | undefined;
1399
+ phone?: string | null | undefined;
1400
+ }>;
1401
+ }, "strip", z.ZodTypeAny, {
1402
+ id: string;
1403
+ type: "user-profiles";
1404
+ attributes: {
1405
+ id: string;
1406
+ createdAt: string;
1407
+ updatedAt: string;
1408
+ isActive: boolean;
1409
+ permissions: ("manage_all_companies" | "create_companies" | "view_all_companies" | "manage_system_settings" | "manage_company" | "manage_users" | "manage_projects" | "manage_company_settings" | "view_company_analytics" | "create_projects" | "manage_project_team" | "approve_budgets" | "view_all_projects" | "review_technical_plans" | "approve_technical_changes" | "sign_off_designs" | "manage_specifications" | "supervise_field_work" | "assign_daily_tasks" | "manage_crew" | "approve_timesheets" | "view_assigned_tasks" | "update_task_status" | "report_issues" | "upload_field_photos" | "record_time" | "view_project_status" | "view_reports" | "comment_on_project" | "request_changes" | "view_projects" | "view_documents" | "view_profile" | "access_mobile_app" | "view_boq" | "manage_boq" | "certify_valuation" | "manage_qaqc" | "view_hub" | "manage_hub" | "view_contractor_ledger" | "manage_proof" | "manage_commercial")[];
1410
+ role: "SUPER_ADMIN" | "COMPANY_ADMIN" | "EXECUTIVE" | "PROJECT_MANAGER" | "ASSISTANT_PROJECT_MANAGER" | "SITE_MANAGER" | "SUPERINTENDENT" | "FINANCE_MANAGER" | "SAFETY_MANAGER" | "QA_MANAGER" | "ARCHITECT" | "ENGINEER" | "ESTIMATOR" | "SCHEDULER" | "DOCUMENT_CONTROLLER" | "ACCOUNTANT" | "PROCUREMENT_OFFICER" | "CONTRACTOR" | "SUBCONTRACTOR" | "FIELD_WORKER" | "TRADE_SPECIALIST" | "EQUIPMENT_OPERATOR" | "INSPECTOR" | "CLIENT" | "CONSULTANT" | "VENDOR";
1411
+ email: string;
1412
+ firstName: string;
1413
+ lastName: string;
1414
+ mfaEnabled: boolean;
1415
+ lastLoginAt: string | null;
1416
+ companyId?: string | undefined;
1417
+ title?: string | null | undefined;
1418
+ phone?: string | null | undefined;
1419
+ };
1420
+ }, {
1421
+ id: string;
1422
+ type: "user-profiles";
1423
+ attributes: {
1424
+ id: string;
1425
+ createdAt: string;
1426
+ updatedAt: string;
1427
+ isActive: boolean;
1428
+ permissions: ("manage_all_companies" | "create_companies" | "view_all_companies" | "manage_system_settings" | "manage_company" | "manage_users" | "manage_projects" | "manage_company_settings" | "view_company_analytics" | "create_projects" | "manage_project_team" | "approve_budgets" | "view_all_projects" | "review_technical_plans" | "approve_technical_changes" | "sign_off_designs" | "manage_specifications" | "supervise_field_work" | "assign_daily_tasks" | "manage_crew" | "approve_timesheets" | "view_assigned_tasks" | "update_task_status" | "report_issues" | "upload_field_photos" | "record_time" | "view_project_status" | "view_reports" | "comment_on_project" | "request_changes" | "view_projects" | "view_documents" | "view_profile" | "access_mobile_app" | "view_boq" | "manage_boq" | "certify_valuation" | "manage_qaqc" | "view_hub" | "manage_hub" | "view_contractor_ledger" | "manage_proof" | "manage_commercial")[];
1429
+ role: "SUPER_ADMIN" | "COMPANY_ADMIN" | "EXECUTIVE" | "PROJECT_MANAGER" | "ASSISTANT_PROJECT_MANAGER" | "SITE_MANAGER" | "SUPERINTENDENT" | "FINANCE_MANAGER" | "SAFETY_MANAGER" | "QA_MANAGER" | "ARCHITECT" | "ENGINEER" | "ESTIMATOR" | "SCHEDULER" | "DOCUMENT_CONTROLLER" | "ACCOUNTANT" | "PROCUREMENT_OFFICER" | "CONTRACTOR" | "SUBCONTRACTOR" | "FIELD_WORKER" | "TRADE_SPECIALIST" | "EQUIPMENT_OPERATOR" | "INSPECTOR" | "CLIENT" | "CONSULTANT" | "VENDOR";
1430
+ email: string;
1431
+ firstName: string;
1432
+ lastName: string;
1433
+ mfaEnabled: boolean;
1434
+ lastLoginAt: string | null;
1435
+ companyId?: string | undefined;
1436
+ title?: string | null | undefined;
1437
+ phone?: string | null | undefined;
1438
+ };
1439
+ }>;
1440
+ meta: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
1441
+ links: z.ZodOptional<z.ZodObject<{
1442
+ self: z.ZodString;
1443
+ first: z.ZodOptional<z.ZodString>;
1444
+ last: z.ZodOptional<z.ZodString>;
1445
+ prev: z.ZodOptional<z.ZodString>;
1446
+ next: z.ZodOptional<z.ZodString>;
1447
+ }, "strip", z.ZodTypeAny, {
1448
+ self: string;
1449
+ first?: string | undefined;
1450
+ last?: string | undefined;
1451
+ prev?: string | undefined;
1452
+ next?: string | undefined;
1453
+ }, {
1454
+ self: string;
1455
+ first?: string | undefined;
1456
+ last?: string | undefined;
1457
+ prev?: string | undefined;
1458
+ next?: string | undefined;
1459
+ }>>;
1460
+ errors: z.ZodOptional<z.ZodArray<z.ZodObject<{
1461
+ status: z.ZodString;
1462
+ title: z.ZodString;
1463
+ detail: z.ZodOptional<z.ZodString>;
1464
+ meta: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
1465
+ }, "strip", z.ZodTypeAny, {
1466
+ status: string;
1467
+ title: string;
1468
+ detail?: string | undefined;
1469
+ meta?: Record<string, unknown> | undefined;
1470
+ }, {
1471
+ status: string;
1472
+ title: string;
1473
+ detail?: string | undefined;
1474
+ meta?: Record<string, unknown> | undefined;
1475
+ }>, "many">>;
1476
+ }, "strip", z.ZodTypeAny, {
1477
+ data: {
1478
+ id: string;
1479
+ type: "user-profiles";
1480
+ attributes: {
1481
+ id: string;
1482
+ createdAt: string;
1483
+ updatedAt: string;
1484
+ isActive: boolean;
1485
+ permissions: ("manage_all_companies" | "create_companies" | "view_all_companies" | "manage_system_settings" | "manage_company" | "manage_users" | "manage_projects" | "manage_company_settings" | "view_company_analytics" | "create_projects" | "manage_project_team" | "approve_budgets" | "view_all_projects" | "review_technical_plans" | "approve_technical_changes" | "sign_off_designs" | "manage_specifications" | "supervise_field_work" | "assign_daily_tasks" | "manage_crew" | "approve_timesheets" | "view_assigned_tasks" | "update_task_status" | "report_issues" | "upload_field_photos" | "record_time" | "view_project_status" | "view_reports" | "comment_on_project" | "request_changes" | "view_projects" | "view_documents" | "view_profile" | "access_mobile_app" | "view_boq" | "manage_boq" | "certify_valuation" | "manage_qaqc" | "view_hub" | "manage_hub" | "view_contractor_ledger" | "manage_proof" | "manage_commercial")[];
1486
+ role: "SUPER_ADMIN" | "COMPANY_ADMIN" | "EXECUTIVE" | "PROJECT_MANAGER" | "ASSISTANT_PROJECT_MANAGER" | "SITE_MANAGER" | "SUPERINTENDENT" | "FINANCE_MANAGER" | "SAFETY_MANAGER" | "QA_MANAGER" | "ARCHITECT" | "ENGINEER" | "ESTIMATOR" | "SCHEDULER" | "DOCUMENT_CONTROLLER" | "ACCOUNTANT" | "PROCUREMENT_OFFICER" | "CONTRACTOR" | "SUBCONTRACTOR" | "FIELD_WORKER" | "TRADE_SPECIALIST" | "EQUIPMENT_OPERATOR" | "INSPECTOR" | "CLIENT" | "CONSULTANT" | "VENDOR";
1487
+ email: string;
1488
+ firstName: string;
1489
+ lastName: string;
1490
+ mfaEnabled: boolean;
1491
+ lastLoginAt: string | null;
1492
+ companyId?: string | undefined;
1493
+ title?: string | null | undefined;
1494
+ phone?: string | null | undefined;
1495
+ };
1496
+ };
1497
+ meta?: Record<string, unknown> | undefined;
1498
+ links?: {
1499
+ self: string;
1500
+ first?: string | undefined;
1501
+ last?: string | undefined;
1502
+ prev?: string | undefined;
1503
+ next?: string | undefined;
1504
+ } | undefined;
1505
+ errors?: {
1506
+ status: string;
1507
+ title: string;
1508
+ detail?: string | undefined;
1509
+ meta?: Record<string, unknown> | undefined;
1510
+ }[] | undefined;
1511
+ }, {
1512
+ data: {
1513
+ id: string;
1514
+ type: "user-profiles";
1515
+ attributes: {
1516
+ id: string;
1517
+ createdAt: string;
1518
+ updatedAt: string;
1519
+ isActive: boolean;
1520
+ permissions: ("manage_all_companies" | "create_companies" | "view_all_companies" | "manage_system_settings" | "manage_company" | "manage_users" | "manage_projects" | "manage_company_settings" | "view_company_analytics" | "create_projects" | "manage_project_team" | "approve_budgets" | "view_all_projects" | "review_technical_plans" | "approve_technical_changes" | "sign_off_designs" | "manage_specifications" | "supervise_field_work" | "assign_daily_tasks" | "manage_crew" | "approve_timesheets" | "view_assigned_tasks" | "update_task_status" | "report_issues" | "upload_field_photos" | "record_time" | "view_project_status" | "view_reports" | "comment_on_project" | "request_changes" | "view_projects" | "view_documents" | "view_profile" | "access_mobile_app" | "view_boq" | "manage_boq" | "certify_valuation" | "manage_qaqc" | "view_hub" | "manage_hub" | "view_contractor_ledger" | "manage_proof" | "manage_commercial")[];
1521
+ role: "SUPER_ADMIN" | "COMPANY_ADMIN" | "EXECUTIVE" | "PROJECT_MANAGER" | "ASSISTANT_PROJECT_MANAGER" | "SITE_MANAGER" | "SUPERINTENDENT" | "FINANCE_MANAGER" | "SAFETY_MANAGER" | "QA_MANAGER" | "ARCHITECT" | "ENGINEER" | "ESTIMATOR" | "SCHEDULER" | "DOCUMENT_CONTROLLER" | "ACCOUNTANT" | "PROCUREMENT_OFFICER" | "CONTRACTOR" | "SUBCONTRACTOR" | "FIELD_WORKER" | "TRADE_SPECIALIST" | "EQUIPMENT_OPERATOR" | "INSPECTOR" | "CLIENT" | "CONSULTANT" | "VENDOR";
1522
+ email: string;
1523
+ firstName: string;
1524
+ lastName: string;
1525
+ mfaEnabled: boolean;
1526
+ lastLoginAt: string | null;
1527
+ companyId?: string | undefined;
1528
+ title?: string | null | undefined;
1529
+ phone?: string | null | undefined;
1530
+ };
1531
+ };
1532
+ meta?: Record<string, unknown> | undefined;
1533
+ links?: {
1534
+ self: string;
1535
+ first?: string | undefined;
1536
+ last?: string | undefined;
1537
+ prev?: string | undefined;
1538
+ next?: string | undefined;
1539
+ } | undefined;
1540
+ errors?: {
1541
+ status: string;
1542
+ title: string;
1543
+ detail?: string | undefined;
1544
+ meta?: Record<string, unknown> | undefined;
1545
+ }[] | undefined;
1546
+ }>;
1547
+ 400: z.ZodObject<{
1548
+ errors: z.ZodArray<z.ZodObject<{
1549
+ status: z.ZodString;
1550
+ title: z.ZodString;
1551
+ detail: z.ZodOptional<z.ZodString>;
1552
+ meta: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
1553
+ }, "strip", z.ZodTypeAny, {
1554
+ status: string;
1555
+ title: string;
1556
+ detail?: string | undefined;
1557
+ meta?: Record<string, unknown> | undefined;
1558
+ }, {
1559
+ status: string;
1560
+ title: string;
1561
+ detail?: string | undefined;
1562
+ meta?: Record<string, unknown> | undefined;
1563
+ }>, "many">;
1564
+ }, "strip", z.ZodTypeAny, {
1565
+ errors: {
1566
+ status: string;
1567
+ title: string;
1568
+ detail?: string | undefined;
1569
+ meta?: Record<string, unknown> | undefined;
1570
+ }[];
1571
+ }, {
1572
+ errors: {
1573
+ status: string;
1574
+ title: string;
1575
+ detail?: string | undefined;
1576
+ meta?: Record<string, unknown> | undefined;
1577
+ }[];
1578
+ }>;
1579
+ 401: z.ZodObject<{
1580
+ errors: z.ZodArray<z.ZodObject<{
1581
+ status: z.ZodString;
1582
+ title: z.ZodString;
1583
+ detail: z.ZodOptional<z.ZodString>;
1584
+ meta: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
1585
+ }, "strip", z.ZodTypeAny, {
1586
+ status: string;
1587
+ title: string;
1588
+ detail?: string | undefined;
1589
+ meta?: Record<string, unknown> | undefined;
1590
+ }, {
1591
+ status: string;
1592
+ title: string;
1593
+ detail?: string | undefined;
1594
+ meta?: Record<string, unknown> | undefined;
1595
+ }>, "many">;
1596
+ }, "strip", z.ZodTypeAny, {
1597
+ errors: {
1598
+ status: string;
1599
+ title: string;
1600
+ detail?: string | undefined;
1601
+ meta?: Record<string, unknown> | undefined;
1602
+ }[];
1603
+ }, {
1604
+ errors: {
1605
+ status: string;
1606
+ title: string;
1607
+ detail?: string | undefined;
1608
+ meta?: Record<string, unknown> | undefined;
1609
+ }[];
1610
+ }>;
1611
+ };
1612
+ };
1613
+ setupMfa: {
1614
+ summary: "Get MFA setup information (QR code, secret)";
1615
+ method: "GET";
1616
+ path: "/mfa/setup";
1617
+ responses: {
1618
+ 200: z.ZodObject<{
1619
+ data: z.ZodObject<{
1620
+ type: z.ZodLiteral<"mfa-setup">;
1621
+ id: z.ZodString;
1622
+ attributes: z.ZodObject<{
1623
+ secret: z.ZodString;
1624
+ qrCode: z.ZodString;
1625
+ backupCodes: z.ZodArray<z.ZodString, "many">;
1626
+ }, "strip", z.ZodTypeAny, {
1627
+ secret: string;
1628
+ qrCode: string;
1629
+ backupCodes: string[];
1630
+ }, {
1631
+ secret: string;
1632
+ qrCode: string;
1633
+ backupCodes: string[];
1634
+ }>;
1635
+ }, "strip", z.ZodTypeAny, {
1636
+ id: string;
1637
+ type: "mfa-setup";
1638
+ attributes: {
1639
+ secret: string;
1640
+ qrCode: string;
1641
+ backupCodes: string[];
1642
+ };
1643
+ }, {
1644
+ id: string;
1645
+ type: "mfa-setup";
1646
+ attributes: {
1647
+ secret: string;
1648
+ qrCode: string;
1649
+ backupCodes: string[];
1650
+ };
1651
+ }>;
1652
+ meta: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
1653
+ links: z.ZodOptional<z.ZodObject<{
1654
+ self: z.ZodString;
1655
+ first: z.ZodOptional<z.ZodString>;
1656
+ last: z.ZodOptional<z.ZodString>;
1657
+ prev: z.ZodOptional<z.ZodString>;
1658
+ next: z.ZodOptional<z.ZodString>;
1659
+ }, "strip", z.ZodTypeAny, {
1660
+ self: string;
1661
+ first?: string | undefined;
1662
+ last?: string | undefined;
1663
+ prev?: string | undefined;
1664
+ next?: string | undefined;
1665
+ }, {
1666
+ self: string;
1667
+ first?: string | undefined;
1668
+ last?: string | undefined;
1669
+ prev?: string | undefined;
1670
+ next?: string | undefined;
1671
+ }>>;
1672
+ errors: z.ZodOptional<z.ZodArray<z.ZodObject<{
1673
+ status: z.ZodString;
1674
+ title: z.ZodString;
1675
+ detail: z.ZodOptional<z.ZodString>;
1676
+ meta: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
1677
+ }, "strip", z.ZodTypeAny, {
1678
+ status: string;
1679
+ title: string;
1680
+ detail?: string | undefined;
1681
+ meta?: Record<string, unknown> | undefined;
1682
+ }, {
1683
+ status: string;
1684
+ title: string;
1685
+ detail?: string | undefined;
1686
+ meta?: Record<string, unknown> | undefined;
1687
+ }>, "many">>;
1688
+ }, "strip", z.ZodTypeAny, {
1689
+ data: {
1690
+ id: string;
1691
+ type: "mfa-setup";
1692
+ attributes: {
1693
+ secret: string;
1694
+ qrCode: string;
1695
+ backupCodes: string[];
1696
+ };
1697
+ };
1698
+ meta?: Record<string, unknown> | undefined;
1699
+ links?: {
1700
+ self: string;
1701
+ first?: string | undefined;
1702
+ last?: string | undefined;
1703
+ prev?: string | undefined;
1704
+ next?: string | undefined;
1705
+ } | undefined;
1706
+ errors?: {
1707
+ status: string;
1708
+ title: string;
1709
+ detail?: string | undefined;
1710
+ meta?: Record<string, unknown> | undefined;
1711
+ }[] | undefined;
1712
+ }, {
1713
+ data: {
1714
+ id: string;
1715
+ type: "mfa-setup";
1716
+ attributes: {
1717
+ secret: string;
1718
+ qrCode: string;
1719
+ backupCodes: string[];
1720
+ };
1721
+ };
1722
+ meta?: Record<string, unknown> | undefined;
1723
+ links?: {
1724
+ self: string;
1725
+ first?: string | undefined;
1726
+ last?: string | undefined;
1727
+ prev?: string | undefined;
1728
+ next?: string | undefined;
1729
+ } | undefined;
1730
+ errors?: {
1731
+ status: string;
1732
+ title: string;
1733
+ detail?: string | undefined;
1734
+ meta?: Record<string, unknown> | undefined;
1735
+ }[] | undefined;
1736
+ }>;
1737
+ 401: z.ZodObject<{
1738
+ errors: z.ZodArray<z.ZodObject<{
1739
+ status: z.ZodString;
1740
+ title: z.ZodString;
1741
+ detail: z.ZodOptional<z.ZodString>;
1742
+ meta: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
1743
+ }, "strip", z.ZodTypeAny, {
1744
+ status: string;
1745
+ title: string;
1746
+ detail?: string | undefined;
1747
+ meta?: Record<string, unknown> | undefined;
1748
+ }, {
1749
+ status: string;
1750
+ title: string;
1751
+ detail?: string | undefined;
1752
+ meta?: Record<string, unknown> | undefined;
1753
+ }>, "many">;
1754
+ }, "strip", z.ZodTypeAny, {
1755
+ errors: {
1756
+ status: string;
1757
+ title: string;
1758
+ detail?: string | undefined;
1759
+ meta?: Record<string, unknown> | undefined;
1760
+ }[];
1761
+ }, {
1762
+ errors: {
1763
+ status: string;
1764
+ title: string;
1765
+ detail?: string | undefined;
1766
+ meta?: Record<string, unknown> | undefined;
1767
+ }[];
1768
+ }>;
1769
+ };
1770
+ };
1771
+ confirmMfa: {
1772
+ summary: "Confirm and enable MFA";
1773
+ method: "POST";
1774
+ body: z.ZodObject<{
1775
+ secret: z.ZodString;
1776
+ token: z.ZodString;
1777
+ }, "strip", z.ZodTypeAny, {
1778
+ secret: string;
1779
+ token: string;
1780
+ }, {
1781
+ secret: string;
1782
+ token: string;
1783
+ }>;
1784
+ path: "/mfa/confirm";
1785
+ responses: {
1786
+ 200: z.ZodObject<{
1787
+ data: z.ZodObject<{
1788
+ type: z.ZodLiteral<"mfa-confirm">;
1789
+ id: z.ZodString;
1790
+ attributes: z.ZodObject<{
1791
+ message: z.ZodString;
1792
+ backupCodes: z.ZodArray<z.ZodString, "many">;
1793
+ }, "strip", z.ZodTypeAny, {
1794
+ message: string;
1795
+ backupCodes: string[];
1796
+ }, {
1797
+ message: string;
1798
+ backupCodes: string[];
1799
+ }>;
1800
+ }, "strip", z.ZodTypeAny, {
1801
+ id: string;
1802
+ type: "mfa-confirm";
1803
+ attributes: {
1804
+ message: string;
1805
+ backupCodes: string[];
1806
+ };
1807
+ }, {
1808
+ id: string;
1809
+ type: "mfa-confirm";
1810
+ attributes: {
1811
+ message: string;
1812
+ backupCodes: string[];
1813
+ };
1814
+ }>;
1815
+ meta: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
1816
+ links: z.ZodOptional<z.ZodObject<{
1817
+ self: z.ZodString;
1818
+ first: z.ZodOptional<z.ZodString>;
1819
+ last: z.ZodOptional<z.ZodString>;
1820
+ prev: z.ZodOptional<z.ZodString>;
1821
+ next: z.ZodOptional<z.ZodString>;
1822
+ }, "strip", z.ZodTypeAny, {
1823
+ self: string;
1824
+ first?: string | undefined;
1825
+ last?: string | undefined;
1826
+ prev?: string | undefined;
1827
+ next?: string | undefined;
1828
+ }, {
1829
+ self: string;
1830
+ first?: string | undefined;
1831
+ last?: string | undefined;
1832
+ prev?: string | undefined;
1833
+ next?: string | undefined;
1834
+ }>>;
1835
+ errors: z.ZodOptional<z.ZodArray<z.ZodObject<{
1836
+ status: z.ZodString;
1837
+ title: z.ZodString;
1838
+ detail: z.ZodOptional<z.ZodString>;
1839
+ meta: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
1840
+ }, "strip", z.ZodTypeAny, {
1841
+ status: string;
1842
+ title: string;
1843
+ detail?: string | undefined;
1844
+ meta?: Record<string, unknown> | undefined;
1845
+ }, {
1846
+ status: string;
1847
+ title: string;
1848
+ detail?: string | undefined;
1849
+ meta?: Record<string, unknown> | undefined;
1850
+ }>, "many">>;
1851
+ }, "strip", z.ZodTypeAny, {
1852
+ data: {
1853
+ id: string;
1854
+ type: "mfa-confirm";
1855
+ attributes: {
1856
+ message: string;
1857
+ backupCodes: string[];
1858
+ };
1859
+ };
1860
+ meta?: Record<string, unknown> | undefined;
1861
+ links?: {
1862
+ self: string;
1863
+ first?: string | undefined;
1864
+ last?: string | undefined;
1865
+ prev?: string | undefined;
1866
+ next?: string | undefined;
1867
+ } | undefined;
1868
+ errors?: {
1869
+ status: string;
1870
+ title: string;
1871
+ detail?: string | undefined;
1872
+ meta?: Record<string, unknown> | undefined;
1873
+ }[] | undefined;
1874
+ }, {
1875
+ data: {
1876
+ id: string;
1877
+ type: "mfa-confirm";
1878
+ attributes: {
1879
+ message: string;
1880
+ backupCodes: string[];
1881
+ };
1882
+ };
1883
+ meta?: Record<string, unknown> | undefined;
1884
+ links?: {
1885
+ self: string;
1886
+ first?: string | undefined;
1887
+ last?: string | undefined;
1888
+ prev?: string | undefined;
1889
+ next?: string | undefined;
1890
+ } | undefined;
1891
+ errors?: {
1892
+ status: string;
1893
+ title: string;
1894
+ detail?: string | undefined;
1895
+ meta?: Record<string, unknown> | undefined;
1896
+ }[] | undefined;
1897
+ }>;
1898
+ 400: z.ZodObject<{
1899
+ errors: z.ZodArray<z.ZodObject<{
1900
+ status: z.ZodString;
1901
+ title: z.ZodString;
1902
+ detail: z.ZodOptional<z.ZodString>;
1903
+ meta: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
1904
+ }, "strip", z.ZodTypeAny, {
1905
+ status: string;
1906
+ title: string;
1907
+ detail?: string | undefined;
1908
+ meta?: Record<string, unknown> | undefined;
1909
+ }, {
1910
+ status: string;
1911
+ title: string;
1912
+ detail?: string | undefined;
1913
+ meta?: Record<string, unknown> | undefined;
1914
+ }>, "many">;
1915
+ }, "strip", z.ZodTypeAny, {
1916
+ errors: {
1917
+ status: string;
1918
+ title: string;
1919
+ detail?: string | undefined;
1920
+ meta?: Record<string, unknown> | undefined;
1921
+ }[];
1922
+ }, {
1923
+ errors: {
1924
+ status: string;
1925
+ title: string;
1926
+ detail?: string | undefined;
1927
+ meta?: Record<string, unknown> | undefined;
1928
+ }[];
1929
+ }>;
1930
+ 401: z.ZodObject<{
1931
+ errors: z.ZodArray<z.ZodObject<{
1932
+ status: z.ZodString;
1933
+ title: z.ZodString;
1934
+ detail: z.ZodOptional<z.ZodString>;
1935
+ meta: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
1936
+ }, "strip", z.ZodTypeAny, {
1937
+ status: string;
1938
+ title: string;
1939
+ detail?: string | undefined;
1940
+ meta?: Record<string, unknown> | undefined;
1941
+ }, {
1942
+ status: string;
1943
+ title: string;
1944
+ detail?: string | undefined;
1945
+ meta?: Record<string, unknown> | undefined;
1946
+ }>, "many">;
1947
+ }, "strip", z.ZodTypeAny, {
1948
+ errors: {
1949
+ status: string;
1950
+ title: string;
1951
+ detail?: string | undefined;
1952
+ meta?: Record<string, unknown> | undefined;
1953
+ }[];
1954
+ }, {
1955
+ errors: {
1956
+ status: string;
1957
+ title: string;
1958
+ detail?: string | undefined;
1959
+ meta?: Record<string, unknown> | undefined;
1960
+ }[];
1961
+ }>;
1962
+ };
1963
+ };
1964
+ disableMfa: {
1965
+ summary: "Disable MFA for user account";
1966
+ method: "DELETE";
1967
+ body: z.ZodObject<{
1968
+ password: z.ZodString;
1969
+ mfaCode: z.ZodString;
1970
+ }, "strip", z.ZodTypeAny, {
1971
+ password: string;
1972
+ mfaCode: string;
1973
+ }, {
1974
+ password: string;
1975
+ mfaCode: string;
1976
+ }>;
1977
+ path: "/mfa";
1978
+ responses: {
1979
+ 200: z.ZodObject<{
1980
+ data: z.ZodObject<{
1981
+ type: z.ZodLiteral<"messages">;
1982
+ id: z.ZodString;
1983
+ attributes: z.ZodObject<{
1984
+ message: z.ZodString;
1985
+ }, "strip", z.ZodTypeAny, {
1986
+ message: string;
1987
+ }, {
1988
+ message: string;
1989
+ }>;
1990
+ }, "strip", z.ZodTypeAny, {
1991
+ id: string;
1992
+ type: "messages";
1993
+ attributes: {
1994
+ message: string;
1995
+ };
1996
+ }, {
1997
+ id: string;
1998
+ type: "messages";
1999
+ attributes: {
2000
+ message: string;
2001
+ };
2002
+ }>;
2003
+ meta: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
2004
+ links: z.ZodOptional<z.ZodObject<{
2005
+ self: z.ZodString;
2006
+ first: z.ZodOptional<z.ZodString>;
2007
+ last: z.ZodOptional<z.ZodString>;
2008
+ prev: z.ZodOptional<z.ZodString>;
2009
+ next: z.ZodOptional<z.ZodString>;
2010
+ }, "strip", z.ZodTypeAny, {
2011
+ self: string;
2012
+ first?: string | undefined;
2013
+ last?: string | undefined;
2014
+ prev?: string | undefined;
2015
+ next?: string | undefined;
2016
+ }, {
2017
+ self: string;
2018
+ first?: string | undefined;
2019
+ last?: string | undefined;
2020
+ prev?: string | undefined;
2021
+ next?: string | undefined;
2022
+ }>>;
2023
+ errors: z.ZodOptional<z.ZodArray<z.ZodObject<{
2024
+ status: z.ZodString;
2025
+ title: z.ZodString;
2026
+ detail: z.ZodOptional<z.ZodString>;
2027
+ meta: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
2028
+ }, "strip", z.ZodTypeAny, {
2029
+ status: string;
2030
+ title: string;
2031
+ detail?: string | undefined;
2032
+ meta?: Record<string, unknown> | undefined;
2033
+ }, {
2034
+ status: string;
2035
+ title: string;
2036
+ detail?: string | undefined;
2037
+ meta?: Record<string, unknown> | undefined;
2038
+ }>, "many">>;
2039
+ }, "strip", z.ZodTypeAny, {
2040
+ data: {
2041
+ id: string;
2042
+ type: "messages";
2043
+ attributes: {
2044
+ message: string;
2045
+ };
2046
+ };
2047
+ meta?: Record<string, unknown> | undefined;
2048
+ links?: {
2049
+ self: string;
2050
+ first?: string | undefined;
2051
+ last?: string | undefined;
2052
+ prev?: string | undefined;
2053
+ next?: string | undefined;
2054
+ } | undefined;
2055
+ errors?: {
2056
+ status: string;
2057
+ title: string;
2058
+ detail?: string | undefined;
2059
+ meta?: Record<string, unknown> | undefined;
2060
+ }[] | undefined;
2061
+ }, {
2062
+ data: {
2063
+ id: string;
2064
+ type: "messages";
2065
+ attributes: {
2066
+ message: string;
2067
+ };
2068
+ };
2069
+ meta?: Record<string, unknown> | undefined;
2070
+ links?: {
2071
+ self: string;
2072
+ first?: string | undefined;
2073
+ last?: string | undefined;
2074
+ prev?: string | undefined;
2075
+ next?: string | undefined;
2076
+ } | undefined;
2077
+ errors?: {
2078
+ status: string;
2079
+ title: string;
2080
+ detail?: string | undefined;
2081
+ meta?: Record<string, unknown> | undefined;
2082
+ }[] | undefined;
2083
+ }>;
2084
+ 400: z.ZodObject<{
2085
+ errors: z.ZodArray<z.ZodObject<{
2086
+ status: z.ZodString;
2087
+ title: z.ZodString;
2088
+ detail: z.ZodOptional<z.ZodString>;
2089
+ meta: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
2090
+ }, "strip", z.ZodTypeAny, {
2091
+ status: string;
2092
+ title: string;
2093
+ detail?: string | undefined;
2094
+ meta?: Record<string, unknown> | undefined;
2095
+ }, {
2096
+ status: string;
2097
+ title: string;
2098
+ detail?: string | undefined;
2099
+ meta?: Record<string, unknown> | undefined;
2100
+ }>, "many">;
2101
+ }, "strip", z.ZodTypeAny, {
2102
+ errors: {
2103
+ status: string;
2104
+ title: string;
2105
+ detail?: string | undefined;
2106
+ meta?: Record<string, unknown> | undefined;
2107
+ }[];
2108
+ }, {
2109
+ errors: {
2110
+ status: string;
2111
+ title: string;
2112
+ detail?: string | undefined;
2113
+ meta?: Record<string, unknown> | undefined;
2114
+ }[];
2115
+ }>;
2116
+ 401: z.ZodObject<{
2117
+ errors: z.ZodArray<z.ZodObject<{
2118
+ status: z.ZodString;
2119
+ title: z.ZodString;
2120
+ detail: z.ZodOptional<z.ZodString>;
2121
+ meta: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
2122
+ }, "strip", z.ZodTypeAny, {
2123
+ status: string;
2124
+ title: string;
2125
+ detail?: string | undefined;
2126
+ meta?: Record<string, unknown> | undefined;
2127
+ }, {
2128
+ status: string;
2129
+ title: string;
2130
+ detail?: string | undefined;
2131
+ meta?: Record<string, unknown> | undefined;
2132
+ }>, "many">;
2133
+ }, "strip", z.ZodTypeAny, {
2134
+ errors: {
2135
+ status: string;
2136
+ title: string;
2137
+ detail?: string | undefined;
2138
+ meta?: Record<string, unknown> | undefined;
2139
+ }[];
2140
+ }, {
2141
+ errors: {
2142
+ status: string;
2143
+ title: string;
2144
+ detail?: string | undefined;
2145
+ meta?: Record<string, unknown> | undefined;
2146
+ }[];
2147
+ }>;
2148
+ };
2149
+ };
2150
+ forgotPassword: {
2151
+ summary: "Request password reset email";
2152
+ method: "POST";
2153
+ body: z.ZodObject<{
2154
+ email: z.ZodString;
2155
+ }, "strip", z.ZodTypeAny, {
2156
+ email: string;
2157
+ }, {
2158
+ email: string;
2159
+ }>;
2160
+ path: "/forgot-password";
2161
+ responses: {
2162
+ 200: z.ZodObject<{
2163
+ data: z.ZodObject<{
2164
+ type: z.ZodLiteral<"messages">;
2165
+ id: z.ZodString;
2166
+ attributes: z.ZodObject<{
2167
+ message: z.ZodString;
2168
+ }, "strip", z.ZodTypeAny, {
2169
+ message: string;
2170
+ }, {
2171
+ message: string;
2172
+ }>;
2173
+ }, "strip", z.ZodTypeAny, {
2174
+ id: string;
2175
+ type: "messages";
2176
+ attributes: {
2177
+ message: string;
2178
+ };
2179
+ }, {
2180
+ id: string;
2181
+ type: "messages";
2182
+ attributes: {
2183
+ message: string;
2184
+ };
2185
+ }>;
2186
+ meta: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
2187
+ links: z.ZodOptional<z.ZodObject<{
2188
+ self: z.ZodString;
2189
+ first: z.ZodOptional<z.ZodString>;
2190
+ last: z.ZodOptional<z.ZodString>;
2191
+ prev: z.ZodOptional<z.ZodString>;
2192
+ next: z.ZodOptional<z.ZodString>;
2193
+ }, "strip", z.ZodTypeAny, {
2194
+ self: string;
2195
+ first?: string | undefined;
2196
+ last?: string | undefined;
2197
+ prev?: string | undefined;
2198
+ next?: string | undefined;
2199
+ }, {
2200
+ self: string;
2201
+ first?: string | undefined;
2202
+ last?: string | undefined;
2203
+ prev?: string | undefined;
2204
+ next?: string | undefined;
2205
+ }>>;
2206
+ errors: z.ZodOptional<z.ZodArray<z.ZodObject<{
2207
+ status: z.ZodString;
2208
+ title: z.ZodString;
2209
+ detail: z.ZodOptional<z.ZodString>;
2210
+ meta: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
2211
+ }, "strip", z.ZodTypeAny, {
2212
+ status: string;
2213
+ title: string;
2214
+ detail?: string | undefined;
2215
+ meta?: Record<string, unknown> | undefined;
2216
+ }, {
2217
+ status: string;
2218
+ title: string;
2219
+ detail?: string | undefined;
2220
+ meta?: Record<string, unknown> | undefined;
2221
+ }>, "many">>;
2222
+ }, "strip", z.ZodTypeAny, {
2223
+ data: {
2224
+ id: string;
2225
+ type: "messages";
2226
+ attributes: {
2227
+ message: string;
2228
+ };
2229
+ };
2230
+ meta?: Record<string, unknown> | undefined;
2231
+ links?: {
2232
+ self: string;
2233
+ first?: string | undefined;
2234
+ last?: string | undefined;
2235
+ prev?: string | undefined;
2236
+ next?: string | undefined;
2237
+ } | undefined;
2238
+ errors?: {
2239
+ status: string;
2240
+ title: string;
2241
+ detail?: string | undefined;
2242
+ meta?: Record<string, unknown> | undefined;
2243
+ }[] | undefined;
2244
+ }, {
2245
+ data: {
2246
+ id: string;
2247
+ type: "messages";
2248
+ attributes: {
2249
+ message: string;
2250
+ };
2251
+ };
2252
+ meta?: Record<string, unknown> | undefined;
2253
+ links?: {
2254
+ self: string;
2255
+ first?: string | undefined;
2256
+ last?: string | undefined;
2257
+ prev?: string | undefined;
2258
+ next?: string | undefined;
2259
+ } | undefined;
2260
+ errors?: {
2261
+ status: string;
2262
+ title: string;
2263
+ detail?: string | undefined;
2264
+ meta?: Record<string, unknown> | undefined;
2265
+ }[] | undefined;
2266
+ }>;
2267
+ 400: z.ZodObject<{
2268
+ errors: z.ZodArray<z.ZodObject<{
2269
+ status: z.ZodString;
2270
+ title: z.ZodString;
2271
+ detail: z.ZodOptional<z.ZodString>;
2272
+ meta: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
2273
+ }, "strip", z.ZodTypeAny, {
2274
+ status: string;
2275
+ title: string;
2276
+ detail?: string | undefined;
2277
+ meta?: Record<string, unknown> | undefined;
2278
+ }, {
2279
+ status: string;
2280
+ title: string;
2281
+ detail?: string | undefined;
2282
+ meta?: Record<string, unknown> | undefined;
2283
+ }>, "many">;
2284
+ }, "strip", z.ZodTypeAny, {
2285
+ errors: {
2286
+ status: string;
2287
+ title: string;
2288
+ detail?: string | undefined;
2289
+ meta?: Record<string, unknown> | undefined;
2290
+ }[];
2291
+ }, {
2292
+ errors: {
2293
+ status: string;
2294
+ title: string;
2295
+ detail?: string | undefined;
2296
+ meta?: Record<string, unknown> | undefined;
2297
+ }[];
2298
+ }>;
2299
+ };
2300
+ };
2301
+ resetPassword: {
2302
+ summary: "Reset password using token";
2303
+ method: "POST";
2304
+ body: z.ZodObject<{
2305
+ token: z.ZodString;
2306
+ newPassword: z.ZodString;
2307
+ }, "strip", z.ZodTypeAny, {
2308
+ token: string;
2309
+ newPassword: string;
2310
+ }, {
2311
+ token: string;
2312
+ newPassword: string;
2313
+ }>;
2314
+ path: "/reset-password";
2315
+ responses: {
2316
+ 200: z.ZodObject<{
2317
+ data: z.ZodObject<{
2318
+ type: z.ZodLiteral<"messages">;
2319
+ id: z.ZodString;
2320
+ attributes: z.ZodObject<{
2321
+ message: z.ZodString;
2322
+ }, "strip", z.ZodTypeAny, {
2323
+ message: string;
2324
+ }, {
2325
+ message: string;
2326
+ }>;
2327
+ }, "strip", z.ZodTypeAny, {
2328
+ id: string;
2329
+ type: "messages";
2330
+ attributes: {
2331
+ message: string;
2332
+ };
2333
+ }, {
2334
+ id: string;
2335
+ type: "messages";
2336
+ attributes: {
2337
+ message: string;
2338
+ };
2339
+ }>;
2340
+ meta: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
2341
+ links: z.ZodOptional<z.ZodObject<{
2342
+ self: z.ZodString;
2343
+ first: z.ZodOptional<z.ZodString>;
2344
+ last: z.ZodOptional<z.ZodString>;
2345
+ prev: z.ZodOptional<z.ZodString>;
2346
+ next: z.ZodOptional<z.ZodString>;
2347
+ }, "strip", z.ZodTypeAny, {
2348
+ self: string;
2349
+ first?: string | undefined;
2350
+ last?: string | undefined;
2351
+ prev?: string | undefined;
2352
+ next?: string | undefined;
2353
+ }, {
2354
+ self: string;
2355
+ first?: string | undefined;
2356
+ last?: string | undefined;
2357
+ prev?: string | undefined;
2358
+ next?: string | undefined;
2359
+ }>>;
2360
+ errors: z.ZodOptional<z.ZodArray<z.ZodObject<{
2361
+ status: z.ZodString;
2362
+ title: z.ZodString;
2363
+ detail: z.ZodOptional<z.ZodString>;
2364
+ meta: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
2365
+ }, "strip", z.ZodTypeAny, {
2366
+ status: string;
2367
+ title: string;
2368
+ detail?: string | undefined;
2369
+ meta?: Record<string, unknown> | undefined;
2370
+ }, {
2371
+ status: string;
2372
+ title: string;
2373
+ detail?: string | undefined;
2374
+ meta?: Record<string, unknown> | undefined;
2375
+ }>, "many">>;
2376
+ }, "strip", z.ZodTypeAny, {
2377
+ data: {
2378
+ id: string;
2379
+ type: "messages";
2380
+ attributes: {
2381
+ message: string;
2382
+ };
2383
+ };
2384
+ meta?: Record<string, unknown> | undefined;
2385
+ links?: {
2386
+ self: string;
2387
+ first?: string | undefined;
2388
+ last?: string | undefined;
2389
+ prev?: string | undefined;
2390
+ next?: string | undefined;
2391
+ } | undefined;
2392
+ errors?: {
2393
+ status: string;
2394
+ title: string;
2395
+ detail?: string | undefined;
2396
+ meta?: Record<string, unknown> | undefined;
2397
+ }[] | undefined;
2398
+ }, {
2399
+ data: {
2400
+ id: string;
2401
+ type: "messages";
2402
+ attributes: {
2403
+ message: string;
2404
+ };
2405
+ };
2406
+ meta?: Record<string, unknown> | undefined;
2407
+ links?: {
2408
+ self: string;
2409
+ first?: string | undefined;
2410
+ last?: string | undefined;
2411
+ prev?: string | undefined;
2412
+ next?: string | undefined;
2413
+ } | undefined;
2414
+ errors?: {
2415
+ status: string;
2416
+ title: string;
2417
+ detail?: string | undefined;
2418
+ meta?: Record<string, unknown> | undefined;
2419
+ }[] | undefined;
2420
+ }>;
2421
+ 400: z.ZodObject<{
2422
+ errors: z.ZodArray<z.ZodObject<{
2423
+ status: z.ZodString;
2424
+ title: z.ZodString;
2425
+ detail: z.ZodOptional<z.ZodString>;
2426
+ meta: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
2427
+ }, "strip", z.ZodTypeAny, {
2428
+ status: string;
2429
+ title: string;
2430
+ detail?: string | undefined;
2431
+ meta?: Record<string, unknown> | undefined;
2432
+ }, {
2433
+ status: string;
2434
+ title: string;
2435
+ detail?: string | undefined;
2436
+ meta?: Record<string, unknown> | undefined;
2437
+ }>, "many">;
2438
+ }, "strip", z.ZodTypeAny, {
2439
+ errors: {
2440
+ status: string;
2441
+ title: string;
2442
+ detail?: string | undefined;
2443
+ meta?: Record<string, unknown> | undefined;
2444
+ }[];
2445
+ }, {
2446
+ errors: {
2447
+ status: string;
2448
+ title: string;
2449
+ detail?: string | undefined;
2450
+ meta?: Record<string, unknown> | undefined;
2451
+ }[];
2452
+ }>;
2453
+ 401: z.ZodObject<{
2454
+ errors: z.ZodArray<z.ZodObject<{
2455
+ status: z.ZodString;
2456
+ title: z.ZodString;
2457
+ detail: z.ZodOptional<z.ZodString>;
2458
+ meta: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
2459
+ }, "strip", z.ZodTypeAny, {
2460
+ status: string;
2461
+ title: string;
2462
+ detail?: string | undefined;
2463
+ meta?: Record<string, unknown> | undefined;
2464
+ }, {
2465
+ status: string;
2466
+ title: string;
2467
+ detail?: string | undefined;
2468
+ meta?: Record<string, unknown> | undefined;
2469
+ }>, "many">;
2470
+ }, "strip", z.ZodTypeAny, {
2471
+ errors: {
2472
+ status: string;
2473
+ title: string;
2474
+ detail?: string | undefined;
2475
+ meta?: Record<string, unknown> | undefined;
2476
+ }[];
2477
+ }, {
2478
+ errors: {
2479
+ status: string;
2480
+ title: string;
2481
+ detail?: string | undefined;
2482
+ meta?: Record<string, unknown> | undefined;
2483
+ }[];
2484
+ }>;
2485
+ };
2486
+ };
2487
+ verifyEmail: {
2488
+ summary: "Verify email address with token";
2489
+ method: "POST";
2490
+ body: z.ZodObject<{
2491
+ token: z.ZodString;
2492
+ }, "strip", z.ZodTypeAny, {
2493
+ token: string;
2494
+ }, {
2495
+ token: string;
2496
+ }>;
2497
+ path: "/verify-email";
2498
+ responses: {
2499
+ 200: z.ZodObject<{
2500
+ data: z.ZodObject<{
2501
+ type: z.ZodLiteral<"messages">;
2502
+ id: z.ZodString;
2503
+ attributes: z.ZodObject<{
2504
+ message: z.ZodString;
2505
+ }, "strip", z.ZodTypeAny, {
2506
+ message: string;
2507
+ }, {
2508
+ message: string;
2509
+ }>;
2510
+ }, "strip", z.ZodTypeAny, {
2511
+ id: string;
2512
+ type: "messages";
2513
+ attributes: {
2514
+ message: string;
2515
+ };
2516
+ }, {
2517
+ id: string;
2518
+ type: "messages";
2519
+ attributes: {
2520
+ message: string;
2521
+ };
2522
+ }>;
2523
+ meta: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
2524
+ links: z.ZodOptional<z.ZodObject<{
2525
+ self: z.ZodString;
2526
+ first: z.ZodOptional<z.ZodString>;
2527
+ last: z.ZodOptional<z.ZodString>;
2528
+ prev: z.ZodOptional<z.ZodString>;
2529
+ next: z.ZodOptional<z.ZodString>;
2530
+ }, "strip", z.ZodTypeAny, {
2531
+ self: string;
2532
+ first?: string | undefined;
2533
+ last?: string | undefined;
2534
+ prev?: string | undefined;
2535
+ next?: string | undefined;
2536
+ }, {
2537
+ self: string;
2538
+ first?: string | undefined;
2539
+ last?: string | undefined;
2540
+ prev?: string | undefined;
2541
+ next?: string | undefined;
2542
+ }>>;
2543
+ errors: z.ZodOptional<z.ZodArray<z.ZodObject<{
2544
+ status: z.ZodString;
2545
+ title: z.ZodString;
2546
+ detail: z.ZodOptional<z.ZodString>;
2547
+ meta: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
2548
+ }, "strip", z.ZodTypeAny, {
2549
+ status: string;
2550
+ title: string;
2551
+ detail?: string | undefined;
2552
+ meta?: Record<string, unknown> | undefined;
2553
+ }, {
2554
+ status: string;
2555
+ title: string;
2556
+ detail?: string | undefined;
2557
+ meta?: Record<string, unknown> | undefined;
2558
+ }>, "many">>;
2559
+ }, "strip", z.ZodTypeAny, {
2560
+ data: {
2561
+ id: string;
2562
+ type: "messages";
2563
+ attributes: {
2564
+ message: string;
2565
+ };
2566
+ };
2567
+ meta?: Record<string, unknown> | undefined;
2568
+ links?: {
2569
+ self: string;
2570
+ first?: string | undefined;
2571
+ last?: string | undefined;
2572
+ prev?: string | undefined;
2573
+ next?: string | undefined;
2574
+ } | undefined;
2575
+ errors?: {
2576
+ status: string;
2577
+ title: string;
2578
+ detail?: string | undefined;
2579
+ meta?: Record<string, unknown> | undefined;
2580
+ }[] | undefined;
2581
+ }, {
2582
+ data: {
2583
+ id: string;
2584
+ type: "messages";
2585
+ attributes: {
2586
+ message: string;
2587
+ };
2588
+ };
2589
+ meta?: Record<string, unknown> | undefined;
2590
+ links?: {
2591
+ self: string;
2592
+ first?: string | undefined;
2593
+ last?: string | undefined;
2594
+ prev?: string | undefined;
2595
+ next?: string | undefined;
2596
+ } | undefined;
2597
+ errors?: {
2598
+ status: string;
2599
+ title: string;
2600
+ detail?: string | undefined;
2601
+ meta?: Record<string, unknown> | undefined;
2602
+ }[] | undefined;
2603
+ }>;
2604
+ 400: z.ZodObject<{
2605
+ errors: z.ZodArray<z.ZodObject<{
2606
+ status: z.ZodString;
2607
+ title: z.ZodString;
2608
+ detail: z.ZodOptional<z.ZodString>;
2609
+ meta: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
2610
+ }, "strip", z.ZodTypeAny, {
2611
+ status: string;
2612
+ title: string;
2613
+ detail?: string | undefined;
2614
+ meta?: Record<string, unknown> | undefined;
2615
+ }, {
2616
+ status: string;
2617
+ title: string;
2618
+ detail?: string | undefined;
2619
+ meta?: Record<string, unknown> | undefined;
2620
+ }>, "many">;
2621
+ }, "strip", z.ZodTypeAny, {
2622
+ errors: {
2623
+ status: string;
2624
+ title: string;
2625
+ detail?: string | undefined;
2626
+ meta?: Record<string, unknown> | undefined;
2627
+ }[];
2628
+ }, {
2629
+ errors: {
2630
+ status: string;
2631
+ title: string;
2632
+ detail?: string | undefined;
2633
+ meta?: Record<string, unknown> | undefined;
2634
+ }[];
2635
+ }>;
2636
+ 401: z.ZodObject<{
2637
+ errors: z.ZodArray<z.ZodObject<{
2638
+ status: z.ZodString;
2639
+ title: z.ZodString;
2640
+ detail: z.ZodOptional<z.ZodString>;
2641
+ meta: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
2642
+ }, "strip", z.ZodTypeAny, {
2643
+ status: string;
2644
+ title: string;
2645
+ detail?: string | undefined;
2646
+ meta?: Record<string, unknown> | undefined;
2647
+ }, {
2648
+ status: string;
2649
+ title: string;
2650
+ detail?: string | undefined;
2651
+ meta?: Record<string, unknown> | undefined;
2652
+ }>, "many">;
2653
+ }, "strip", z.ZodTypeAny, {
2654
+ errors: {
2655
+ status: string;
2656
+ title: string;
2657
+ detail?: string | undefined;
2658
+ meta?: Record<string, unknown> | undefined;
2659
+ }[];
2660
+ }, {
2661
+ errors: {
2662
+ status: string;
2663
+ title: string;
2664
+ detail?: string | undefined;
2665
+ meta?: Record<string, unknown> | undefined;
2666
+ }[];
2667
+ }>;
2668
+ 409: z.ZodObject<{
2669
+ errors: z.ZodArray<z.ZodObject<{
2670
+ status: z.ZodString;
2671
+ title: z.ZodString;
2672
+ detail: z.ZodOptional<z.ZodString>;
2673
+ meta: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
2674
+ }, "strip", z.ZodTypeAny, {
2675
+ status: string;
2676
+ title: string;
2677
+ detail?: string | undefined;
2678
+ meta?: Record<string, unknown> | undefined;
2679
+ }, {
2680
+ status: string;
2681
+ title: string;
2682
+ detail?: string | undefined;
2683
+ meta?: Record<string, unknown> | undefined;
2684
+ }>, "many">;
2685
+ }, "strip", z.ZodTypeAny, {
2686
+ errors: {
2687
+ status: string;
2688
+ title: string;
2689
+ detail?: string | undefined;
2690
+ meta?: Record<string, unknown> | undefined;
2691
+ }[];
2692
+ }, {
2693
+ errors: {
2694
+ status: string;
2695
+ title: string;
2696
+ detail?: string | undefined;
2697
+ meta?: Record<string, unknown> | undefined;
2698
+ }[];
2699
+ }>;
2700
+ };
2701
+ };
2702
+ resendVerification: {
2703
+ summary: "Resend email verification";
2704
+ method: "POST";
2705
+ body: z.ZodObject<{
2706
+ email: z.ZodString;
2707
+ }, "strip", z.ZodTypeAny, {
2708
+ email: string;
2709
+ }, {
2710
+ email: string;
2711
+ }>;
2712
+ path: "/resend-verification";
2713
+ responses: {
2714
+ 200: z.ZodObject<{
2715
+ data: z.ZodObject<{
2716
+ type: z.ZodLiteral<"messages">;
2717
+ id: z.ZodString;
2718
+ attributes: z.ZodObject<{
2719
+ message: z.ZodString;
2720
+ }, "strip", z.ZodTypeAny, {
2721
+ message: string;
2722
+ }, {
2723
+ message: string;
2724
+ }>;
2725
+ }, "strip", z.ZodTypeAny, {
2726
+ id: string;
2727
+ type: "messages";
2728
+ attributes: {
2729
+ message: string;
2730
+ };
2731
+ }, {
2732
+ id: string;
2733
+ type: "messages";
2734
+ attributes: {
2735
+ message: string;
2736
+ };
2737
+ }>;
2738
+ meta: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
2739
+ links: z.ZodOptional<z.ZodObject<{
2740
+ self: z.ZodString;
2741
+ first: z.ZodOptional<z.ZodString>;
2742
+ last: z.ZodOptional<z.ZodString>;
2743
+ prev: z.ZodOptional<z.ZodString>;
2744
+ next: z.ZodOptional<z.ZodString>;
2745
+ }, "strip", z.ZodTypeAny, {
2746
+ self: string;
2747
+ first?: string | undefined;
2748
+ last?: string | undefined;
2749
+ prev?: string | undefined;
2750
+ next?: string | undefined;
2751
+ }, {
2752
+ self: string;
2753
+ first?: string | undefined;
2754
+ last?: string | undefined;
2755
+ prev?: string | undefined;
2756
+ next?: string | undefined;
2757
+ }>>;
2758
+ errors: z.ZodOptional<z.ZodArray<z.ZodObject<{
2759
+ status: z.ZodString;
2760
+ title: z.ZodString;
2761
+ detail: z.ZodOptional<z.ZodString>;
2762
+ meta: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
2763
+ }, "strip", z.ZodTypeAny, {
2764
+ status: string;
2765
+ title: string;
2766
+ detail?: string | undefined;
2767
+ meta?: Record<string, unknown> | undefined;
2768
+ }, {
2769
+ status: string;
2770
+ title: string;
2771
+ detail?: string | undefined;
2772
+ meta?: Record<string, unknown> | undefined;
2773
+ }>, "many">>;
2774
+ }, "strip", z.ZodTypeAny, {
2775
+ data: {
2776
+ id: string;
2777
+ type: "messages";
2778
+ attributes: {
2779
+ message: string;
2780
+ };
2781
+ };
2782
+ meta?: Record<string, unknown> | undefined;
2783
+ links?: {
2784
+ self: string;
2785
+ first?: string | undefined;
2786
+ last?: string | undefined;
2787
+ prev?: string | undefined;
2788
+ next?: string | undefined;
2789
+ } | undefined;
2790
+ errors?: {
2791
+ status: string;
2792
+ title: string;
2793
+ detail?: string | undefined;
2794
+ meta?: Record<string, unknown> | undefined;
2795
+ }[] | undefined;
2796
+ }, {
2797
+ data: {
2798
+ id: string;
2799
+ type: "messages";
2800
+ attributes: {
2801
+ message: string;
2802
+ };
2803
+ };
2804
+ meta?: Record<string, unknown> | undefined;
2805
+ links?: {
2806
+ self: string;
2807
+ first?: string | undefined;
2808
+ last?: string | undefined;
2809
+ prev?: string | undefined;
2810
+ next?: string | undefined;
2811
+ } | undefined;
2812
+ errors?: {
2813
+ status: string;
2814
+ title: string;
2815
+ detail?: string | undefined;
2816
+ meta?: Record<string, unknown> | undefined;
2817
+ }[] | undefined;
2818
+ }>;
2819
+ 400: z.ZodObject<{
2820
+ errors: z.ZodArray<z.ZodObject<{
2821
+ status: z.ZodString;
2822
+ title: z.ZodString;
2823
+ detail: z.ZodOptional<z.ZodString>;
2824
+ meta: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
2825
+ }, "strip", z.ZodTypeAny, {
2826
+ status: string;
2827
+ title: string;
2828
+ detail?: string | undefined;
2829
+ meta?: Record<string, unknown> | undefined;
2830
+ }, {
2831
+ status: string;
2832
+ title: string;
2833
+ detail?: string | undefined;
2834
+ meta?: Record<string, unknown> | undefined;
2835
+ }>, "many">;
2836
+ }, "strip", z.ZodTypeAny, {
2837
+ errors: {
2838
+ status: string;
2839
+ title: string;
2840
+ detail?: string | undefined;
2841
+ meta?: Record<string, unknown> | undefined;
2842
+ }[];
2843
+ }, {
2844
+ errors: {
2845
+ status: string;
2846
+ title: string;
2847
+ detail?: string | undefined;
2848
+ meta?: Record<string, unknown> | undefined;
2849
+ }[];
2850
+ }>;
2851
+ 429: z.ZodObject<{
2852
+ errors: z.ZodArray<z.ZodObject<{
2853
+ status: z.ZodString;
2854
+ title: z.ZodString;
2855
+ detail: z.ZodOptional<z.ZodString>;
2856
+ meta: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
2857
+ }, "strip", z.ZodTypeAny, {
2858
+ status: string;
2859
+ title: string;
2860
+ detail?: string | undefined;
2861
+ meta?: Record<string, unknown> | undefined;
2862
+ }, {
2863
+ status: string;
2864
+ title: string;
2865
+ detail?: string | undefined;
2866
+ meta?: Record<string, unknown> | undefined;
2867
+ }>, "many">;
2868
+ }, "strip", z.ZodTypeAny, {
2869
+ errors: {
2870
+ status: string;
2871
+ title: string;
2872
+ detail?: string | undefined;
2873
+ meta?: Record<string, unknown> | undefined;
2874
+ }[];
2875
+ }, {
2876
+ errors: {
2877
+ status: string;
2878
+ title: string;
2879
+ detail?: string | undefined;
2880
+ meta?: Record<string, unknown> | undefined;
2881
+ }[];
2882
+ }>;
2883
+ };
2884
+ };
2885
+ changePassword: {
2886
+ summary: "Change user password (requires authentication)";
2887
+ method: "PUT";
2888
+ body: z.ZodObject<{
2889
+ currentPassword: z.ZodString;
2890
+ newPassword: z.ZodString;
2891
+ mfaCode: z.ZodOptional<z.ZodString>;
2892
+ }, "strip", z.ZodTypeAny, {
2893
+ newPassword: string;
2894
+ currentPassword: string;
2895
+ mfaCode?: string | undefined;
2896
+ }, {
2897
+ newPassword: string;
2898
+ currentPassword: string;
2899
+ mfaCode?: string | undefined;
2900
+ }>;
2901
+ path: "/password";
2902
+ responses: {
2903
+ 200: z.ZodObject<{
2904
+ data: z.ZodObject<{
2905
+ type: z.ZodLiteral<"messages">;
2906
+ id: z.ZodString;
2907
+ attributes: z.ZodObject<{
2908
+ message: z.ZodString;
2909
+ }, "strip", z.ZodTypeAny, {
2910
+ message: string;
2911
+ }, {
2912
+ message: string;
2913
+ }>;
2914
+ }, "strip", z.ZodTypeAny, {
2915
+ id: string;
2916
+ type: "messages";
2917
+ attributes: {
2918
+ message: string;
2919
+ };
2920
+ }, {
2921
+ id: string;
2922
+ type: "messages";
2923
+ attributes: {
2924
+ message: string;
2925
+ };
2926
+ }>;
2927
+ meta: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
2928
+ links: z.ZodOptional<z.ZodObject<{
2929
+ self: z.ZodString;
2930
+ first: z.ZodOptional<z.ZodString>;
2931
+ last: z.ZodOptional<z.ZodString>;
2932
+ prev: z.ZodOptional<z.ZodString>;
2933
+ next: z.ZodOptional<z.ZodString>;
2934
+ }, "strip", z.ZodTypeAny, {
2935
+ self: string;
2936
+ first?: string | undefined;
2937
+ last?: string | undefined;
2938
+ prev?: string | undefined;
2939
+ next?: string | undefined;
2940
+ }, {
2941
+ self: string;
2942
+ first?: string | undefined;
2943
+ last?: string | undefined;
2944
+ prev?: string | undefined;
2945
+ next?: string | undefined;
2946
+ }>>;
2947
+ errors: z.ZodOptional<z.ZodArray<z.ZodObject<{
2948
+ status: z.ZodString;
2949
+ title: z.ZodString;
2950
+ detail: z.ZodOptional<z.ZodString>;
2951
+ meta: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
2952
+ }, "strip", z.ZodTypeAny, {
2953
+ status: string;
2954
+ title: string;
2955
+ detail?: string | undefined;
2956
+ meta?: Record<string, unknown> | undefined;
2957
+ }, {
2958
+ status: string;
2959
+ title: string;
2960
+ detail?: string | undefined;
2961
+ meta?: Record<string, unknown> | undefined;
2962
+ }>, "many">>;
2963
+ }, "strip", z.ZodTypeAny, {
2964
+ data: {
2965
+ id: string;
2966
+ type: "messages";
2967
+ attributes: {
2968
+ message: string;
2969
+ };
2970
+ };
2971
+ meta?: Record<string, unknown> | undefined;
2972
+ links?: {
2973
+ self: string;
2974
+ first?: string | undefined;
2975
+ last?: string | undefined;
2976
+ prev?: string | undefined;
2977
+ next?: string | undefined;
2978
+ } | undefined;
2979
+ errors?: {
2980
+ status: string;
2981
+ title: string;
2982
+ detail?: string | undefined;
2983
+ meta?: Record<string, unknown> | undefined;
2984
+ }[] | undefined;
2985
+ }, {
2986
+ data: {
2987
+ id: string;
2988
+ type: "messages";
2989
+ attributes: {
2990
+ message: string;
2991
+ };
2992
+ };
2993
+ meta?: Record<string, unknown> | undefined;
2994
+ links?: {
2995
+ self: string;
2996
+ first?: string | undefined;
2997
+ last?: string | undefined;
2998
+ prev?: string | undefined;
2999
+ next?: string | undefined;
3000
+ } | undefined;
3001
+ errors?: {
3002
+ status: string;
3003
+ title: string;
3004
+ detail?: string | undefined;
3005
+ meta?: Record<string, unknown> | undefined;
3006
+ }[] | undefined;
3007
+ }>;
3008
+ 400: z.ZodObject<{
3009
+ errors: z.ZodArray<z.ZodObject<{
3010
+ status: z.ZodString;
3011
+ title: z.ZodString;
3012
+ detail: z.ZodOptional<z.ZodString>;
3013
+ meta: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
3014
+ }, "strip", z.ZodTypeAny, {
3015
+ status: string;
3016
+ title: string;
3017
+ detail?: string | undefined;
3018
+ meta?: Record<string, unknown> | undefined;
3019
+ }, {
3020
+ status: string;
3021
+ title: string;
3022
+ detail?: string | undefined;
3023
+ meta?: Record<string, unknown> | undefined;
3024
+ }>, "many">;
3025
+ }, "strip", z.ZodTypeAny, {
3026
+ errors: {
3027
+ status: string;
3028
+ title: string;
3029
+ detail?: string | undefined;
3030
+ meta?: Record<string, unknown> | undefined;
3031
+ }[];
3032
+ }, {
3033
+ errors: {
3034
+ status: string;
3035
+ title: string;
3036
+ detail?: string | undefined;
3037
+ meta?: Record<string, unknown> | undefined;
3038
+ }[];
3039
+ }>;
3040
+ 401: z.ZodObject<{
3041
+ errors: z.ZodArray<z.ZodObject<{
3042
+ status: z.ZodString;
3043
+ title: z.ZodString;
3044
+ detail: z.ZodOptional<z.ZodString>;
3045
+ meta: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
3046
+ }, "strip", z.ZodTypeAny, {
3047
+ status: string;
3048
+ title: string;
3049
+ detail?: string | undefined;
3050
+ meta?: Record<string, unknown> | undefined;
3051
+ }, {
3052
+ status: string;
3053
+ title: string;
3054
+ detail?: string | undefined;
3055
+ meta?: Record<string, unknown> | undefined;
3056
+ }>, "many">;
3057
+ }, "strip", z.ZodTypeAny, {
3058
+ errors: {
3059
+ status: string;
3060
+ title: string;
3061
+ detail?: string | undefined;
3062
+ meta?: Record<string, unknown> | undefined;
3063
+ }[];
3064
+ }, {
3065
+ errors: {
3066
+ status: string;
3067
+ title: string;
3068
+ detail?: string | undefined;
3069
+ meta?: Record<string, unknown> | undefined;
3070
+ }[];
3071
+ }>;
3072
+ };
3073
+ };
3074
+ seedRoles: {
3075
+ summary: "Seed system roles (development only)";
3076
+ method: "POST";
3077
+ body: z.ZodObject<{}, "strip", z.ZodTypeAny, {}, {}>;
3078
+ path: "/seed-roles";
3079
+ responses: {
3080
+ 200: z.ZodObject<{
3081
+ data: z.ZodObject<{
3082
+ type: z.ZodLiteral<"messages">;
3083
+ id: z.ZodString;
3084
+ attributes: z.ZodObject<{
3085
+ message: z.ZodString;
3086
+ }, "strip", z.ZodTypeAny, {
3087
+ message: string;
3088
+ }, {
3089
+ message: string;
3090
+ }>;
3091
+ }, "strip", z.ZodTypeAny, {
3092
+ id: string;
3093
+ type: "messages";
3094
+ attributes: {
3095
+ message: string;
3096
+ };
3097
+ }, {
3098
+ id: string;
3099
+ type: "messages";
3100
+ attributes: {
3101
+ message: string;
3102
+ };
3103
+ }>;
3104
+ meta: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
3105
+ links: z.ZodOptional<z.ZodObject<{
3106
+ self: z.ZodString;
3107
+ first: z.ZodOptional<z.ZodString>;
3108
+ last: z.ZodOptional<z.ZodString>;
3109
+ prev: z.ZodOptional<z.ZodString>;
3110
+ next: z.ZodOptional<z.ZodString>;
3111
+ }, "strip", z.ZodTypeAny, {
3112
+ self: string;
3113
+ first?: string | undefined;
3114
+ last?: string | undefined;
3115
+ prev?: string | undefined;
3116
+ next?: string | undefined;
3117
+ }, {
3118
+ self: string;
3119
+ first?: string | undefined;
3120
+ last?: string | undefined;
3121
+ prev?: string | undefined;
3122
+ next?: string | undefined;
3123
+ }>>;
3124
+ errors: z.ZodOptional<z.ZodArray<z.ZodObject<{
3125
+ status: z.ZodString;
3126
+ title: z.ZodString;
3127
+ detail: z.ZodOptional<z.ZodString>;
3128
+ meta: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
3129
+ }, "strip", z.ZodTypeAny, {
3130
+ status: string;
3131
+ title: string;
3132
+ detail?: string | undefined;
3133
+ meta?: Record<string, unknown> | undefined;
3134
+ }, {
3135
+ status: string;
3136
+ title: string;
3137
+ detail?: string | undefined;
3138
+ meta?: Record<string, unknown> | undefined;
3139
+ }>, "many">>;
3140
+ }, "strip", z.ZodTypeAny, {
3141
+ data: {
3142
+ id: string;
3143
+ type: "messages";
3144
+ attributes: {
3145
+ message: string;
3146
+ };
3147
+ };
3148
+ meta?: Record<string, unknown> | undefined;
3149
+ links?: {
3150
+ self: string;
3151
+ first?: string | undefined;
3152
+ last?: string | undefined;
3153
+ prev?: string | undefined;
3154
+ next?: string | undefined;
3155
+ } | undefined;
3156
+ errors?: {
3157
+ status: string;
3158
+ title: string;
3159
+ detail?: string | undefined;
3160
+ meta?: Record<string, unknown> | undefined;
3161
+ }[] | undefined;
3162
+ }, {
3163
+ data: {
3164
+ id: string;
3165
+ type: "messages";
3166
+ attributes: {
3167
+ message: string;
3168
+ };
3169
+ };
3170
+ meta?: Record<string, unknown> | undefined;
3171
+ links?: {
3172
+ self: string;
3173
+ first?: string | undefined;
3174
+ last?: string | undefined;
3175
+ prev?: string | undefined;
3176
+ next?: string | undefined;
3177
+ } | undefined;
3178
+ errors?: {
3179
+ status: string;
3180
+ title: string;
3181
+ detail?: string | undefined;
3182
+ meta?: Record<string, unknown> | undefined;
3183
+ }[] | undefined;
3184
+ }>;
3185
+ 500: z.ZodObject<{
3186
+ errors: z.ZodArray<z.ZodObject<{
3187
+ status: z.ZodString;
3188
+ title: z.ZodString;
3189
+ detail: z.ZodOptional<z.ZodString>;
3190
+ meta: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
3191
+ }, "strip", z.ZodTypeAny, {
3192
+ status: string;
3193
+ title: string;
3194
+ detail?: string | undefined;
3195
+ meta?: Record<string, unknown> | undefined;
3196
+ }, {
3197
+ status: string;
3198
+ title: string;
3199
+ detail?: string | undefined;
3200
+ meta?: Record<string, unknown> | undefined;
3201
+ }>, "many">;
3202
+ }, "strip", z.ZodTypeAny, {
3203
+ errors: {
3204
+ status: string;
3205
+ title: string;
3206
+ detail?: string | undefined;
3207
+ meta?: Record<string, unknown> | undefined;
3208
+ }[];
3209
+ }, {
3210
+ errors: {
3211
+ status: string;
3212
+ title: string;
3213
+ detail?: string | undefined;
3214
+ meta?: Record<string, unknown> | undefined;
3215
+ }[];
3216
+ }>;
3217
+ };
3218
+ };
3219
+ verifyEmailSimple: {
3220
+ summary: "Simple email verification";
3221
+ method: "POST";
3222
+ body: z.ZodObject<{
3223
+ token: z.ZodString;
3224
+ }, "strip", z.ZodTypeAny, {
3225
+ token: string;
3226
+ }, {
3227
+ token: string;
3228
+ }>;
3229
+ path: "/verify-email-simple";
3230
+ responses: {
3231
+ 200: z.ZodObject<{
3232
+ data: z.ZodObject<{
3233
+ type: z.ZodLiteral<"messages">;
3234
+ id: z.ZodString;
3235
+ attributes: z.ZodObject<{
3236
+ message: z.ZodString;
3237
+ }, "strip", z.ZodTypeAny, {
3238
+ message: string;
3239
+ }, {
3240
+ message: string;
3241
+ }>;
3242
+ }, "strip", z.ZodTypeAny, {
3243
+ id: string;
3244
+ type: "messages";
3245
+ attributes: {
3246
+ message: string;
3247
+ };
3248
+ }, {
3249
+ id: string;
3250
+ type: "messages";
3251
+ attributes: {
3252
+ message: string;
3253
+ };
3254
+ }>;
3255
+ meta: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
3256
+ links: z.ZodOptional<z.ZodObject<{
3257
+ self: z.ZodString;
3258
+ first: z.ZodOptional<z.ZodString>;
3259
+ last: z.ZodOptional<z.ZodString>;
3260
+ prev: z.ZodOptional<z.ZodString>;
3261
+ next: z.ZodOptional<z.ZodString>;
3262
+ }, "strip", z.ZodTypeAny, {
3263
+ self: string;
3264
+ first?: string | undefined;
3265
+ last?: string | undefined;
3266
+ prev?: string | undefined;
3267
+ next?: string | undefined;
3268
+ }, {
3269
+ self: string;
3270
+ first?: string | undefined;
3271
+ last?: string | undefined;
3272
+ prev?: string | undefined;
3273
+ next?: string | undefined;
3274
+ }>>;
3275
+ errors: z.ZodOptional<z.ZodArray<z.ZodObject<{
3276
+ status: z.ZodString;
3277
+ title: z.ZodString;
3278
+ detail: z.ZodOptional<z.ZodString>;
3279
+ meta: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
3280
+ }, "strip", z.ZodTypeAny, {
3281
+ status: string;
3282
+ title: string;
3283
+ detail?: string | undefined;
3284
+ meta?: Record<string, unknown> | undefined;
3285
+ }, {
3286
+ status: string;
3287
+ title: string;
3288
+ detail?: string | undefined;
3289
+ meta?: Record<string, unknown> | undefined;
3290
+ }>, "many">>;
3291
+ }, "strip", z.ZodTypeAny, {
3292
+ data: {
3293
+ id: string;
3294
+ type: "messages";
3295
+ attributes: {
3296
+ message: string;
3297
+ };
3298
+ };
3299
+ meta?: Record<string, unknown> | undefined;
3300
+ links?: {
3301
+ self: string;
3302
+ first?: string | undefined;
3303
+ last?: string | undefined;
3304
+ prev?: string | undefined;
3305
+ next?: string | undefined;
3306
+ } | undefined;
3307
+ errors?: {
3308
+ status: string;
3309
+ title: string;
3310
+ detail?: string | undefined;
3311
+ meta?: Record<string, unknown> | undefined;
3312
+ }[] | undefined;
3313
+ }, {
3314
+ data: {
3315
+ id: string;
3316
+ type: "messages";
3317
+ attributes: {
3318
+ message: string;
3319
+ };
3320
+ };
3321
+ meta?: Record<string, unknown> | undefined;
3322
+ links?: {
3323
+ self: string;
3324
+ first?: string | undefined;
3325
+ last?: string | undefined;
3326
+ prev?: string | undefined;
3327
+ next?: string | undefined;
3328
+ } | undefined;
3329
+ errors?: {
3330
+ status: string;
3331
+ title: string;
3332
+ detail?: string | undefined;
3333
+ meta?: Record<string, unknown> | undefined;
3334
+ }[] | undefined;
3335
+ }>;
3336
+ 400: z.ZodObject<{
3337
+ errors: z.ZodArray<z.ZodObject<{
3338
+ status: z.ZodString;
3339
+ title: z.ZodString;
3340
+ detail: z.ZodOptional<z.ZodString>;
3341
+ meta: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
3342
+ }, "strip", z.ZodTypeAny, {
3343
+ status: string;
3344
+ title: string;
3345
+ detail?: string | undefined;
3346
+ meta?: Record<string, unknown> | undefined;
3347
+ }, {
3348
+ status: string;
3349
+ title: string;
3350
+ detail?: string | undefined;
3351
+ meta?: Record<string, unknown> | undefined;
3352
+ }>, "many">;
3353
+ }, "strip", z.ZodTypeAny, {
3354
+ errors: {
3355
+ status: string;
3356
+ title: string;
3357
+ detail?: string | undefined;
3358
+ meta?: Record<string, unknown> | undefined;
3359
+ }[];
3360
+ }, {
3361
+ errors: {
3362
+ status: string;
3363
+ title: string;
3364
+ detail?: string | undefined;
3365
+ meta?: Record<string, unknown> | undefined;
3366
+ }[];
3367
+ }>;
3368
+ };
3369
+ };
3370
+ resendVerificationSimple: {
3371
+ summary: "Simple resend verification";
3372
+ method: "POST";
3373
+ body: z.ZodObject<{
3374
+ email: z.ZodString;
3375
+ }, "strip", z.ZodTypeAny, {
3376
+ email: string;
3377
+ }, {
3378
+ email: string;
3379
+ }>;
3380
+ path: "/resend-verification-simple";
3381
+ responses: {
3382
+ 200: z.ZodObject<{
3383
+ data: z.ZodObject<{
3384
+ type: z.ZodLiteral<"messages">;
3385
+ id: z.ZodString;
3386
+ attributes: z.ZodObject<{
3387
+ message: z.ZodString;
3388
+ }, "strip", z.ZodTypeAny, {
3389
+ message: string;
3390
+ }, {
3391
+ message: string;
3392
+ }>;
3393
+ }, "strip", z.ZodTypeAny, {
3394
+ id: string;
3395
+ type: "messages";
3396
+ attributes: {
3397
+ message: string;
3398
+ };
3399
+ }, {
3400
+ id: string;
3401
+ type: "messages";
3402
+ attributes: {
3403
+ message: string;
3404
+ };
3405
+ }>;
3406
+ meta: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
3407
+ links: z.ZodOptional<z.ZodObject<{
3408
+ self: z.ZodString;
3409
+ first: z.ZodOptional<z.ZodString>;
3410
+ last: z.ZodOptional<z.ZodString>;
3411
+ prev: z.ZodOptional<z.ZodString>;
3412
+ next: z.ZodOptional<z.ZodString>;
3413
+ }, "strip", z.ZodTypeAny, {
3414
+ self: string;
3415
+ first?: string | undefined;
3416
+ last?: string | undefined;
3417
+ prev?: string | undefined;
3418
+ next?: string | undefined;
3419
+ }, {
3420
+ self: string;
3421
+ first?: string | undefined;
3422
+ last?: string | undefined;
3423
+ prev?: string | undefined;
3424
+ next?: string | undefined;
3425
+ }>>;
3426
+ errors: z.ZodOptional<z.ZodArray<z.ZodObject<{
3427
+ status: z.ZodString;
3428
+ title: z.ZodString;
3429
+ detail: z.ZodOptional<z.ZodString>;
3430
+ meta: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
3431
+ }, "strip", z.ZodTypeAny, {
3432
+ status: string;
3433
+ title: string;
3434
+ detail?: string | undefined;
3435
+ meta?: Record<string, unknown> | undefined;
3436
+ }, {
3437
+ status: string;
3438
+ title: string;
3439
+ detail?: string | undefined;
3440
+ meta?: Record<string, unknown> | undefined;
3441
+ }>, "many">>;
3442
+ }, "strip", z.ZodTypeAny, {
3443
+ data: {
3444
+ id: string;
3445
+ type: "messages";
3446
+ attributes: {
3447
+ message: string;
3448
+ };
3449
+ };
3450
+ meta?: Record<string, unknown> | undefined;
3451
+ links?: {
3452
+ self: string;
3453
+ first?: string | undefined;
3454
+ last?: string | undefined;
3455
+ prev?: string | undefined;
3456
+ next?: string | undefined;
3457
+ } | undefined;
3458
+ errors?: {
3459
+ status: string;
3460
+ title: string;
3461
+ detail?: string | undefined;
3462
+ meta?: Record<string, unknown> | undefined;
3463
+ }[] | undefined;
3464
+ }, {
3465
+ data: {
3466
+ id: string;
3467
+ type: "messages";
3468
+ attributes: {
3469
+ message: string;
3470
+ };
3471
+ };
3472
+ meta?: Record<string, unknown> | undefined;
3473
+ links?: {
3474
+ self: string;
3475
+ first?: string | undefined;
3476
+ last?: string | undefined;
3477
+ prev?: string | undefined;
3478
+ next?: string | undefined;
3479
+ } | undefined;
3480
+ errors?: {
3481
+ status: string;
3482
+ title: string;
3483
+ detail?: string | undefined;
3484
+ meta?: Record<string, unknown> | undefined;
3485
+ }[] | undefined;
3486
+ }>;
3487
+ 400: z.ZodObject<{
3488
+ errors: z.ZodArray<z.ZodObject<{
3489
+ status: z.ZodString;
3490
+ title: z.ZodString;
3491
+ detail: z.ZodOptional<z.ZodString>;
3492
+ meta: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
3493
+ }, "strip", z.ZodTypeAny, {
3494
+ status: string;
3495
+ title: string;
3496
+ detail?: string | undefined;
3497
+ meta?: Record<string, unknown> | undefined;
3498
+ }, {
3499
+ status: string;
3500
+ title: string;
3501
+ detail?: string | undefined;
3502
+ meta?: Record<string, unknown> | undefined;
3503
+ }>, "many">;
3504
+ }, "strip", z.ZodTypeAny, {
3505
+ errors: {
3506
+ status: string;
3507
+ title: string;
3508
+ detail?: string | undefined;
3509
+ meta?: Record<string, unknown> | undefined;
3510
+ }[];
3511
+ }, {
3512
+ errors: {
3513
+ status: string;
3514
+ title: string;
3515
+ detail?: string | undefined;
3516
+ meta?: Record<string, unknown> | undefined;
3517
+ }[];
3518
+ }>;
3519
+ };
3520
+ };
3521
+ health: {
3522
+ summary: "Health check endpoint";
3523
+ method: "GET";
3524
+ path: "/health";
3525
+ responses: {
3526
+ 200: z.ZodObject<{
3527
+ data: z.ZodObject<{
3528
+ type: z.ZodLiteral<"health-status">;
3529
+ id: z.ZodLiteral<"auth-service">;
3530
+ attributes: z.ZodObject<{
3531
+ status: z.ZodLiteral<"healthy">;
3532
+ timestamp: z.ZodString;
3533
+ }, "strip", z.ZodTypeAny, {
3534
+ status: "healthy";
3535
+ timestamp: string;
3536
+ }, {
3537
+ status: "healthy";
3538
+ timestamp: string;
3539
+ }>;
3540
+ }, "strip", z.ZodTypeAny, {
3541
+ id: "auth-service";
3542
+ type: "health-status";
3543
+ attributes: {
3544
+ status: "healthy";
3545
+ timestamp: string;
3546
+ };
3547
+ }, {
3548
+ id: "auth-service";
3549
+ type: "health-status";
3550
+ attributes: {
3551
+ status: "healthy";
3552
+ timestamp: string;
3553
+ };
3554
+ }>;
3555
+ meta: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
3556
+ links: z.ZodOptional<z.ZodObject<{
3557
+ self: z.ZodString;
3558
+ first: z.ZodOptional<z.ZodString>;
3559
+ last: z.ZodOptional<z.ZodString>;
3560
+ prev: z.ZodOptional<z.ZodString>;
3561
+ next: z.ZodOptional<z.ZodString>;
3562
+ }, "strip", z.ZodTypeAny, {
3563
+ self: string;
3564
+ first?: string | undefined;
3565
+ last?: string | undefined;
3566
+ prev?: string | undefined;
3567
+ next?: string | undefined;
3568
+ }, {
3569
+ self: string;
3570
+ first?: string | undefined;
3571
+ last?: string | undefined;
3572
+ prev?: string | undefined;
3573
+ next?: string | undefined;
3574
+ }>>;
3575
+ errors: z.ZodOptional<z.ZodArray<z.ZodObject<{
3576
+ status: z.ZodString;
3577
+ title: z.ZodString;
3578
+ detail: z.ZodOptional<z.ZodString>;
3579
+ meta: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
3580
+ }, "strip", z.ZodTypeAny, {
3581
+ status: string;
3582
+ title: string;
3583
+ detail?: string | undefined;
3584
+ meta?: Record<string, unknown> | undefined;
3585
+ }, {
3586
+ status: string;
3587
+ title: string;
3588
+ detail?: string | undefined;
3589
+ meta?: Record<string, unknown> | undefined;
3590
+ }>, "many">>;
3591
+ }, "strip", z.ZodTypeAny, {
3592
+ data: {
3593
+ id: "auth-service";
3594
+ type: "health-status";
3595
+ attributes: {
3596
+ status: "healthy";
3597
+ timestamp: string;
3598
+ };
3599
+ };
3600
+ meta?: Record<string, unknown> | undefined;
3601
+ links?: {
3602
+ self: string;
3603
+ first?: string | undefined;
3604
+ last?: string | undefined;
3605
+ prev?: string | undefined;
3606
+ next?: string | undefined;
3607
+ } | undefined;
3608
+ errors?: {
3609
+ status: string;
3610
+ title: string;
3611
+ detail?: string | undefined;
3612
+ meta?: Record<string, unknown> | undefined;
3613
+ }[] | undefined;
3614
+ }, {
3615
+ data: {
3616
+ id: "auth-service";
3617
+ type: "health-status";
3618
+ attributes: {
3619
+ status: "healthy";
3620
+ timestamp: string;
3621
+ };
3622
+ };
3623
+ meta?: Record<string, unknown> | undefined;
3624
+ links?: {
3625
+ self: string;
3626
+ first?: string | undefined;
3627
+ last?: string | undefined;
3628
+ prev?: string | undefined;
3629
+ next?: string | undefined;
3630
+ } | undefined;
3631
+ errors?: {
3632
+ status: string;
3633
+ title: string;
3634
+ detail?: string | undefined;
3635
+ meta?: Record<string, unknown> | undefined;
3636
+ }[] | undefined;
3637
+ }>;
3638
+ };
3639
+ };
3640
+ };
3641
+ //# sourceMappingURL=auth.d.ts.map