@oxyhq/contracts 0.1.0 → 0.2.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.
@@ -18,14 +18,14 @@
18
18
  * - `packages/api/src/utils/userTransform.ts` `formatUserResponse` — the
19
19
  * canonical serialization used by `/auth/refresh-all`, device sessions, etc.
20
20
  * Emits `id` (NOT `_id`), forwards `username` verbatim (may be absent), and
21
- * emits `name` as the structured `{ first, last, full }` subdocument.
21
+ * emits `name` as the structured `{ first, last, full, displayName }`
22
+ * subdocument.
22
23
  * - `packages/api/src/models/User.ts` — `NameSchema` (`first`/`last` default
23
- * `''`; `full` is a Mongoose VIRTUAL) and the `displayName` virtual. Because
24
- * virtuals are only present when a query uses `.lean({ virtuals: true })` (or
25
- * a hydrated doc), `name.full` and `displayName` MUST be treated as OPTIONAL.
24
+ * `''`; `full` and `displayName` are Mongoose VIRTUALS. Formatted API
25
+ * responses compose both fields, while raw-document responses may omit the
26
+ * virtuals if the query did not materialise them.
26
27
  * - The `/auth/refresh-all` handler in `packages/api/src/routes/auth.ts`, whose
27
- * per-slot `authuser` is `number | null` (null = legacy un-suffixed `oxy_rt`
28
- * cookie slot).
28
+ * per-slot `authuser` is the numeric `oxy_rt_${authuser}` cookie slot.
29
29
  *
30
30
  * Platform-agnostic — zod only, no react/react-native/expo. ESM-safe (no
31
31
  * `require()`).
@@ -35,7 +35,9 @@ import { z } from 'zod';
35
35
  * Structured human name subdocument. Mirrors `User.name` (`NameSchema`).
36
36
  *
37
37
  * - `first` / `last` default to `''` in Mongo, so they are optional on the wire.
38
- * - `full` is a Mongoose virtual — ABSENT unless the query materialised virtuals.
38
+ * - `full` is a Mongoose virtual — absent unless the query materialised
39
+ * virtuals or the serializer composed it.
40
+ * - `displayName` is the required canonical app-facing display string.
39
41
  *
40
42
  * `.passthrough()` is intentional: it tolerates additive name fields without a
41
43
  * coordinated contract bump, while the three known keys stay strongly typed.
@@ -44,26 +46,27 @@ export declare const userNameSchema: z.ZodObject<{
44
46
  first: z.ZodOptional<z.ZodString>;
45
47
  last: z.ZodOptional<z.ZodString>;
46
48
  full: z.ZodOptional<z.ZodString>;
49
+ displayName: z.ZodString;
47
50
  }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
48
51
  first: z.ZodOptional<z.ZodString>;
49
52
  last: z.ZodOptional<z.ZodString>;
50
53
  full: z.ZodOptional<z.ZodString>;
54
+ displayName: z.ZodString;
51
55
  }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
52
56
  first: z.ZodOptional<z.ZodString>;
53
57
  last: z.ZodOptional<z.ZodString>;
54
58
  full: z.ZodOptional<z.ZodString>;
59
+ displayName: z.ZodString;
55
60
  }, z.ZodTypeAny, "passthrough">>;
56
61
  export type UserNameResponse = z.infer<typeof userNameSchema>;
57
62
  /**
58
63
  * The canonical user object emitted by `formatUserResponse`.
59
64
  *
60
- * Only `id` is guaranteed present (it is the early-return guard in
61
- * `formatUserResponse`). Every other field is forwarded verbatim from the user
62
- * document and may be absent depending on the query's `.select(...)`/`.lean()`
63
- * projection so all are optional/nullable to match reality. Both `id` and
64
- * `_id` are accepted because RAW-document responses (e.g. `GET /users/me`,
65
- * which does NOT pass through `formatUserResponse`) carry `_id` instead of `id`;
66
- * resolve the identifier with {@link resolveUserId}.
65
+ * `id` and `name.displayName` are guaranteed on formatted user DTOs. The rest
66
+ * is forwarded from the user document and may be absent depending on the query's
67
+ * `.select(...)`/`.lean()` projection. Both `id` and `_id` are accepted because
68
+ * some raw-document responses carry `_id` instead of `id`; resolve the
69
+ * identifier with {@link resolveUserId}.
67
70
  *
68
71
  * `.passthrough()` keeps the large tail of profile fields
69
72
  * (`privacySettings`, `locations`, `links`, `linksMetadata`, `bio`,
@@ -83,21 +86,22 @@ export declare const userResponseSchema: z.ZodObject<{
83
86
  avatar: z.ZodOptional<z.ZodNullable<z.ZodString>>;
84
87
  /** Named Bloom color preset (e.g. `"blue"`) or null. */
85
88
  color: z.ZodOptional<z.ZodNullable<z.ZodString>>;
86
- name: z.ZodOptional<z.ZodObject<{
89
+ name: z.ZodObject<{
87
90
  first: z.ZodOptional<z.ZodString>;
88
91
  last: z.ZodOptional<z.ZodString>;
89
92
  full: z.ZodOptional<z.ZodString>;
93
+ displayName: z.ZodString;
90
94
  }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
91
95
  first: z.ZodOptional<z.ZodString>;
92
96
  last: z.ZodOptional<z.ZodString>;
93
97
  full: z.ZodOptional<z.ZodString>;
98
+ displayName: z.ZodString;
94
99
  }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
95
100
  first: z.ZodOptional<z.ZodString>;
96
101
  last: z.ZodOptional<z.ZodString>;
97
102
  full: z.ZodOptional<z.ZodString>;
98
- }, z.ZodTypeAny, "passthrough">>>;
99
- /** Server `displayName` virtual (`username || truncatedKey`). Optional. */
100
- displayName: z.ZodOptional<z.ZodString>;
103
+ displayName: z.ZodString;
104
+ }, z.ZodTypeAny, "passthrough">>;
101
105
  verified: z.ZodOptional<z.ZodBoolean>;
102
106
  language: z.ZodOptional<z.ZodString>;
103
107
  }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
@@ -112,21 +116,22 @@ export declare const userResponseSchema: z.ZodObject<{
112
116
  avatar: z.ZodOptional<z.ZodNullable<z.ZodString>>;
113
117
  /** Named Bloom color preset (e.g. `"blue"`) or null. */
114
118
  color: z.ZodOptional<z.ZodNullable<z.ZodString>>;
115
- name: z.ZodOptional<z.ZodObject<{
119
+ name: z.ZodObject<{
116
120
  first: z.ZodOptional<z.ZodString>;
117
121
  last: z.ZodOptional<z.ZodString>;
118
122
  full: z.ZodOptional<z.ZodString>;
123
+ displayName: z.ZodString;
119
124
  }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
120
125
  first: z.ZodOptional<z.ZodString>;
121
126
  last: z.ZodOptional<z.ZodString>;
122
127
  full: z.ZodOptional<z.ZodString>;
128
+ displayName: z.ZodString;
123
129
  }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
124
130
  first: z.ZodOptional<z.ZodString>;
125
131
  last: z.ZodOptional<z.ZodString>;
126
132
  full: z.ZodOptional<z.ZodString>;
127
- }, z.ZodTypeAny, "passthrough">>>;
128
- /** Server `displayName` virtual (`username || truncatedKey`). Optional. */
129
- displayName: z.ZodOptional<z.ZodString>;
133
+ displayName: z.ZodString;
134
+ }, z.ZodTypeAny, "passthrough">>;
130
135
  verified: z.ZodOptional<z.ZodBoolean>;
131
136
  language: z.ZodOptional<z.ZodString>;
132
137
  }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
@@ -141,25 +146,160 @@ export declare const userResponseSchema: z.ZodObject<{
141
146
  avatar: z.ZodOptional<z.ZodNullable<z.ZodString>>;
142
147
  /** Named Bloom color preset (e.g. `"blue"`) or null. */
143
148
  color: z.ZodOptional<z.ZodNullable<z.ZodString>>;
144
- name: z.ZodOptional<z.ZodObject<{
149
+ name: z.ZodObject<{
145
150
  first: z.ZodOptional<z.ZodString>;
146
151
  last: z.ZodOptional<z.ZodString>;
147
152
  full: z.ZodOptional<z.ZodString>;
153
+ displayName: z.ZodString;
148
154
  }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
149
155
  first: z.ZodOptional<z.ZodString>;
150
156
  last: z.ZodOptional<z.ZodString>;
151
157
  full: z.ZodOptional<z.ZodString>;
158
+ displayName: z.ZodString;
152
159
  }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
153
160
  first: z.ZodOptional<z.ZodString>;
154
161
  last: z.ZodOptional<z.ZodString>;
155
162
  full: z.ZodOptional<z.ZodString>;
156
- }, z.ZodTypeAny, "passthrough">>>;
157
- /** Server `displayName` virtual (`username || truncatedKey`). Optional. */
158
- displayName: z.ZodOptional<z.ZodString>;
163
+ displayName: z.ZodString;
164
+ }, z.ZodTypeAny, "passthrough">>;
159
165
  verified: z.ZodOptional<z.ZodBoolean>;
160
166
  language: z.ZodOptional<z.ZodString>;
161
167
  }, z.ZodTypeAny, "passthrough">>;
162
168
  export type UserResponse = z.infer<typeof userResponseSchema>;
169
+ export declare const userProfileUpdateSchema: z.ZodObject<{
170
+ name: z.ZodOptional<z.ZodObject<{
171
+ first: z.ZodOptional<z.ZodString>;
172
+ last: z.ZodOptional<z.ZodString>;
173
+ }, "strip", z.ZodTypeAny, {
174
+ first?: string | undefined;
175
+ last?: string | undefined;
176
+ }, {
177
+ first?: string | undefined;
178
+ last?: string | undefined;
179
+ }>>;
180
+ username: z.ZodOptional<z.ZodString>;
181
+ email: z.ZodOptional<z.ZodString>;
182
+ avatar: z.ZodOptional<z.ZodString>;
183
+ color: z.ZodOptional<z.ZodNullable<z.ZodString>>;
184
+ bio: z.ZodOptional<z.ZodString>;
185
+ description: z.ZodOptional<z.ZodString>;
186
+ location: z.ZodOptional<z.ZodString>;
187
+ locations: z.ZodOptional<z.ZodArray<z.ZodUnknown, "many">>;
188
+ links: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
189
+ linksMetadata: z.ZodOptional<z.ZodArray<z.ZodObject<{
190
+ url: z.ZodString;
191
+ title: z.ZodOptional<z.ZodString>;
192
+ description: z.ZodOptional<z.ZodString>;
193
+ image: z.ZodOptional<z.ZodString>;
194
+ id: z.ZodOptional<z.ZodString>;
195
+ }, "strip", z.ZodTypeAny, {
196
+ url: string;
197
+ id?: string | undefined;
198
+ description?: string | undefined;
199
+ title?: string | undefined;
200
+ image?: string | undefined;
201
+ }, {
202
+ url: string;
203
+ id?: string | undefined;
204
+ description?: string | undefined;
205
+ title?: string | undefined;
206
+ image?: string | undefined;
207
+ }>, "many">>;
208
+ language: z.ZodOptional<z.ZodString>;
209
+ accountExpiresAfterInactivityDays: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
210
+ notificationPreferences: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
211
+ userPreferences: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
212
+ privacySettings: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
213
+ }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
214
+ name: z.ZodOptional<z.ZodObject<{
215
+ first: z.ZodOptional<z.ZodString>;
216
+ last: z.ZodOptional<z.ZodString>;
217
+ }, "strip", z.ZodTypeAny, {
218
+ first?: string | undefined;
219
+ last?: string | undefined;
220
+ }, {
221
+ first?: string | undefined;
222
+ last?: string | undefined;
223
+ }>>;
224
+ username: z.ZodOptional<z.ZodString>;
225
+ email: z.ZodOptional<z.ZodString>;
226
+ avatar: z.ZodOptional<z.ZodString>;
227
+ color: z.ZodOptional<z.ZodNullable<z.ZodString>>;
228
+ bio: z.ZodOptional<z.ZodString>;
229
+ description: z.ZodOptional<z.ZodString>;
230
+ location: z.ZodOptional<z.ZodString>;
231
+ locations: z.ZodOptional<z.ZodArray<z.ZodUnknown, "many">>;
232
+ links: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
233
+ linksMetadata: z.ZodOptional<z.ZodArray<z.ZodObject<{
234
+ url: z.ZodString;
235
+ title: z.ZodOptional<z.ZodString>;
236
+ description: z.ZodOptional<z.ZodString>;
237
+ image: z.ZodOptional<z.ZodString>;
238
+ id: z.ZodOptional<z.ZodString>;
239
+ }, "strip", z.ZodTypeAny, {
240
+ url: string;
241
+ id?: string | undefined;
242
+ description?: string | undefined;
243
+ title?: string | undefined;
244
+ image?: string | undefined;
245
+ }, {
246
+ url: string;
247
+ id?: string | undefined;
248
+ description?: string | undefined;
249
+ title?: string | undefined;
250
+ image?: string | undefined;
251
+ }>, "many">>;
252
+ language: z.ZodOptional<z.ZodString>;
253
+ accountExpiresAfterInactivityDays: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
254
+ notificationPreferences: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
255
+ userPreferences: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
256
+ privacySettings: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
257
+ }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
258
+ name: z.ZodOptional<z.ZodObject<{
259
+ first: z.ZodOptional<z.ZodString>;
260
+ last: z.ZodOptional<z.ZodString>;
261
+ }, "strip", z.ZodTypeAny, {
262
+ first?: string | undefined;
263
+ last?: string | undefined;
264
+ }, {
265
+ first?: string | undefined;
266
+ last?: string | undefined;
267
+ }>>;
268
+ username: z.ZodOptional<z.ZodString>;
269
+ email: z.ZodOptional<z.ZodString>;
270
+ avatar: z.ZodOptional<z.ZodString>;
271
+ color: z.ZodOptional<z.ZodNullable<z.ZodString>>;
272
+ bio: z.ZodOptional<z.ZodString>;
273
+ description: z.ZodOptional<z.ZodString>;
274
+ location: z.ZodOptional<z.ZodString>;
275
+ locations: z.ZodOptional<z.ZodArray<z.ZodUnknown, "many">>;
276
+ links: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
277
+ linksMetadata: z.ZodOptional<z.ZodArray<z.ZodObject<{
278
+ url: z.ZodString;
279
+ title: z.ZodOptional<z.ZodString>;
280
+ description: z.ZodOptional<z.ZodString>;
281
+ image: z.ZodOptional<z.ZodString>;
282
+ id: z.ZodOptional<z.ZodString>;
283
+ }, "strip", z.ZodTypeAny, {
284
+ url: string;
285
+ id?: string | undefined;
286
+ description?: string | undefined;
287
+ title?: string | undefined;
288
+ image?: string | undefined;
289
+ }, {
290
+ url: string;
291
+ id?: string | undefined;
292
+ description?: string | undefined;
293
+ title?: string | undefined;
294
+ image?: string | undefined;
295
+ }>, "many">>;
296
+ language: z.ZodOptional<z.ZodString>;
297
+ accountExpiresAfterInactivityDays: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
298
+ notificationPreferences: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
299
+ userPreferences: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
300
+ privacySettings: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
301
+ }, z.ZodTypeAny, "passthrough">>;
302
+ export type UserProfileUpdate = z.infer<typeof userProfileUpdateSchema>;
163
303
  /**
164
304
  * Resolve the canonical user id from a {@link UserResponse}, accepting either
165
305
  * the `formatUserResponse` `id` field or the raw-document `_id` field.
@@ -168,14 +308,12 @@ export declare function resolveUserId(user: UserResponse): string | undefined;
168
308
  /**
169
309
  * One rotated account entry from `POST /auth/refresh-all`.
170
310
  *
171
- * `authuser` is the device-local slot index (`0..N-1`). The server emits
172
- * `authuser: null` for the legacy un-suffixed `oxy_rt` cookie slot accept null
173
- * so a browser holding only a legacy cookie is NOT dropped from the account
174
- * chooser. `user` is the canonical {@link userResponseSchema} shape (the handler
175
- * projects a whitelist and runs it through `formatUserResponse`).
311
+ * `authuser` is the device-local slot index (`0..N-1`). `user` is the canonical
312
+ * {@link userResponseSchema} shape (the handler projects a whitelist and runs it
313
+ * through `formatUserResponse`).
176
314
  */
177
315
  export declare const refreshAllAccountSchema: z.ZodObject<{
178
- authuser: z.ZodNullable<z.ZodNumber>;
316
+ authuser: z.ZodNumber;
179
317
  accessToken: z.ZodString;
180
318
  expiresAt: z.ZodString;
181
319
  sessionId: z.ZodString;
@@ -191,21 +329,22 @@ export declare const refreshAllAccountSchema: z.ZodObject<{
191
329
  avatar: z.ZodOptional<z.ZodNullable<z.ZodString>>;
192
330
  /** Named Bloom color preset (e.g. `"blue"`) or null. */
193
331
  color: z.ZodOptional<z.ZodNullable<z.ZodString>>;
194
- name: z.ZodOptional<z.ZodObject<{
332
+ name: z.ZodObject<{
195
333
  first: z.ZodOptional<z.ZodString>;
196
334
  last: z.ZodOptional<z.ZodString>;
197
335
  full: z.ZodOptional<z.ZodString>;
336
+ displayName: z.ZodString;
198
337
  }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
199
338
  first: z.ZodOptional<z.ZodString>;
200
339
  last: z.ZodOptional<z.ZodString>;
201
340
  full: z.ZodOptional<z.ZodString>;
341
+ displayName: z.ZodString;
202
342
  }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
203
343
  first: z.ZodOptional<z.ZodString>;
204
344
  last: z.ZodOptional<z.ZodString>;
205
345
  full: z.ZodOptional<z.ZodString>;
206
- }, z.ZodTypeAny, "passthrough">>>;
207
- /** Server `displayName` virtual (`username || truncatedKey`). Optional. */
208
- displayName: z.ZodOptional<z.ZodString>;
346
+ displayName: z.ZodString;
347
+ }, z.ZodTypeAny, "passthrough">>;
209
348
  verified: z.ZodOptional<z.ZodBoolean>;
210
349
  language: z.ZodOptional<z.ZodString>;
211
350
  }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
@@ -220,21 +359,22 @@ export declare const refreshAllAccountSchema: z.ZodObject<{
220
359
  avatar: z.ZodOptional<z.ZodNullable<z.ZodString>>;
221
360
  /** Named Bloom color preset (e.g. `"blue"`) or null. */
222
361
  color: z.ZodOptional<z.ZodNullable<z.ZodString>>;
223
- name: z.ZodOptional<z.ZodObject<{
362
+ name: z.ZodObject<{
224
363
  first: z.ZodOptional<z.ZodString>;
225
364
  last: z.ZodOptional<z.ZodString>;
226
365
  full: z.ZodOptional<z.ZodString>;
366
+ displayName: z.ZodString;
227
367
  }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
228
368
  first: z.ZodOptional<z.ZodString>;
229
369
  last: z.ZodOptional<z.ZodString>;
230
370
  full: z.ZodOptional<z.ZodString>;
371
+ displayName: z.ZodString;
231
372
  }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
232
373
  first: z.ZodOptional<z.ZodString>;
233
374
  last: z.ZodOptional<z.ZodString>;
234
375
  full: z.ZodOptional<z.ZodString>;
235
- }, z.ZodTypeAny, "passthrough">>>;
236
- /** Server `displayName` virtual (`username || truncatedKey`). Optional. */
237
- displayName: z.ZodOptional<z.ZodString>;
376
+ displayName: z.ZodString;
377
+ }, z.ZodTypeAny, "passthrough">>;
238
378
  verified: z.ZodOptional<z.ZodBoolean>;
239
379
  language: z.ZodOptional<z.ZodString>;
240
380
  }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
@@ -249,30 +389,39 @@ export declare const refreshAllAccountSchema: z.ZodObject<{
249
389
  avatar: z.ZodOptional<z.ZodNullable<z.ZodString>>;
250
390
  /** Named Bloom color preset (e.g. `"blue"`) or null. */
251
391
  color: z.ZodOptional<z.ZodNullable<z.ZodString>>;
252
- name: z.ZodOptional<z.ZodObject<{
392
+ name: z.ZodObject<{
253
393
  first: z.ZodOptional<z.ZodString>;
254
394
  last: z.ZodOptional<z.ZodString>;
255
395
  full: z.ZodOptional<z.ZodString>;
396
+ displayName: z.ZodString;
256
397
  }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
257
398
  first: z.ZodOptional<z.ZodString>;
258
399
  last: z.ZodOptional<z.ZodString>;
259
400
  full: z.ZodOptional<z.ZodString>;
401
+ displayName: z.ZodString;
260
402
  }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
261
403
  first: z.ZodOptional<z.ZodString>;
262
404
  last: z.ZodOptional<z.ZodString>;
263
405
  full: z.ZodOptional<z.ZodString>;
264
- }, z.ZodTypeAny, "passthrough">>>;
265
- /** Server `displayName` virtual (`username || truncatedKey`). Optional. */
266
- displayName: z.ZodOptional<z.ZodString>;
406
+ displayName: z.ZodString;
407
+ }, z.ZodTypeAny, "passthrough">>;
267
408
  verified: z.ZodOptional<z.ZodBoolean>;
268
409
  language: z.ZodOptional<z.ZodString>;
269
410
  }, z.ZodTypeAny, "passthrough">>;
270
411
  }, "strip", z.ZodTypeAny, {
271
- authuser: number | null;
412
+ authuser: number;
272
413
  accessToken: string;
273
414
  expiresAt: string;
274
415
  sessionId: string;
275
416
  user: {
417
+ name: {
418
+ displayName: string;
419
+ first?: string | undefined;
420
+ last?: string | undefined;
421
+ full?: string | undefined;
422
+ } & {
423
+ [k: string]: unknown;
424
+ };
276
425
  id?: string | undefined;
277
426
  _id?: string | undefined;
278
427
  publicKey?: string | undefined;
@@ -280,23 +429,25 @@ export declare const refreshAllAccountSchema: z.ZodObject<{
280
429
  email?: string | undefined;
281
430
  avatar?: string | null | undefined;
282
431
  color?: string | null | undefined;
283
- name?: z.objectOutputType<{
284
- first: z.ZodOptional<z.ZodString>;
285
- last: z.ZodOptional<z.ZodString>;
286
- full: z.ZodOptional<z.ZodString>;
287
- }, z.ZodTypeAny, "passthrough"> | undefined;
288
- displayName?: string | undefined;
289
432
  verified?: boolean | undefined;
290
433
  language?: string | undefined;
291
434
  } & {
292
435
  [k: string]: unknown;
293
436
  };
294
437
  }, {
295
- authuser: number | null;
438
+ authuser: number;
296
439
  accessToken: string;
297
440
  expiresAt: string;
298
441
  sessionId: string;
299
442
  user: {
443
+ name: {
444
+ displayName: string;
445
+ first?: string | undefined;
446
+ last?: string | undefined;
447
+ full?: string | undefined;
448
+ } & {
449
+ [k: string]: unknown;
450
+ };
300
451
  id?: string | undefined;
301
452
  _id?: string | undefined;
302
453
  publicKey?: string | undefined;
@@ -304,12 +455,6 @@ export declare const refreshAllAccountSchema: z.ZodObject<{
304
455
  email?: string | undefined;
305
456
  avatar?: string | null | undefined;
306
457
  color?: string | null | undefined;
307
- name?: z.objectInputType<{
308
- first: z.ZodOptional<z.ZodString>;
309
- last: z.ZodOptional<z.ZodString>;
310
- full: z.ZodOptional<z.ZodString>;
311
- }, z.ZodTypeAny, "passthrough"> | undefined;
312
- displayName?: string | undefined;
313
458
  verified?: boolean | undefined;
314
459
  language?: string | undefined;
315
460
  } & {
@@ -320,13 +465,11 @@ export type RefreshAllAccountResponse = z.infer<typeof refreshAllAccountSchema>;
320
465
  /**
321
466
  * Wire shape of `POST /auth/refresh-all`: every valid device-local account,
322
467
  * sorted by `authuser` ascending. An empty `accounts` array means "no signed-in
323
- * accounts on this device" — the IdP must show the sign-in form. A 404 means the
324
- * endpoint is not deployed and the caller falls back to single-account
325
- * `/auth/refresh`.
468
+ * accounts on this device" — the IdP must show the sign-in form.
326
469
  */
327
470
  export declare const refreshAllResponseSchema: z.ZodObject<{
328
471
  accounts: z.ZodArray<z.ZodObject<{
329
- authuser: z.ZodNullable<z.ZodNumber>;
472
+ authuser: z.ZodNumber;
330
473
  accessToken: z.ZodString;
331
474
  expiresAt: z.ZodString;
332
475
  sessionId: z.ZodString;
@@ -342,21 +485,22 @@ export declare const refreshAllResponseSchema: z.ZodObject<{
342
485
  avatar: z.ZodOptional<z.ZodNullable<z.ZodString>>;
343
486
  /** Named Bloom color preset (e.g. `"blue"`) or null. */
344
487
  color: z.ZodOptional<z.ZodNullable<z.ZodString>>;
345
- name: z.ZodOptional<z.ZodObject<{
488
+ name: z.ZodObject<{
346
489
  first: z.ZodOptional<z.ZodString>;
347
490
  last: z.ZodOptional<z.ZodString>;
348
491
  full: z.ZodOptional<z.ZodString>;
492
+ displayName: z.ZodString;
349
493
  }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
350
494
  first: z.ZodOptional<z.ZodString>;
351
495
  last: z.ZodOptional<z.ZodString>;
352
496
  full: z.ZodOptional<z.ZodString>;
497
+ displayName: z.ZodString;
353
498
  }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
354
499
  first: z.ZodOptional<z.ZodString>;
355
500
  last: z.ZodOptional<z.ZodString>;
356
501
  full: z.ZodOptional<z.ZodString>;
357
- }, z.ZodTypeAny, "passthrough">>>;
358
- /** Server `displayName` virtual (`username || truncatedKey`). Optional. */
359
- displayName: z.ZodOptional<z.ZodString>;
502
+ displayName: z.ZodString;
503
+ }, z.ZodTypeAny, "passthrough">>;
360
504
  verified: z.ZodOptional<z.ZodBoolean>;
361
505
  language: z.ZodOptional<z.ZodString>;
362
506
  }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
@@ -371,21 +515,22 @@ export declare const refreshAllResponseSchema: z.ZodObject<{
371
515
  avatar: z.ZodOptional<z.ZodNullable<z.ZodString>>;
372
516
  /** Named Bloom color preset (e.g. `"blue"`) or null. */
373
517
  color: z.ZodOptional<z.ZodNullable<z.ZodString>>;
374
- name: z.ZodOptional<z.ZodObject<{
518
+ name: z.ZodObject<{
375
519
  first: z.ZodOptional<z.ZodString>;
376
520
  last: z.ZodOptional<z.ZodString>;
377
521
  full: z.ZodOptional<z.ZodString>;
522
+ displayName: z.ZodString;
378
523
  }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
379
524
  first: z.ZodOptional<z.ZodString>;
380
525
  last: z.ZodOptional<z.ZodString>;
381
526
  full: z.ZodOptional<z.ZodString>;
527
+ displayName: z.ZodString;
382
528
  }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
383
529
  first: z.ZodOptional<z.ZodString>;
384
530
  last: z.ZodOptional<z.ZodString>;
385
531
  full: z.ZodOptional<z.ZodString>;
386
- }, z.ZodTypeAny, "passthrough">>>;
387
- /** Server `displayName` virtual (`username || truncatedKey`). Optional. */
388
- displayName: z.ZodOptional<z.ZodString>;
532
+ displayName: z.ZodString;
533
+ }, z.ZodTypeAny, "passthrough">>;
389
534
  verified: z.ZodOptional<z.ZodBoolean>;
390
535
  language: z.ZodOptional<z.ZodString>;
391
536
  }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
@@ -400,30 +545,39 @@ export declare const refreshAllResponseSchema: z.ZodObject<{
400
545
  avatar: z.ZodOptional<z.ZodNullable<z.ZodString>>;
401
546
  /** Named Bloom color preset (e.g. `"blue"`) or null. */
402
547
  color: z.ZodOptional<z.ZodNullable<z.ZodString>>;
403
- name: z.ZodOptional<z.ZodObject<{
548
+ name: z.ZodObject<{
404
549
  first: z.ZodOptional<z.ZodString>;
405
550
  last: z.ZodOptional<z.ZodString>;
406
551
  full: z.ZodOptional<z.ZodString>;
552
+ displayName: z.ZodString;
407
553
  }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
408
554
  first: z.ZodOptional<z.ZodString>;
409
555
  last: z.ZodOptional<z.ZodString>;
410
556
  full: z.ZodOptional<z.ZodString>;
557
+ displayName: z.ZodString;
411
558
  }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
412
559
  first: z.ZodOptional<z.ZodString>;
413
560
  last: z.ZodOptional<z.ZodString>;
414
561
  full: z.ZodOptional<z.ZodString>;
415
- }, z.ZodTypeAny, "passthrough">>>;
416
- /** Server `displayName` virtual (`username || truncatedKey`). Optional. */
417
- displayName: z.ZodOptional<z.ZodString>;
562
+ displayName: z.ZodString;
563
+ }, z.ZodTypeAny, "passthrough">>;
418
564
  verified: z.ZodOptional<z.ZodBoolean>;
419
565
  language: z.ZodOptional<z.ZodString>;
420
566
  }, z.ZodTypeAny, "passthrough">>;
421
567
  }, "strip", z.ZodTypeAny, {
422
- authuser: number | null;
568
+ authuser: number;
423
569
  accessToken: string;
424
570
  expiresAt: string;
425
571
  sessionId: string;
426
572
  user: {
573
+ name: {
574
+ displayName: string;
575
+ first?: string | undefined;
576
+ last?: string | undefined;
577
+ full?: string | undefined;
578
+ } & {
579
+ [k: string]: unknown;
580
+ };
427
581
  id?: string | undefined;
428
582
  _id?: string | undefined;
429
583
  publicKey?: string | undefined;
@@ -431,23 +585,25 @@ export declare const refreshAllResponseSchema: z.ZodObject<{
431
585
  email?: string | undefined;
432
586
  avatar?: string | null | undefined;
433
587
  color?: string | null | undefined;
434
- name?: z.objectOutputType<{
435
- first: z.ZodOptional<z.ZodString>;
436
- last: z.ZodOptional<z.ZodString>;
437
- full: z.ZodOptional<z.ZodString>;
438
- }, z.ZodTypeAny, "passthrough"> | undefined;
439
- displayName?: string | undefined;
440
588
  verified?: boolean | undefined;
441
589
  language?: string | undefined;
442
590
  } & {
443
591
  [k: string]: unknown;
444
592
  };
445
593
  }, {
446
- authuser: number | null;
594
+ authuser: number;
447
595
  accessToken: string;
448
596
  expiresAt: string;
449
597
  sessionId: string;
450
598
  user: {
599
+ name: {
600
+ displayName: string;
601
+ first?: string | undefined;
602
+ last?: string | undefined;
603
+ full?: string | undefined;
604
+ } & {
605
+ [k: string]: unknown;
606
+ };
451
607
  id?: string | undefined;
452
608
  _id?: string | undefined;
453
609
  publicKey?: string | undefined;
@@ -455,12 +611,6 @@ export declare const refreshAllResponseSchema: z.ZodObject<{
455
611
  email?: string | undefined;
456
612
  avatar?: string | null | undefined;
457
613
  color?: string | null | undefined;
458
- name?: z.objectInputType<{
459
- first: z.ZodOptional<z.ZodString>;
460
- last: z.ZodOptional<z.ZodString>;
461
- full: z.ZodOptional<z.ZodString>;
462
- }, z.ZodTypeAny, "passthrough"> | undefined;
463
- displayName?: string | undefined;
464
614
  verified?: boolean | undefined;
465
615
  language?: string | undefined;
466
616
  } & {
@@ -469,11 +619,19 @@ export declare const refreshAllResponseSchema: z.ZodObject<{
469
619
  }>, "many">;
470
620
  }, "strip", z.ZodTypeAny, {
471
621
  accounts: {
472
- authuser: number | null;
622
+ authuser: number;
473
623
  accessToken: string;
474
624
  expiresAt: string;
475
625
  sessionId: string;
476
626
  user: {
627
+ name: {
628
+ displayName: string;
629
+ first?: string | undefined;
630
+ last?: string | undefined;
631
+ full?: string | undefined;
632
+ } & {
633
+ [k: string]: unknown;
634
+ };
477
635
  id?: string | undefined;
478
636
  _id?: string | undefined;
479
637
  publicKey?: string | undefined;
@@ -481,12 +639,6 @@ export declare const refreshAllResponseSchema: z.ZodObject<{
481
639
  email?: string | undefined;
482
640
  avatar?: string | null | undefined;
483
641
  color?: string | null | undefined;
484
- name?: z.objectOutputType<{
485
- first: z.ZodOptional<z.ZodString>;
486
- last: z.ZodOptional<z.ZodString>;
487
- full: z.ZodOptional<z.ZodString>;
488
- }, z.ZodTypeAny, "passthrough"> | undefined;
489
- displayName?: string | undefined;
490
642
  verified?: boolean | undefined;
491
643
  language?: string | undefined;
492
644
  } & {
@@ -495,11 +647,19 @@ export declare const refreshAllResponseSchema: z.ZodObject<{
495
647
  }[];
496
648
  }, {
497
649
  accounts: {
498
- authuser: number | null;
650
+ authuser: number;
499
651
  accessToken: string;
500
652
  expiresAt: string;
501
653
  sessionId: string;
502
654
  user: {
655
+ name: {
656
+ displayName: string;
657
+ first?: string | undefined;
658
+ last?: string | undefined;
659
+ full?: string | undefined;
660
+ } & {
661
+ [k: string]: unknown;
662
+ };
503
663
  id?: string | undefined;
504
664
  _id?: string | undefined;
505
665
  publicKey?: string | undefined;
@@ -507,12 +667,6 @@ export declare const refreshAllResponseSchema: z.ZodObject<{
507
667
  email?: string | undefined;
508
668
  avatar?: string | null | undefined;
509
669
  color?: string | null | undefined;
510
- name?: z.objectInputType<{
511
- first: z.ZodOptional<z.ZodString>;
512
- last: z.ZodOptional<z.ZodString>;
513
- full: z.ZodOptional<z.ZodString>;
514
- }, z.ZodTypeAny, "passthrough"> | undefined;
515
- displayName?: string | undefined;
516
670
  verified?: boolean | undefined;
517
671
  language?: string | undefined;
518
672
  } & {
@@ -523,10 +677,9 @@ export declare const refreshAllResponseSchema: z.ZodObject<{
523
677
  export type RefreshAllResponseContract = z.infer<typeof refreshAllResponseSchema>;
524
678
  /**
525
679
  * Wire shape of `GET /users/me` — the API success envelope (`{ data: <user> }`)
526
- * wrapping the RAW Mongo user document. It does NOT pass through
527
- * `formatUserResponse`, so the id field is `_id` (resolve via
528
- * {@link resolveUserId}) and virtuals (`name.full`, `displayName`) may be
529
- * present when the query materialised them.
680
+ * wrapping the current-user DTO. Some older producers use `_id` instead of
681
+ * `id`; resolve via {@link resolveUserId}. The display name still lives under
682
+ * `name.displayName`.
530
683
  */
531
684
  export declare const currentUserResponseSchema: z.ZodObject<{
532
685
  data: z.ZodObject<{
@@ -541,21 +694,22 @@ export declare const currentUserResponseSchema: z.ZodObject<{
541
694
  avatar: z.ZodOptional<z.ZodNullable<z.ZodString>>;
542
695
  /** Named Bloom color preset (e.g. `"blue"`) or null. */
543
696
  color: z.ZodOptional<z.ZodNullable<z.ZodString>>;
544
- name: z.ZodOptional<z.ZodObject<{
697
+ name: z.ZodObject<{
545
698
  first: z.ZodOptional<z.ZodString>;
546
699
  last: z.ZodOptional<z.ZodString>;
547
700
  full: z.ZodOptional<z.ZodString>;
701
+ displayName: z.ZodString;
548
702
  }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
549
703
  first: z.ZodOptional<z.ZodString>;
550
704
  last: z.ZodOptional<z.ZodString>;
551
705
  full: z.ZodOptional<z.ZodString>;
706
+ displayName: z.ZodString;
552
707
  }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
553
708
  first: z.ZodOptional<z.ZodString>;
554
709
  last: z.ZodOptional<z.ZodString>;
555
710
  full: z.ZodOptional<z.ZodString>;
556
- }, z.ZodTypeAny, "passthrough">>>;
557
- /** Server `displayName` virtual (`username || truncatedKey`). Optional. */
558
- displayName: z.ZodOptional<z.ZodString>;
711
+ displayName: z.ZodString;
712
+ }, z.ZodTypeAny, "passthrough">>;
559
713
  verified: z.ZodOptional<z.ZodBoolean>;
560
714
  language: z.ZodOptional<z.ZodString>;
561
715
  }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
@@ -570,21 +724,22 @@ export declare const currentUserResponseSchema: z.ZodObject<{
570
724
  avatar: z.ZodOptional<z.ZodNullable<z.ZodString>>;
571
725
  /** Named Bloom color preset (e.g. `"blue"`) or null. */
572
726
  color: z.ZodOptional<z.ZodNullable<z.ZodString>>;
573
- name: z.ZodOptional<z.ZodObject<{
727
+ name: z.ZodObject<{
574
728
  first: z.ZodOptional<z.ZodString>;
575
729
  last: z.ZodOptional<z.ZodString>;
576
730
  full: z.ZodOptional<z.ZodString>;
731
+ displayName: z.ZodString;
577
732
  }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
578
733
  first: z.ZodOptional<z.ZodString>;
579
734
  last: z.ZodOptional<z.ZodString>;
580
735
  full: z.ZodOptional<z.ZodString>;
736
+ displayName: z.ZodString;
581
737
  }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
582
738
  first: z.ZodOptional<z.ZodString>;
583
739
  last: z.ZodOptional<z.ZodString>;
584
740
  full: z.ZodOptional<z.ZodString>;
585
- }, z.ZodTypeAny, "passthrough">>>;
586
- /** Server `displayName` virtual (`username || truncatedKey`). Optional. */
587
- displayName: z.ZodOptional<z.ZodString>;
741
+ displayName: z.ZodString;
742
+ }, z.ZodTypeAny, "passthrough">>;
588
743
  verified: z.ZodOptional<z.ZodBoolean>;
589
744
  language: z.ZodOptional<z.ZodString>;
590
745
  }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
@@ -599,26 +754,35 @@ export declare const currentUserResponseSchema: z.ZodObject<{
599
754
  avatar: z.ZodOptional<z.ZodNullable<z.ZodString>>;
600
755
  /** Named Bloom color preset (e.g. `"blue"`) or null. */
601
756
  color: z.ZodOptional<z.ZodNullable<z.ZodString>>;
602
- name: z.ZodOptional<z.ZodObject<{
757
+ name: z.ZodObject<{
603
758
  first: z.ZodOptional<z.ZodString>;
604
759
  last: z.ZodOptional<z.ZodString>;
605
760
  full: z.ZodOptional<z.ZodString>;
761
+ displayName: z.ZodString;
606
762
  }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
607
763
  first: z.ZodOptional<z.ZodString>;
608
764
  last: z.ZodOptional<z.ZodString>;
609
765
  full: z.ZodOptional<z.ZodString>;
766
+ displayName: z.ZodString;
610
767
  }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
611
768
  first: z.ZodOptional<z.ZodString>;
612
769
  last: z.ZodOptional<z.ZodString>;
613
770
  full: z.ZodOptional<z.ZodString>;
614
- }, z.ZodTypeAny, "passthrough">>>;
615
- /** Server `displayName` virtual (`username || truncatedKey`). Optional. */
616
- displayName: z.ZodOptional<z.ZodString>;
771
+ displayName: z.ZodString;
772
+ }, z.ZodTypeAny, "passthrough">>;
617
773
  verified: z.ZodOptional<z.ZodBoolean>;
618
774
  language: z.ZodOptional<z.ZodString>;
619
775
  }, z.ZodTypeAny, "passthrough">>;
620
776
  }, "strip", z.ZodTypeAny, {
621
777
  data: {
778
+ name: {
779
+ displayName: string;
780
+ first?: string | undefined;
781
+ last?: string | undefined;
782
+ full?: string | undefined;
783
+ } & {
784
+ [k: string]: unknown;
785
+ };
622
786
  id?: string | undefined;
623
787
  _id?: string | undefined;
624
788
  publicKey?: string | undefined;
@@ -626,12 +790,6 @@ export declare const currentUserResponseSchema: z.ZodObject<{
626
790
  email?: string | undefined;
627
791
  avatar?: string | null | undefined;
628
792
  color?: string | null | undefined;
629
- name?: z.objectOutputType<{
630
- first: z.ZodOptional<z.ZodString>;
631
- last: z.ZodOptional<z.ZodString>;
632
- full: z.ZodOptional<z.ZodString>;
633
- }, z.ZodTypeAny, "passthrough"> | undefined;
634
- displayName?: string | undefined;
635
793
  verified?: boolean | undefined;
636
794
  language?: string | undefined;
637
795
  } & {
@@ -639,6 +797,14 @@ export declare const currentUserResponseSchema: z.ZodObject<{
639
797
  };
640
798
  }, {
641
799
  data: {
800
+ name: {
801
+ displayName: string;
802
+ first?: string | undefined;
803
+ last?: string | undefined;
804
+ full?: string | undefined;
805
+ } & {
806
+ [k: string]: unknown;
807
+ };
642
808
  id?: string | undefined;
643
809
  _id?: string | undefined;
644
810
  publicKey?: string | undefined;
@@ -646,12 +812,6 @@ export declare const currentUserResponseSchema: z.ZodObject<{
646
812
  email?: string | undefined;
647
813
  avatar?: string | null | undefined;
648
814
  color?: string | null | undefined;
649
- name?: z.objectInputType<{
650
- first: z.ZodOptional<z.ZodString>;
651
- last: z.ZodOptional<z.ZodString>;
652
- full: z.ZodOptional<z.ZodString>;
653
- }, z.ZodTypeAny, "passthrough"> | undefined;
654
- displayName?: string | undefined;
655
815
  verified?: boolean | undefined;
656
816
  language?: string | undefined;
657
817
  } & {
@@ -680,21 +840,22 @@ export declare const deviceSessionAccountSchema: z.ZodObject<{
680
840
  avatar: z.ZodOptional<z.ZodNullable<z.ZodString>>;
681
841
  /** Named Bloom color preset (e.g. `"blue"`) or null. */
682
842
  color: z.ZodOptional<z.ZodNullable<z.ZodString>>;
683
- name: z.ZodOptional<z.ZodObject<{
843
+ name: z.ZodObject<{
684
844
  first: z.ZodOptional<z.ZodString>;
685
845
  last: z.ZodOptional<z.ZodString>;
686
846
  full: z.ZodOptional<z.ZodString>;
847
+ displayName: z.ZodString;
687
848
  }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
688
849
  first: z.ZodOptional<z.ZodString>;
689
850
  last: z.ZodOptional<z.ZodString>;
690
851
  full: z.ZodOptional<z.ZodString>;
852
+ displayName: z.ZodString;
691
853
  }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
692
854
  first: z.ZodOptional<z.ZodString>;
693
855
  last: z.ZodOptional<z.ZodString>;
694
856
  full: z.ZodOptional<z.ZodString>;
695
- }, z.ZodTypeAny, "passthrough">>>;
696
- /** Server `displayName` virtual (`username || truncatedKey`). Optional. */
697
- displayName: z.ZodOptional<z.ZodString>;
857
+ displayName: z.ZodString;
858
+ }, z.ZodTypeAny, "passthrough">>;
698
859
  verified: z.ZodOptional<z.ZodBoolean>;
699
860
  language: z.ZodOptional<z.ZodString>;
700
861
  }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
@@ -709,21 +870,22 @@ export declare const deviceSessionAccountSchema: z.ZodObject<{
709
870
  avatar: z.ZodOptional<z.ZodNullable<z.ZodString>>;
710
871
  /** Named Bloom color preset (e.g. `"blue"`) or null. */
711
872
  color: z.ZodOptional<z.ZodNullable<z.ZodString>>;
712
- name: z.ZodOptional<z.ZodObject<{
873
+ name: z.ZodObject<{
713
874
  first: z.ZodOptional<z.ZodString>;
714
875
  last: z.ZodOptional<z.ZodString>;
715
876
  full: z.ZodOptional<z.ZodString>;
877
+ displayName: z.ZodString;
716
878
  }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
717
879
  first: z.ZodOptional<z.ZodString>;
718
880
  last: z.ZodOptional<z.ZodString>;
719
881
  full: z.ZodOptional<z.ZodString>;
882
+ displayName: z.ZodString;
720
883
  }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
721
884
  first: z.ZodOptional<z.ZodString>;
722
885
  last: z.ZodOptional<z.ZodString>;
723
886
  full: z.ZodOptional<z.ZodString>;
724
- }, z.ZodTypeAny, "passthrough">>>;
725
- /** Server `displayName` virtual (`username || truncatedKey`). Optional. */
726
- displayName: z.ZodOptional<z.ZodString>;
887
+ displayName: z.ZodString;
888
+ }, z.ZodTypeAny, "passthrough">>;
727
889
  verified: z.ZodOptional<z.ZodBoolean>;
728
890
  language: z.ZodOptional<z.ZodString>;
729
891
  }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
@@ -738,21 +900,22 @@ export declare const deviceSessionAccountSchema: z.ZodObject<{
738
900
  avatar: z.ZodOptional<z.ZodNullable<z.ZodString>>;
739
901
  /** Named Bloom color preset (e.g. `"blue"`) or null. */
740
902
  color: z.ZodOptional<z.ZodNullable<z.ZodString>>;
741
- name: z.ZodOptional<z.ZodObject<{
903
+ name: z.ZodObject<{
742
904
  first: z.ZodOptional<z.ZodString>;
743
905
  last: z.ZodOptional<z.ZodString>;
744
906
  full: z.ZodOptional<z.ZodString>;
907
+ displayName: z.ZodString;
745
908
  }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
746
909
  first: z.ZodOptional<z.ZodString>;
747
910
  last: z.ZodOptional<z.ZodString>;
748
911
  full: z.ZodOptional<z.ZodString>;
912
+ displayName: z.ZodString;
749
913
  }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
750
914
  first: z.ZodOptional<z.ZodString>;
751
915
  last: z.ZodOptional<z.ZodString>;
752
916
  full: z.ZodOptional<z.ZodString>;
753
- }, z.ZodTypeAny, "passthrough">>>;
754
- /** Server `displayName` virtual (`username || truncatedKey`). Optional. */
755
- displayName: z.ZodOptional<z.ZodString>;
917
+ displayName: z.ZodString;
918
+ }, z.ZodTypeAny, "passthrough">>;
756
919
  verified: z.ZodOptional<z.ZodBoolean>;
757
920
  language: z.ZodOptional<z.ZodString>;
758
921
  }, z.ZodTypeAny, "passthrough">>>>;
@@ -770,21 +933,22 @@ export declare const deviceSessionAccountSchema: z.ZodObject<{
770
933
  avatar: z.ZodOptional<z.ZodNullable<z.ZodString>>;
771
934
  /** Named Bloom color preset (e.g. `"blue"`) or null. */
772
935
  color: z.ZodOptional<z.ZodNullable<z.ZodString>>;
773
- name: z.ZodOptional<z.ZodObject<{
936
+ name: z.ZodObject<{
774
937
  first: z.ZodOptional<z.ZodString>;
775
938
  last: z.ZodOptional<z.ZodString>;
776
939
  full: z.ZodOptional<z.ZodString>;
940
+ displayName: z.ZodString;
777
941
  }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
778
942
  first: z.ZodOptional<z.ZodString>;
779
943
  last: z.ZodOptional<z.ZodString>;
780
944
  full: z.ZodOptional<z.ZodString>;
945
+ displayName: z.ZodString;
781
946
  }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
782
947
  first: z.ZodOptional<z.ZodString>;
783
948
  last: z.ZodOptional<z.ZodString>;
784
949
  full: z.ZodOptional<z.ZodString>;
785
- }, z.ZodTypeAny, "passthrough">>>;
786
- /** Server `displayName` virtual (`username || truncatedKey`). Optional. */
787
- displayName: z.ZodOptional<z.ZodString>;
950
+ displayName: z.ZodString;
951
+ }, z.ZodTypeAny, "passthrough">>;
788
952
  verified: z.ZodOptional<z.ZodBoolean>;
789
953
  language: z.ZodOptional<z.ZodString>;
790
954
  }, z.ZodTypeAny, "passthrough"> | null | undefined;
@@ -803,21 +967,22 @@ export declare const deviceSessionAccountSchema: z.ZodObject<{
803
967
  avatar: z.ZodOptional<z.ZodNullable<z.ZodString>>;
804
968
  /** Named Bloom color preset (e.g. `"blue"`) or null. */
805
969
  color: z.ZodOptional<z.ZodNullable<z.ZodString>>;
806
- name: z.ZodOptional<z.ZodObject<{
970
+ name: z.ZodObject<{
807
971
  first: z.ZodOptional<z.ZodString>;
808
972
  last: z.ZodOptional<z.ZodString>;
809
973
  full: z.ZodOptional<z.ZodString>;
974
+ displayName: z.ZodString;
810
975
  }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
811
976
  first: z.ZodOptional<z.ZodString>;
812
977
  last: z.ZodOptional<z.ZodString>;
813
978
  full: z.ZodOptional<z.ZodString>;
979
+ displayName: z.ZodString;
814
980
  }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
815
981
  first: z.ZodOptional<z.ZodString>;
816
982
  last: z.ZodOptional<z.ZodString>;
817
983
  full: z.ZodOptional<z.ZodString>;
818
- }, z.ZodTypeAny, "passthrough">>>;
819
- /** Server `displayName` virtual (`username || truncatedKey`). Optional. */
820
- displayName: z.ZodOptional<z.ZodString>;
984
+ displayName: z.ZodString;
985
+ }, z.ZodTypeAny, "passthrough">>;
821
986
  verified: z.ZodOptional<z.ZodBoolean>;
822
987
  language: z.ZodOptional<z.ZodString>;
823
988
  }, z.ZodTypeAny, "passthrough"> | null | undefined;
@@ -840,21 +1005,22 @@ export declare const deviceSessionsResponseSchema: z.ZodArray<z.ZodObject<{
840
1005
  avatar: z.ZodOptional<z.ZodNullable<z.ZodString>>;
841
1006
  /** Named Bloom color preset (e.g. `"blue"`) or null. */
842
1007
  color: z.ZodOptional<z.ZodNullable<z.ZodString>>;
843
- name: z.ZodOptional<z.ZodObject<{
1008
+ name: z.ZodObject<{
844
1009
  first: z.ZodOptional<z.ZodString>;
845
1010
  last: z.ZodOptional<z.ZodString>;
846
1011
  full: z.ZodOptional<z.ZodString>;
1012
+ displayName: z.ZodString;
847
1013
  }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
848
1014
  first: z.ZodOptional<z.ZodString>;
849
1015
  last: z.ZodOptional<z.ZodString>;
850
1016
  full: z.ZodOptional<z.ZodString>;
1017
+ displayName: z.ZodString;
851
1018
  }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
852
1019
  first: z.ZodOptional<z.ZodString>;
853
1020
  last: z.ZodOptional<z.ZodString>;
854
1021
  full: z.ZodOptional<z.ZodString>;
855
- }, z.ZodTypeAny, "passthrough">>>;
856
- /** Server `displayName` virtual (`username || truncatedKey`). Optional. */
857
- displayName: z.ZodOptional<z.ZodString>;
1022
+ displayName: z.ZodString;
1023
+ }, z.ZodTypeAny, "passthrough">>;
858
1024
  verified: z.ZodOptional<z.ZodBoolean>;
859
1025
  language: z.ZodOptional<z.ZodString>;
860
1026
  }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
@@ -869,21 +1035,22 @@ export declare const deviceSessionsResponseSchema: z.ZodArray<z.ZodObject<{
869
1035
  avatar: z.ZodOptional<z.ZodNullable<z.ZodString>>;
870
1036
  /** Named Bloom color preset (e.g. `"blue"`) or null. */
871
1037
  color: z.ZodOptional<z.ZodNullable<z.ZodString>>;
872
- name: z.ZodOptional<z.ZodObject<{
1038
+ name: z.ZodObject<{
873
1039
  first: z.ZodOptional<z.ZodString>;
874
1040
  last: z.ZodOptional<z.ZodString>;
875
1041
  full: z.ZodOptional<z.ZodString>;
1042
+ displayName: z.ZodString;
876
1043
  }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
877
1044
  first: z.ZodOptional<z.ZodString>;
878
1045
  last: z.ZodOptional<z.ZodString>;
879
1046
  full: z.ZodOptional<z.ZodString>;
1047
+ displayName: z.ZodString;
880
1048
  }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
881
1049
  first: z.ZodOptional<z.ZodString>;
882
1050
  last: z.ZodOptional<z.ZodString>;
883
1051
  full: z.ZodOptional<z.ZodString>;
884
- }, z.ZodTypeAny, "passthrough">>>;
885
- /** Server `displayName` virtual (`username || truncatedKey`). Optional. */
886
- displayName: z.ZodOptional<z.ZodString>;
1052
+ displayName: z.ZodString;
1053
+ }, z.ZodTypeAny, "passthrough">>;
887
1054
  verified: z.ZodOptional<z.ZodBoolean>;
888
1055
  language: z.ZodOptional<z.ZodString>;
889
1056
  }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
@@ -898,21 +1065,22 @@ export declare const deviceSessionsResponseSchema: z.ZodArray<z.ZodObject<{
898
1065
  avatar: z.ZodOptional<z.ZodNullable<z.ZodString>>;
899
1066
  /** Named Bloom color preset (e.g. `"blue"`) or null. */
900
1067
  color: z.ZodOptional<z.ZodNullable<z.ZodString>>;
901
- name: z.ZodOptional<z.ZodObject<{
1068
+ name: z.ZodObject<{
902
1069
  first: z.ZodOptional<z.ZodString>;
903
1070
  last: z.ZodOptional<z.ZodString>;
904
1071
  full: z.ZodOptional<z.ZodString>;
1072
+ displayName: z.ZodString;
905
1073
  }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
906
1074
  first: z.ZodOptional<z.ZodString>;
907
1075
  last: z.ZodOptional<z.ZodString>;
908
1076
  full: z.ZodOptional<z.ZodString>;
1077
+ displayName: z.ZodString;
909
1078
  }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
910
1079
  first: z.ZodOptional<z.ZodString>;
911
1080
  last: z.ZodOptional<z.ZodString>;
912
1081
  full: z.ZodOptional<z.ZodString>;
913
- }, z.ZodTypeAny, "passthrough">>>;
914
- /** Server `displayName` virtual (`username || truncatedKey`). Optional. */
915
- displayName: z.ZodOptional<z.ZodString>;
1082
+ displayName: z.ZodString;
1083
+ }, z.ZodTypeAny, "passthrough">>;
916
1084
  verified: z.ZodOptional<z.ZodBoolean>;
917
1085
  language: z.ZodOptional<z.ZodString>;
918
1086
  }, z.ZodTypeAny, "passthrough">>>>;
@@ -930,21 +1098,22 @@ export declare const deviceSessionsResponseSchema: z.ZodArray<z.ZodObject<{
930
1098
  avatar: z.ZodOptional<z.ZodNullable<z.ZodString>>;
931
1099
  /** Named Bloom color preset (e.g. `"blue"`) or null. */
932
1100
  color: z.ZodOptional<z.ZodNullable<z.ZodString>>;
933
- name: z.ZodOptional<z.ZodObject<{
1101
+ name: z.ZodObject<{
934
1102
  first: z.ZodOptional<z.ZodString>;
935
1103
  last: z.ZodOptional<z.ZodString>;
936
1104
  full: z.ZodOptional<z.ZodString>;
1105
+ displayName: z.ZodString;
937
1106
  }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
938
1107
  first: z.ZodOptional<z.ZodString>;
939
1108
  last: z.ZodOptional<z.ZodString>;
940
1109
  full: z.ZodOptional<z.ZodString>;
1110
+ displayName: z.ZodString;
941
1111
  }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
942
1112
  first: z.ZodOptional<z.ZodString>;
943
1113
  last: z.ZodOptional<z.ZodString>;
944
1114
  full: z.ZodOptional<z.ZodString>;
945
- }, z.ZodTypeAny, "passthrough">>>;
946
- /** Server `displayName` virtual (`username || truncatedKey`). Optional. */
947
- displayName: z.ZodOptional<z.ZodString>;
1115
+ displayName: z.ZodString;
1116
+ }, z.ZodTypeAny, "passthrough">>;
948
1117
  verified: z.ZodOptional<z.ZodBoolean>;
949
1118
  language: z.ZodOptional<z.ZodString>;
950
1119
  }, z.ZodTypeAny, "passthrough"> | null | undefined;
@@ -963,21 +1132,22 @@ export declare const deviceSessionsResponseSchema: z.ZodArray<z.ZodObject<{
963
1132
  avatar: z.ZodOptional<z.ZodNullable<z.ZodString>>;
964
1133
  /** Named Bloom color preset (e.g. `"blue"`) or null. */
965
1134
  color: z.ZodOptional<z.ZodNullable<z.ZodString>>;
966
- name: z.ZodOptional<z.ZodObject<{
1135
+ name: z.ZodObject<{
967
1136
  first: z.ZodOptional<z.ZodString>;
968
1137
  last: z.ZodOptional<z.ZodString>;
969
1138
  full: z.ZodOptional<z.ZodString>;
1139
+ displayName: z.ZodString;
970
1140
  }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
971
1141
  first: z.ZodOptional<z.ZodString>;
972
1142
  last: z.ZodOptional<z.ZodString>;
973
1143
  full: z.ZodOptional<z.ZodString>;
1144
+ displayName: z.ZodString;
974
1145
  }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
975
1146
  first: z.ZodOptional<z.ZodString>;
976
1147
  last: z.ZodOptional<z.ZodString>;
977
1148
  full: z.ZodOptional<z.ZodString>;
978
- }, z.ZodTypeAny, "passthrough">>>;
979
- /** Server `displayName` virtual (`username || truncatedKey`). Optional. */
980
- displayName: z.ZodOptional<z.ZodString>;
1149
+ displayName: z.ZodString;
1150
+ }, z.ZodTypeAny, "passthrough">>;
981
1151
  verified: z.ZodOptional<z.ZodBoolean>;
982
1152
  language: z.ZodOptional<z.ZodString>;
983
1153
  }, z.ZodTypeAny, "passthrough"> | null | undefined;