@ysk-kit/contracts 1.0.0

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 (174) hide show
  1. package/LICENSE +21 -0
  2. package/dist/api/api-keys.d.ts +220 -0
  3. package/dist/api/api-keys.d.ts.map +1 -0
  4. package/dist/api/api-keys.js +38 -0
  5. package/dist/api/api-keys.js.map +1 -0
  6. package/dist/api/audit.d.ts +75 -0
  7. package/dist/api/audit.d.ts.map +1 -0
  8. package/dist/api/audit.js +19 -0
  9. package/dist/api/audit.js.map +1 -0
  10. package/dist/api/auth.d.ts +602 -0
  11. package/dist/api/auth.d.ts.map +1 -0
  12. package/dist/api/auth.js +85 -0
  13. package/dist/api/auth.js.map +1 -0
  14. package/dist/api/billing.d.ts +398 -0
  15. package/dist/api/billing.d.ts.map +1 -0
  16. package/dist/api/billing.js +75 -0
  17. package/dist/api/billing.js.map +1 -0
  18. package/dist/api/devices.d.ts +150 -0
  19. package/dist/api/devices.d.ts.map +1 -0
  20. package/dist/api/devices.js +32 -0
  21. package/dist/api/devices.js.map +1 -0
  22. package/dist/api/files.d.ts +74 -0
  23. package/dist/api/files.d.ts.map +1 -0
  24. package/dist/api/files.js +19 -0
  25. package/dist/api/files.js.map +1 -0
  26. package/dist/api/health.d.ts +53 -0
  27. package/dist/api/health.d.ts.map +1 -0
  28. package/dist/api/health.js +26 -0
  29. package/dist/api/health.js.map +1 -0
  30. package/dist/api/index.d.ts +2777 -0
  31. package/dist/api/index.d.ts.map +1 -0
  32. package/dist/api/index.js +38 -0
  33. package/dist/api/index.js.map +1 -0
  34. package/dist/api/llm.d.ts +133 -0
  35. package/dist/api/llm.d.ts.map +1 -0
  36. package/dist/api/llm.js +25 -0
  37. package/dist/api/llm.js.map +1 -0
  38. package/dist/api/notifications.d.ts +102 -0
  39. package/dist/api/notifications.d.ts.map +1 -0
  40. package/dist/api/notifications.js +28 -0
  41. package/dist/api/notifications.js.map +1 -0
  42. package/dist/api/organizations.d.ts +787 -0
  43. package/dist/api/organizations.d.ts.map +1 -0
  44. package/dist/api/organizations.js +144 -0
  45. package/dist/api/organizations.js.map +1 -0
  46. package/dist/api/users.d.ts +193 -0
  47. package/dist/api/users.d.ts.map +1 -0
  48. package/dist/api/users.js +41 -0
  49. package/dist/api/users.js.map +1 -0
  50. package/dist/constants/hk.d.ts +6 -0
  51. package/dist/constants/hk.d.ts.map +1 -0
  52. package/dist/constants/hk.js +6 -0
  53. package/dist/constants/hk.js.map +1 -0
  54. package/dist/dto/api-key.d.ts +49 -0
  55. package/dist/dto/api-key.d.ts.map +1 -0
  56. package/dist/dto/api-key.js +19 -0
  57. package/dist/dto/api-key.js.map +1 -0
  58. package/dist/dto/audit.d.ts +49 -0
  59. package/dist/dto/audit.d.ts.map +1 -0
  60. package/dist/dto/audit.js +13 -0
  61. package/dist/dto/audit.js.map +1 -0
  62. package/dist/dto/auth.d.ts +76 -0
  63. package/dist/dto/auth.d.ts.map +1 -0
  64. package/dist/dto/auth.js +46 -0
  65. package/dist/dto/auth.js.map +1 -0
  66. package/dist/dto/billing.d.ts +63 -0
  67. package/dist/dto/billing.d.ts.map +1 -0
  68. package/dist/dto/billing.js +44 -0
  69. package/dist/dto/billing.js.map +1 -0
  70. package/dist/dto/device.d.ts +25 -0
  71. package/dist/dto/device.d.ts.map +1 -0
  72. package/dist/dto/device.js +13 -0
  73. package/dist/dto/device.js.map +1 -0
  74. package/dist/dto/file.d.ts +14 -0
  75. package/dist/dto/file.d.ts.map +1 -0
  76. package/dist/dto/file.js +16 -0
  77. package/dist/dto/file.js.map +1 -0
  78. package/dist/dto/index.d.ts +11 -0
  79. package/dist/dto/index.d.ts.map +1 -0
  80. package/dist/dto/index.js +11 -0
  81. package/dist/dto/index.js.map +1 -0
  82. package/dist/dto/llm.d.ts +45 -0
  83. package/dist/dto/llm.d.ts.map +1 -0
  84. package/dist/dto/llm.js +24 -0
  85. package/dist/dto/llm.js.map +1 -0
  86. package/dist/dto/notification.d.ts +33 -0
  87. package/dist/dto/notification.d.ts.map +1 -0
  88. package/dist/dto/notification.js +13 -0
  89. package/dist/dto/notification.js.map +1 -0
  90. package/dist/dto/organization.d.ts +60 -0
  91. package/dist/dto/organization.d.ts.map +1 -0
  92. package/dist/dto/organization.js +43 -0
  93. package/dist/dto/organization.js.map +1 -0
  94. package/dist/dto/user.d.ts +63 -0
  95. package/dist/dto/user.d.ts.map +1 -0
  96. package/dist/dto/user.js +31 -0
  97. package/dist/dto/user.js.map +1 -0
  98. package/dist/enums/audit-action.d.ts +32 -0
  99. package/dist/enums/audit-action.d.ts.map +1 -0
  100. package/dist/enums/audit-action.js +18 -0
  101. package/dist/enums/audit-action.js.map +1 -0
  102. package/dist/enums/auth-method.d.ts +12 -0
  103. package/dist/enums/auth-method.d.ts.map +1 -0
  104. package/dist/enums/auth-method.js +8 -0
  105. package/dist/enums/auth-method.js.map +1 -0
  106. package/dist/enums/billing-plan.d.ts +29 -0
  107. package/dist/enums/billing-plan.d.ts.map +1 -0
  108. package/dist/enums/billing-plan.js +18 -0
  109. package/dist/enums/billing-plan.js.map +1 -0
  110. package/dist/enums/index.d.ts +14 -0
  111. package/dist/enums/index.d.ts.map +1 -0
  112. package/dist/enums/index.js +14 -0
  113. package/dist/enums/index.js.map +1 -0
  114. package/dist/enums/job-name.d.ts +86 -0
  115. package/dist/enums/job-name.d.ts.map +1 -0
  116. package/dist/enums/job-name.js +34 -0
  117. package/dist/enums/job-name.js.map +1 -0
  118. package/dist/enums/llm-role.d.ts +14 -0
  119. package/dist/enums/llm-role.d.ts.map +1 -0
  120. package/dist/enums/llm-role.js +9 -0
  121. package/dist/enums/llm-role.js.map +1 -0
  122. package/dist/enums/mail-template.d.ts +21 -0
  123. package/dist/enums/mail-template.d.ts.map +1 -0
  124. package/dist/enums/mail-template.js +40 -0
  125. package/dist/enums/mail-template.js.map +1 -0
  126. package/dist/enums/notification-type.d.ts +16 -0
  127. package/dist/enums/notification-type.d.ts.map +1 -0
  128. package/dist/enums/notification-type.js +10 -0
  129. package/dist/enums/notification-type.js.map +1 -0
  130. package/dist/enums/org-role.d.ts +39 -0
  131. package/dist/enums/org-role.d.ts.map +1 -0
  132. package/dist/enums/org-role.js +40 -0
  133. package/dist/enums/org-role.js.map +1 -0
  134. package/dist/enums/permission.d.ts +27 -0
  135. package/dist/enums/permission.d.ts.map +1 -0
  136. package/dist/enums/permission.js +36 -0
  137. package/dist/enums/permission.js.map +1 -0
  138. package/dist/enums/platform.d.ts +20 -0
  139. package/dist/enums/platform.d.ts.map +1 -0
  140. package/dist/enums/platform.js +12 -0
  141. package/dist/enums/platform.js.map +1 -0
  142. package/dist/enums/realtime-event.d.ts +10 -0
  143. package/dist/enums/realtime-event.d.ts.map +1 -0
  144. package/dist/enums/realtime-event.js +7 -0
  145. package/dist/enums/realtime-event.js.map +1 -0
  146. package/dist/enums/user-role.d.ts +18 -0
  147. package/dist/enums/user-role.d.ts.map +1 -0
  148. package/dist/enums/user-role.js +14 -0
  149. package/dist/enums/user-role.js.map +1 -0
  150. package/dist/enums/user-status.d.ts +20 -0
  151. package/dist/enums/user-status.d.ts.map +1 -0
  152. package/dist/enums/user-status.js +16 -0
  153. package/dist/enums/user-status.js.map +1 -0
  154. package/dist/errors/codes.d.ts +12 -0
  155. package/dist/errors/codes.d.ts.map +1 -0
  156. package/dist/errors/codes.js +11 -0
  157. package/dist/errors/codes.js.map +1 -0
  158. package/dist/errors/envelope.d.ts +43 -0
  159. package/dist/errors/envelope.d.ts.map +1 -0
  160. package/dist/errors/envelope.js +14 -0
  161. package/dist/errors/envelope.js.map +1 -0
  162. package/dist/errors/index.d.ts +4 -0
  163. package/dist/errors/index.d.ts.map +1 -0
  164. package/dist/errors/index.js +4 -0
  165. package/dist/errors/index.js.map +1 -0
  166. package/dist/errors/messages.d.ts +6 -0
  167. package/dist/errors/messages.d.ts.map +1 -0
  168. package/dist/errors/messages.js +10 -0
  169. package/dist/errors/messages.js.map +1 -0
  170. package/dist/index.d.ts +6 -0
  171. package/dist/index.d.ts.map +1 -0
  172. package/dist/index.js +6 -0
  173. package/dist/index.js.map +1 -0
  174. package/package.json +34 -0
@@ -0,0 +1,2777 @@
1
+ export declare const appContract: {
2
+ health: {
3
+ get: {
4
+ summary: "Liveness";
5
+ method: "GET";
6
+ path: "/health";
7
+ responses: {
8
+ 200: import("zod").ZodObject<{
9
+ ok: import("zod").ZodLiteral<true>;
10
+ data: import("zod").ZodObject<{
11
+ status: import("zod").ZodLiteral<"ok">;
12
+ }, import("zod/v4/core").$strip>;
13
+ }, import("zod/v4/core").$strip>;
14
+ };
15
+ };
16
+ ready: {
17
+ summary: "Readiness (database)";
18
+ method: "GET";
19
+ path: "/ready";
20
+ responses: {
21
+ 200: import("zod").ZodObject<{
22
+ ok: import("zod").ZodLiteral<true>;
23
+ data: import("zod").ZodObject<{
24
+ status: import("zod").ZodLiteral<"ready">;
25
+ }, import("zod/v4/core").$strip>;
26
+ }, import("zod/v4/core").$strip>;
27
+ 503: import("zod").ZodObject<{
28
+ ok: import("zod").ZodLiteral<false>;
29
+ error: import("zod").ZodObject<{
30
+ code: import("zod").ZodEnum<{
31
+ VALIDATION_FAILED: "VALIDATION_FAILED";
32
+ UNAUTHENTICATED: "UNAUTHENTICATED";
33
+ FORBIDDEN: "FORBIDDEN";
34
+ NOT_FOUND: "NOT_FOUND";
35
+ CONFLICT: "CONFLICT";
36
+ RATE_LIMITED: "RATE_LIMITED";
37
+ INTERNAL: "INTERNAL";
38
+ }>;
39
+ message: import("zod").ZodString;
40
+ details: import("zod").ZodOptional<import("zod").ZodUnknown>;
41
+ requestId: import("zod").ZodOptional<import("zod").ZodString>;
42
+ }, import("zod/v4/core").$strip>;
43
+ }, import("zod/v4/core").$strip>;
44
+ };
45
+ };
46
+ };
47
+ auth: {
48
+ register: {
49
+ summary: "Register with email";
50
+ method: "POST";
51
+ body: import("zod").ZodObject<{
52
+ email: import("zod").ZodString;
53
+ password: import("zod").ZodString;
54
+ displayName: import("zod").ZodString;
55
+ }, import("zod/v4/core").$strip>;
56
+ path: "/v1/auth/register";
57
+ responses: {
58
+ 201: import("zod").ZodObject<{
59
+ ok: import("zod").ZodLiteral<true>;
60
+ data: import("zod").ZodObject<{
61
+ accessToken: import("zod").ZodString;
62
+ refreshToken: import("zod").ZodString;
63
+ expiresIn: import("zod").ZodNumber;
64
+ user: import("zod").ZodObject<{
65
+ id: import("zod").ZodString;
66
+ email: import("zod").ZodNullable<import("zod").ZodString>;
67
+ phone: import("zod").ZodNullable<import("zod").ZodString>;
68
+ displayName: import("zod").ZodString;
69
+ role: import("zod").ZodEnum<{
70
+ USER: "USER";
71
+ ADMIN: "ADMIN";
72
+ OPS: "OPS";
73
+ }>;
74
+ status: import("zod").ZodEnum<{
75
+ ACTIVE: "ACTIVE";
76
+ INVITED: "INVITED";
77
+ SUSPENDED: "SUSPENDED";
78
+ DELETED: "DELETED";
79
+ }>;
80
+ createdAt: import("zod").ZodISODateTime;
81
+ }, import("zod/v4/core").$strip>;
82
+ }, import("zod/v4/core").$strip>;
83
+ }, import("zod/v4/core").$strip>;
84
+ 409: import("zod").ZodObject<{
85
+ ok: import("zod").ZodLiteral<false>;
86
+ error: import("zod").ZodObject<{
87
+ code: import("zod").ZodEnum<{
88
+ VALIDATION_FAILED: "VALIDATION_FAILED";
89
+ UNAUTHENTICATED: "UNAUTHENTICATED";
90
+ FORBIDDEN: "FORBIDDEN";
91
+ NOT_FOUND: "NOT_FOUND";
92
+ CONFLICT: "CONFLICT";
93
+ RATE_LIMITED: "RATE_LIMITED";
94
+ INTERNAL: "INTERNAL";
95
+ }>;
96
+ message: import("zod").ZodString;
97
+ details: import("zod").ZodOptional<import("zod").ZodUnknown>;
98
+ requestId: import("zod").ZodOptional<import("zod").ZodString>;
99
+ }, import("zod/v4/core").$strip>;
100
+ }, import("zod/v4/core").$strip>;
101
+ 422: import("zod").ZodObject<{
102
+ ok: import("zod").ZodLiteral<false>;
103
+ error: import("zod").ZodObject<{
104
+ code: import("zod").ZodEnum<{
105
+ VALIDATION_FAILED: "VALIDATION_FAILED";
106
+ UNAUTHENTICATED: "UNAUTHENTICATED";
107
+ FORBIDDEN: "FORBIDDEN";
108
+ NOT_FOUND: "NOT_FOUND";
109
+ CONFLICT: "CONFLICT";
110
+ RATE_LIMITED: "RATE_LIMITED";
111
+ INTERNAL: "INTERNAL";
112
+ }>;
113
+ message: import("zod").ZodString;
114
+ details: import("zod").ZodOptional<import("zod").ZodUnknown>;
115
+ requestId: import("zod").ZodOptional<import("zod").ZodString>;
116
+ }, import("zod/v4/core").$strip>;
117
+ }, import("zod/v4/core").$strip>;
118
+ };
119
+ };
120
+ login: {
121
+ summary: "Login with email and password";
122
+ method: "POST";
123
+ body: import("zod").ZodObject<{
124
+ email: import("zod").ZodString;
125
+ password: import("zod").ZodString;
126
+ }, import("zod/v4/core").$strip>;
127
+ path: "/v1/auth/login";
128
+ responses: {
129
+ 200: import("zod").ZodObject<{
130
+ ok: import("zod").ZodLiteral<true>;
131
+ data: import("zod").ZodObject<{
132
+ accessToken: import("zod").ZodString;
133
+ refreshToken: import("zod").ZodString;
134
+ expiresIn: import("zod").ZodNumber;
135
+ user: import("zod").ZodObject<{
136
+ id: import("zod").ZodString;
137
+ email: import("zod").ZodNullable<import("zod").ZodString>;
138
+ phone: import("zod").ZodNullable<import("zod").ZodString>;
139
+ displayName: import("zod").ZodString;
140
+ role: import("zod").ZodEnum<{
141
+ USER: "USER";
142
+ ADMIN: "ADMIN";
143
+ OPS: "OPS";
144
+ }>;
145
+ status: import("zod").ZodEnum<{
146
+ ACTIVE: "ACTIVE";
147
+ INVITED: "INVITED";
148
+ SUSPENDED: "SUSPENDED";
149
+ DELETED: "DELETED";
150
+ }>;
151
+ createdAt: import("zod").ZodISODateTime;
152
+ }, import("zod/v4/core").$strip>;
153
+ }, import("zod/v4/core").$strip>;
154
+ }, import("zod/v4/core").$strip>;
155
+ 401: import("zod").ZodObject<{
156
+ ok: import("zod").ZodLiteral<false>;
157
+ error: import("zod").ZodObject<{
158
+ code: import("zod").ZodEnum<{
159
+ VALIDATION_FAILED: "VALIDATION_FAILED";
160
+ UNAUTHENTICATED: "UNAUTHENTICATED";
161
+ FORBIDDEN: "FORBIDDEN";
162
+ NOT_FOUND: "NOT_FOUND";
163
+ CONFLICT: "CONFLICT";
164
+ RATE_LIMITED: "RATE_LIMITED";
165
+ INTERNAL: "INTERNAL";
166
+ }>;
167
+ message: import("zod").ZodString;
168
+ details: import("zod").ZodOptional<import("zod").ZodUnknown>;
169
+ requestId: import("zod").ZodOptional<import("zod").ZodString>;
170
+ }, import("zod/v4/core").$strip>;
171
+ }, import("zod/v4/core").$strip>;
172
+ 422: import("zod").ZodObject<{
173
+ ok: import("zod").ZodLiteral<false>;
174
+ error: import("zod").ZodObject<{
175
+ code: import("zod").ZodEnum<{
176
+ VALIDATION_FAILED: "VALIDATION_FAILED";
177
+ UNAUTHENTICATED: "UNAUTHENTICATED";
178
+ FORBIDDEN: "FORBIDDEN";
179
+ NOT_FOUND: "NOT_FOUND";
180
+ CONFLICT: "CONFLICT";
181
+ RATE_LIMITED: "RATE_LIMITED";
182
+ INTERNAL: "INTERNAL";
183
+ }>;
184
+ message: import("zod").ZodString;
185
+ details: import("zod").ZodOptional<import("zod").ZodUnknown>;
186
+ requestId: import("zod").ZodOptional<import("zod").ZodString>;
187
+ }, import("zod/v4/core").$strip>;
188
+ }, import("zod/v4/core").$strip>;
189
+ };
190
+ };
191
+ requestOtp: {
192
+ summary: "Request SMS OTP";
193
+ method: "POST";
194
+ body: import("zod").ZodObject<{
195
+ phone: import("zod").ZodString;
196
+ }, import("zod/v4/core").$strip>;
197
+ path: "/v1/auth/otp/request";
198
+ responses: {
199
+ 200: import("zod").ZodObject<{
200
+ ok: import("zod").ZodLiteral<true>;
201
+ data: import("zod").ZodObject<{
202
+ sent: import("zod").ZodLiteral<true>;
203
+ }, import("zod/v4/core").$strip>;
204
+ }, import("zod/v4/core").$strip>;
205
+ 429: import("zod").ZodObject<{
206
+ ok: import("zod").ZodLiteral<false>;
207
+ error: import("zod").ZodObject<{
208
+ code: import("zod").ZodEnum<{
209
+ VALIDATION_FAILED: "VALIDATION_FAILED";
210
+ UNAUTHENTICATED: "UNAUTHENTICATED";
211
+ FORBIDDEN: "FORBIDDEN";
212
+ NOT_FOUND: "NOT_FOUND";
213
+ CONFLICT: "CONFLICT";
214
+ RATE_LIMITED: "RATE_LIMITED";
215
+ INTERNAL: "INTERNAL";
216
+ }>;
217
+ message: import("zod").ZodString;
218
+ details: import("zod").ZodOptional<import("zod").ZodUnknown>;
219
+ requestId: import("zod").ZodOptional<import("zod").ZodString>;
220
+ }, import("zod/v4/core").$strip>;
221
+ }, import("zod/v4/core").$strip>;
222
+ 422: import("zod").ZodObject<{
223
+ ok: import("zod").ZodLiteral<false>;
224
+ error: import("zod").ZodObject<{
225
+ code: import("zod").ZodEnum<{
226
+ VALIDATION_FAILED: "VALIDATION_FAILED";
227
+ UNAUTHENTICATED: "UNAUTHENTICATED";
228
+ FORBIDDEN: "FORBIDDEN";
229
+ NOT_FOUND: "NOT_FOUND";
230
+ CONFLICT: "CONFLICT";
231
+ RATE_LIMITED: "RATE_LIMITED";
232
+ INTERNAL: "INTERNAL";
233
+ }>;
234
+ message: import("zod").ZodString;
235
+ details: import("zod").ZodOptional<import("zod").ZodUnknown>;
236
+ requestId: import("zod").ZodOptional<import("zod").ZodString>;
237
+ }, import("zod/v4/core").$strip>;
238
+ }, import("zod/v4/core").$strip>;
239
+ };
240
+ };
241
+ verifyOtp: {
242
+ summary: "Verify SMS OTP";
243
+ method: "POST";
244
+ body: import("zod").ZodObject<{
245
+ phone: import("zod").ZodString;
246
+ code: import("zod").ZodString;
247
+ }, import("zod/v4/core").$strip>;
248
+ path: "/v1/auth/otp/verify";
249
+ responses: {
250
+ 200: import("zod").ZodObject<{
251
+ ok: import("zod").ZodLiteral<true>;
252
+ data: import("zod").ZodObject<{
253
+ accessToken: import("zod").ZodString;
254
+ refreshToken: import("zod").ZodString;
255
+ expiresIn: import("zod").ZodNumber;
256
+ user: import("zod").ZodObject<{
257
+ id: import("zod").ZodString;
258
+ email: import("zod").ZodNullable<import("zod").ZodString>;
259
+ phone: import("zod").ZodNullable<import("zod").ZodString>;
260
+ displayName: import("zod").ZodString;
261
+ role: import("zod").ZodEnum<{
262
+ USER: "USER";
263
+ ADMIN: "ADMIN";
264
+ OPS: "OPS";
265
+ }>;
266
+ status: import("zod").ZodEnum<{
267
+ ACTIVE: "ACTIVE";
268
+ INVITED: "INVITED";
269
+ SUSPENDED: "SUSPENDED";
270
+ DELETED: "DELETED";
271
+ }>;
272
+ createdAt: import("zod").ZodISODateTime;
273
+ }, import("zod/v4/core").$strip>;
274
+ }, import("zod/v4/core").$strip>;
275
+ }, import("zod/v4/core").$strip>;
276
+ 401: import("zod").ZodObject<{
277
+ ok: import("zod").ZodLiteral<false>;
278
+ error: import("zod").ZodObject<{
279
+ code: import("zod").ZodEnum<{
280
+ VALIDATION_FAILED: "VALIDATION_FAILED";
281
+ UNAUTHENTICATED: "UNAUTHENTICATED";
282
+ FORBIDDEN: "FORBIDDEN";
283
+ NOT_FOUND: "NOT_FOUND";
284
+ CONFLICT: "CONFLICT";
285
+ RATE_LIMITED: "RATE_LIMITED";
286
+ INTERNAL: "INTERNAL";
287
+ }>;
288
+ message: import("zod").ZodString;
289
+ details: import("zod").ZodOptional<import("zod").ZodUnknown>;
290
+ requestId: import("zod").ZodOptional<import("zod").ZodString>;
291
+ }, import("zod/v4/core").$strip>;
292
+ }, import("zod/v4/core").$strip>;
293
+ 422: import("zod").ZodObject<{
294
+ ok: import("zod").ZodLiteral<false>;
295
+ error: import("zod").ZodObject<{
296
+ code: import("zod").ZodEnum<{
297
+ VALIDATION_FAILED: "VALIDATION_FAILED";
298
+ UNAUTHENTICATED: "UNAUTHENTICATED";
299
+ FORBIDDEN: "FORBIDDEN";
300
+ NOT_FOUND: "NOT_FOUND";
301
+ CONFLICT: "CONFLICT";
302
+ RATE_LIMITED: "RATE_LIMITED";
303
+ INTERNAL: "INTERNAL";
304
+ }>;
305
+ message: import("zod").ZodString;
306
+ details: import("zod").ZodOptional<import("zod").ZodUnknown>;
307
+ requestId: import("zod").ZodOptional<import("zod").ZodString>;
308
+ }, import("zod/v4/core").$strip>;
309
+ }, import("zod/v4/core").$strip>;
310
+ };
311
+ };
312
+ refresh: {
313
+ summary: "Rotate refresh token";
314
+ method: "POST";
315
+ body: import("zod").ZodObject<{
316
+ refreshToken: import("zod").ZodString;
317
+ }, import("zod/v4/core").$strip>;
318
+ path: "/v1/auth/refresh";
319
+ responses: {
320
+ 200: import("zod").ZodObject<{
321
+ ok: import("zod").ZodLiteral<true>;
322
+ data: import("zod").ZodObject<{
323
+ accessToken: import("zod").ZodString;
324
+ refreshToken: import("zod").ZodString;
325
+ expiresIn: import("zod").ZodNumber;
326
+ user: import("zod").ZodObject<{
327
+ id: import("zod").ZodString;
328
+ email: import("zod").ZodNullable<import("zod").ZodString>;
329
+ phone: import("zod").ZodNullable<import("zod").ZodString>;
330
+ displayName: import("zod").ZodString;
331
+ role: import("zod").ZodEnum<{
332
+ USER: "USER";
333
+ ADMIN: "ADMIN";
334
+ OPS: "OPS";
335
+ }>;
336
+ status: import("zod").ZodEnum<{
337
+ ACTIVE: "ACTIVE";
338
+ INVITED: "INVITED";
339
+ SUSPENDED: "SUSPENDED";
340
+ DELETED: "DELETED";
341
+ }>;
342
+ createdAt: import("zod").ZodISODateTime;
343
+ }, import("zod/v4/core").$strip>;
344
+ }, import("zod/v4/core").$strip>;
345
+ }, import("zod/v4/core").$strip>;
346
+ 401: import("zod").ZodObject<{
347
+ ok: import("zod").ZodLiteral<false>;
348
+ error: import("zod").ZodObject<{
349
+ code: import("zod").ZodEnum<{
350
+ VALIDATION_FAILED: "VALIDATION_FAILED";
351
+ UNAUTHENTICATED: "UNAUTHENTICATED";
352
+ FORBIDDEN: "FORBIDDEN";
353
+ NOT_FOUND: "NOT_FOUND";
354
+ CONFLICT: "CONFLICT";
355
+ RATE_LIMITED: "RATE_LIMITED";
356
+ INTERNAL: "INTERNAL";
357
+ }>;
358
+ message: import("zod").ZodString;
359
+ details: import("zod").ZodOptional<import("zod").ZodUnknown>;
360
+ requestId: import("zod").ZodOptional<import("zod").ZodString>;
361
+ }, import("zod/v4/core").$strip>;
362
+ }, import("zod/v4/core").$strip>;
363
+ };
364
+ };
365
+ logout: {
366
+ summary: "Revoke current session";
367
+ method: "POST";
368
+ body: import("zod").ZodOptional<import("zod").ZodObject<{}, import("zod/v4/core").$strip>>;
369
+ path: "/v1/auth/logout";
370
+ responses: {
371
+ 200: import("zod").ZodObject<{
372
+ ok: import("zod").ZodLiteral<true>;
373
+ data: import("zod").ZodObject<{
374
+ revoked: import("zod").ZodLiteral<true>;
375
+ }, import("zod/v4/core").$strip>;
376
+ }, import("zod/v4/core").$strip>;
377
+ 401: import("zod").ZodObject<{
378
+ ok: import("zod").ZodLiteral<false>;
379
+ error: import("zod").ZodObject<{
380
+ code: import("zod").ZodEnum<{
381
+ VALIDATION_FAILED: "VALIDATION_FAILED";
382
+ UNAUTHENTICATED: "UNAUTHENTICATED";
383
+ FORBIDDEN: "FORBIDDEN";
384
+ NOT_FOUND: "NOT_FOUND";
385
+ CONFLICT: "CONFLICT";
386
+ RATE_LIMITED: "RATE_LIMITED";
387
+ INTERNAL: "INTERNAL";
388
+ }>;
389
+ message: import("zod").ZodString;
390
+ details: import("zod").ZodOptional<import("zod").ZodUnknown>;
391
+ requestId: import("zod").ZodOptional<import("zod").ZodString>;
392
+ }, import("zod/v4/core").$strip>;
393
+ }, import("zod/v4/core").$strip>;
394
+ };
395
+ };
396
+ me: {
397
+ summary: "Current user";
398
+ method: "GET";
399
+ path: "/v1/me";
400
+ responses: {
401
+ 200: import("zod").ZodObject<{
402
+ ok: import("zod").ZodLiteral<true>;
403
+ data: import("zod").ZodObject<{
404
+ id: import("zod").ZodString;
405
+ email: import("zod").ZodNullable<import("zod").ZodString>;
406
+ phone: import("zod").ZodNullable<import("zod").ZodString>;
407
+ displayName: import("zod").ZodString;
408
+ role: import("zod").ZodEnum<{
409
+ USER: "USER";
410
+ ADMIN: "ADMIN";
411
+ OPS: "OPS";
412
+ }>;
413
+ status: import("zod").ZodEnum<{
414
+ ACTIVE: "ACTIVE";
415
+ INVITED: "INVITED";
416
+ SUSPENDED: "SUSPENDED";
417
+ DELETED: "DELETED";
418
+ }>;
419
+ createdAt: import("zod").ZodISODateTime;
420
+ }, import("zod/v4/core").$strip>;
421
+ }, import("zod/v4/core").$strip>;
422
+ 401: import("zod").ZodObject<{
423
+ ok: import("zod").ZodLiteral<false>;
424
+ error: import("zod").ZodObject<{
425
+ code: import("zod").ZodEnum<{
426
+ VALIDATION_FAILED: "VALIDATION_FAILED";
427
+ UNAUTHENTICATED: "UNAUTHENTICATED";
428
+ FORBIDDEN: "FORBIDDEN";
429
+ NOT_FOUND: "NOT_FOUND";
430
+ CONFLICT: "CONFLICT";
431
+ RATE_LIMITED: "RATE_LIMITED";
432
+ INTERNAL: "INTERNAL";
433
+ }>;
434
+ message: import("zod").ZodString;
435
+ details: import("zod").ZodOptional<import("zod").ZodUnknown>;
436
+ requestId: import("zod").ZodOptional<import("zod").ZodString>;
437
+ }, import("zod/v4/core").$strip>;
438
+ }, import("zod/v4/core").$strip>;
439
+ };
440
+ };
441
+ forgot: {
442
+ summary: "Request a password reset email";
443
+ method: "POST";
444
+ body: import("zod").ZodObject<{
445
+ email: import("zod").ZodString;
446
+ }, import("zod/v4/core").$strip>;
447
+ path: "/v1/auth/forgot";
448
+ responses: {
449
+ 200: import("zod").ZodObject<{
450
+ ok: import("zod").ZodLiteral<true>;
451
+ data: import("zod").ZodObject<{
452
+ accepted: import("zod").ZodLiteral<true>;
453
+ }, import("zod/v4/core").$strip>;
454
+ }, import("zod/v4/core").$strip>;
455
+ 422: import("zod").ZodObject<{
456
+ ok: import("zod").ZodLiteral<false>;
457
+ error: import("zod").ZodObject<{
458
+ code: import("zod").ZodEnum<{
459
+ VALIDATION_FAILED: "VALIDATION_FAILED";
460
+ UNAUTHENTICATED: "UNAUTHENTICATED";
461
+ FORBIDDEN: "FORBIDDEN";
462
+ NOT_FOUND: "NOT_FOUND";
463
+ CONFLICT: "CONFLICT";
464
+ RATE_LIMITED: "RATE_LIMITED";
465
+ INTERNAL: "INTERNAL";
466
+ }>;
467
+ message: import("zod").ZodString;
468
+ details: import("zod").ZodOptional<import("zod").ZodUnknown>;
469
+ requestId: import("zod").ZodOptional<import("zod").ZodString>;
470
+ }, import("zod/v4/core").$strip>;
471
+ }, import("zod/v4/core").$strip>;
472
+ };
473
+ };
474
+ reset: {
475
+ summary: "Reset password with token";
476
+ method: "POST";
477
+ body: import("zod").ZodObject<{
478
+ token: import("zod").ZodString;
479
+ password: import("zod").ZodString;
480
+ }, import("zod/v4/core").$strip>;
481
+ path: "/v1/auth/reset";
482
+ responses: {
483
+ 200: import("zod").ZodObject<{
484
+ ok: import("zod").ZodLiteral<true>;
485
+ data: import("zod").ZodObject<{
486
+ accepted: import("zod").ZodLiteral<true>;
487
+ }, import("zod/v4/core").$strip>;
488
+ }, import("zod/v4/core").$strip>;
489
+ 401: import("zod").ZodObject<{
490
+ ok: import("zod").ZodLiteral<false>;
491
+ error: import("zod").ZodObject<{
492
+ code: import("zod").ZodEnum<{
493
+ VALIDATION_FAILED: "VALIDATION_FAILED";
494
+ UNAUTHENTICATED: "UNAUTHENTICATED";
495
+ FORBIDDEN: "FORBIDDEN";
496
+ NOT_FOUND: "NOT_FOUND";
497
+ CONFLICT: "CONFLICT";
498
+ RATE_LIMITED: "RATE_LIMITED";
499
+ INTERNAL: "INTERNAL";
500
+ }>;
501
+ message: import("zod").ZodString;
502
+ details: import("zod").ZodOptional<import("zod").ZodUnknown>;
503
+ requestId: import("zod").ZodOptional<import("zod").ZodString>;
504
+ }, import("zod/v4/core").$strip>;
505
+ }, import("zod/v4/core").$strip>;
506
+ 422: import("zod").ZodObject<{
507
+ ok: import("zod").ZodLiteral<false>;
508
+ error: import("zod").ZodObject<{
509
+ code: import("zod").ZodEnum<{
510
+ VALIDATION_FAILED: "VALIDATION_FAILED";
511
+ UNAUTHENTICATED: "UNAUTHENTICATED";
512
+ FORBIDDEN: "FORBIDDEN";
513
+ NOT_FOUND: "NOT_FOUND";
514
+ CONFLICT: "CONFLICT";
515
+ RATE_LIMITED: "RATE_LIMITED";
516
+ INTERNAL: "INTERNAL";
517
+ }>;
518
+ message: import("zod").ZodString;
519
+ details: import("zod").ZodOptional<import("zod").ZodUnknown>;
520
+ requestId: import("zod").ZodOptional<import("zod").ZodString>;
521
+ }, import("zod/v4/core").$strip>;
522
+ }, import("zod/v4/core").$strip>;
523
+ };
524
+ };
525
+ requestAdminOtp: {
526
+ summary: "Request admin email OTP";
527
+ method: "POST";
528
+ body: import("zod").ZodObject<{
529
+ email: import("zod").ZodString;
530
+ }, import("zod/v4/core").$strip>;
531
+ path: "/v1/auth/admin/otp/request";
532
+ responses: {
533
+ 200: import("zod").ZodObject<{
534
+ ok: import("zod").ZodLiteral<true>;
535
+ data: import("zod").ZodObject<{
536
+ sent: import("zod").ZodLiteral<true>;
537
+ }, import("zod/v4/core").$strip>;
538
+ }, import("zod/v4/core").$strip>;
539
+ 429: import("zod").ZodObject<{
540
+ ok: import("zod").ZodLiteral<false>;
541
+ error: import("zod").ZodObject<{
542
+ code: import("zod").ZodEnum<{
543
+ VALIDATION_FAILED: "VALIDATION_FAILED";
544
+ UNAUTHENTICATED: "UNAUTHENTICATED";
545
+ FORBIDDEN: "FORBIDDEN";
546
+ NOT_FOUND: "NOT_FOUND";
547
+ CONFLICT: "CONFLICT";
548
+ RATE_LIMITED: "RATE_LIMITED";
549
+ INTERNAL: "INTERNAL";
550
+ }>;
551
+ message: import("zod").ZodString;
552
+ details: import("zod").ZodOptional<import("zod").ZodUnknown>;
553
+ requestId: import("zod").ZodOptional<import("zod").ZodString>;
554
+ }, import("zod/v4/core").$strip>;
555
+ }, import("zod/v4/core").$strip>;
556
+ 422: import("zod").ZodObject<{
557
+ ok: import("zod").ZodLiteral<false>;
558
+ error: import("zod").ZodObject<{
559
+ code: import("zod").ZodEnum<{
560
+ VALIDATION_FAILED: "VALIDATION_FAILED";
561
+ UNAUTHENTICATED: "UNAUTHENTICATED";
562
+ FORBIDDEN: "FORBIDDEN";
563
+ NOT_FOUND: "NOT_FOUND";
564
+ CONFLICT: "CONFLICT";
565
+ RATE_LIMITED: "RATE_LIMITED";
566
+ INTERNAL: "INTERNAL";
567
+ }>;
568
+ message: import("zod").ZodString;
569
+ details: import("zod").ZodOptional<import("zod").ZodUnknown>;
570
+ requestId: import("zod").ZodOptional<import("zod").ZodString>;
571
+ }, import("zod/v4/core").$strip>;
572
+ }, import("zod/v4/core").$strip>;
573
+ };
574
+ };
575
+ verifyAdminOtp: {
576
+ summary: "Verify admin email OTP";
577
+ method: "POST";
578
+ body: import("zod").ZodObject<{
579
+ email: import("zod").ZodString;
580
+ code: import("zod").ZodString;
581
+ }, import("zod/v4/core").$strip>;
582
+ path: "/v1/auth/admin/otp/verify";
583
+ responses: {
584
+ 200: import("zod").ZodObject<{
585
+ ok: import("zod").ZodLiteral<true>;
586
+ data: import("zod").ZodObject<{
587
+ accessToken: import("zod").ZodString;
588
+ refreshToken: import("zod").ZodString;
589
+ expiresIn: import("zod").ZodNumber;
590
+ user: import("zod").ZodObject<{
591
+ id: import("zod").ZodString;
592
+ email: import("zod").ZodNullable<import("zod").ZodString>;
593
+ phone: import("zod").ZodNullable<import("zod").ZodString>;
594
+ displayName: import("zod").ZodString;
595
+ role: import("zod").ZodEnum<{
596
+ USER: "USER";
597
+ ADMIN: "ADMIN";
598
+ OPS: "OPS";
599
+ }>;
600
+ status: import("zod").ZodEnum<{
601
+ ACTIVE: "ACTIVE";
602
+ INVITED: "INVITED";
603
+ SUSPENDED: "SUSPENDED";
604
+ DELETED: "DELETED";
605
+ }>;
606
+ createdAt: import("zod").ZodISODateTime;
607
+ }, import("zod/v4/core").$strip>;
608
+ }, import("zod/v4/core").$strip>;
609
+ }, import("zod/v4/core").$strip>;
610
+ 401: import("zod").ZodObject<{
611
+ ok: import("zod").ZodLiteral<false>;
612
+ error: import("zod").ZodObject<{
613
+ code: import("zod").ZodEnum<{
614
+ VALIDATION_FAILED: "VALIDATION_FAILED";
615
+ UNAUTHENTICATED: "UNAUTHENTICATED";
616
+ FORBIDDEN: "FORBIDDEN";
617
+ NOT_FOUND: "NOT_FOUND";
618
+ CONFLICT: "CONFLICT";
619
+ RATE_LIMITED: "RATE_LIMITED";
620
+ INTERNAL: "INTERNAL";
621
+ }>;
622
+ message: import("zod").ZodString;
623
+ details: import("zod").ZodOptional<import("zod").ZodUnknown>;
624
+ requestId: import("zod").ZodOptional<import("zod").ZodString>;
625
+ }, import("zod/v4/core").$strip>;
626
+ }, import("zod/v4/core").$strip>;
627
+ 422: import("zod").ZodObject<{
628
+ ok: import("zod").ZodLiteral<false>;
629
+ error: import("zod").ZodObject<{
630
+ code: import("zod").ZodEnum<{
631
+ VALIDATION_FAILED: "VALIDATION_FAILED";
632
+ UNAUTHENTICATED: "UNAUTHENTICATED";
633
+ FORBIDDEN: "FORBIDDEN";
634
+ NOT_FOUND: "NOT_FOUND";
635
+ CONFLICT: "CONFLICT";
636
+ RATE_LIMITED: "RATE_LIMITED";
637
+ INTERNAL: "INTERNAL";
638
+ }>;
639
+ message: import("zod").ZodString;
640
+ details: import("zod").ZodOptional<import("zod").ZodUnknown>;
641
+ requestId: import("zod").ZodOptional<import("zod").ZodString>;
642
+ }, import("zod/v4/core").$strip>;
643
+ }, import("zod/v4/core").$strip>;
644
+ };
645
+ };
646
+ };
647
+ users: {
648
+ list: {
649
+ query: import("zod").ZodObject<{
650
+ cursor: import("zod").ZodOptional<import("zod").ZodString>;
651
+ limit: import("zod").ZodDefault<import("zod").ZodCoercedNumber<unknown>>;
652
+ }, import("zod/v4/core").$strip>;
653
+ summary: "List users";
654
+ method: "GET";
655
+ path: "/v1/users";
656
+ responses: {
657
+ 200: import("zod").ZodObject<{
658
+ ok: import("zod").ZodLiteral<true>;
659
+ data: import("zod").ZodObject<{
660
+ items: import("zod").ZodArray<import("zod").ZodObject<{
661
+ id: import("zod").ZodString;
662
+ email: import("zod").ZodNullable<import("zod").ZodString>;
663
+ phone: import("zod").ZodNullable<import("zod").ZodString>;
664
+ displayName: import("zod").ZodString;
665
+ role: import("zod").ZodEnum<{
666
+ USER: "USER";
667
+ ADMIN: "ADMIN";
668
+ OPS: "OPS";
669
+ }>;
670
+ status: import("zod").ZodEnum<{
671
+ ACTIVE: "ACTIVE";
672
+ INVITED: "INVITED";
673
+ SUSPENDED: "SUSPENDED";
674
+ DELETED: "DELETED";
675
+ }>;
676
+ createdAt: import("zod").ZodISODateTime;
677
+ }, import("zod/v4/core").$strip>>;
678
+ nextCursor: import("zod").ZodNullable<import("zod").ZodString>;
679
+ }, import("zod/v4/core").$strip>;
680
+ }, import("zod/v4/core").$strip>;
681
+ };
682
+ };
683
+ create: {
684
+ summary: "Create user";
685
+ method: "POST";
686
+ body: import("zod").ZodObject<{
687
+ email: import("zod").ZodString;
688
+ displayName: import("zod").ZodString;
689
+ role: import("zod").ZodDefault<import("zod").ZodEnum<{
690
+ USER: "USER";
691
+ ADMIN: "ADMIN";
692
+ OPS: "OPS";
693
+ }>>;
694
+ }, import("zod/v4/core").$strip>;
695
+ path: "/v1/users";
696
+ responses: {
697
+ 201: import("zod").ZodObject<{
698
+ ok: import("zod").ZodLiteral<true>;
699
+ data: import("zod").ZodObject<{
700
+ id: import("zod").ZodString;
701
+ email: import("zod").ZodNullable<import("zod").ZodString>;
702
+ phone: import("zod").ZodNullable<import("zod").ZodString>;
703
+ displayName: import("zod").ZodString;
704
+ role: import("zod").ZodEnum<{
705
+ USER: "USER";
706
+ ADMIN: "ADMIN";
707
+ OPS: "OPS";
708
+ }>;
709
+ status: import("zod").ZodEnum<{
710
+ ACTIVE: "ACTIVE";
711
+ INVITED: "INVITED";
712
+ SUSPENDED: "SUSPENDED";
713
+ DELETED: "DELETED";
714
+ }>;
715
+ createdAt: import("zod").ZodISODateTime;
716
+ }, import("zod/v4/core").$strip>;
717
+ }, import("zod/v4/core").$strip>;
718
+ 409: import("zod").ZodObject<{
719
+ ok: import("zod").ZodLiteral<false>;
720
+ error: import("zod").ZodObject<{
721
+ code: import("zod").ZodEnum<{
722
+ VALIDATION_FAILED: "VALIDATION_FAILED";
723
+ UNAUTHENTICATED: "UNAUTHENTICATED";
724
+ FORBIDDEN: "FORBIDDEN";
725
+ NOT_FOUND: "NOT_FOUND";
726
+ CONFLICT: "CONFLICT";
727
+ RATE_LIMITED: "RATE_LIMITED";
728
+ INTERNAL: "INTERNAL";
729
+ }>;
730
+ message: import("zod").ZodString;
731
+ details: import("zod").ZodOptional<import("zod").ZodUnknown>;
732
+ requestId: import("zod").ZodOptional<import("zod").ZodString>;
733
+ }, import("zod/v4/core").$strip>;
734
+ }, import("zod/v4/core").$strip>;
735
+ 422: import("zod").ZodObject<{
736
+ ok: import("zod").ZodLiteral<false>;
737
+ error: import("zod").ZodObject<{
738
+ code: import("zod").ZodEnum<{
739
+ VALIDATION_FAILED: "VALIDATION_FAILED";
740
+ UNAUTHENTICATED: "UNAUTHENTICATED";
741
+ FORBIDDEN: "FORBIDDEN";
742
+ NOT_FOUND: "NOT_FOUND";
743
+ CONFLICT: "CONFLICT";
744
+ RATE_LIMITED: "RATE_LIMITED";
745
+ INTERNAL: "INTERNAL";
746
+ }>;
747
+ message: import("zod").ZodString;
748
+ details: import("zod").ZodOptional<import("zod").ZodUnknown>;
749
+ requestId: import("zod").ZodOptional<import("zod").ZodString>;
750
+ }, import("zod/v4/core").$strip>;
751
+ }, import("zod/v4/core").$strip>;
752
+ };
753
+ };
754
+ suspend: {
755
+ pathParams: import("zod").ZodObject<{
756
+ id: import("zod").ZodString;
757
+ }, import("zod/v4/core").$strip>;
758
+ summary: "Suspend a user";
759
+ method: "POST";
760
+ body: import("zod").ZodOptional<import("zod").ZodObject<{}, import("zod/v4/core").$strip>>;
761
+ path: "/v1/users/:id/suspend";
762
+ responses: {
763
+ 200: import("zod").ZodObject<{
764
+ ok: import("zod").ZodLiteral<true>;
765
+ data: import("zod").ZodObject<{
766
+ id: import("zod").ZodString;
767
+ email: import("zod").ZodNullable<import("zod").ZodString>;
768
+ phone: import("zod").ZodNullable<import("zod").ZodString>;
769
+ displayName: import("zod").ZodString;
770
+ role: import("zod").ZodEnum<{
771
+ USER: "USER";
772
+ ADMIN: "ADMIN";
773
+ OPS: "OPS";
774
+ }>;
775
+ status: import("zod").ZodEnum<{
776
+ ACTIVE: "ACTIVE";
777
+ INVITED: "INVITED";
778
+ SUSPENDED: "SUSPENDED";
779
+ DELETED: "DELETED";
780
+ }>;
781
+ createdAt: import("zod").ZodISODateTime;
782
+ }, import("zod/v4/core").$strip>;
783
+ }, import("zod/v4/core").$strip>;
784
+ 401: import("zod").ZodObject<{
785
+ ok: import("zod").ZodLiteral<false>;
786
+ error: import("zod").ZodObject<{
787
+ code: import("zod").ZodEnum<{
788
+ VALIDATION_FAILED: "VALIDATION_FAILED";
789
+ UNAUTHENTICATED: "UNAUTHENTICATED";
790
+ FORBIDDEN: "FORBIDDEN";
791
+ NOT_FOUND: "NOT_FOUND";
792
+ CONFLICT: "CONFLICT";
793
+ RATE_LIMITED: "RATE_LIMITED";
794
+ INTERNAL: "INTERNAL";
795
+ }>;
796
+ message: import("zod").ZodString;
797
+ details: import("zod").ZodOptional<import("zod").ZodUnknown>;
798
+ requestId: import("zod").ZodOptional<import("zod").ZodString>;
799
+ }, import("zod/v4/core").$strip>;
800
+ }, import("zod/v4/core").$strip>;
801
+ 403: import("zod").ZodObject<{
802
+ ok: import("zod").ZodLiteral<false>;
803
+ error: import("zod").ZodObject<{
804
+ code: import("zod").ZodEnum<{
805
+ VALIDATION_FAILED: "VALIDATION_FAILED";
806
+ UNAUTHENTICATED: "UNAUTHENTICATED";
807
+ FORBIDDEN: "FORBIDDEN";
808
+ NOT_FOUND: "NOT_FOUND";
809
+ CONFLICT: "CONFLICT";
810
+ RATE_LIMITED: "RATE_LIMITED";
811
+ INTERNAL: "INTERNAL";
812
+ }>;
813
+ message: import("zod").ZodString;
814
+ details: import("zod").ZodOptional<import("zod").ZodUnknown>;
815
+ requestId: import("zod").ZodOptional<import("zod").ZodString>;
816
+ }, import("zod/v4/core").$strip>;
817
+ }, import("zod/v4/core").$strip>;
818
+ 404: import("zod").ZodObject<{
819
+ ok: import("zod").ZodLiteral<false>;
820
+ error: import("zod").ZodObject<{
821
+ code: import("zod").ZodEnum<{
822
+ VALIDATION_FAILED: "VALIDATION_FAILED";
823
+ UNAUTHENTICATED: "UNAUTHENTICATED";
824
+ FORBIDDEN: "FORBIDDEN";
825
+ NOT_FOUND: "NOT_FOUND";
826
+ CONFLICT: "CONFLICT";
827
+ RATE_LIMITED: "RATE_LIMITED";
828
+ INTERNAL: "INTERNAL";
829
+ }>;
830
+ message: import("zod").ZodString;
831
+ details: import("zod").ZodOptional<import("zod").ZodUnknown>;
832
+ requestId: import("zod").ZodOptional<import("zod").ZodString>;
833
+ }, import("zod/v4/core").$strip>;
834
+ }, import("zod/v4/core").$strip>;
835
+ };
836
+ };
837
+ };
838
+ audit: {
839
+ list: {
840
+ query: import("zod").ZodObject<{
841
+ cursor: import("zod").ZodOptional<import("zod").ZodString>;
842
+ limit: import("zod").ZodDefault<import("zod").ZodCoercedNumber<unknown>>;
843
+ }, import("zod/v4/core").$strip>;
844
+ summary: "List audit logs";
845
+ method: "GET";
846
+ path: "/v1/audit-logs";
847
+ responses: {
848
+ 200: import("zod").ZodObject<{
849
+ ok: import("zod").ZodLiteral<true>;
850
+ data: import("zod").ZodObject<{
851
+ items: import("zod").ZodArray<import("zod").ZodObject<{
852
+ id: import("zod").ZodString;
853
+ actorId: import("zod").ZodNullable<import("zod").ZodString>;
854
+ action: import("zod").ZodEnum<{
855
+ "user.create": "user.create";
856
+ "user.suspend": "user.suspend";
857
+ "file.upload": "file.upload";
858
+ "auth.register": "auth.register";
859
+ "auth.login": "auth.login";
860
+ "auth.logout": "auth.logout";
861
+ "auth.reset": "auth.reset";
862
+ "org.create": "org.create";
863
+ "org.invite": "org.invite";
864
+ "org.member.remove": "org.member.remove";
865
+ "api_key.create": "api_key.create";
866
+ "api_key.revoke": "api_key.revoke";
867
+ }>;
868
+ resourceType: import("zod").ZodString;
869
+ resourceId: import("zod").ZodString;
870
+ createdAt: import("zod").ZodISODateTime;
871
+ }, import("zod/v4/core").$strip>>;
872
+ nextCursor: import("zod").ZodNullable<import("zod").ZodString>;
873
+ }, import("zod/v4/core").$strip>;
874
+ }, import("zod/v4/core").$strip>;
875
+ 401: import("zod").ZodObject<{
876
+ ok: import("zod").ZodLiteral<false>;
877
+ error: import("zod").ZodObject<{
878
+ code: import("zod").ZodEnum<{
879
+ VALIDATION_FAILED: "VALIDATION_FAILED";
880
+ UNAUTHENTICATED: "UNAUTHENTICATED";
881
+ FORBIDDEN: "FORBIDDEN";
882
+ NOT_FOUND: "NOT_FOUND";
883
+ CONFLICT: "CONFLICT";
884
+ RATE_LIMITED: "RATE_LIMITED";
885
+ INTERNAL: "INTERNAL";
886
+ }>;
887
+ message: import("zod").ZodString;
888
+ details: import("zod").ZodOptional<import("zod").ZodUnknown>;
889
+ requestId: import("zod").ZodOptional<import("zod").ZodString>;
890
+ }, import("zod/v4/core").$strip>;
891
+ }, import("zod/v4/core").$strip>;
892
+ 403: import("zod").ZodObject<{
893
+ ok: import("zod").ZodLiteral<false>;
894
+ error: import("zod").ZodObject<{
895
+ code: import("zod").ZodEnum<{
896
+ VALIDATION_FAILED: "VALIDATION_FAILED";
897
+ UNAUTHENTICATED: "UNAUTHENTICATED";
898
+ FORBIDDEN: "FORBIDDEN";
899
+ NOT_FOUND: "NOT_FOUND";
900
+ CONFLICT: "CONFLICT";
901
+ RATE_LIMITED: "RATE_LIMITED";
902
+ INTERNAL: "INTERNAL";
903
+ }>;
904
+ message: import("zod").ZodString;
905
+ details: import("zod").ZodOptional<import("zod").ZodUnknown>;
906
+ requestId: import("zod").ZodOptional<import("zod").ZodString>;
907
+ }, import("zod/v4/core").$strip>;
908
+ }, import("zod/v4/core").$strip>;
909
+ };
910
+ };
911
+ };
912
+ files: {
913
+ presign: {
914
+ summary: "Presign an upload";
915
+ method: "POST";
916
+ body: import("zod").ZodObject<{
917
+ mime: import("zod").ZodString;
918
+ byteSize: import("zod").ZodNumber;
919
+ filename: import("zod").ZodString;
920
+ }, import("zod/v4/core").$strip>;
921
+ path: "/v1/files/presign";
922
+ responses: {
923
+ 201: import("zod").ZodObject<{
924
+ ok: import("zod").ZodLiteral<true>;
925
+ data: import("zod").ZodObject<{
926
+ fileId: import("zod").ZodString;
927
+ uploadUrl: import("zod").ZodString;
928
+ headers: import("zod").ZodRecord<import("zod").ZodString, import("zod").ZodString>;
929
+ }, import("zod/v4/core").$strip>;
930
+ }, import("zod/v4/core").$strip>;
931
+ 401: import("zod").ZodObject<{
932
+ ok: import("zod").ZodLiteral<false>;
933
+ error: import("zod").ZodObject<{
934
+ code: import("zod").ZodEnum<{
935
+ VALIDATION_FAILED: "VALIDATION_FAILED";
936
+ UNAUTHENTICATED: "UNAUTHENTICATED";
937
+ FORBIDDEN: "FORBIDDEN";
938
+ NOT_FOUND: "NOT_FOUND";
939
+ CONFLICT: "CONFLICT";
940
+ RATE_LIMITED: "RATE_LIMITED";
941
+ INTERNAL: "INTERNAL";
942
+ }>;
943
+ message: import("zod").ZodString;
944
+ details: import("zod").ZodOptional<import("zod").ZodUnknown>;
945
+ requestId: import("zod").ZodOptional<import("zod").ZodString>;
946
+ }, import("zod/v4/core").$strip>;
947
+ }, import("zod/v4/core").$strip>;
948
+ 403: import("zod").ZodObject<{
949
+ ok: import("zod").ZodLiteral<false>;
950
+ error: import("zod").ZodObject<{
951
+ code: import("zod").ZodEnum<{
952
+ VALIDATION_FAILED: "VALIDATION_FAILED";
953
+ UNAUTHENTICATED: "UNAUTHENTICATED";
954
+ FORBIDDEN: "FORBIDDEN";
955
+ NOT_FOUND: "NOT_FOUND";
956
+ CONFLICT: "CONFLICT";
957
+ RATE_LIMITED: "RATE_LIMITED";
958
+ INTERNAL: "INTERNAL";
959
+ }>;
960
+ message: import("zod").ZodString;
961
+ details: import("zod").ZodOptional<import("zod").ZodUnknown>;
962
+ requestId: import("zod").ZodOptional<import("zod").ZodString>;
963
+ }, import("zod/v4/core").$strip>;
964
+ }, import("zod/v4/core").$strip>;
965
+ 422: import("zod").ZodObject<{
966
+ ok: import("zod").ZodLiteral<false>;
967
+ error: import("zod").ZodObject<{
968
+ code: import("zod").ZodEnum<{
969
+ VALIDATION_FAILED: "VALIDATION_FAILED";
970
+ UNAUTHENTICATED: "UNAUTHENTICATED";
971
+ FORBIDDEN: "FORBIDDEN";
972
+ NOT_FOUND: "NOT_FOUND";
973
+ CONFLICT: "CONFLICT";
974
+ RATE_LIMITED: "RATE_LIMITED";
975
+ INTERNAL: "INTERNAL";
976
+ }>;
977
+ message: import("zod").ZodString;
978
+ details: import("zod").ZodOptional<import("zod").ZodUnknown>;
979
+ requestId: import("zod").ZodOptional<import("zod").ZodString>;
980
+ }, import("zod/v4/core").$strip>;
981
+ }, import("zod/v4/core").$strip>;
982
+ };
983
+ };
984
+ };
985
+ notifications: {
986
+ list: {
987
+ query: import("zod").ZodObject<{
988
+ cursor: import("zod").ZodOptional<import("zod").ZodString>;
989
+ limit: import("zod").ZodDefault<import("zod").ZodCoercedNumber<unknown>>;
990
+ }, import("zod/v4/core").$strip>;
991
+ summary: "List my notifications";
992
+ method: "GET";
993
+ path: "/v1/notifications";
994
+ responses: {
995
+ 200: import("zod").ZodObject<{
996
+ ok: import("zod").ZodLiteral<true>;
997
+ data: import("zod").ZodObject<{
998
+ items: import("zod").ZodArray<import("zod").ZodObject<{
999
+ id: import("zod").ZodString;
1000
+ type: import("zod").ZodEnum<{
1001
+ "auth.reset": "auth.reset";
1002
+ "auth.welcome": "auth.welcome";
1003
+ "user.created": "user.created";
1004
+ "org.invited": "org.invited";
1005
+ }>;
1006
+ title: import("zod").ZodString;
1007
+ body: import("zod").ZodString;
1008
+ readAt: import("zod").ZodNullable<import("zod").ZodISODateTime>;
1009
+ createdAt: import("zod").ZodISODateTime;
1010
+ }, import("zod/v4/core").$strip>>;
1011
+ nextCursor: import("zod").ZodNullable<import("zod").ZodString>;
1012
+ }, import("zod/v4/core").$strip>;
1013
+ }, import("zod/v4/core").$strip>;
1014
+ 401: import("zod").ZodObject<{
1015
+ ok: import("zod").ZodLiteral<false>;
1016
+ error: import("zod").ZodObject<{
1017
+ code: import("zod").ZodEnum<{
1018
+ VALIDATION_FAILED: "VALIDATION_FAILED";
1019
+ UNAUTHENTICATED: "UNAUTHENTICATED";
1020
+ FORBIDDEN: "FORBIDDEN";
1021
+ NOT_FOUND: "NOT_FOUND";
1022
+ CONFLICT: "CONFLICT";
1023
+ RATE_LIMITED: "RATE_LIMITED";
1024
+ INTERNAL: "INTERNAL";
1025
+ }>;
1026
+ message: import("zod").ZodString;
1027
+ details: import("zod").ZodOptional<import("zod").ZodUnknown>;
1028
+ requestId: import("zod").ZodOptional<import("zod").ZodString>;
1029
+ }, import("zod/v4/core").$strip>;
1030
+ }, import("zod/v4/core").$strip>;
1031
+ };
1032
+ };
1033
+ markRead: {
1034
+ pathParams: import("zod").ZodObject<{
1035
+ id: import("zod").ZodString;
1036
+ }, import("zod/v4/core").$strip>;
1037
+ summary: "Mark a notification as read";
1038
+ method: "POST";
1039
+ body: import("zod").ZodOptional<import("zod").ZodObject<{}, import("zod/v4/core").$strip>>;
1040
+ path: "/v1/notifications/:id/read";
1041
+ responses: {
1042
+ 200: import("zod").ZodObject<{
1043
+ ok: import("zod").ZodLiteral<true>;
1044
+ data: import("zod").ZodObject<{
1045
+ read: import("zod").ZodLiteral<true>;
1046
+ }, import("zod/v4/core").$strip>;
1047
+ }, import("zod/v4/core").$strip>;
1048
+ 401: import("zod").ZodObject<{
1049
+ ok: import("zod").ZodLiteral<false>;
1050
+ error: import("zod").ZodObject<{
1051
+ code: import("zod").ZodEnum<{
1052
+ VALIDATION_FAILED: "VALIDATION_FAILED";
1053
+ UNAUTHENTICATED: "UNAUTHENTICATED";
1054
+ FORBIDDEN: "FORBIDDEN";
1055
+ NOT_FOUND: "NOT_FOUND";
1056
+ CONFLICT: "CONFLICT";
1057
+ RATE_LIMITED: "RATE_LIMITED";
1058
+ INTERNAL: "INTERNAL";
1059
+ }>;
1060
+ message: import("zod").ZodString;
1061
+ details: import("zod").ZodOptional<import("zod").ZodUnknown>;
1062
+ requestId: import("zod").ZodOptional<import("zod").ZodString>;
1063
+ }, import("zod/v4/core").$strip>;
1064
+ }, import("zod/v4/core").$strip>;
1065
+ 404: import("zod").ZodObject<{
1066
+ ok: import("zod").ZodLiteral<false>;
1067
+ error: import("zod").ZodObject<{
1068
+ code: import("zod").ZodEnum<{
1069
+ VALIDATION_FAILED: "VALIDATION_FAILED";
1070
+ UNAUTHENTICATED: "UNAUTHENTICATED";
1071
+ FORBIDDEN: "FORBIDDEN";
1072
+ NOT_FOUND: "NOT_FOUND";
1073
+ CONFLICT: "CONFLICT";
1074
+ RATE_LIMITED: "RATE_LIMITED";
1075
+ INTERNAL: "INTERNAL";
1076
+ }>;
1077
+ message: import("zod").ZodString;
1078
+ details: import("zod").ZodOptional<import("zod").ZodUnknown>;
1079
+ requestId: import("zod").ZodOptional<import("zod").ZodString>;
1080
+ }, import("zod/v4/core").$strip>;
1081
+ }, import("zod/v4/core").$strip>;
1082
+ };
1083
+ };
1084
+ };
1085
+ llm: {
1086
+ complete: {
1087
+ summary: "One-shot chat completion";
1088
+ method: "POST";
1089
+ body: import("zod").ZodObject<{
1090
+ messages: import("zod").ZodArray<import("zod").ZodObject<{
1091
+ role: import("zod").ZodEnum<{
1092
+ user: "user";
1093
+ system: "system";
1094
+ assistant: "assistant";
1095
+ }>;
1096
+ content: import("zod").ZodString;
1097
+ }, import("zod/v4/core").$strip>>;
1098
+ temperature: import("zod").ZodOptional<import("zod").ZodNumber>;
1099
+ }, import("zod/v4/core").$strip>;
1100
+ path: "/v1/llm/complete";
1101
+ responses: {
1102
+ 200: import("zod").ZodObject<{
1103
+ ok: import("zod").ZodLiteral<true>;
1104
+ data: import("zod").ZodObject<{
1105
+ text: import("zod").ZodString;
1106
+ model: import("zod").ZodString;
1107
+ usage: import("zod").ZodObject<{
1108
+ promptTokens: import("zod").ZodNumber;
1109
+ completionTokens: import("zod").ZodNumber;
1110
+ totalTokens: import("zod").ZodNumber;
1111
+ }, import("zod/v4/core").$strip>;
1112
+ }, import("zod/v4/core").$strip>;
1113
+ }, import("zod/v4/core").$strip>;
1114
+ 401: import("zod").ZodObject<{
1115
+ ok: import("zod").ZodLiteral<false>;
1116
+ error: import("zod").ZodObject<{
1117
+ code: import("zod").ZodEnum<{
1118
+ VALIDATION_FAILED: "VALIDATION_FAILED";
1119
+ UNAUTHENTICATED: "UNAUTHENTICATED";
1120
+ FORBIDDEN: "FORBIDDEN";
1121
+ NOT_FOUND: "NOT_FOUND";
1122
+ CONFLICT: "CONFLICT";
1123
+ RATE_LIMITED: "RATE_LIMITED";
1124
+ INTERNAL: "INTERNAL";
1125
+ }>;
1126
+ message: import("zod").ZodString;
1127
+ details: import("zod").ZodOptional<import("zod").ZodUnknown>;
1128
+ requestId: import("zod").ZodOptional<import("zod").ZodString>;
1129
+ }, import("zod/v4/core").$strip>;
1130
+ }, import("zod/v4/core").$strip>;
1131
+ 403: import("zod").ZodObject<{
1132
+ ok: import("zod").ZodLiteral<false>;
1133
+ error: import("zod").ZodObject<{
1134
+ code: import("zod").ZodEnum<{
1135
+ VALIDATION_FAILED: "VALIDATION_FAILED";
1136
+ UNAUTHENTICATED: "UNAUTHENTICATED";
1137
+ FORBIDDEN: "FORBIDDEN";
1138
+ NOT_FOUND: "NOT_FOUND";
1139
+ CONFLICT: "CONFLICT";
1140
+ RATE_LIMITED: "RATE_LIMITED";
1141
+ INTERNAL: "INTERNAL";
1142
+ }>;
1143
+ message: import("zod").ZodString;
1144
+ details: import("zod").ZodOptional<import("zod").ZodUnknown>;
1145
+ requestId: import("zod").ZodOptional<import("zod").ZodString>;
1146
+ }, import("zod/v4/core").$strip>;
1147
+ }, import("zod/v4/core").$strip>;
1148
+ 503: import("zod").ZodObject<{
1149
+ ok: import("zod").ZodLiteral<false>;
1150
+ error: import("zod").ZodObject<{
1151
+ code: import("zod").ZodEnum<{
1152
+ VALIDATION_FAILED: "VALIDATION_FAILED";
1153
+ UNAUTHENTICATED: "UNAUTHENTICATED";
1154
+ FORBIDDEN: "FORBIDDEN";
1155
+ NOT_FOUND: "NOT_FOUND";
1156
+ CONFLICT: "CONFLICT";
1157
+ RATE_LIMITED: "RATE_LIMITED";
1158
+ INTERNAL: "INTERNAL";
1159
+ }>;
1160
+ message: import("zod").ZodString;
1161
+ details: import("zod").ZodOptional<import("zod").ZodUnknown>;
1162
+ requestId: import("zod").ZodOptional<import("zod").ZodString>;
1163
+ }, import("zod/v4/core").$strip>;
1164
+ }, import("zod/v4/core").$strip>;
1165
+ };
1166
+ };
1167
+ models: {
1168
+ summary: "Configured models";
1169
+ method: "GET";
1170
+ path: "/v1/llm/models";
1171
+ responses: {
1172
+ 200: import("zod").ZodObject<{
1173
+ ok: import("zod").ZodLiteral<true>;
1174
+ data: import("zod").ZodObject<{
1175
+ items: import("zod").ZodArray<import("zod").ZodObject<{
1176
+ id: import("zod").ZodString;
1177
+ }, import("zod/v4/core").$strip>>;
1178
+ }, import("zod/v4/core").$strip>;
1179
+ }, import("zod/v4/core").$strip>;
1180
+ 401: import("zod").ZodObject<{
1181
+ ok: import("zod").ZodLiteral<false>;
1182
+ error: import("zod").ZodObject<{
1183
+ code: import("zod").ZodEnum<{
1184
+ VALIDATION_FAILED: "VALIDATION_FAILED";
1185
+ UNAUTHENTICATED: "UNAUTHENTICATED";
1186
+ FORBIDDEN: "FORBIDDEN";
1187
+ NOT_FOUND: "NOT_FOUND";
1188
+ CONFLICT: "CONFLICT";
1189
+ RATE_LIMITED: "RATE_LIMITED";
1190
+ INTERNAL: "INTERNAL";
1191
+ }>;
1192
+ message: import("zod").ZodString;
1193
+ details: import("zod").ZodOptional<import("zod").ZodUnknown>;
1194
+ requestId: import("zod").ZodOptional<import("zod").ZodString>;
1195
+ }, import("zod/v4/core").$strip>;
1196
+ }, import("zod/v4/core").$strip>;
1197
+ 403: import("zod").ZodObject<{
1198
+ ok: import("zod").ZodLiteral<false>;
1199
+ error: import("zod").ZodObject<{
1200
+ code: import("zod").ZodEnum<{
1201
+ VALIDATION_FAILED: "VALIDATION_FAILED";
1202
+ UNAUTHENTICATED: "UNAUTHENTICATED";
1203
+ FORBIDDEN: "FORBIDDEN";
1204
+ NOT_FOUND: "NOT_FOUND";
1205
+ CONFLICT: "CONFLICT";
1206
+ RATE_LIMITED: "RATE_LIMITED";
1207
+ INTERNAL: "INTERNAL";
1208
+ }>;
1209
+ message: import("zod").ZodString;
1210
+ details: import("zod").ZodOptional<import("zod").ZodUnknown>;
1211
+ requestId: import("zod").ZodOptional<import("zod").ZodString>;
1212
+ }, import("zod/v4/core").$strip>;
1213
+ }, import("zod/v4/core").$strip>;
1214
+ };
1215
+ };
1216
+ };
1217
+ devices: {
1218
+ list: {
1219
+ summary: "List my devices";
1220
+ method: "GET";
1221
+ path: "/v1/me/devices";
1222
+ responses: {
1223
+ 200: import("zod").ZodObject<{
1224
+ ok: import("zod").ZodLiteral<true>;
1225
+ data: import("zod").ZodArray<import("zod").ZodObject<{
1226
+ id: import("zod").ZodString;
1227
+ platform: import("zod").ZodEnum<{
1228
+ ios: "ios";
1229
+ android: "android";
1230
+ }>;
1231
+ tokenSuffix: import("zod").ZodString;
1232
+ createdAt: import("zod").ZodISODateTime;
1233
+ }, import("zod/v4/core").$strip>>;
1234
+ }, import("zod/v4/core").$strip>;
1235
+ 401: import("zod").ZodObject<{
1236
+ ok: import("zod").ZodLiteral<false>;
1237
+ error: import("zod").ZodObject<{
1238
+ code: import("zod").ZodEnum<{
1239
+ VALIDATION_FAILED: "VALIDATION_FAILED";
1240
+ UNAUTHENTICATED: "UNAUTHENTICATED";
1241
+ FORBIDDEN: "FORBIDDEN";
1242
+ NOT_FOUND: "NOT_FOUND";
1243
+ CONFLICT: "CONFLICT";
1244
+ RATE_LIMITED: "RATE_LIMITED";
1245
+ INTERNAL: "INTERNAL";
1246
+ }>;
1247
+ message: import("zod").ZodString;
1248
+ details: import("zod").ZodOptional<import("zod").ZodUnknown>;
1249
+ requestId: import("zod").ZodOptional<import("zod").ZodString>;
1250
+ }, import("zod/v4/core").$strip>;
1251
+ }, import("zod/v4/core").$strip>;
1252
+ };
1253
+ };
1254
+ register: {
1255
+ summary: "Register or refresh a push token";
1256
+ method: "PUT";
1257
+ body: import("zod").ZodObject<{
1258
+ token: import("zod").ZodString;
1259
+ platform: import("zod").ZodEnum<{
1260
+ ios: "ios";
1261
+ android: "android";
1262
+ }>;
1263
+ }, import("zod/v4/core").$strip>;
1264
+ path: "/v1/me/devices";
1265
+ responses: {
1266
+ 200: import("zod").ZodObject<{
1267
+ ok: import("zod").ZodLiteral<true>;
1268
+ data: import("zod").ZodObject<{
1269
+ id: import("zod").ZodString;
1270
+ platform: import("zod").ZodEnum<{
1271
+ ios: "ios";
1272
+ android: "android";
1273
+ }>;
1274
+ tokenSuffix: import("zod").ZodString;
1275
+ createdAt: import("zod").ZodISODateTime;
1276
+ }, import("zod/v4/core").$strip>;
1277
+ }, import("zod/v4/core").$strip>;
1278
+ 401: import("zod").ZodObject<{
1279
+ ok: import("zod").ZodLiteral<false>;
1280
+ error: import("zod").ZodObject<{
1281
+ code: import("zod").ZodEnum<{
1282
+ VALIDATION_FAILED: "VALIDATION_FAILED";
1283
+ UNAUTHENTICATED: "UNAUTHENTICATED";
1284
+ FORBIDDEN: "FORBIDDEN";
1285
+ NOT_FOUND: "NOT_FOUND";
1286
+ CONFLICT: "CONFLICT";
1287
+ RATE_LIMITED: "RATE_LIMITED";
1288
+ INTERNAL: "INTERNAL";
1289
+ }>;
1290
+ message: import("zod").ZodString;
1291
+ details: import("zod").ZodOptional<import("zod").ZodUnknown>;
1292
+ requestId: import("zod").ZodOptional<import("zod").ZodString>;
1293
+ }, import("zod/v4/core").$strip>;
1294
+ }, import("zod/v4/core").$strip>;
1295
+ 422: import("zod").ZodObject<{
1296
+ ok: import("zod").ZodLiteral<false>;
1297
+ error: import("zod").ZodObject<{
1298
+ code: import("zod").ZodEnum<{
1299
+ VALIDATION_FAILED: "VALIDATION_FAILED";
1300
+ UNAUTHENTICATED: "UNAUTHENTICATED";
1301
+ FORBIDDEN: "FORBIDDEN";
1302
+ NOT_FOUND: "NOT_FOUND";
1303
+ CONFLICT: "CONFLICT";
1304
+ RATE_LIMITED: "RATE_LIMITED";
1305
+ INTERNAL: "INTERNAL";
1306
+ }>;
1307
+ message: import("zod").ZodString;
1308
+ details: import("zod").ZodOptional<import("zod").ZodUnknown>;
1309
+ requestId: import("zod").ZodOptional<import("zod").ZodString>;
1310
+ }, import("zod/v4/core").$strip>;
1311
+ }, import("zod/v4/core").$strip>;
1312
+ };
1313
+ };
1314
+ remove: {
1315
+ pathParams: import("zod").ZodObject<{
1316
+ id: import("zod").ZodString;
1317
+ }, import("zod/v4/core").$strip>;
1318
+ summary: "Remove a device";
1319
+ method: "DELETE";
1320
+ path: "/v1/me/devices/:id";
1321
+ responses: {
1322
+ 200: import("zod").ZodObject<{
1323
+ ok: import("zod").ZodLiteral<true>;
1324
+ data: import("zod").ZodObject<{
1325
+ removed: import("zod").ZodLiteral<true>;
1326
+ }, import("zod/v4/core").$strip>;
1327
+ }, import("zod/v4/core").$strip>;
1328
+ 401: import("zod").ZodObject<{
1329
+ ok: import("zod").ZodLiteral<false>;
1330
+ error: import("zod").ZodObject<{
1331
+ code: import("zod").ZodEnum<{
1332
+ VALIDATION_FAILED: "VALIDATION_FAILED";
1333
+ UNAUTHENTICATED: "UNAUTHENTICATED";
1334
+ FORBIDDEN: "FORBIDDEN";
1335
+ NOT_FOUND: "NOT_FOUND";
1336
+ CONFLICT: "CONFLICT";
1337
+ RATE_LIMITED: "RATE_LIMITED";
1338
+ INTERNAL: "INTERNAL";
1339
+ }>;
1340
+ message: import("zod").ZodString;
1341
+ details: import("zod").ZodOptional<import("zod").ZodUnknown>;
1342
+ requestId: import("zod").ZodOptional<import("zod").ZodString>;
1343
+ }, import("zod/v4/core").$strip>;
1344
+ }, import("zod/v4/core").$strip>;
1345
+ 404: import("zod").ZodObject<{
1346
+ ok: import("zod").ZodLiteral<false>;
1347
+ error: import("zod").ZodObject<{
1348
+ code: import("zod").ZodEnum<{
1349
+ VALIDATION_FAILED: "VALIDATION_FAILED";
1350
+ UNAUTHENTICATED: "UNAUTHENTICATED";
1351
+ FORBIDDEN: "FORBIDDEN";
1352
+ NOT_FOUND: "NOT_FOUND";
1353
+ CONFLICT: "CONFLICT";
1354
+ RATE_LIMITED: "RATE_LIMITED";
1355
+ INTERNAL: "INTERNAL";
1356
+ }>;
1357
+ message: import("zod").ZodString;
1358
+ details: import("zod").ZodOptional<import("zod").ZodUnknown>;
1359
+ requestId: import("zod").ZodOptional<import("zod").ZodString>;
1360
+ }, import("zod/v4/core").$strip>;
1361
+ }, import("zod/v4/core").$strip>;
1362
+ };
1363
+ };
1364
+ };
1365
+ organizations: {
1366
+ create: {
1367
+ summary: "Create an organization";
1368
+ method: "POST";
1369
+ body: import("zod").ZodObject<{
1370
+ name: import("zod").ZodString;
1371
+ }, import("zod/v4/core").$strip>;
1372
+ path: "/v1/organizations";
1373
+ responses: {
1374
+ 201: import("zod").ZodObject<{
1375
+ ok: import("zod").ZodLiteral<true>;
1376
+ data: import("zod").ZodObject<{
1377
+ id: import("zod").ZodString;
1378
+ name: import("zod").ZodString;
1379
+ createdAt: import("zod").ZodISODateTime;
1380
+ }, import("zod/v4/core").$strip>;
1381
+ }, import("zod/v4/core").$strip>;
1382
+ 401: import("zod").ZodObject<{
1383
+ ok: import("zod").ZodLiteral<false>;
1384
+ error: import("zod").ZodObject<{
1385
+ code: import("zod").ZodEnum<{
1386
+ VALIDATION_FAILED: "VALIDATION_FAILED";
1387
+ UNAUTHENTICATED: "UNAUTHENTICATED";
1388
+ FORBIDDEN: "FORBIDDEN";
1389
+ NOT_FOUND: "NOT_FOUND";
1390
+ CONFLICT: "CONFLICT";
1391
+ RATE_LIMITED: "RATE_LIMITED";
1392
+ INTERNAL: "INTERNAL";
1393
+ }>;
1394
+ message: import("zod").ZodString;
1395
+ details: import("zod").ZodOptional<import("zod").ZodUnknown>;
1396
+ requestId: import("zod").ZodOptional<import("zod").ZodString>;
1397
+ }, import("zod/v4/core").$strip>;
1398
+ }, import("zod/v4/core").$strip>;
1399
+ 422: import("zod").ZodObject<{
1400
+ ok: import("zod").ZodLiteral<false>;
1401
+ error: import("zod").ZodObject<{
1402
+ code: import("zod").ZodEnum<{
1403
+ VALIDATION_FAILED: "VALIDATION_FAILED";
1404
+ UNAUTHENTICATED: "UNAUTHENTICATED";
1405
+ FORBIDDEN: "FORBIDDEN";
1406
+ NOT_FOUND: "NOT_FOUND";
1407
+ CONFLICT: "CONFLICT";
1408
+ RATE_LIMITED: "RATE_LIMITED";
1409
+ INTERNAL: "INTERNAL";
1410
+ }>;
1411
+ message: import("zod").ZodString;
1412
+ details: import("zod").ZodOptional<import("zod").ZodUnknown>;
1413
+ requestId: import("zod").ZodOptional<import("zod").ZodString>;
1414
+ }, import("zod/v4/core").$strip>;
1415
+ }, import("zod/v4/core").$strip>;
1416
+ };
1417
+ };
1418
+ list: {
1419
+ summary: "List my organizations";
1420
+ method: "GET";
1421
+ path: "/v1/organizations";
1422
+ responses: {
1423
+ 200: import("zod").ZodObject<{
1424
+ ok: import("zod").ZodLiteral<true>;
1425
+ data: import("zod").ZodArray<import("zod").ZodObject<{
1426
+ id: import("zod").ZodString;
1427
+ name: import("zod").ZodString;
1428
+ createdAt: import("zod").ZodISODateTime;
1429
+ }, import("zod/v4/core").$strip>>;
1430
+ }, import("zod/v4/core").$strip>;
1431
+ 401: import("zod").ZodObject<{
1432
+ ok: import("zod").ZodLiteral<false>;
1433
+ error: import("zod").ZodObject<{
1434
+ code: import("zod").ZodEnum<{
1435
+ VALIDATION_FAILED: "VALIDATION_FAILED";
1436
+ UNAUTHENTICATED: "UNAUTHENTICATED";
1437
+ FORBIDDEN: "FORBIDDEN";
1438
+ NOT_FOUND: "NOT_FOUND";
1439
+ CONFLICT: "CONFLICT";
1440
+ RATE_LIMITED: "RATE_LIMITED";
1441
+ INTERNAL: "INTERNAL";
1442
+ }>;
1443
+ message: import("zod").ZodString;
1444
+ details: import("zod").ZodOptional<import("zod").ZodUnknown>;
1445
+ requestId: import("zod").ZodOptional<import("zod").ZodString>;
1446
+ }, import("zod/v4/core").$strip>;
1447
+ }, import("zod/v4/core").$strip>;
1448
+ };
1449
+ };
1450
+ acceptInvite: {
1451
+ summary: "Accept an organization invite";
1452
+ method: "POST";
1453
+ body: import("zod").ZodObject<{
1454
+ token: import("zod").ZodString;
1455
+ password: import("zod").ZodOptional<import("zod").ZodString>;
1456
+ displayName: import("zod").ZodOptional<import("zod").ZodString>;
1457
+ }, import("zod/v4/core").$strip>;
1458
+ path: "/v1/organizations/invites/accept";
1459
+ responses: {
1460
+ 200: import("zod").ZodObject<{
1461
+ ok: import("zod").ZodLiteral<true>;
1462
+ data: import("zod").ZodObject<{
1463
+ accepted: import("zod").ZodLiteral<true>;
1464
+ }, import("zod/v4/core").$strip>;
1465
+ }, import("zod/v4/core").$strip>;
1466
+ 401: import("zod").ZodObject<{
1467
+ ok: import("zod").ZodLiteral<false>;
1468
+ error: import("zod").ZodObject<{
1469
+ code: import("zod").ZodEnum<{
1470
+ VALIDATION_FAILED: "VALIDATION_FAILED";
1471
+ UNAUTHENTICATED: "UNAUTHENTICATED";
1472
+ FORBIDDEN: "FORBIDDEN";
1473
+ NOT_FOUND: "NOT_FOUND";
1474
+ CONFLICT: "CONFLICT";
1475
+ RATE_LIMITED: "RATE_LIMITED";
1476
+ INTERNAL: "INTERNAL";
1477
+ }>;
1478
+ message: import("zod").ZodString;
1479
+ details: import("zod").ZodOptional<import("zod").ZodUnknown>;
1480
+ requestId: import("zod").ZodOptional<import("zod").ZodString>;
1481
+ }, import("zod/v4/core").$strip>;
1482
+ }, import("zod/v4/core").$strip>;
1483
+ 409: import("zod").ZodObject<{
1484
+ ok: import("zod").ZodLiteral<false>;
1485
+ error: import("zod").ZodObject<{
1486
+ code: import("zod").ZodEnum<{
1487
+ VALIDATION_FAILED: "VALIDATION_FAILED";
1488
+ UNAUTHENTICATED: "UNAUTHENTICATED";
1489
+ FORBIDDEN: "FORBIDDEN";
1490
+ NOT_FOUND: "NOT_FOUND";
1491
+ CONFLICT: "CONFLICT";
1492
+ RATE_LIMITED: "RATE_LIMITED";
1493
+ INTERNAL: "INTERNAL";
1494
+ }>;
1495
+ message: import("zod").ZodString;
1496
+ details: import("zod").ZodOptional<import("zod").ZodUnknown>;
1497
+ requestId: import("zod").ZodOptional<import("zod").ZodString>;
1498
+ }, import("zod/v4/core").$strip>;
1499
+ }, import("zod/v4/core").$strip>;
1500
+ 422: import("zod").ZodObject<{
1501
+ ok: import("zod").ZodLiteral<false>;
1502
+ error: import("zod").ZodObject<{
1503
+ code: import("zod").ZodEnum<{
1504
+ VALIDATION_FAILED: "VALIDATION_FAILED";
1505
+ UNAUTHENTICATED: "UNAUTHENTICATED";
1506
+ FORBIDDEN: "FORBIDDEN";
1507
+ NOT_FOUND: "NOT_FOUND";
1508
+ CONFLICT: "CONFLICT";
1509
+ RATE_LIMITED: "RATE_LIMITED";
1510
+ INTERNAL: "INTERNAL";
1511
+ }>;
1512
+ message: import("zod").ZodString;
1513
+ details: import("zod").ZodOptional<import("zod").ZodUnknown>;
1514
+ requestId: import("zod").ZodOptional<import("zod").ZodString>;
1515
+ }, import("zod/v4/core").$strip>;
1516
+ }, import("zod/v4/core").$strip>;
1517
+ };
1518
+ };
1519
+ get: {
1520
+ pathParams: import("zod").ZodObject<{
1521
+ organizationId: import("zod").ZodString;
1522
+ }, import("zod/v4/core").$strip>;
1523
+ summary: "Get an organization";
1524
+ method: "GET";
1525
+ path: "/v1/organizations/:organizationId";
1526
+ responses: {
1527
+ 200: import("zod").ZodObject<{
1528
+ ok: import("zod").ZodLiteral<true>;
1529
+ data: import("zod").ZodObject<{
1530
+ id: import("zod").ZodString;
1531
+ name: import("zod").ZodString;
1532
+ createdAt: import("zod").ZodISODateTime;
1533
+ }, import("zod/v4/core").$strip>;
1534
+ }, import("zod/v4/core").$strip>;
1535
+ 401: import("zod").ZodObject<{
1536
+ ok: import("zod").ZodLiteral<false>;
1537
+ error: import("zod").ZodObject<{
1538
+ code: import("zod").ZodEnum<{
1539
+ VALIDATION_FAILED: "VALIDATION_FAILED";
1540
+ UNAUTHENTICATED: "UNAUTHENTICATED";
1541
+ FORBIDDEN: "FORBIDDEN";
1542
+ NOT_FOUND: "NOT_FOUND";
1543
+ CONFLICT: "CONFLICT";
1544
+ RATE_LIMITED: "RATE_LIMITED";
1545
+ INTERNAL: "INTERNAL";
1546
+ }>;
1547
+ message: import("zod").ZodString;
1548
+ details: import("zod").ZodOptional<import("zod").ZodUnknown>;
1549
+ requestId: import("zod").ZodOptional<import("zod").ZodString>;
1550
+ }, import("zod/v4/core").$strip>;
1551
+ }, import("zod/v4/core").$strip>;
1552
+ 403: import("zod").ZodObject<{
1553
+ ok: import("zod").ZodLiteral<false>;
1554
+ error: import("zod").ZodObject<{
1555
+ code: import("zod").ZodEnum<{
1556
+ VALIDATION_FAILED: "VALIDATION_FAILED";
1557
+ UNAUTHENTICATED: "UNAUTHENTICATED";
1558
+ FORBIDDEN: "FORBIDDEN";
1559
+ NOT_FOUND: "NOT_FOUND";
1560
+ CONFLICT: "CONFLICT";
1561
+ RATE_LIMITED: "RATE_LIMITED";
1562
+ INTERNAL: "INTERNAL";
1563
+ }>;
1564
+ message: import("zod").ZodString;
1565
+ details: import("zod").ZodOptional<import("zod").ZodUnknown>;
1566
+ requestId: import("zod").ZodOptional<import("zod").ZodString>;
1567
+ }, import("zod/v4/core").$strip>;
1568
+ }, import("zod/v4/core").$strip>;
1569
+ 404: import("zod").ZodObject<{
1570
+ ok: import("zod").ZodLiteral<false>;
1571
+ error: import("zod").ZodObject<{
1572
+ code: import("zod").ZodEnum<{
1573
+ VALIDATION_FAILED: "VALIDATION_FAILED";
1574
+ UNAUTHENTICATED: "UNAUTHENTICATED";
1575
+ FORBIDDEN: "FORBIDDEN";
1576
+ NOT_FOUND: "NOT_FOUND";
1577
+ CONFLICT: "CONFLICT";
1578
+ RATE_LIMITED: "RATE_LIMITED";
1579
+ INTERNAL: "INTERNAL";
1580
+ }>;
1581
+ message: import("zod").ZodString;
1582
+ details: import("zod").ZodOptional<import("zod").ZodUnknown>;
1583
+ requestId: import("zod").ZodOptional<import("zod").ZodString>;
1584
+ }, import("zod/v4/core").$strip>;
1585
+ }, import("zod/v4/core").$strip>;
1586
+ };
1587
+ };
1588
+ update: {
1589
+ pathParams: import("zod").ZodObject<{
1590
+ organizationId: import("zod").ZodString;
1591
+ }, import("zod/v4/core").$strip>;
1592
+ summary: "Rename an organization";
1593
+ method: "PATCH";
1594
+ body: import("zod").ZodObject<{
1595
+ name: import("zod").ZodString;
1596
+ }, import("zod/v4/core").$strip>;
1597
+ path: "/v1/organizations/:organizationId";
1598
+ responses: {
1599
+ 200: import("zod").ZodObject<{
1600
+ ok: import("zod").ZodLiteral<true>;
1601
+ data: import("zod").ZodObject<{
1602
+ id: import("zod").ZodString;
1603
+ name: import("zod").ZodString;
1604
+ createdAt: import("zod").ZodISODateTime;
1605
+ }, import("zod/v4/core").$strip>;
1606
+ }, import("zod/v4/core").$strip>;
1607
+ 401: import("zod").ZodObject<{
1608
+ ok: import("zod").ZodLiteral<false>;
1609
+ error: import("zod").ZodObject<{
1610
+ code: import("zod").ZodEnum<{
1611
+ VALIDATION_FAILED: "VALIDATION_FAILED";
1612
+ UNAUTHENTICATED: "UNAUTHENTICATED";
1613
+ FORBIDDEN: "FORBIDDEN";
1614
+ NOT_FOUND: "NOT_FOUND";
1615
+ CONFLICT: "CONFLICT";
1616
+ RATE_LIMITED: "RATE_LIMITED";
1617
+ INTERNAL: "INTERNAL";
1618
+ }>;
1619
+ message: import("zod").ZodString;
1620
+ details: import("zod").ZodOptional<import("zod").ZodUnknown>;
1621
+ requestId: import("zod").ZodOptional<import("zod").ZodString>;
1622
+ }, import("zod/v4/core").$strip>;
1623
+ }, import("zod/v4/core").$strip>;
1624
+ 403: import("zod").ZodObject<{
1625
+ ok: import("zod").ZodLiteral<false>;
1626
+ error: import("zod").ZodObject<{
1627
+ code: import("zod").ZodEnum<{
1628
+ VALIDATION_FAILED: "VALIDATION_FAILED";
1629
+ UNAUTHENTICATED: "UNAUTHENTICATED";
1630
+ FORBIDDEN: "FORBIDDEN";
1631
+ NOT_FOUND: "NOT_FOUND";
1632
+ CONFLICT: "CONFLICT";
1633
+ RATE_LIMITED: "RATE_LIMITED";
1634
+ INTERNAL: "INTERNAL";
1635
+ }>;
1636
+ message: import("zod").ZodString;
1637
+ details: import("zod").ZodOptional<import("zod").ZodUnknown>;
1638
+ requestId: import("zod").ZodOptional<import("zod").ZodString>;
1639
+ }, import("zod/v4/core").$strip>;
1640
+ }, import("zod/v4/core").$strip>;
1641
+ 404: import("zod").ZodObject<{
1642
+ ok: import("zod").ZodLiteral<false>;
1643
+ error: import("zod").ZodObject<{
1644
+ code: import("zod").ZodEnum<{
1645
+ VALIDATION_FAILED: "VALIDATION_FAILED";
1646
+ UNAUTHENTICATED: "UNAUTHENTICATED";
1647
+ FORBIDDEN: "FORBIDDEN";
1648
+ NOT_FOUND: "NOT_FOUND";
1649
+ CONFLICT: "CONFLICT";
1650
+ RATE_LIMITED: "RATE_LIMITED";
1651
+ INTERNAL: "INTERNAL";
1652
+ }>;
1653
+ message: import("zod").ZodString;
1654
+ details: import("zod").ZodOptional<import("zod").ZodUnknown>;
1655
+ requestId: import("zod").ZodOptional<import("zod").ZodString>;
1656
+ }, import("zod/v4/core").$strip>;
1657
+ }, import("zod/v4/core").$strip>;
1658
+ 422: import("zod").ZodObject<{
1659
+ ok: import("zod").ZodLiteral<false>;
1660
+ error: import("zod").ZodObject<{
1661
+ code: import("zod").ZodEnum<{
1662
+ VALIDATION_FAILED: "VALIDATION_FAILED";
1663
+ UNAUTHENTICATED: "UNAUTHENTICATED";
1664
+ FORBIDDEN: "FORBIDDEN";
1665
+ NOT_FOUND: "NOT_FOUND";
1666
+ CONFLICT: "CONFLICT";
1667
+ RATE_LIMITED: "RATE_LIMITED";
1668
+ INTERNAL: "INTERNAL";
1669
+ }>;
1670
+ message: import("zod").ZodString;
1671
+ details: import("zod").ZodOptional<import("zod").ZodUnknown>;
1672
+ requestId: import("zod").ZodOptional<import("zod").ZodString>;
1673
+ }, import("zod/v4/core").$strip>;
1674
+ }, import("zod/v4/core").$strip>;
1675
+ };
1676
+ };
1677
+ members: {
1678
+ pathParams: import("zod").ZodObject<{
1679
+ organizationId: import("zod").ZodString;
1680
+ }, import("zod/v4/core").$strip>;
1681
+ summary: "List members";
1682
+ method: "GET";
1683
+ path: "/v1/organizations/:organizationId/members";
1684
+ responses: {
1685
+ 200: import("zod").ZodObject<{
1686
+ ok: import("zod").ZodLiteral<true>;
1687
+ data: import("zod").ZodArray<import("zod").ZodObject<{
1688
+ id: import("zod").ZodString;
1689
+ organizationId: import("zod").ZodString;
1690
+ userId: import("zod").ZodString;
1691
+ email: import("zod").ZodNullable<import("zod").ZodString>;
1692
+ displayName: import("zod").ZodString;
1693
+ role: import("zod").ZodEnum<{
1694
+ ADMIN: "ADMIN";
1695
+ OWNER: "OWNER";
1696
+ MEMBER: "MEMBER";
1697
+ }>;
1698
+ createdAt: import("zod").ZodISODateTime;
1699
+ }, import("zod/v4/core").$strip>>;
1700
+ }, import("zod/v4/core").$strip>;
1701
+ 401: import("zod").ZodObject<{
1702
+ ok: import("zod").ZodLiteral<false>;
1703
+ error: import("zod").ZodObject<{
1704
+ code: import("zod").ZodEnum<{
1705
+ VALIDATION_FAILED: "VALIDATION_FAILED";
1706
+ UNAUTHENTICATED: "UNAUTHENTICATED";
1707
+ FORBIDDEN: "FORBIDDEN";
1708
+ NOT_FOUND: "NOT_FOUND";
1709
+ CONFLICT: "CONFLICT";
1710
+ RATE_LIMITED: "RATE_LIMITED";
1711
+ INTERNAL: "INTERNAL";
1712
+ }>;
1713
+ message: import("zod").ZodString;
1714
+ details: import("zod").ZodOptional<import("zod").ZodUnknown>;
1715
+ requestId: import("zod").ZodOptional<import("zod").ZodString>;
1716
+ }, import("zod/v4/core").$strip>;
1717
+ }, import("zod/v4/core").$strip>;
1718
+ 403: import("zod").ZodObject<{
1719
+ ok: import("zod").ZodLiteral<false>;
1720
+ error: import("zod").ZodObject<{
1721
+ code: import("zod").ZodEnum<{
1722
+ VALIDATION_FAILED: "VALIDATION_FAILED";
1723
+ UNAUTHENTICATED: "UNAUTHENTICATED";
1724
+ FORBIDDEN: "FORBIDDEN";
1725
+ NOT_FOUND: "NOT_FOUND";
1726
+ CONFLICT: "CONFLICT";
1727
+ RATE_LIMITED: "RATE_LIMITED";
1728
+ INTERNAL: "INTERNAL";
1729
+ }>;
1730
+ message: import("zod").ZodString;
1731
+ details: import("zod").ZodOptional<import("zod").ZodUnknown>;
1732
+ requestId: import("zod").ZodOptional<import("zod").ZodString>;
1733
+ }, import("zod/v4/core").$strip>;
1734
+ }, import("zod/v4/core").$strip>;
1735
+ 404: import("zod").ZodObject<{
1736
+ ok: import("zod").ZodLiteral<false>;
1737
+ error: import("zod").ZodObject<{
1738
+ code: import("zod").ZodEnum<{
1739
+ VALIDATION_FAILED: "VALIDATION_FAILED";
1740
+ UNAUTHENTICATED: "UNAUTHENTICATED";
1741
+ FORBIDDEN: "FORBIDDEN";
1742
+ NOT_FOUND: "NOT_FOUND";
1743
+ CONFLICT: "CONFLICT";
1744
+ RATE_LIMITED: "RATE_LIMITED";
1745
+ INTERNAL: "INTERNAL";
1746
+ }>;
1747
+ message: import("zod").ZodString;
1748
+ details: import("zod").ZodOptional<import("zod").ZodUnknown>;
1749
+ requestId: import("zod").ZodOptional<import("zod").ZodString>;
1750
+ }, import("zod/v4/core").$strip>;
1751
+ }, import("zod/v4/core").$strip>;
1752
+ };
1753
+ };
1754
+ invite: {
1755
+ pathParams: import("zod").ZodObject<{
1756
+ organizationId: import("zod").ZodString;
1757
+ }, import("zod/v4/core").$strip>;
1758
+ summary: "Invite a member by email";
1759
+ method: "POST";
1760
+ body: import("zod").ZodObject<{
1761
+ email: import("zod").ZodString;
1762
+ role: import("zod").ZodEnum<{
1763
+ ADMIN: "ADMIN";
1764
+ MEMBER: "MEMBER";
1765
+ }>;
1766
+ }, import("zod/v4/core").$strip>;
1767
+ path: "/v1/organizations/:organizationId/invites";
1768
+ responses: {
1769
+ 200: import("zod").ZodObject<{
1770
+ ok: import("zod").ZodLiteral<true>;
1771
+ data: import("zod").ZodObject<{
1772
+ id: import("zod").ZodString;
1773
+ organizationId: import("zod").ZodString;
1774
+ email: import("zod").ZodString;
1775
+ role: import("zod").ZodEnum<{
1776
+ ADMIN: "ADMIN";
1777
+ MEMBER: "MEMBER";
1778
+ }>;
1779
+ createdAt: import("zod").ZodISODateTime;
1780
+ expiresAt: import("zod").ZodISODateTime;
1781
+ }, import("zod/v4/core").$strip>;
1782
+ }, import("zod/v4/core").$strip>;
1783
+ 401: import("zod").ZodObject<{
1784
+ ok: import("zod").ZodLiteral<false>;
1785
+ error: import("zod").ZodObject<{
1786
+ code: import("zod").ZodEnum<{
1787
+ VALIDATION_FAILED: "VALIDATION_FAILED";
1788
+ UNAUTHENTICATED: "UNAUTHENTICATED";
1789
+ FORBIDDEN: "FORBIDDEN";
1790
+ NOT_FOUND: "NOT_FOUND";
1791
+ CONFLICT: "CONFLICT";
1792
+ RATE_LIMITED: "RATE_LIMITED";
1793
+ INTERNAL: "INTERNAL";
1794
+ }>;
1795
+ message: import("zod").ZodString;
1796
+ details: import("zod").ZodOptional<import("zod").ZodUnknown>;
1797
+ requestId: import("zod").ZodOptional<import("zod").ZodString>;
1798
+ }, import("zod/v4/core").$strip>;
1799
+ }, import("zod/v4/core").$strip>;
1800
+ 403: import("zod").ZodObject<{
1801
+ ok: import("zod").ZodLiteral<false>;
1802
+ error: import("zod").ZodObject<{
1803
+ code: import("zod").ZodEnum<{
1804
+ VALIDATION_FAILED: "VALIDATION_FAILED";
1805
+ UNAUTHENTICATED: "UNAUTHENTICATED";
1806
+ FORBIDDEN: "FORBIDDEN";
1807
+ NOT_FOUND: "NOT_FOUND";
1808
+ CONFLICT: "CONFLICT";
1809
+ RATE_LIMITED: "RATE_LIMITED";
1810
+ INTERNAL: "INTERNAL";
1811
+ }>;
1812
+ message: import("zod").ZodString;
1813
+ details: import("zod").ZodOptional<import("zod").ZodUnknown>;
1814
+ requestId: import("zod").ZodOptional<import("zod").ZodString>;
1815
+ }, import("zod/v4/core").$strip>;
1816
+ }, import("zod/v4/core").$strip>;
1817
+ 404: import("zod").ZodObject<{
1818
+ ok: import("zod").ZodLiteral<false>;
1819
+ error: import("zod").ZodObject<{
1820
+ code: import("zod").ZodEnum<{
1821
+ VALIDATION_FAILED: "VALIDATION_FAILED";
1822
+ UNAUTHENTICATED: "UNAUTHENTICATED";
1823
+ FORBIDDEN: "FORBIDDEN";
1824
+ NOT_FOUND: "NOT_FOUND";
1825
+ CONFLICT: "CONFLICT";
1826
+ RATE_LIMITED: "RATE_LIMITED";
1827
+ INTERNAL: "INTERNAL";
1828
+ }>;
1829
+ message: import("zod").ZodString;
1830
+ details: import("zod").ZodOptional<import("zod").ZodUnknown>;
1831
+ requestId: import("zod").ZodOptional<import("zod").ZodString>;
1832
+ }, import("zod/v4/core").$strip>;
1833
+ }, import("zod/v4/core").$strip>;
1834
+ 409: import("zod").ZodObject<{
1835
+ ok: import("zod").ZodLiteral<false>;
1836
+ error: import("zod").ZodObject<{
1837
+ code: import("zod").ZodEnum<{
1838
+ VALIDATION_FAILED: "VALIDATION_FAILED";
1839
+ UNAUTHENTICATED: "UNAUTHENTICATED";
1840
+ FORBIDDEN: "FORBIDDEN";
1841
+ NOT_FOUND: "NOT_FOUND";
1842
+ CONFLICT: "CONFLICT";
1843
+ RATE_LIMITED: "RATE_LIMITED";
1844
+ INTERNAL: "INTERNAL";
1845
+ }>;
1846
+ message: import("zod").ZodString;
1847
+ details: import("zod").ZodOptional<import("zod").ZodUnknown>;
1848
+ requestId: import("zod").ZodOptional<import("zod").ZodString>;
1849
+ }, import("zod/v4/core").$strip>;
1850
+ }, import("zod/v4/core").$strip>;
1851
+ 422: import("zod").ZodObject<{
1852
+ ok: import("zod").ZodLiteral<false>;
1853
+ error: import("zod").ZodObject<{
1854
+ code: import("zod").ZodEnum<{
1855
+ VALIDATION_FAILED: "VALIDATION_FAILED";
1856
+ UNAUTHENTICATED: "UNAUTHENTICATED";
1857
+ FORBIDDEN: "FORBIDDEN";
1858
+ NOT_FOUND: "NOT_FOUND";
1859
+ CONFLICT: "CONFLICT";
1860
+ RATE_LIMITED: "RATE_LIMITED";
1861
+ INTERNAL: "INTERNAL";
1862
+ }>;
1863
+ message: import("zod").ZodString;
1864
+ details: import("zod").ZodOptional<import("zod").ZodUnknown>;
1865
+ requestId: import("zod").ZodOptional<import("zod").ZodString>;
1866
+ }, import("zod/v4/core").$strip>;
1867
+ }, import("zod/v4/core").$strip>;
1868
+ };
1869
+ };
1870
+ invites: {
1871
+ pathParams: import("zod").ZodObject<{
1872
+ organizationId: import("zod").ZodString;
1873
+ }, import("zod/v4/core").$strip>;
1874
+ summary: "List pending invites";
1875
+ method: "GET";
1876
+ path: "/v1/organizations/:organizationId/invites";
1877
+ responses: {
1878
+ 200: import("zod").ZodObject<{
1879
+ ok: import("zod").ZodLiteral<true>;
1880
+ data: import("zod").ZodArray<import("zod").ZodObject<{
1881
+ id: import("zod").ZodString;
1882
+ organizationId: import("zod").ZodString;
1883
+ email: import("zod").ZodString;
1884
+ role: import("zod").ZodEnum<{
1885
+ ADMIN: "ADMIN";
1886
+ MEMBER: "MEMBER";
1887
+ }>;
1888
+ createdAt: import("zod").ZodISODateTime;
1889
+ expiresAt: import("zod").ZodISODateTime;
1890
+ }, import("zod/v4/core").$strip>>;
1891
+ }, import("zod/v4/core").$strip>;
1892
+ 401: import("zod").ZodObject<{
1893
+ ok: import("zod").ZodLiteral<false>;
1894
+ error: import("zod").ZodObject<{
1895
+ code: import("zod").ZodEnum<{
1896
+ VALIDATION_FAILED: "VALIDATION_FAILED";
1897
+ UNAUTHENTICATED: "UNAUTHENTICATED";
1898
+ FORBIDDEN: "FORBIDDEN";
1899
+ NOT_FOUND: "NOT_FOUND";
1900
+ CONFLICT: "CONFLICT";
1901
+ RATE_LIMITED: "RATE_LIMITED";
1902
+ INTERNAL: "INTERNAL";
1903
+ }>;
1904
+ message: import("zod").ZodString;
1905
+ details: import("zod").ZodOptional<import("zod").ZodUnknown>;
1906
+ requestId: import("zod").ZodOptional<import("zod").ZodString>;
1907
+ }, import("zod/v4/core").$strip>;
1908
+ }, import("zod/v4/core").$strip>;
1909
+ 403: import("zod").ZodObject<{
1910
+ ok: import("zod").ZodLiteral<false>;
1911
+ error: import("zod").ZodObject<{
1912
+ code: import("zod").ZodEnum<{
1913
+ VALIDATION_FAILED: "VALIDATION_FAILED";
1914
+ UNAUTHENTICATED: "UNAUTHENTICATED";
1915
+ FORBIDDEN: "FORBIDDEN";
1916
+ NOT_FOUND: "NOT_FOUND";
1917
+ CONFLICT: "CONFLICT";
1918
+ RATE_LIMITED: "RATE_LIMITED";
1919
+ INTERNAL: "INTERNAL";
1920
+ }>;
1921
+ message: import("zod").ZodString;
1922
+ details: import("zod").ZodOptional<import("zod").ZodUnknown>;
1923
+ requestId: import("zod").ZodOptional<import("zod").ZodString>;
1924
+ }, import("zod/v4/core").$strip>;
1925
+ }, import("zod/v4/core").$strip>;
1926
+ 404: import("zod").ZodObject<{
1927
+ ok: import("zod").ZodLiteral<false>;
1928
+ error: import("zod").ZodObject<{
1929
+ code: import("zod").ZodEnum<{
1930
+ VALIDATION_FAILED: "VALIDATION_FAILED";
1931
+ UNAUTHENTICATED: "UNAUTHENTICATED";
1932
+ FORBIDDEN: "FORBIDDEN";
1933
+ NOT_FOUND: "NOT_FOUND";
1934
+ CONFLICT: "CONFLICT";
1935
+ RATE_LIMITED: "RATE_LIMITED";
1936
+ INTERNAL: "INTERNAL";
1937
+ }>;
1938
+ message: import("zod").ZodString;
1939
+ details: import("zod").ZodOptional<import("zod").ZodUnknown>;
1940
+ requestId: import("zod").ZodOptional<import("zod").ZodString>;
1941
+ }, import("zod/v4/core").$strip>;
1942
+ }, import("zod/v4/core").$strip>;
1943
+ };
1944
+ };
1945
+ revokeInvite: {
1946
+ pathParams: import("zod").ZodObject<{
1947
+ organizationId: import("zod").ZodString;
1948
+ id: import("zod").ZodString;
1949
+ }, import("zod/v4/core").$strip>;
1950
+ summary: "Revoke a pending invite";
1951
+ method: "DELETE";
1952
+ path: "/v1/organizations/:organizationId/invites/:id";
1953
+ responses: {
1954
+ 200: import("zod").ZodObject<{
1955
+ ok: import("zod").ZodLiteral<true>;
1956
+ data: import("zod").ZodObject<{
1957
+ removed: import("zod").ZodLiteral<true>;
1958
+ }, import("zod/v4/core").$strip>;
1959
+ }, import("zod/v4/core").$strip>;
1960
+ 401: import("zod").ZodObject<{
1961
+ ok: import("zod").ZodLiteral<false>;
1962
+ error: import("zod").ZodObject<{
1963
+ code: import("zod").ZodEnum<{
1964
+ VALIDATION_FAILED: "VALIDATION_FAILED";
1965
+ UNAUTHENTICATED: "UNAUTHENTICATED";
1966
+ FORBIDDEN: "FORBIDDEN";
1967
+ NOT_FOUND: "NOT_FOUND";
1968
+ CONFLICT: "CONFLICT";
1969
+ RATE_LIMITED: "RATE_LIMITED";
1970
+ INTERNAL: "INTERNAL";
1971
+ }>;
1972
+ message: import("zod").ZodString;
1973
+ details: import("zod").ZodOptional<import("zod").ZodUnknown>;
1974
+ requestId: import("zod").ZodOptional<import("zod").ZodString>;
1975
+ }, import("zod/v4/core").$strip>;
1976
+ }, import("zod/v4/core").$strip>;
1977
+ 403: import("zod").ZodObject<{
1978
+ ok: import("zod").ZodLiteral<false>;
1979
+ error: import("zod").ZodObject<{
1980
+ code: import("zod").ZodEnum<{
1981
+ VALIDATION_FAILED: "VALIDATION_FAILED";
1982
+ UNAUTHENTICATED: "UNAUTHENTICATED";
1983
+ FORBIDDEN: "FORBIDDEN";
1984
+ NOT_FOUND: "NOT_FOUND";
1985
+ CONFLICT: "CONFLICT";
1986
+ RATE_LIMITED: "RATE_LIMITED";
1987
+ INTERNAL: "INTERNAL";
1988
+ }>;
1989
+ message: import("zod").ZodString;
1990
+ details: import("zod").ZodOptional<import("zod").ZodUnknown>;
1991
+ requestId: import("zod").ZodOptional<import("zod").ZodString>;
1992
+ }, import("zod/v4/core").$strip>;
1993
+ }, import("zod/v4/core").$strip>;
1994
+ 404: import("zod").ZodObject<{
1995
+ ok: import("zod").ZodLiteral<false>;
1996
+ error: import("zod").ZodObject<{
1997
+ code: import("zod").ZodEnum<{
1998
+ VALIDATION_FAILED: "VALIDATION_FAILED";
1999
+ UNAUTHENTICATED: "UNAUTHENTICATED";
2000
+ FORBIDDEN: "FORBIDDEN";
2001
+ NOT_FOUND: "NOT_FOUND";
2002
+ CONFLICT: "CONFLICT";
2003
+ RATE_LIMITED: "RATE_LIMITED";
2004
+ INTERNAL: "INTERNAL";
2005
+ }>;
2006
+ message: import("zod").ZodString;
2007
+ details: import("zod").ZodOptional<import("zod").ZodUnknown>;
2008
+ requestId: import("zod").ZodOptional<import("zod").ZodString>;
2009
+ }, import("zod/v4/core").$strip>;
2010
+ }, import("zod/v4/core").$strip>;
2011
+ };
2012
+ };
2013
+ removeMember: {
2014
+ pathParams: import("zod").ZodObject<{
2015
+ organizationId: import("zod").ZodString;
2016
+ userId: import("zod").ZodString;
2017
+ }, import("zod/v4/core").$strip>;
2018
+ summary: "Remove a member";
2019
+ method: "DELETE";
2020
+ path: "/v1/organizations/:organizationId/members/:userId";
2021
+ responses: {
2022
+ 200: import("zod").ZodObject<{
2023
+ ok: import("zod").ZodLiteral<true>;
2024
+ data: import("zod").ZodObject<{
2025
+ removed: import("zod").ZodLiteral<true>;
2026
+ }, import("zod/v4/core").$strip>;
2027
+ }, import("zod/v4/core").$strip>;
2028
+ 401: import("zod").ZodObject<{
2029
+ ok: import("zod").ZodLiteral<false>;
2030
+ error: import("zod").ZodObject<{
2031
+ code: import("zod").ZodEnum<{
2032
+ VALIDATION_FAILED: "VALIDATION_FAILED";
2033
+ UNAUTHENTICATED: "UNAUTHENTICATED";
2034
+ FORBIDDEN: "FORBIDDEN";
2035
+ NOT_FOUND: "NOT_FOUND";
2036
+ CONFLICT: "CONFLICT";
2037
+ RATE_LIMITED: "RATE_LIMITED";
2038
+ INTERNAL: "INTERNAL";
2039
+ }>;
2040
+ message: import("zod").ZodString;
2041
+ details: import("zod").ZodOptional<import("zod").ZodUnknown>;
2042
+ requestId: import("zod").ZodOptional<import("zod").ZodString>;
2043
+ }, import("zod/v4/core").$strip>;
2044
+ }, import("zod/v4/core").$strip>;
2045
+ 403: import("zod").ZodObject<{
2046
+ ok: import("zod").ZodLiteral<false>;
2047
+ error: import("zod").ZodObject<{
2048
+ code: import("zod").ZodEnum<{
2049
+ VALIDATION_FAILED: "VALIDATION_FAILED";
2050
+ UNAUTHENTICATED: "UNAUTHENTICATED";
2051
+ FORBIDDEN: "FORBIDDEN";
2052
+ NOT_FOUND: "NOT_FOUND";
2053
+ CONFLICT: "CONFLICT";
2054
+ RATE_LIMITED: "RATE_LIMITED";
2055
+ INTERNAL: "INTERNAL";
2056
+ }>;
2057
+ message: import("zod").ZodString;
2058
+ details: import("zod").ZodOptional<import("zod").ZodUnknown>;
2059
+ requestId: import("zod").ZodOptional<import("zod").ZodString>;
2060
+ }, import("zod/v4/core").$strip>;
2061
+ }, import("zod/v4/core").$strip>;
2062
+ 404: import("zod").ZodObject<{
2063
+ ok: import("zod").ZodLiteral<false>;
2064
+ error: import("zod").ZodObject<{
2065
+ code: import("zod").ZodEnum<{
2066
+ VALIDATION_FAILED: "VALIDATION_FAILED";
2067
+ UNAUTHENTICATED: "UNAUTHENTICATED";
2068
+ FORBIDDEN: "FORBIDDEN";
2069
+ NOT_FOUND: "NOT_FOUND";
2070
+ CONFLICT: "CONFLICT";
2071
+ RATE_LIMITED: "RATE_LIMITED";
2072
+ INTERNAL: "INTERNAL";
2073
+ }>;
2074
+ message: import("zod").ZodString;
2075
+ details: import("zod").ZodOptional<import("zod").ZodUnknown>;
2076
+ requestId: import("zod").ZodOptional<import("zod").ZodString>;
2077
+ }, import("zod/v4/core").$strip>;
2078
+ }, import("zod/v4/core").$strip>;
2079
+ };
2080
+ };
2081
+ leave: {
2082
+ pathParams: import("zod").ZodObject<{
2083
+ organizationId: import("zod").ZodString;
2084
+ }, import("zod/v4/core").$strip>;
2085
+ summary: "Leave an organization";
2086
+ method: "POST";
2087
+ body: import("zod").ZodOptional<import("zod").ZodObject<{}, import("zod/v4/core").$strip>>;
2088
+ path: "/v1/organizations/:organizationId/leave";
2089
+ responses: {
2090
+ 200: import("zod").ZodObject<{
2091
+ ok: import("zod").ZodLiteral<true>;
2092
+ data: import("zod").ZodObject<{
2093
+ left: import("zod").ZodLiteral<true>;
2094
+ }, import("zod/v4/core").$strip>;
2095
+ }, import("zod/v4/core").$strip>;
2096
+ 401: import("zod").ZodObject<{
2097
+ ok: import("zod").ZodLiteral<false>;
2098
+ error: import("zod").ZodObject<{
2099
+ code: import("zod").ZodEnum<{
2100
+ VALIDATION_FAILED: "VALIDATION_FAILED";
2101
+ UNAUTHENTICATED: "UNAUTHENTICATED";
2102
+ FORBIDDEN: "FORBIDDEN";
2103
+ NOT_FOUND: "NOT_FOUND";
2104
+ CONFLICT: "CONFLICT";
2105
+ RATE_LIMITED: "RATE_LIMITED";
2106
+ INTERNAL: "INTERNAL";
2107
+ }>;
2108
+ message: import("zod").ZodString;
2109
+ details: import("zod").ZodOptional<import("zod").ZodUnknown>;
2110
+ requestId: import("zod").ZodOptional<import("zod").ZodString>;
2111
+ }, import("zod/v4/core").$strip>;
2112
+ }, import("zod/v4/core").$strip>;
2113
+ 403: import("zod").ZodObject<{
2114
+ ok: import("zod").ZodLiteral<false>;
2115
+ error: import("zod").ZodObject<{
2116
+ code: import("zod").ZodEnum<{
2117
+ VALIDATION_FAILED: "VALIDATION_FAILED";
2118
+ UNAUTHENTICATED: "UNAUTHENTICATED";
2119
+ FORBIDDEN: "FORBIDDEN";
2120
+ NOT_FOUND: "NOT_FOUND";
2121
+ CONFLICT: "CONFLICT";
2122
+ RATE_LIMITED: "RATE_LIMITED";
2123
+ INTERNAL: "INTERNAL";
2124
+ }>;
2125
+ message: import("zod").ZodString;
2126
+ details: import("zod").ZodOptional<import("zod").ZodUnknown>;
2127
+ requestId: import("zod").ZodOptional<import("zod").ZodString>;
2128
+ }, import("zod/v4/core").$strip>;
2129
+ }, import("zod/v4/core").$strip>;
2130
+ 404: import("zod").ZodObject<{
2131
+ ok: import("zod").ZodLiteral<false>;
2132
+ error: import("zod").ZodObject<{
2133
+ code: import("zod").ZodEnum<{
2134
+ VALIDATION_FAILED: "VALIDATION_FAILED";
2135
+ UNAUTHENTICATED: "UNAUTHENTICATED";
2136
+ FORBIDDEN: "FORBIDDEN";
2137
+ NOT_FOUND: "NOT_FOUND";
2138
+ CONFLICT: "CONFLICT";
2139
+ RATE_LIMITED: "RATE_LIMITED";
2140
+ INTERNAL: "INTERNAL";
2141
+ }>;
2142
+ message: import("zod").ZodString;
2143
+ details: import("zod").ZodOptional<import("zod").ZodUnknown>;
2144
+ requestId: import("zod").ZodOptional<import("zod").ZodString>;
2145
+ }, import("zod/v4/core").$strip>;
2146
+ }, import("zod/v4/core").$strip>;
2147
+ };
2148
+ };
2149
+ };
2150
+ apiKeys: {
2151
+ list: {
2152
+ summary: "List my API keys";
2153
+ method: "GET";
2154
+ path: "/v1/me/api-keys";
2155
+ responses: {
2156
+ 200: import("zod").ZodObject<{
2157
+ ok: import("zod").ZodLiteral<true>;
2158
+ data: import("zod").ZodArray<import("zod").ZodObject<{
2159
+ id: import("zod").ZodString;
2160
+ name: import("zod").ZodString;
2161
+ prefix: import("zod").ZodString;
2162
+ last4: import("zod").ZodString;
2163
+ permissions: import("zod").ZodArray<import("zod").ZodEnum<{
2164
+ "user.create": "user.create";
2165
+ "user.suspend": "user.suspend";
2166
+ "audit.read": "audit.read";
2167
+ "file.upload": "file.upload";
2168
+ "llm.use": "llm.use";
2169
+ "billing.checkout": "billing.checkout";
2170
+ }>>;
2171
+ createdAt: import("zod").ZodISODateTime;
2172
+ lastUsedAt: import("zod").ZodNullable<import("zod").ZodISODateTime>;
2173
+ }, import("zod/v4/core").$strip>>;
2174
+ }, import("zod/v4/core").$strip>;
2175
+ 401: import("zod").ZodObject<{
2176
+ ok: import("zod").ZodLiteral<false>;
2177
+ error: import("zod").ZodObject<{
2178
+ code: import("zod").ZodEnum<{
2179
+ VALIDATION_FAILED: "VALIDATION_FAILED";
2180
+ UNAUTHENTICATED: "UNAUTHENTICATED";
2181
+ FORBIDDEN: "FORBIDDEN";
2182
+ NOT_FOUND: "NOT_FOUND";
2183
+ CONFLICT: "CONFLICT";
2184
+ RATE_LIMITED: "RATE_LIMITED";
2185
+ INTERNAL: "INTERNAL";
2186
+ }>;
2187
+ message: import("zod").ZodString;
2188
+ details: import("zod").ZodOptional<import("zod").ZodUnknown>;
2189
+ requestId: import("zod").ZodOptional<import("zod").ZodString>;
2190
+ }, import("zod/v4/core").$strip>;
2191
+ }, import("zod/v4/core").$strip>;
2192
+ 403: import("zod").ZodObject<{
2193
+ ok: import("zod").ZodLiteral<false>;
2194
+ error: import("zod").ZodObject<{
2195
+ code: import("zod").ZodEnum<{
2196
+ VALIDATION_FAILED: "VALIDATION_FAILED";
2197
+ UNAUTHENTICATED: "UNAUTHENTICATED";
2198
+ FORBIDDEN: "FORBIDDEN";
2199
+ NOT_FOUND: "NOT_FOUND";
2200
+ CONFLICT: "CONFLICT";
2201
+ RATE_LIMITED: "RATE_LIMITED";
2202
+ INTERNAL: "INTERNAL";
2203
+ }>;
2204
+ message: import("zod").ZodString;
2205
+ details: import("zod").ZodOptional<import("zod").ZodUnknown>;
2206
+ requestId: import("zod").ZodOptional<import("zod").ZodString>;
2207
+ }, import("zod/v4/core").$strip>;
2208
+ }, import("zod/v4/core").$strip>;
2209
+ };
2210
+ };
2211
+ create: {
2212
+ summary: "Create an API key (token shown once)";
2213
+ method: "POST";
2214
+ body: import("zod").ZodObject<{
2215
+ name: import("zod").ZodString;
2216
+ permissions: import("zod").ZodArray<import("zod").ZodEnum<{
2217
+ "user.create": "user.create";
2218
+ "user.suspend": "user.suspend";
2219
+ "audit.read": "audit.read";
2220
+ "file.upload": "file.upload";
2221
+ "llm.use": "llm.use";
2222
+ "billing.checkout": "billing.checkout";
2223
+ }>>;
2224
+ }, import("zod/v4/core").$strip>;
2225
+ path: "/v1/me/api-keys";
2226
+ responses: {
2227
+ 201: import("zod").ZodObject<{
2228
+ ok: import("zod").ZodLiteral<true>;
2229
+ data: import("zod").ZodObject<{
2230
+ id: import("zod").ZodString;
2231
+ name: import("zod").ZodString;
2232
+ prefix: import("zod").ZodString;
2233
+ last4: import("zod").ZodString;
2234
+ permissions: import("zod").ZodArray<import("zod").ZodEnum<{
2235
+ "user.create": "user.create";
2236
+ "user.suspend": "user.suspend";
2237
+ "audit.read": "audit.read";
2238
+ "file.upload": "file.upload";
2239
+ "llm.use": "llm.use";
2240
+ "billing.checkout": "billing.checkout";
2241
+ }>>;
2242
+ createdAt: import("zod").ZodISODateTime;
2243
+ lastUsedAt: import("zod").ZodNullable<import("zod").ZodISODateTime>;
2244
+ token: import("zod").ZodString;
2245
+ }, import("zod/v4/core").$strip>;
2246
+ }, import("zod/v4/core").$strip>;
2247
+ 401: import("zod").ZodObject<{
2248
+ ok: import("zod").ZodLiteral<false>;
2249
+ error: import("zod").ZodObject<{
2250
+ code: import("zod").ZodEnum<{
2251
+ VALIDATION_FAILED: "VALIDATION_FAILED";
2252
+ UNAUTHENTICATED: "UNAUTHENTICATED";
2253
+ FORBIDDEN: "FORBIDDEN";
2254
+ NOT_FOUND: "NOT_FOUND";
2255
+ CONFLICT: "CONFLICT";
2256
+ RATE_LIMITED: "RATE_LIMITED";
2257
+ INTERNAL: "INTERNAL";
2258
+ }>;
2259
+ message: import("zod").ZodString;
2260
+ details: import("zod").ZodOptional<import("zod").ZodUnknown>;
2261
+ requestId: import("zod").ZodOptional<import("zod").ZodString>;
2262
+ }, import("zod/v4/core").$strip>;
2263
+ }, import("zod/v4/core").$strip>;
2264
+ 403: import("zod").ZodObject<{
2265
+ ok: import("zod").ZodLiteral<false>;
2266
+ error: import("zod").ZodObject<{
2267
+ code: import("zod").ZodEnum<{
2268
+ VALIDATION_FAILED: "VALIDATION_FAILED";
2269
+ UNAUTHENTICATED: "UNAUTHENTICATED";
2270
+ FORBIDDEN: "FORBIDDEN";
2271
+ NOT_FOUND: "NOT_FOUND";
2272
+ CONFLICT: "CONFLICT";
2273
+ RATE_LIMITED: "RATE_LIMITED";
2274
+ INTERNAL: "INTERNAL";
2275
+ }>;
2276
+ message: import("zod").ZodString;
2277
+ details: import("zod").ZodOptional<import("zod").ZodUnknown>;
2278
+ requestId: import("zod").ZodOptional<import("zod").ZodString>;
2279
+ }, import("zod/v4/core").$strip>;
2280
+ }, import("zod/v4/core").$strip>;
2281
+ 422: import("zod").ZodObject<{
2282
+ ok: import("zod").ZodLiteral<false>;
2283
+ error: import("zod").ZodObject<{
2284
+ code: import("zod").ZodEnum<{
2285
+ VALIDATION_FAILED: "VALIDATION_FAILED";
2286
+ UNAUTHENTICATED: "UNAUTHENTICATED";
2287
+ FORBIDDEN: "FORBIDDEN";
2288
+ NOT_FOUND: "NOT_FOUND";
2289
+ CONFLICT: "CONFLICT";
2290
+ RATE_LIMITED: "RATE_LIMITED";
2291
+ INTERNAL: "INTERNAL";
2292
+ }>;
2293
+ message: import("zod").ZodString;
2294
+ details: import("zod").ZodOptional<import("zod").ZodUnknown>;
2295
+ requestId: import("zod").ZodOptional<import("zod").ZodString>;
2296
+ }, import("zod/v4/core").$strip>;
2297
+ }, import("zod/v4/core").$strip>;
2298
+ };
2299
+ };
2300
+ revoke: {
2301
+ pathParams: import("zod").ZodObject<{
2302
+ id: import("zod").ZodString;
2303
+ }, import("zod/v4/core").$strip>;
2304
+ summary: "Revoke an API key";
2305
+ method: "DELETE";
2306
+ path: "/v1/me/api-keys/:id";
2307
+ responses: {
2308
+ 200: import("zod").ZodObject<{
2309
+ ok: import("zod").ZodLiteral<true>;
2310
+ data: import("zod").ZodObject<{
2311
+ revoked: import("zod").ZodLiteral<true>;
2312
+ }, import("zod/v4/core").$strip>;
2313
+ }, import("zod/v4/core").$strip>;
2314
+ 401: import("zod").ZodObject<{
2315
+ ok: import("zod").ZodLiteral<false>;
2316
+ error: import("zod").ZodObject<{
2317
+ code: import("zod").ZodEnum<{
2318
+ VALIDATION_FAILED: "VALIDATION_FAILED";
2319
+ UNAUTHENTICATED: "UNAUTHENTICATED";
2320
+ FORBIDDEN: "FORBIDDEN";
2321
+ NOT_FOUND: "NOT_FOUND";
2322
+ CONFLICT: "CONFLICT";
2323
+ RATE_LIMITED: "RATE_LIMITED";
2324
+ INTERNAL: "INTERNAL";
2325
+ }>;
2326
+ message: import("zod").ZodString;
2327
+ details: import("zod").ZodOptional<import("zod").ZodUnknown>;
2328
+ requestId: import("zod").ZodOptional<import("zod").ZodString>;
2329
+ }, import("zod/v4/core").$strip>;
2330
+ }, import("zod/v4/core").$strip>;
2331
+ 403: import("zod").ZodObject<{
2332
+ ok: import("zod").ZodLiteral<false>;
2333
+ error: import("zod").ZodObject<{
2334
+ code: import("zod").ZodEnum<{
2335
+ VALIDATION_FAILED: "VALIDATION_FAILED";
2336
+ UNAUTHENTICATED: "UNAUTHENTICATED";
2337
+ FORBIDDEN: "FORBIDDEN";
2338
+ NOT_FOUND: "NOT_FOUND";
2339
+ CONFLICT: "CONFLICT";
2340
+ RATE_LIMITED: "RATE_LIMITED";
2341
+ INTERNAL: "INTERNAL";
2342
+ }>;
2343
+ message: import("zod").ZodString;
2344
+ details: import("zod").ZodOptional<import("zod").ZodUnknown>;
2345
+ requestId: import("zod").ZodOptional<import("zod").ZodString>;
2346
+ }, import("zod/v4/core").$strip>;
2347
+ }, import("zod/v4/core").$strip>;
2348
+ 404: import("zod").ZodObject<{
2349
+ ok: import("zod").ZodLiteral<false>;
2350
+ error: import("zod").ZodObject<{
2351
+ code: import("zod").ZodEnum<{
2352
+ VALIDATION_FAILED: "VALIDATION_FAILED";
2353
+ UNAUTHENTICATED: "UNAUTHENTICATED";
2354
+ FORBIDDEN: "FORBIDDEN";
2355
+ NOT_FOUND: "NOT_FOUND";
2356
+ CONFLICT: "CONFLICT";
2357
+ RATE_LIMITED: "RATE_LIMITED";
2358
+ INTERNAL: "INTERNAL";
2359
+ }>;
2360
+ message: import("zod").ZodString;
2361
+ details: import("zod").ZodOptional<import("zod").ZodUnknown>;
2362
+ requestId: import("zod").ZodOptional<import("zod").ZodString>;
2363
+ }, import("zod/v4/core").$strip>;
2364
+ }, import("zod/v4/core").$strip>;
2365
+ };
2366
+ };
2367
+ };
2368
+ billing: {
2369
+ plans: {
2370
+ summary: "List billing plans";
2371
+ method: "GET";
2372
+ path: "/v1/billing/plans";
2373
+ responses: {
2374
+ 200: import("zod").ZodObject<{
2375
+ ok: import("zod").ZodLiteral<true>;
2376
+ data: import("zod").ZodArray<import("zod").ZodObject<{
2377
+ code: import("zod").ZodEnum<{
2378
+ free: "free";
2379
+ pro: "pro";
2380
+ }>;
2381
+ name: import("zod").ZodString;
2382
+ amountHkdCents: import("zod").ZodNumber;
2383
+ interval: import("zod").ZodLiteral<"month">;
2384
+ }, import("zod/v4/core").$strip>>;
2385
+ }, import("zod/v4/core").$strip>;
2386
+ };
2387
+ };
2388
+ subscription: {
2389
+ query: import("zod").ZodObject<{
2390
+ organizationId: import("zod").ZodString;
2391
+ }, import("zod/v4/core").$strip>;
2392
+ summary: "Current organization subscription";
2393
+ method: "GET";
2394
+ path: "/v1/billing/subscription";
2395
+ responses: {
2396
+ 200: import("zod").ZodObject<{
2397
+ ok: import("zod").ZodLiteral<true>;
2398
+ data: import("zod").ZodObject<{
2399
+ planCode: import("zod").ZodEnum<{
2400
+ free: "free";
2401
+ pro: "pro";
2402
+ }>;
2403
+ status: import("zod").ZodEnum<{
2404
+ active: "active";
2405
+ canceled: "canceled";
2406
+ }>;
2407
+ currentPeriodEnd: import("zod").ZodNullable<import("zod").ZodISODateTime>;
2408
+ seatCount: import("zod").ZodNumber;
2409
+ }, import("zod/v4/core").$strip>;
2410
+ }, import("zod/v4/core").$strip>;
2411
+ 401: import("zod").ZodObject<{
2412
+ ok: import("zod").ZodLiteral<false>;
2413
+ error: import("zod").ZodObject<{
2414
+ code: import("zod").ZodEnum<{
2415
+ VALIDATION_FAILED: "VALIDATION_FAILED";
2416
+ UNAUTHENTICATED: "UNAUTHENTICATED";
2417
+ FORBIDDEN: "FORBIDDEN";
2418
+ NOT_FOUND: "NOT_FOUND";
2419
+ CONFLICT: "CONFLICT";
2420
+ RATE_LIMITED: "RATE_LIMITED";
2421
+ INTERNAL: "INTERNAL";
2422
+ }>;
2423
+ message: import("zod").ZodString;
2424
+ details: import("zod").ZodOptional<import("zod").ZodUnknown>;
2425
+ requestId: import("zod").ZodOptional<import("zod").ZodString>;
2426
+ }, import("zod/v4/core").$strip>;
2427
+ }, import("zod/v4/core").$strip>;
2428
+ 403: import("zod").ZodObject<{
2429
+ ok: import("zod").ZodLiteral<false>;
2430
+ error: import("zod").ZodObject<{
2431
+ code: import("zod").ZodEnum<{
2432
+ VALIDATION_FAILED: "VALIDATION_FAILED";
2433
+ UNAUTHENTICATED: "UNAUTHENTICATED";
2434
+ FORBIDDEN: "FORBIDDEN";
2435
+ NOT_FOUND: "NOT_FOUND";
2436
+ CONFLICT: "CONFLICT";
2437
+ RATE_LIMITED: "RATE_LIMITED";
2438
+ INTERNAL: "INTERNAL";
2439
+ }>;
2440
+ message: import("zod").ZodString;
2441
+ details: import("zod").ZodOptional<import("zod").ZodUnknown>;
2442
+ requestId: import("zod").ZodOptional<import("zod").ZodString>;
2443
+ }, import("zod/v4/core").$strip>;
2444
+ }, import("zod/v4/core").$strip>;
2445
+ 422: import("zod").ZodObject<{
2446
+ ok: import("zod").ZodLiteral<false>;
2447
+ error: import("zod").ZodObject<{
2448
+ code: import("zod").ZodEnum<{
2449
+ VALIDATION_FAILED: "VALIDATION_FAILED";
2450
+ UNAUTHENTICATED: "UNAUTHENTICATED";
2451
+ FORBIDDEN: "FORBIDDEN";
2452
+ NOT_FOUND: "NOT_FOUND";
2453
+ CONFLICT: "CONFLICT";
2454
+ RATE_LIMITED: "RATE_LIMITED";
2455
+ INTERNAL: "INTERNAL";
2456
+ }>;
2457
+ message: import("zod").ZodString;
2458
+ details: import("zod").ZodOptional<import("zod").ZodUnknown>;
2459
+ requestId: import("zod").ZodOptional<import("zod").ZodString>;
2460
+ }, import("zod/v4/core").$strip>;
2461
+ }, import("zod/v4/core").$strip>;
2462
+ };
2463
+ };
2464
+ checkout: {
2465
+ summary: "Start organization checkout";
2466
+ method: "POST";
2467
+ body: import("zod").ZodObject<{
2468
+ organizationId: import("zod").ZodString;
2469
+ planCode: import("zod").ZodEnum<{
2470
+ free: "free";
2471
+ pro: "pro";
2472
+ }>;
2473
+ successUrl: import("zod").ZodString;
2474
+ cancelUrl: import("zod").ZodString;
2475
+ seatCount: import("zod").ZodDefault<import("zod").ZodNumber>;
2476
+ }, import("zod/v4/core").$strip>;
2477
+ path: "/v1/billing/checkout";
2478
+ responses: {
2479
+ 200: import("zod").ZodObject<{
2480
+ ok: import("zod").ZodLiteral<true>;
2481
+ data: import("zod").ZodObject<{
2482
+ url: import("zod").ZodString;
2483
+ }, import("zod/v4/core").$strip>;
2484
+ }, import("zod/v4/core").$strip>;
2485
+ 401: import("zod").ZodObject<{
2486
+ ok: import("zod").ZodLiteral<false>;
2487
+ error: import("zod").ZodObject<{
2488
+ code: import("zod").ZodEnum<{
2489
+ VALIDATION_FAILED: "VALIDATION_FAILED";
2490
+ UNAUTHENTICATED: "UNAUTHENTICATED";
2491
+ FORBIDDEN: "FORBIDDEN";
2492
+ NOT_FOUND: "NOT_FOUND";
2493
+ CONFLICT: "CONFLICT";
2494
+ RATE_LIMITED: "RATE_LIMITED";
2495
+ INTERNAL: "INTERNAL";
2496
+ }>;
2497
+ message: import("zod").ZodString;
2498
+ details: import("zod").ZodOptional<import("zod").ZodUnknown>;
2499
+ requestId: import("zod").ZodOptional<import("zod").ZodString>;
2500
+ }, import("zod/v4/core").$strip>;
2501
+ }, import("zod/v4/core").$strip>;
2502
+ 403: import("zod").ZodObject<{
2503
+ ok: import("zod").ZodLiteral<false>;
2504
+ error: import("zod").ZodObject<{
2505
+ code: import("zod").ZodEnum<{
2506
+ VALIDATION_FAILED: "VALIDATION_FAILED";
2507
+ UNAUTHENTICATED: "UNAUTHENTICATED";
2508
+ FORBIDDEN: "FORBIDDEN";
2509
+ NOT_FOUND: "NOT_FOUND";
2510
+ CONFLICT: "CONFLICT";
2511
+ RATE_LIMITED: "RATE_LIMITED";
2512
+ INTERNAL: "INTERNAL";
2513
+ }>;
2514
+ message: import("zod").ZodString;
2515
+ details: import("zod").ZodOptional<import("zod").ZodUnknown>;
2516
+ requestId: import("zod").ZodOptional<import("zod").ZodString>;
2517
+ }, import("zod/v4/core").$strip>;
2518
+ }, import("zod/v4/core").$strip>;
2519
+ 422: import("zod").ZodObject<{
2520
+ ok: import("zod").ZodLiteral<false>;
2521
+ error: import("zod").ZodObject<{
2522
+ code: import("zod").ZodEnum<{
2523
+ VALIDATION_FAILED: "VALIDATION_FAILED";
2524
+ UNAUTHENTICATED: "UNAUTHENTICATED";
2525
+ FORBIDDEN: "FORBIDDEN";
2526
+ NOT_FOUND: "NOT_FOUND";
2527
+ CONFLICT: "CONFLICT";
2528
+ RATE_LIMITED: "RATE_LIMITED";
2529
+ INTERNAL: "INTERNAL";
2530
+ }>;
2531
+ message: import("zod").ZodString;
2532
+ details: import("zod").ZodOptional<import("zod").ZodUnknown>;
2533
+ requestId: import("zod").ZodOptional<import("zod").ZodString>;
2534
+ }, import("zod/v4/core").$strip>;
2535
+ }, import("zod/v4/core").$strip>;
2536
+ };
2537
+ };
2538
+ cancel: {
2539
+ summary: "Cancel organization subscription";
2540
+ method: "POST";
2541
+ body: import("zod").ZodObject<{
2542
+ organizationId: import("zod").ZodString;
2543
+ }, import("zod/v4/core").$strip>;
2544
+ path: "/v1/billing/cancel";
2545
+ responses: {
2546
+ 200: import("zod").ZodObject<{
2547
+ ok: import("zod").ZodLiteral<true>;
2548
+ data: import("zod").ZodObject<{
2549
+ canceled: import("zod").ZodLiteral<true>;
2550
+ }, import("zod/v4/core").$strip>;
2551
+ }, import("zod/v4/core").$strip>;
2552
+ 401: import("zod").ZodObject<{
2553
+ ok: import("zod").ZodLiteral<false>;
2554
+ error: import("zod").ZodObject<{
2555
+ code: import("zod").ZodEnum<{
2556
+ VALIDATION_FAILED: "VALIDATION_FAILED";
2557
+ UNAUTHENTICATED: "UNAUTHENTICATED";
2558
+ FORBIDDEN: "FORBIDDEN";
2559
+ NOT_FOUND: "NOT_FOUND";
2560
+ CONFLICT: "CONFLICT";
2561
+ RATE_LIMITED: "RATE_LIMITED";
2562
+ INTERNAL: "INTERNAL";
2563
+ }>;
2564
+ message: import("zod").ZodString;
2565
+ details: import("zod").ZodOptional<import("zod").ZodUnknown>;
2566
+ requestId: import("zod").ZodOptional<import("zod").ZodString>;
2567
+ }, import("zod/v4/core").$strip>;
2568
+ }, import("zod/v4/core").$strip>;
2569
+ 403: import("zod").ZodObject<{
2570
+ ok: import("zod").ZodLiteral<false>;
2571
+ error: import("zod").ZodObject<{
2572
+ code: import("zod").ZodEnum<{
2573
+ VALIDATION_FAILED: "VALIDATION_FAILED";
2574
+ UNAUTHENTICATED: "UNAUTHENTICATED";
2575
+ FORBIDDEN: "FORBIDDEN";
2576
+ NOT_FOUND: "NOT_FOUND";
2577
+ CONFLICT: "CONFLICT";
2578
+ RATE_LIMITED: "RATE_LIMITED";
2579
+ INTERNAL: "INTERNAL";
2580
+ }>;
2581
+ message: import("zod").ZodString;
2582
+ details: import("zod").ZodOptional<import("zod").ZodUnknown>;
2583
+ requestId: import("zod").ZodOptional<import("zod").ZodString>;
2584
+ }, import("zod/v4/core").$strip>;
2585
+ }, import("zod/v4/core").$strip>;
2586
+ 422: import("zod").ZodObject<{
2587
+ ok: import("zod").ZodLiteral<false>;
2588
+ error: import("zod").ZodObject<{
2589
+ code: import("zod").ZodEnum<{
2590
+ VALIDATION_FAILED: "VALIDATION_FAILED";
2591
+ UNAUTHENTICATED: "UNAUTHENTICATED";
2592
+ FORBIDDEN: "FORBIDDEN";
2593
+ NOT_FOUND: "NOT_FOUND";
2594
+ CONFLICT: "CONFLICT";
2595
+ RATE_LIMITED: "RATE_LIMITED";
2596
+ INTERNAL: "INTERNAL";
2597
+ }>;
2598
+ message: import("zod").ZodString;
2599
+ details: import("zod").ZodOptional<import("zod").ZodUnknown>;
2600
+ requestId: import("zod").ZodOptional<import("zod").ZodString>;
2601
+ }, import("zod/v4/core").$strip>;
2602
+ }, import("zod/v4/core").$strip>;
2603
+ };
2604
+ };
2605
+ invoices: {
2606
+ query: import("zod").ZodObject<{
2607
+ organizationId: import("zod").ZodString;
2608
+ }, import("zod/v4/core").$strip>;
2609
+ summary: "List organization invoices";
2610
+ method: "GET";
2611
+ path: "/v1/billing/invoices";
2612
+ responses: {
2613
+ 200: import("zod").ZodObject<{
2614
+ ok: import("zod").ZodLiteral<true>;
2615
+ data: import("zod").ZodArray<import("zod").ZodObject<{
2616
+ id: import("zod").ZodString;
2617
+ number: import("zod").ZodNullable<import("zod").ZodString>;
2618
+ status: import("zod").ZodString;
2619
+ amountDue: import("zod").ZodNumber;
2620
+ currency: import("zod").ZodString;
2621
+ hostedInvoiceUrl: import("zod").ZodNullable<import("zod").ZodString>;
2622
+ createdAt: import("zod").ZodISODateTime;
2623
+ }, import("zod/v4/core").$strip>>;
2624
+ }, import("zod/v4/core").$strip>;
2625
+ 401: import("zod").ZodObject<{
2626
+ ok: import("zod").ZodLiteral<false>;
2627
+ error: import("zod").ZodObject<{
2628
+ code: import("zod").ZodEnum<{
2629
+ VALIDATION_FAILED: "VALIDATION_FAILED";
2630
+ UNAUTHENTICATED: "UNAUTHENTICATED";
2631
+ FORBIDDEN: "FORBIDDEN";
2632
+ NOT_FOUND: "NOT_FOUND";
2633
+ CONFLICT: "CONFLICT";
2634
+ RATE_LIMITED: "RATE_LIMITED";
2635
+ INTERNAL: "INTERNAL";
2636
+ }>;
2637
+ message: import("zod").ZodString;
2638
+ details: import("zod").ZodOptional<import("zod").ZodUnknown>;
2639
+ requestId: import("zod").ZodOptional<import("zod").ZodString>;
2640
+ }, import("zod/v4/core").$strip>;
2641
+ }, import("zod/v4/core").$strip>;
2642
+ 403: import("zod").ZodObject<{
2643
+ ok: import("zod").ZodLiteral<false>;
2644
+ error: import("zod").ZodObject<{
2645
+ code: import("zod").ZodEnum<{
2646
+ VALIDATION_FAILED: "VALIDATION_FAILED";
2647
+ UNAUTHENTICATED: "UNAUTHENTICATED";
2648
+ FORBIDDEN: "FORBIDDEN";
2649
+ NOT_FOUND: "NOT_FOUND";
2650
+ CONFLICT: "CONFLICT";
2651
+ RATE_LIMITED: "RATE_LIMITED";
2652
+ INTERNAL: "INTERNAL";
2653
+ }>;
2654
+ message: import("zod").ZodString;
2655
+ details: import("zod").ZodOptional<import("zod").ZodUnknown>;
2656
+ requestId: import("zod").ZodOptional<import("zod").ZodString>;
2657
+ }, import("zod/v4/core").$strip>;
2658
+ }, import("zod/v4/core").$strip>;
2659
+ 422: import("zod").ZodObject<{
2660
+ ok: import("zod").ZodLiteral<false>;
2661
+ error: import("zod").ZodObject<{
2662
+ code: import("zod").ZodEnum<{
2663
+ VALIDATION_FAILED: "VALIDATION_FAILED";
2664
+ UNAUTHENTICATED: "UNAUTHENTICATED";
2665
+ FORBIDDEN: "FORBIDDEN";
2666
+ NOT_FOUND: "NOT_FOUND";
2667
+ CONFLICT: "CONFLICT";
2668
+ RATE_LIMITED: "RATE_LIMITED";
2669
+ INTERNAL: "INTERNAL";
2670
+ }>;
2671
+ message: import("zod").ZodString;
2672
+ details: import("zod").ZodOptional<import("zod").ZodUnknown>;
2673
+ requestId: import("zod").ZodOptional<import("zod").ZodString>;
2674
+ }, import("zod/v4/core").$strip>;
2675
+ }, import("zod/v4/core").$strip>;
2676
+ };
2677
+ };
2678
+ portal: {
2679
+ summary: "Open Stripe Customer Portal";
2680
+ method: "POST";
2681
+ body: import("zod").ZodObject<{
2682
+ organizationId: import("zod").ZodString;
2683
+ returnUrl: import("zod").ZodString;
2684
+ }, import("zod/v4/core").$strip>;
2685
+ path: "/v1/billing/portal";
2686
+ responses: {
2687
+ 200: import("zod").ZodObject<{
2688
+ ok: import("zod").ZodLiteral<true>;
2689
+ data: import("zod").ZodObject<{
2690
+ url: import("zod").ZodString;
2691
+ }, import("zod/v4/core").$strip>;
2692
+ }, import("zod/v4/core").$strip>;
2693
+ 401: import("zod").ZodObject<{
2694
+ ok: import("zod").ZodLiteral<false>;
2695
+ error: import("zod").ZodObject<{
2696
+ code: import("zod").ZodEnum<{
2697
+ VALIDATION_FAILED: "VALIDATION_FAILED";
2698
+ UNAUTHENTICATED: "UNAUTHENTICATED";
2699
+ FORBIDDEN: "FORBIDDEN";
2700
+ NOT_FOUND: "NOT_FOUND";
2701
+ CONFLICT: "CONFLICT";
2702
+ RATE_LIMITED: "RATE_LIMITED";
2703
+ INTERNAL: "INTERNAL";
2704
+ }>;
2705
+ message: import("zod").ZodString;
2706
+ details: import("zod").ZodOptional<import("zod").ZodUnknown>;
2707
+ requestId: import("zod").ZodOptional<import("zod").ZodString>;
2708
+ }, import("zod/v4/core").$strip>;
2709
+ }, import("zod/v4/core").$strip>;
2710
+ 403: import("zod").ZodObject<{
2711
+ ok: import("zod").ZodLiteral<false>;
2712
+ error: import("zod").ZodObject<{
2713
+ code: import("zod").ZodEnum<{
2714
+ VALIDATION_FAILED: "VALIDATION_FAILED";
2715
+ UNAUTHENTICATED: "UNAUTHENTICATED";
2716
+ FORBIDDEN: "FORBIDDEN";
2717
+ NOT_FOUND: "NOT_FOUND";
2718
+ CONFLICT: "CONFLICT";
2719
+ RATE_LIMITED: "RATE_LIMITED";
2720
+ INTERNAL: "INTERNAL";
2721
+ }>;
2722
+ message: import("zod").ZodString;
2723
+ details: import("zod").ZodOptional<import("zod").ZodUnknown>;
2724
+ requestId: import("zod").ZodOptional<import("zod").ZodString>;
2725
+ }, import("zod/v4/core").$strip>;
2726
+ }, import("zod/v4/core").$strip>;
2727
+ 409: import("zod").ZodObject<{
2728
+ ok: import("zod").ZodLiteral<false>;
2729
+ error: import("zod").ZodObject<{
2730
+ code: import("zod").ZodEnum<{
2731
+ VALIDATION_FAILED: "VALIDATION_FAILED";
2732
+ UNAUTHENTICATED: "UNAUTHENTICATED";
2733
+ FORBIDDEN: "FORBIDDEN";
2734
+ NOT_FOUND: "NOT_FOUND";
2735
+ CONFLICT: "CONFLICT";
2736
+ RATE_LIMITED: "RATE_LIMITED";
2737
+ INTERNAL: "INTERNAL";
2738
+ }>;
2739
+ message: import("zod").ZodString;
2740
+ details: import("zod").ZodOptional<import("zod").ZodUnknown>;
2741
+ requestId: import("zod").ZodOptional<import("zod").ZodString>;
2742
+ }, import("zod/v4/core").$strip>;
2743
+ }, import("zod/v4/core").$strip>;
2744
+ 422: import("zod").ZodObject<{
2745
+ ok: import("zod").ZodLiteral<false>;
2746
+ error: import("zod").ZodObject<{
2747
+ code: import("zod").ZodEnum<{
2748
+ VALIDATION_FAILED: "VALIDATION_FAILED";
2749
+ UNAUTHENTICATED: "UNAUTHENTICATED";
2750
+ FORBIDDEN: "FORBIDDEN";
2751
+ NOT_FOUND: "NOT_FOUND";
2752
+ CONFLICT: "CONFLICT";
2753
+ RATE_LIMITED: "RATE_LIMITED";
2754
+ INTERNAL: "INTERNAL";
2755
+ }>;
2756
+ message: import("zod").ZodString;
2757
+ details: import("zod").ZodOptional<import("zod").ZodUnknown>;
2758
+ requestId: import("zod").ZodOptional<import("zod").ZodString>;
2759
+ }, import("zod/v4/core").$strip>;
2760
+ }, import("zod/v4/core").$strip>;
2761
+ };
2762
+ };
2763
+ };
2764
+ };
2765
+ export type AppContract = typeof appContract;
2766
+ export * from './api-keys';
2767
+ export * from './audit';
2768
+ export * from './auth';
2769
+ export * from './billing';
2770
+ export * from './devices';
2771
+ export * from './files';
2772
+ export * from './health';
2773
+ export * from './llm';
2774
+ export * from './notifications';
2775
+ export * from './organizations';
2776
+ export * from './users';
2777
+ //# sourceMappingURL=index.d.ts.map