@worldlabsai/client 0.1.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 (54) hide show
  1. package/LICENSE +202 -0
  2. package/README.md +109 -0
  3. package/dist/client.d.ts +34 -0
  4. package/dist/client.d.ts.map +1 -0
  5. package/dist/client.js +31 -0
  6. package/dist/client.js.map +1 -0
  7. package/dist/core/assets.d.ts +138 -0
  8. package/dist/core/assets.d.ts.map +1 -0
  9. package/dist/core/assets.js +104 -0
  10. package/dist/core/assets.js.map +1 -0
  11. package/dist/core/index.d.ts +5 -0
  12. package/dist/core/index.d.ts.map +1 -0
  13. package/dist/core/index.js +5 -0
  14. package/dist/core/index.js.map +1 -0
  15. package/dist/core/operations.d.ts +52 -0
  16. package/dist/core/operations.d.ts.map +1 -0
  17. package/dist/core/operations.js +81 -0
  18. package/dist/core/operations.js.map +1 -0
  19. package/dist/core/sleep.d.ts +7 -0
  20. package/dist/core/sleep.d.ts.map +1 -0
  21. package/dist/core/sleep.js +23 -0
  22. package/dist/core/sleep.js.map +1 -0
  23. package/dist/core/tasks.d.ts +27 -0
  24. package/dist/core/tasks.d.ts.map +1 -0
  25. package/dist/core/tasks.js +26 -0
  26. package/dist/core/tasks.js.map +1 -0
  27. package/dist/core/transport.d.ts +84 -0
  28. package/dist/core/transport.d.ts.map +1 -0
  29. package/dist/core/transport.js +171 -0
  30. package/dist/core/transport.js.map +1 -0
  31. package/dist/generated/developer-api.gen.d.ts +2760 -0
  32. package/dist/generated/developer-api.gen.d.ts.map +1 -0
  33. package/dist/generated/developer-api.gen.js +6 -0
  34. package/dist/generated/developer-api.gen.js.map +1 -0
  35. package/dist/generated/tasks.gen.d.ts +153 -0
  36. package/dist/generated/tasks.gen.d.ts.map +1 -0
  37. package/dist/generated/tasks.gen.js +80 -0
  38. package/dist/generated/tasks.gen.js.map +1 -0
  39. package/dist/index.d.ts +4 -0
  40. package/dist/index.d.ts.map +1 -0
  41. package/dist/index.js +3 -0
  42. package/dist/index.js.map +1 -0
  43. package/examples/posing.ts +62 -0
  44. package/package.json +49 -0
  45. package/src/client.ts +55 -0
  46. package/src/core/assets.ts +162 -0
  47. package/src/core/index.ts +27 -0
  48. package/src/core/operations.ts +114 -0
  49. package/src/core/sleep.ts +22 -0
  50. package/src/core/tasks.ts +45 -0
  51. package/src/core/transport.ts +246 -0
  52. package/src/generated/developer-api.gen.ts +2760 -0
  53. package/src/generated/tasks.gen.ts +110 -0
  54. package/src/index.ts +24 -0
@@ -0,0 +1,2760 @@
1
+ /**
2
+ * This file was auto-generated by openapi-typescript.
3
+ * Do not make direct changes to the file.
4
+ */
5
+
6
+ export interface paths {
7
+ "/api/v2/health": {
8
+ parameters: {
9
+ query?: never;
10
+ header?: never;
11
+ path?: never;
12
+ cookie?: never;
13
+ };
14
+ /** Health check */
15
+ get: operations["api_health_api_v2_health_get"];
16
+ put?: never;
17
+ post?: never;
18
+ delete?: never;
19
+ options?: never;
20
+ head?: never;
21
+ patch?: never;
22
+ trace?: never;
23
+ };
24
+ "/api/v2/tasks:atlasChisel": {
25
+ parameters: {
26
+ query?: never;
27
+ header?: never;
28
+ path?: never;
29
+ cookie?: never;
30
+ };
31
+ get?: never;
32
+ put?: never;
33
+ /** Submit a atlasChisel task */
34
+ post: operations["submit_atlasChisel_api_v2_tasks_atlasChisel_post"];
35
+ delete?: never;
36
+ options?: never;
37
+ head?: never;
38
+ patch?: never;
39
+ trace?: never;
40
+ };
41
+ "/api/v2/tasks:atlasGenerate": {
42
+ parameters: {
43
+ query?: never;
44
+ header?: never;
45
+ path?: never;
46
+ cookie?: never;
47
+ };
48
+ get?: never;
49
+ put?: never;
50
+ /** Submit a atlasGenerate task */
51
+ post: operations["submit_atlasGenerate_api_v2_tasks_atlasGenerate_post"];
52
+ delete?: never;
53
+ options?: never;
54
+ head?: never;
55
+ patch?: never;
56
+ trace?: never;
57
+ };
58
+ "/api/v2/tasks:atlasMasked": {
59
+ parameters: {
60
+ query?: never;
61
+ header?: never;
62
+ path?: never;
63
+ cookie?: never;
64
+ };
65
+ get?: never;
66
+ put?: never;
67
+ /** Submit a atlasMasked task */
68
+ post: operations["submit_atlasMasked_api_v2_tasks_atlasMasked_post"];
69
+ delete?: never;
70
+ options?: never;
71
+ head?: never;
72
+ patch?: never;
73
+ trace?: never;
74
+ };
75
+ "/api/v2/tasks:atlasTextToImage": {
76
+ parameters: {
77
+ query?: never;
78
+ header?: never;
79
+ path?: never;
80
+ cookie?: never;
81
+ };
82
+ get?: never;
83
+ put?: never;
84
+ /** Submit a atlasTextToImage task */
85
+ post: operations["submit_atlasTextToImage_api_v2_tasks_atlasTextToImage_post"];
86
+ delete?: never;
87
+ options?: never;
88
+ head?: never;
89
+ patch?: never;
90
+ trace?: never;
91
+ };
92
+ "/api/v2/tasks:images2PosedRGBD": {
93
+ parameters: {
94
+ query?: never;
95
+ header?: never;
96
+ path?: never;
97
+ cookie?: never;
98
+ };
99
+ get?: never;
100
+ put?: never;
101
+ /** Submit a images2PosedRGBD task */
102
+ post: operations["submit_images2PosedRGBD_api_v2_tasks_images2PosedRGBD_post"];
103
+ delete?: never;
104
+ options?: never;
105
+ head?: never;
106
+ patch?: never;
107
+ trace?: never;
108
+ };
109
+ "/api/v2/tasks:splats2Mesh": {
110
+ parameters: {
111
+ query?: never;
112
+ header?: never;
113
+ path?: never;
114
+ cookie?: never;
115
+ };
116
+ get?: never;
117
+ put?: never;
118
+ /** Submit a splats2Mesh task */
119
+ post: operations["submit_splats2Mesh_api_v2_tasks_splats2Mesh_post"];
120
+ delete?: never;
121
+ options?: never;
122
+ head?: never;
123
+ patch?: never;
124
+ trace?: never;
125
+ };
126
+ "/api/v2/operations": {
127
+ parameters: {
128
+ query?: never;
129
+ header?: never;
130
+ path?: never;
131
+ cookie?: never;
132
+ };
133
+ /** List a project's long-running operations, newest first */
134
+ get: operations["list_operations_api_v2_operations_get"];
135
+ put?: never;
136
+ post?: never;
137
+ delete?: never;
138
+ options?: never;
139
+ head?: never;
140
+ patch?: never;
141
+ trace?: never;
142
+ };
143
+ "/api/v2/operations/{operation}:trace": {
144
+ parameters: {
145
+ query?: never;
146
+ header?: never;
147
+ path?: never;
148
+ cookie?: never;
149
+ };
150
+ /** Get the public request and response for an operation */
151
+ get: operations["get_operation_trace_api_v2_operations__operation__trace_get"];
152
+ put?: never;
153
+ post?: never;
154
+ delete?: never;
155
+ options?: never;
156
+ head?: never;
157
+ patch?: never;
158
+ trace?: never;
159
+ };
160
+ "/api/v2/operations/{operation}:wait": {
161
+ parameters: {
162
+ query?: never;
163
+ header?: never;
164
+ path?: never;
165
+ cookie?: never;
166
+ };
167
+ get?: never;
168
+ put?: never;
169
+ /** Block until a long-running operation is done */
170
+ post: operations["wait_operation_api_v2_operations__operation__wait_post"];
171
+ delete?: never;
172
+ options?: never;
173
+ head?: never;
174
+ patch?: never;
175
+ trace?: never;
176
+ };
177
+ "/api/v2/operations/{operation}:cancel": {
178
+ parameters: {
179
+ query?: never;
180
+ header?: never;
181
+ path?: never;
182
+ cookie?: never;
183
+ };
184
+ get?: never;
185
+ put?: never;
186
+ /** Record cancellation intent for a long-running operation */
187
+ post: operations["cancel_operation_api_v2_operations__operation__cancel_post"];
188
+ delete?: never;
189
+ options?: never;
190
+ head?: never;
191
+ patch?: never;
192
+ trace?: never;
193
+ };
194
+ "/api/v2/operations/{operation}": {
195
+ parameters: {
196
+ query?: never;
197
+ header?: never;
198
+ path?: never;
199
+ cookie?: never;
200
+ };
201
+ /** Get a long-running operation */
202
+ get: operations["get_operation_api_v2_operations__operation__get"];
203
+ put?: never;
204
+ post?: never;
205
+ delete?: never;
206
+ options?: never;
207
+ head?: never;
208
+ patch?: never;
209
+ trace?: never;
210
+ };
211
+ "/api/v2/assets": {
212
+ parameters: {
213
+ query?: never;
214
+ header?: never;
215
+ path?: never;
216
+ cookie?: never;
217
+ };
218
+ /** List assets in a project */
219
+ get: operations["list_assets_api_v2_assets_get"];
220
+ put?: never;
221
+ /** Create an asset in a project */
222
+ post: operations["create_asset_api_v2_assets_post"];
223
+ delete?: never;
224
+ options?: never;
225
+ head?: never;
226
+ patch?: never;
227
+ trace?: never;
228
+ };
229
+ "/api/v2/assets/{asset}": {
230
+ parameters: {
231
+ query?: never;
232
+ header?: never;
233
+ path?: never;
234
+ cookie?: never;
235
+ };
236
+ /** Get an asset */
237
+ get: operations["get_asset_api_v2_assets__asset__get"];
238
+ put?: never;
239
+ post?: never;
240
+ /** Delete an asset (soft-delete) */
241
+ delete: operations["delete_asset_api_v2_assets__asset__delete"];
242
+ options?: never;
243
+ head?: never;
244
+ patch?: never;
245
+ trace?: never;
246
+ };
247
+ "/api/v2/assets/{asset}:createUploadUrl": {
248
+ parameters: {
249
+ query?: never;
250
+ header?: never;
251
+ path?: never;
252
+ cookie?: never;
253
+ };
254
+ get?: never;
255
+ put?: never;
256
+ /** Mint a signed upload URL for an asset */
257
+ post: operations["create_upload_url_api_v2_assets__asset__createUploadUrl_post"];
258
+ delete?: never;
259
+ options?: never;
260
+ head?: never;
261
+ patch?: never;
262
+ trace?: never;
263
+ };
264
+ "/api/v2/assets/{asset}:createReadUrl": {
265
+ parameters: {
266
+ query?: never;
267
+ header?: never;
268
+ path?: never;
269
+ cookie?: never;
270
+ };
271
+ get?: never;
272
+ put?: never;
273
+ /** Mint a signed read URL for an asset */
274
+ post: operations["create_read_url_api_v2_assets__asset__createReadUrl_post"];
275
+ delete?: never;
276
+ options?: never;
277
+ head?: never;
278
+ patch?: never;
279
+ trace?: never;
280
+ };
281
+ "/api/v2/assets/{asset}:createUploadUrls": {
282
+ parameters: {
283
+ query?: never;
284
+ header?: never;
285
+ path?: never;
286
+ cookie?: never;
287
+ };
288
+ get?: never;
289
+ put?: never;
290
+ /** Re-mint upload URLs for a typed asset's parts */
291
+ post: operations["create_upload_urls_api_v2_assets__asset__createUploadUrls_post"];
292
+ delete?: never;
293
+ options?: never;
294
+ head?: never;
295
+ patch?: never;
296
+ trace?: never;
297
+ };
298
+ "/api/v2/assets/{asset}:completeUpload": {
299
+ parameters: {
300
+ query?: never;
301
+ header?: never;
302
+ path?: never;
303
+ cookie?: never;
304
+ };
305
+ get?: never;
306
+ put?: never;
307
+ /** Mark an asset upload complete */
308
+ post: operations["complete_upload_api_v2_assets__asset__completeUpload_post"];
309
+ delete?: never;
310
+ options?: never;
311
+ head?: never;
312
+ patch?: never;
313
+ trace?: never;
314
+ };
315
+ "/api/v2/assets:createReadPrefix": {
316
+ parameters: {
317
+ query?: never;
318
+ header?: never;
319
+ path?: never;
320
+ cookie?: never;
321
+ };
322
+ get?: never;
323
+ put?: never;
324
+ /** Mint a signed read prefix for the key's project library */
325
+ post: operations["create_read_prefix_api_v2_assets_createReadPrefix_post"];
326
+ delete?: never;
327
+ options?: never;
328
+ head?: never;
329
+ patch?: never;
330
+ trace?: never;
331
+ };
332
+ }
333
+ export type webhooks = Record<string, never>;
334
+ export interface components {
335
+ schemas: {
336
+ /**
337
+ * Asset
338
+ * @description A project-owned media asset.
339
+ */
340
+ Asset: {
341
+ /**
342
+ * Id
343
+ * @description Asset id, ``asset_<hex>``.
344
+ */
345
+ id: string;
346
+ /**
347
+ * Displayname
348
+ * @description User-visible label.
349
+ */
350
+ displayName: string;
351
+ /**
352
+ * Mimetype
353
+ * @description Media MIME type, e.g. ``image/png``.
354
+ */
355
+ mimeType: string;
356
+ /** @default CREATED */
357
+ state?: components["schemas"]["AssetState"];
358
+ /**
359
+ * Width
360
+ * @description Pixel width when known.
361
+ */
362
+ width?: number | null;
363
+ /**
364
+ * Height
365
+ * @description Pixel height when known.
366
+ */
367
+ height?: number | null;
368
+ /**
369
+ * Sizebytes
370
+ * @description Size in bytes serialized as a string for large-integer compatibility with JSON consumers.
371
+ */
372
+ sizeBytes?: string | null;
373
+ /**
374
+ * Checksum
375
+ * @description Checksum the store reports, e.g. ``crc32c:...``.
376
+ */
377
+ checksum?: string | null;
378
+ /**
379
+ * Createtime
380
+ * @description Server-assigned.
381
+ */
382
+ createTime?: string | null;
383
+ /**
384
+ * Type
385
+ * @description Asset type, e.g. ``image``. Null for an untyped upload.
386
+ */
387
+ type?: string | null;
388
+ /**
389
+ * Parts
390
+ * @description The asset's media files. Empty until the upload completes; an untyped asset then holds one part covering the whole media.
391
+ */
392
+ parts?: components["schemas"]["AssetPart"][];
393
+ /**
394
+ * Structure
395
+ * @description What a reader needs besides the bytes.
396
+ */
397
+ structure?: {
398
+ [key: string]: unknown;
399
+ } | null;
400
+ /** @description Set when a task produced the asset. */
401
+ producedBy?: components["schemas"]["ProducedBy"] | null;
402
+ /**
403
+ * Contentpath
404
+ * @description Where the asset's bytes sit under the project's content prefix, ``<class>/<asset>[/<role>]``, each segment percent-encoded as a URL path segment. Appended to a read prefix's ``baseUrl`` and followed by its ``signedQuery`` it addresses the bytes on the content edge; on its own it grants nothing. A read prefix is minted per project by ``:createReadPrefix`` (on the project for web sessions, on ``/assets`` for API keys); ``:createReadUrl`` stays the single-object download. Null until the bytes exist.
405
+ */
406
+ contentPath?: string | null;
407
+ };
408
+ /**
409
+ * AssetCreate
410
+ * @description Client-provided fields for creating a project-owned asset.
411
+ */
412
+ AssetCreate: {
413
+ /**
414
+ * Displayname
415
+ * @description User-visible label.
416
+ */
417
+ displayName: string;
418
+ /**
419
+ * Type
420
+ * @description Asset type, e.g. ``image``. Decides which part roles the asset may carry and what each may hold. Omit for a single untyped object uploaded through ``:createUploadUrl``.
421
+ */
422
+ type?: string | null;
423
+ /**
424
+ * Parts
425
+ * @description The parts to be uploaded. One grant comes back per part.
426
+ */
427
+ parts?: components["schemas"]["AssetPartDeclaration"][];
428
+ /**
429
+ * Structure
430
+ * @description What a reader needs besides the bytes, in the shape the asset type defines, e.g. an image's camera.
431
+ */
432
+ structure?: {
433
+ [key: string]: unknown;
434
+ } | null;
435
+ /**
436
+ * Base64
437
+ * @description Bytes carried in the request, optionally as a ``data:`` URL. The asset comes back ``READY``. Capped at 10 MiB decoded; above that, declare a part and upload to its grant.
438
+ */
439
+ base64?: string | null;
440
+ /**
441
+ * Url
442
+ * @description A URL the platform fetches. The asset comes back ``READY``. The address is opened by a sandboxed workload, never by the API.
443
+ */
444
+ url?: string | null;
445
+ };
446
+ /**
447
+ * AssetPart
448
+ * @description One media file belonging to an asset.
449
+ *
450
+ * Every field but the role is what the store and the bytes reported at
451
+ * ``:completeUpload``; nothing here is echoed back from the request that
452
+ * declared the part.
453
+ */
454
+ AssetPart: {
455
+ /**
456
+ * Role
457
+ * @description What the part holds, e.g. ``rgb``.
458
+ */
459
+ role: string;
460
+ /**
461
+ * Mimetype
462
+ * @description Media type read off the bytes.
463
+ */
464
+ mimeType?: string | null;
465
+ /**
466
+ * Width
467
+ * @description Pixel width when known.
468
+ */
469
+ width?: number | null;
470
+ /**
471
+ * Height
472
+ * @description Pixel height when known.
473
+ */
474
+ height?: number | null;
475
+ /**
476
+ * Sizebytes
477
+ * @description Size in bytes serialized as a string for large-integer compatibility with JSON consumers.
478
+ */
479
+ sizeBytes?: string | null;
480
+ /**
481
+ * Checksum
482
+ * @description Checksum the store reports, e.g. ``crc32c:...``.
483
+ */
484
+ checksum?: string | null;
485
+ /**
486
+ * Metadata
487
+ * @description The role's own contract, e.g. a depth encoding.
488
+ */
489
+ metadata?: {
490
+ [key: string]: unknown;
491
+ } | null;
492
+ /**
493
+ * State
494
+ * @description ``CREATED`` until the bytes arrive.
495
+ */
496
+ state: string;
497
+ };
498
+ /**
499
+ * AssetPartDeclaration
500
+ * @description A part the client intends to upload.
501
+ *
502
+ * The content type and length are signed into the upload URL, so they bound
503
+ * what may be sent rather than describing what the asset is.
504
+ */
505
+ AssetPartDeclaration: {
506
+ /** Role */
507
+ role: string;
508
+ /** Contenttype */
509
+ contentType: string;
510
+ /**
511
+ * Contentlength
512
+ * @description Upload size in bytes, serialized on the wire as a string.
513
+ */
514
+ contentLength: number;
515
+ /**
516
+ * Metadata
517
+ * @description The role's own contract, e.g. a depth encoding.
518
+ */
519
+ metadata?: {
520
+ [key: string]: unknown;
521
+ } | null;
522
+ };
523
+ /**
524
+ * AssetState
525
+ * @enum {string}
526
+ */
527
+ AssetState: "CREATED" | "UPLOADING" | "READY" | "DELETED";
528
+ /**
529
+ * AtlasChiselModelParameters
530
+ * @description Model-specific parameters forwarded to the atlasChisel servable.
531
+ */
532
+ AtlasChiselModelParameters: {
533
+ /**
534
+ * Seed
535
+ * @description RNG seed forwarded to the servable when set.
536
+ * @default 42
537
+ */
538
+ seed?: number | null;
539
+ /**
540
+ * Cfg
541
+ * @description Classifier-free guidance scale.
542
+ * @default 2.5
543
+ */
544
+ cfg?: number | null;
545
+ /**
546
+ * Numsteps
547
+ * @description Diffusion step count.
548
+ * @default 50
549
+ */
550
+ numSteps?: number | null;
551
+ };
552
+ /**
553
+ * AtlasChiselRequest
554
+ * @description Body of ``POST /api/v2/tasks:atlasChisel``.
555
+ */
556
+ AtlasChiselRequest: {
557
+ /**
558
+ * Contextframes
559
+ * @description Posed depth frames, one per target camera and posed at it, in target order; each camera is 1280x720. Depth only: frames carry no imageAsset, maskAsset, or depth confidenceAsset. Leave empty to generate from the prompt alone.
560
+ */
561
+ contextFrames?: components["schemas"]["PosedDepthAsset"][];
562
+ /**
563
+ * Targetcameras
564
+ * @description Pinhole cameras at 1280x720 for the views to generate, in output order, returned in `frames`. At most 32.
565
+ */
566
+ targetCameras: components["schemas"]["PinholeCamera"][];
567
+ /**
568
+ * Prompt
569
+ * @description Text prompt describing the scene.
570
+ */
571
+ prompt: string;
572
+ /**
573
+ * Enhanceprompt
574
+ * @description Rewrite the prompt into the structured scene caption the model trained on before inference. Set false to send the prompt as is.
575
+ * @default true
576
+ */
577
+ enhancePrompt?: boolean;
578
+ /**
579
+ * Voxelsize
580
+ * @description Voxel side length in the normalized scene gauge (90th-percentile disparity is approximately 1). The recommended range is 0 to 0.4. Omit or set to 0 to keep the original depth conditioning.
581
+ */
582
+ voxelSize?: number | null;
583
+ /**
584
+ * Voxelgridorientation
585
+ * @description Frame the voxelization grid axes align to. 'world' (the default) axis-aligns voxels with the request's world coordinates, so world-axis-aligned faces (blockout walls) quantize flat; 'gauge' keeps the legacy grid aligned to the normalized scene gauge (the recentered mean camera pose). Ignored unless voxelSize is set.
586
+ */
587
+ voxelGridOrientation?: ("world" | "gauge") | null;
588
+ /** @description Model-specific parameters for atlasChisel. */
589
+ modelParameters?: components["schemas"]["AtlasChiselModelParameters"];
590
+ /**
591
+ * Returndepth
592
+ * @description Return the generated frames as posed RGBD: they are reconstructed together so the depth lands in the request's own camera frame and scale, and every entry in `frames` then carries a `depth` buffer. The contextFrames' own depth is not reconstructed or returned. Needs at least two target cameras. Limitation: the depth scale is recovered from the target cameras' centres, so targets that share one centre (a pure-rotation rig) come back with a 0.0 or NaN scale and a success status.
593
+ * @default false
594
+ */
595
+ returnDepth?: boolean;
596
+ };
597
+ /**
598
+ * AtlasChiselResponse
599
+ * @description Public response projected into the completed Operation.
600
+ */
601
+ AtlasChiselResponse: {
602
+ /**
603
+ * Frames
604
+ * @description Generated RGB frames (image + camera), one per target camera in order.
605
+ */
606
+ frames?: components["schemas"]["PosedRGBAsset"][] | null;
607
+ /**
608
+ * Promptused
609
+ * @description Final prompt supplied to inference.
610
+ */
611
+ promptUsed?: string | null;
612
+ /**
613
+ * Requestid
614
+ * @description Meridian request id from servable runtime metadata.
615
+ */
616
+ requestId?: string | null;
617
+ };
618
+ /** AtlasChiselResponseOperation */
619
+ AtlasChiselResponseOperation: {
620
+ /** Id */
621
+ id: string;
622
+ /** Ownerid */
623
+ ownerId: string;
624
+ /** Metadata */
625
+ metadata?: {
626
+ [key: string]: unknown;
627
+ } | null;
628
+ /** Done */
629
+ done: boolean;
630
+ error?: components["schemas"]["OperationError"] | null;
631
+ /** @description Task response payload when the operation is done. */
632
+ response?: components["schemas"]["AtlasChiselResponse"] | null;
633
+ /** Expiresatsecs */
634
+ expiresAtSecs?: number | null;
635
+ /**
636
+ * Createdatsecs
637
+ * @description Unix seconds when the operation was created (output-only).
638
+ */
639
+ createdAtSecs?: number | null;
640
+ /**
641
+ * Name
642
+ * @description Canonical resource name ``accounts/{account}/operations/{operation}``.
643
+ *
644
+ * ``owner_id`` is the owning account, so the public name is derived, not
645
+ * stored. Output-only: serialized for clients (AIP-style), and harmlessly
646
+ * ignored when the LRO client deserializes a service response.
647
+ */
648
+ readonly name: string;
649
+ };
650
+ /**
651
+ * AtlasGenerateModelParameters
652
+ * @description Model-specific parameters forwarded to the atlasGenerate servable.
653
+ */
654
+ AtlasGenerateModelParameters: {
655
+ /**
656
+ * Seed
657
+ * @description RNG seed forwarded to the servable when set.
658
+ * @default 42
659
+ */
660
+ seed?: number | null;
661
+ /**
662
+ * Cfg
663
+ * @description Classifier-free guidance scale.
664
+ * @default 2.5
665
+ */
666
+ cfg?: number | null;
667
+ /**
668
+ * Numsteps
669
+ * @description Diffusion step count.
670
+ * @default 50
671
+ */
672
+ numSteps?: number | null;
673
+ };
674
+ /**
675
+ * AtlasGenerateRequest
676
+ * @description Body of ``POST /api/v2/tasks:atlasGenerate``.
677
+ */
678
+ AtlasGenerateRequest: {
679
+ /**
680
+ * Contextframes
681
+ * @description Posed RGBD context views: each an image, its depth buffer, and its camera, all required. On the reference-context warp route the depth conditions the generation geometrically, so the generated views stay consistent with the provided scene; the hero base checkpoint conditions on the posed images only and does not consume the depth.
682
+ */
683
+ contextFrames: components["schemas"]["PosedRGBDAsset"][];
684
+ /**
685
+ * Targetcameras
686
+ * @description Pinhole cameras for the views to generate, in output order. Generated frames are returned in `frames`, one per camera.
687
+ */
688
+ targetCameras: components["schemas"]["PinholeCamera"][];
689
+ /**
690
+ * Prompt
691
+ * @description Text prompt describing the scene, if any.
692
+ */
693
+ prompt?: string | null;
694
+ /**
695
+ * Enhanceprompt
696
+ * @description Enhance the prompt with the ViewGen preset before inference. With no prompt, the enhancer captions the context images.
697
+ * @default true
698
+ */
699
+ enhancePrompt?: boolean;
700
+ /**
701
+ * Returndepth
702
+ * @description Return the generated frames as posed RGBD: they are reconstructed together with the context frames so the depth lands in the request's own camera frame and scale, and every entry in `frames` then carries a `depth` buffer. A context frame joins that reconstruction only when its image is at the generated resolution and its camera's principal point is centered. The scale is recovered from the camera centres that joined, so a request whose joined cameras all share one centre (a pure-rotation rig) is rejected.
703
+ * @default false
704
+ */
705
+ returnDepth?: boolean;
706
+ /** @description Model-specific parameters for atlasGenerate. */
707
+ modelParameters?: components["schemas"]["AtlasGenerateModelParameters"];
708
+ };
709
+ /**
710
+ * AtlasGenerateResponse
711
+ * @description Public response projected into the completed Operation.
712
+ */
713
+ AtlasGenerateResponse: {
714
+ /**
715
+ * Frames
716
+ * @description Generated RGB frames (image + camera), one per target camera in order. Every frame also carries a `depth` buffer when the request set returnDepth.
717
+ */
718
+ frames?: components["schemas"]["PosedRGBAsset"][] | null;
719
+ /**
720
+ * Promptused
721
+ * @description Final prompt supplied to inference, if any.
722
+ */
723
+ promptUsed?: string | null;
724
+ /**
725
+ * Requestid
726
+ * @description Meridian request id from servable runtime metadata.
727
+ */
728
+ requestId?: string | null;
729
+ };
730
+ /** AtlasGenerateResponseOperation */
731
+ AtlasGenerateResponseOperation: {
732
+ /** Id */
733
+ id: string;
734
+ /** Ownerid */
735
+ ownerId: string;
736
+ /** Metadata */
737
+ metadata?: {
738
+ [key: string]: unknown;
739
+ } | null;
740
+ /** Done */
741
+ done: boolean;
742
+ error?: components["schemas"]["OperationError"] | null;
743
+ /** @description Task response payload when the operation is done. */
744
+ response?: components["schemas"]["AtlasGenerateResponse"] | null;
745
+ /** Expiresatsecs */
746
+ expiresAtSecs?: number | null;
747
+ /**
748
+ * Createdatsecs
749
+ * @description Unix seconds when the operation was created (output-only).
750
+ */
751
+ createdAtSecs?: number | null;
752
+ /**
753
+ * Name
754
+ * @description Canonical resource name ``accounts/{account}/operations/{operation}``.
755
+ *
756
+ * ``owner_id`` is the owning account, so the public name is derived, not
757
+ * stored. Output-only: serialized for clients (AIP-style), and harmlessly
758
+ * ignored when the LRO client deserializes a service response.
759
+ */
760
+ readonly name: string;
761
+ };
762
+ /**
763
+ * AtlasMaskedModelParameters
764
+ * @description Model-specific parameters forwarded to the atlasMasked servable.
765
+ */
766
+ AtlasMaskedModelParameters: {
767
+ /**
768
+ * Seed
769
+ * @description RNG seed forwarded to the servable when set.
770
+ * @default 42
771
+ */
772
+ seed?: number | null;
773
+ /**
774
+ * Cfg
775
+ * @description Classifier-free guidance scale.
776
+ * @default 2.5
777
+ */
778
+ cfg?: number | null;
779
+ /**
780
+ * Numsteps
781
+ * @description Diffusion step count.
782
+ * @default 50
783
+ */
784
+ numSteps?: number | null;
785
+ };
786
+ /**
787
+ * AtlasMaskedRequest
788
+ * @description Body of ``POST /api/v2/tasks:atlasMasked``.
789
+ */
790
+ AtlasMaskedRequest: {
791
+ /**
792
+ * Contextframes
793
+ * @description The views to complete, in output order: each an image, its alpha mask, and its camera. The mask is an 8-bit grayscale PNG on the image grid where 1 is kept -- those pixels are the observed image -- and 0 is what the model fills in. Each view is completed at its targetCameras entry of the same index.
794
+ */
795
+ contextFrames: components["schemas"]["PosedRGBAAsset"][];
796
+ /**
797
+ * Targetcameras
798
+ * @description Pinhole cameras for the views to generate, one per context frame in the same order. Warning: the partial checkpoints condition target i on contextFrames[i]'s masked view and were trained with one context view per target, rendered from the target's own viewpoint. A count that differs from contextFrames, or a target off its frame's camera, is accepted but runs outside the training distribution and may generate degraded views.
799
+ */
800
+ targetCameras: components["schemas"]["PinholeCamera"][];
801
+ /**
802
+ * Prompt
803
+ * @description Text prompt describing what belongs in the masked region.
804
+ */
805
+ prompt?: string | null;
806
+ /**
807
+ * Enhanceprompt
808
+ * @description Enhance the prompt with the ViewGen preset before inference. Off by default: the observed pixels already describe the scene, so a completion usually wants the prompt it was given.
809
+ * @default false
810
+ */
811
+ enhancePrompt?: boolean;
812
+ /**
813
+ * Returndepth
814
+ * @description Return the completed frames as posed RGBD: they are reconstructed together so the depth lands in the request's own camera frame and scale, and every entry in `frames` then carries a `depth` buffer. Needs at least two targetCameras. Limitation: the depth scale is recovered from the frames' camera centres, so views that share one centre (a pure-rotation rig) come back with a 0.0 or NaN scale and a success status.
815
+ * @default false
816
+ */
817
+ returnDepth?: boolean;
818
+ /** @description Model-specific parameters for atlasMasked. */
819
+ modelParameters?: components["schemas"]["AtlasMaskedModelParameters"];
820
+ };
821
+ /**
822
+ * AtlasMaskedResponse
823
+ * @description Public response projected into the completed Operation.
824
+ */
825
+ AtlasMaskedResponse: {
826
+ /**
827
+ * Frames
828
+ * @description Generated frames (image + camera): one per target camera, in order. Every frame also carries a `depth` buffer when the request set returnDepth.
829
+ */
830
+ frames?: components["schemas"]["PosedRGBAsset"][] | null;
831
+ /**
832
+ * Promptused
833
+ * @description Final prompt supplied to inference, if any.
834
+ */
835
+ promptUsed?: string | null;
836
+ /**
837
+ * Requestid
838
+ * @description Meridian request id from servable runtime metadata.
839
+ */
840
+ requestId?: string | null;
841
+ };
842
+ /** AtlasMaskedResponseOperation */
843
+ AtlasMaskedResponseOperation: {
844
+ /** Id */
845
+ id: string;
846
+ /** Ownerid */
847
+ ownerId: string;
848
+ /** Metadata */
849
+ metadata?: {
850
+ [key: string]: unknown;
851
+ } | null;
852
+ /** Done */
853
+ done: boolean;
854
+ error?: components["schemas"]["OperationError"] | null;
855
+ /** @description Task response payload when the operation is done. */
856
+ response?: components["schemas"]["AtlasMaskedResponse"] | null;
857
+ /** Expiresatsecs */
858
+ expiresAtSecs?: number | null;
859
+ /**
860
+ * Createdatsecs
861
+ * @description Unix seconds when the operation was created (output-only).
862
+ */
863
+ createdAtSecs?: number | null;
864
+ /**
865
+ * Name
866
+ * @description Canonical resource name ``accounts/{account}/operations/{operation}``.
867
+ *
868
+ * ``owner_id`` is the owning account, so the public name is derived, not
869
+ * stored. Output-only: serialized for clients (AIP-style), and harmlessly
870
+ * ignored when the LRO client deserializes a service response.
871
+ */
872
+ readonly name: string;
873
+ };
874
+ /**
875
+ * AtlasTextToImageRequest
876
+ * @description Body of ``POST /api/v2/tasks:atlasTextToImage``.
877
+ */
878
+ AtlasTextToImageRequest: {
879
+ /**
880
+ * Prompt
881
+ * @description Text prompt to generate from.
882
+ */
883
+ prompt: string;
884
+ /**
885
+ * Aspectratio
886
+ * @description Output width-to-height ratio. Omit for the model default.
887
+ */
888
+ aspectRatio?: ("16:9" | "9:16" | "4:3" | "3:4" | "1:1") | null;
889
+ /**
890
+ * Enhanceprompt
891
+ * @description Whether to enhance the prompt before generation. Defaults to true.
892
+ * @default true
893
+ */
894
+ enhancePrompt?: boolean;
895
+ /**
896
+ * Seed
897
+ * @description Optional RNG seed.
898
+ */
899
+ seed?: number | null;
900
+ /**
901
+ * Cfg
902
+ * @description Classifier-free guidance scale.
903
+ */
904
+ cfg?: number | null;
905
+ /**
906
+ * Numsteps
907
+ * @description Diffusion step count.
908
+ */
909
+ numSteps?: number | null;
910
+ /**
911
+ * Numsamples
912
+ * @description Number of images to generate.
913
+ */
914
+ numSamples?: number | null;
915
+ /**
916
+ * Returndepth
917
+ * @description Also return each image as a posed RGBD frame in `frames`: depth is estimated per image (metric, single-view) along with the camera it was estimated under.
918
+ * @default false
919
+ */
920
+ returnDepth?: boolean;
921
+ };
922
+ /**
923
+ * AtlasTextToImageResponse
924
+ * @description Public response projected into the completed Operation.
925
+ */
926
+ AtlasTextToImageResponse: {
927
+ /**
928
+ * Generationid
929
+ * @description Stable id for this generation run.
930
+ */
931
+ generationId: string;
932
+ /**
933
+ * Imageurls
934
+ * @description Public URLs of generated PNG images.
935
+ */
936
+ imageUrls: string[];
937
+ /** @description Task outputs using the shared output URL contract. */
938
+ assetOutput?: components["schemas"]["ImageCollectionAssetOutput"] | null;
939
+ /**
940
+ * Enhancedprompt
941
+ * @description Prompt after enhancement, if any.
942
+ */
943
+ enhancedPrompt?: string | null;
944
+ /**
945
+ * Prompt
946
+ * @description Original prompt submitted by the caller.
947
+ */
948
+ prompt?: string | null;
949
+ /**
950
+ * Modelname
951
+ * @description Resolved model display name or slug.
952
+ */
953
+ modelName?: string | null;
954
+ /**
955
+ * Aspectratio
956
+ * @description Resolved width-to-height ratio used for generation.
957
+ */
958
+ aspectRatio?: ("16:9" | "9:16" | "4:3" | "3:4" | "1:1") | null;
959
+ /**
960
+ * Frames
961
+ * @description Only with returnDepth: one posed RGBD frame per image, in imageUrls order, carrying the estimated camera and a `depth` buffer.
962
+ */
963
+ frames?: components["schemas"]["PosedRGBAsset"][] | null;
964
+ };
965
+ /** AtlasTextToImageResponseOperation */
966
+ AtlasTextToImageResponseOperation: {
967
+ /** Id */
968
+ id: string;
969
+ /** Ownerid */
970
+ ownerId: string;
971
+ /** Metadata */
972
+ metadata?: {
973
+ [key: string]: unknown;
974
+ } | null;
975
+ /** Done */
976
+ done: boolean;
977
+ error?: components["schemas"]["OperationError"] | null;
978
+ /** @description Task response payload when the operation is done. */
979
+ response?: components["schemas"]["AtlasTextToImageResponse"] | null;
980
+ /** Expiresatsecs */
981
+ expiresAtSecs?: number | null;
982
+ /**
983
+ * Createdatsecs
984
+ * @description Unix seconds when the operation was created (output-only).
985
+ */
986
+ createdAtSecs?: number | null;
987
+ /**
988
+ * Name
989
+ * @description Canonical resource name ``accounts/{account}/operations/{operation}``.
990
+ *
991
+ * ``owner_id`` is the owning account, so the public name is derived, not
992
+ * stored. Output-only: serialized for clients (AIP-style), and harmlessly
993
+ * ignored when the LRO client deserializes a service response.
994
+ */
995
+ readonly name: string;
996
+ };
997
+ /**
998
+ * CamerasAutoAnchors
999
+ * @description Find anchor positions automatically, then render from them.
1000
+ *
1001
+ * Candidates come from the free space the geometry encloses, and `oriented`
1002
+ * picks which rule judges one valid. The default when a request names no
1003
+ * cameras.
1004
+ */
1005
+ CamerasAutoAnchors: {
1006
+ /**
1007
+ * @description discriminator enum property added by openapi-typescript
1008
+ * @enum {string}
1009
+ */
1010
+ strategy: "auto_anchors";
1011
+ /**
1012
+ * Oriented
1013
+ * @description Judge a candidate by whether the surface faces it, which needs splats whose normals are oriented -- usually only true if they were optimized for it. Leave false to judge by enclosure alone, which is safe on any scene.
1014
+ * @default false
1015
+ */
1016
+ oriented?: boolean;
1017
+ };
1018
+ /**
1019
+ * CamerasExteriorSphere
1020
+ * @description Render from a sphere around the splats, looking inward.
1021
+ *
1022
+ * For anything whose surface can be seen from outside -- an object, a turntable
1023
+ * capture -- no anchors are needed. Cameras are spread evenly over a sphere
1024
+ * bounding the splats and aimed at its center. Naming an
1025
+ * `orientedBoundingBox` sizes that sphere on the splats inside it, which is
1026
+ * what picks one object out of a larger capture.
1027
+ */
1028
+ CamerasExteriorSphere: {
1029
+ /**
1030
+ * @description discriminator enum property added by openapi-typescript
1031
+ * @enum {string}
1032
+ */
1033
+ strategy: "exterior_sphere";
1034
+ };
1035
+ /**
1036
+ * CamerasManualAnchors
1037
+ * @description Render from explicitly placed anchor positions.
1038
+ *
1039
+ * A cubemap is rendered at each anchor, and more cameras are sampled around
1040
+ * it. Anchors belong in open space, with a clear view of the regions that
1041
+ * matter most.
1042
+ */
1043
+ CamerasManualAnchors: {
1044
+ /**
1045
+ * @description discriminator enum property added by openapi-typescript
1046
+ * @enum {string}
1047
+ */
1048
+ strategy: "manual_anchors";
1049
+ /**
1050
+ * Anchors
1051
+ * @description Anchor positions in Three.js coordinates (+X right, +Y up, -Z forward).
1052
+ */
1053
+ anchors: [
1054
+ number,
1055
+ number,
1056
+ number
1057
+ ][];
1058
+ };
1059
+ /**
1060
+ * CancelOperationRequest
1061
+ * @description Body of ``POST /api/v2/operations/{operation}:cancel``.
1062
+ */
1063
+ CancelOperationRequest: {
1064
+ /**
1065
+ * Reason
1066
+ * @description Optional caller-provided reason for cancellation.
1067
+ */
1068
+ reason?: string | null;
1069
+ /**
1070
+ * Requestid
1071
+ * @description Stable cancellation request id; supply to make retries idempotent. Server generates one if omitted.
1072
+ */
1073
+ requestId?: string | null;
1074
+ };
1075
+ /**
1076
+ * CompleteUploadRequest
1077
+ * @description Body of an ``:completeUpload`` request.
1078
+ */
1079
+ CompleteUploadRequest: {
1080
+ /** Checksum */
1081
+ checksum?: string | null;
1082
+ /** Width */
1083
+ width?: number | null;
1084
+ /** Height */
1085
+ height?: number | null;
1086
+ /** Sizebytes */
1087
+ sizeBytes?: number | null;
1088
+ };
1089
+ /**
1090
+ * CoordinateFrame
1091
+ * @description Pose represented by a position and an XYZW quaternion.
1092
+ *
1093
+ * ``coordinate_system`` names the axes convention the pose is expressed in:
1094
+ * ``rub`` (right-up-back, the OpenGL/Three.js convention) or ``rdf``
1095
+ * (right-down-forward, the OpenCV convention). Both the ``coordinateSystem``
1096
+ * (camelCase) and ``coordinate_system`` spellings are accepted.
1097
+ */
1098
+ CoordinateFrame: {
1099
+ /** Position */
1100
+ position: [
1101
+ number,
1102
+ number,
1103
+ number
1104
+ ];
1105
+ /** Quaternion */
1106
+ quaternion: [
1107
+ number,
1108
+ number,
1109
+ number,
1110
+ number
1111
+ ];
1112
+ /**
1113
+ * Coordinatesystem
1114
+ * @default rub
1115
+ * @enum {string}
1116
+ */
1117
+ coordinateSystem?: "rub" | "rdf";
1118
+ };
1119
+ /**
1120
+ * CreateAssetRequest
1121
+ * @description Body of a project-owned asset-create request.
1122
+ */
1123
+ CreateAssetRequest: {
1124
+ /**
1125
+ * Assetid
1126
+ * @description Optional client-supplied resource id.
1127
+ */
1128
+ assetId?: string | null;
1129
+ asset: components["schemas"]["AssetCreate"];
1130
+ };
1131
+ /**
1132
+ * CreateAssetResponse
1133
+ * @description The new asset, plus a grant for every part it declared.
1134
+ */
1135
+ CreateAssetResponse: {
1136
+ /**
1137
+ * Id
1138
+ * @description Asset id, ``asset_<hex>``.
1139
+ */
1140
+ id: string;
1141
+ /**
1142
+ * Displayname
1143
+ * @description User-visible label.
1144
+ */
1145
+ displayName: string;
1146
+ /**
1147
+ * Mimetype
1148
+ * @description Media MIME type, e.g. ``image/png``.
1149
+ */
1150
+ mimeType: string;
1151
+ /** @default CREATED */
1152
+ state?: components["schemas"]["AssetState"];
1153
+ /**
1154
+ * Width
1155
+ * @description Pixel width when known.
1156
+ */
1157
+ width?: number | null;
1158
+ /**
1159
+ * Height
1160
+ * @description Pixel height when known.
1161
+ */
1162
+ height?: number | null;
1163
+ /**
1164
+ * Sizebytes
1165
+ * @description Size in bytes serialized as a string for large-integer compatibility with JSON consumers.
1166
+ */
1167
+ sizeBytes?: string | null;
1168
+ /**
1169
+ * Checksum
1170
+ * @description Checksum the store reports, e.g. ``crc32c:...``.
1171
+ */
1172
+ checksum?: string | null;
1173
+ /**
1174
+ * Createtime
1175
+ * @description Server-assigned.
1176
+ */
1177
+ createTime?: string | null;
1178
+ /**
1179
+ * Type
1180
+ * @description Asset type, e.g. ``image``. Null for an untyped upload.
1181
+ */
1182
+ type?: string | null;
1183
+ /**
1184
+ * Parts
1185
+ * @description The asset's media files. Empty until the upload completes; an untyped asset then holds one part covering the whole media.
1186
+ */
1187
+ parts?: components["schemas"]["AssetPart"][];
1188
+ /**
1189
+ * Structure
1190
+ * @description What a reader needs besides the bytes.
1191
+ */
1192
+ structure?: {
1193
+ [key: string]: unknown;
1194
+ } | null;
1195
+ /** @description Set when a task produced the asset. */
1196
+ producedBy?: components["schemas"]["ProducedBy"] | null;
1197
+ /**
1198
+ * Contentpath
1199
+ * @description Where the asset's bytes sit under the project's content prefix, ``<class>/<asset>[/<role>]``, each segment percent-encoded as a URL path segment. Appended to a read prefix's ``baseUrl`` and followed by its ``signedQuery`` it addresses the bytes on the content edge; on its own it grants nothing. A read prefix is minted per project by ``:createReadPrefix`` (on the project for web sessions, on ``/assets`` for API keys); ``:createReadUrl`` stays the single-object download. Null until the bytes exist.
1200
+ */
1201
+ contentPath?: string | null;
1202
+ /** Uploads */
1203
+ uploads?: components["schemas"]["UploadGrant"][];
1204
+ };
1205
+ /**
1206
+ * CreateReadPrefixResponse
1207
+ * @description One credential for a project's whole library on the content edge.
1208
+ *
1209
+ * A Cloud CDN prefix-signed URL: append an asset's ``contentPath`` to
1210
+ * ``baseUrl`` and then ``?`` plus ``signedQuery`` to address its bytes.
1211
+ * The same ``signedQuery`` serves every asset of the project until
1212
+ * ``expiresAt``; the edge validates it on every request.
1213
+ */
1214
+ CreateReadPrefixResponse: {
1215
+ /**
1216
+ * Baseurl
1217
+ * @description The project's content prefix on the edge, ending in ``/``. Append an asset's ``contentPath`` to address its bytes.
1218
+ */
1219
+ baseUrl: string;
1220
+ /**
1221
+ * Signedquery
1222
+ * @description Query string (without the leading ``?``) authorizing every URL under ``baseUrl``: ``URLPrefix``, ``Expires``, ``KeyName`` and ``Signature`` as Cloud CDN defines them. Knowledge of it grants read access to the project's library until it expires; mint a fresh one rather than persisting this.
1223
+ */
1224
+ signedQuery: string;
1225
+ /**
1226
+ * Expiresat
1227
+ * Format: date-time
1228
+ * @description When the signature stops admitting reads; mint again after.
1229
+ */
1230
+ expiresAt: string;
1231
+ };
1232
+ /** CreateReadUrlResponse */
1233
+ CreateReadUrlResponse: {
1234
+ /**
1235
+ * Readurl
1236
+ * @description Short-lived signed URL for the asset's bytes. Knowledge of the URL grants read access until it expires; mint a fresh one rather than persisting this.
1237
+ */
1238
+ readUrl: string;
1239
+ /**
1240
+ * Expiresat
1241
+ * Format: date-time
1242
+ */
1243
+ expiresAt: string;
1244
+ };
1245
+ /**
1246
+ * CreateUploadUrlRequest
1247
+ * @description Body of an ``:createUploadUrl`` request.
1248
+ *
1249
+ * ``content_length`` is the wire-format string the API contract requires
1250
+ * (JSON's large-integer limitation); the validator parses it to an int so
1251
+ * handlers can pass it to the service layer untouched.
1252
+ */
1253
+ CreateUploadUrlRequest: {
1254
+ /** Contenttype */
1255
+ contentType: string;
1256
+ /**
1257
+ * Contentlength
1258
+ * @description Expected upload size in bytes, serialized on the wire as a string.
1259
+ */
1260
+ contentLength: number;
1261
+ };
1262
+ /**
1263
+ * CreateUploadUrlResponse
1264
+ * @description Upload ticket for a project-owned Asset.
1265
+ */
1266
+ CreateUploadUrlResponse: {
1267
+ /** Uploadurl */
1268
+ uploadUrl: string;
1269
+ /**
1270
+ * Method
1271
+ * @description HTTP verb to use for the upload, e.g. PUT.
1272
+ */
1273
+ method: string;
1274
+ /**
1275
+ * Expiresat
1276
+ * Format: date-time
1277
+ */
1278
+ expiresAt: string;
1279
+ /**
1280
+ * Headers
1281
+ * @description Headers the client MUST include on the upload request.
1282
+ */
1283
+ headers?: {
1284
+ [key: string]: string;
1285
+ };
1286
+ };
1287
+ /**
1288
+ * CreateUploadUrlsRequest
1289
+ * @description Body of a ``:createUploadUrls`` request.
1290
+ */
1291
+ CreateUploadUrlsRequest: {
1292
+ /**
1293
+ * Roles
1294
+ * @description Parts to re-mint. Empty grants every declared part.
1295
+ */
1296
+ roles?: string[];
1297
+ };
1298
+ /** CreateUploadUrlsResponse */
1299
+ CreateUploadUrlsResponse: {
1300
+ /** Uploads */
1301
+ uploads?: components["schemas"]["UploadGrant"][];
1302
+ };
1303
+ /**
1304
+ * Empty
1305
+ * @description Empty response body for endpoints that have no payload.
1306
+ */
1307
+ Empty: Record<string, never>;
1308
+ /**
1309
+ * FrameRGBAsset
1310
+ * @description A frame whose RGB image is always present; camera stays optional.
1311
+ */
1312
+ FrameRGBAsset: {
1313
+ /** @description Source image as a URL or inline asset. */
1314
+ imageAsset: components["schemas"]["TaskAsset"];
1315
+ /** @description Optional alpha mask as a URL or inline asset: an 8-bit grayscale PNG on the image grid whose pixel value / 255 is the alpha in [0, 1] (1 = kept, 0 = excluded). Null when the frame carries no mask. */
1316
+ maskAsset?: components["schemas"]["TaskAsset"] | null;
1317
+ /** @description Optional camera-to-world pose and intrinsics. */
1318
+ camera?: components["schemas"]["PinholeCamera"] | null;
1319
+ /**
1320
+ * Depth
1321
+ * @description Optional depth buffer, as an inverted log-depth PNG (logDepthAsset) or a linear-depth EXR (depthAsset).
1322
+ */
1323
+ depth?: components["schemas"]["LogDepthBufferAsset"] | components["schemas"]["LinearDepthBufferAsset"] | null;
1324
+ };
1325
+ /** HTTPValidationError */
1326
+ HTTPValidationError: {
1327
+ /** Detail */
1328
+ detail?: components["schemas"]["ValidationError"][];
1329
+ };
1330
+ /**
1331
+ * ImageCollectionAssetOutput
1332
+ * @description Asset output for tasks that return `files.images.images`.
1333
+ */
1334
+ ImageCollectionAssetOutput: {
1335
+ files: components["schemas"]["ImageCollectionAssetOutputFiles"];
1336
+ };
1337
+ /**
1338
+ * ImageCollectionAssetOutputFiles
1339
+ * @description Asset output files for tasks that return an image collection.
1340
+ */
1341
+ ImageCollectionAssetOutputFiles: {
1342
+ images: components["schemas"]["ImageCollectionFiles"];
1343
+ };
1344
+ /**
1345
+ * ImageCollectionFiles
1346
+ * @description Image family containing the image collection role.
1347
+ */
1348
+ ImageCollectionFiles: {
1349
+ /**
1350
+ * Images
1351
+ * @description Generated image files.
1352
+ */
1353
+ images: string[];
1354
+ };
1355
+ /**
1356
+ * Images2PosedRGBDPerImageResult
1357
+ * @description Per-image reconstruction output.
1358
+ *
1359
+ * Geometry is the depth EXR: unproject it with ``camera`` to recover the
1360
+ * camera-space point cloud. ``camera``'s intrinsics describe the depth grid,
1361
+ * which is whatever grid the backbone reconstructed on, so they are not
1362
+ * necessarily the intrinsics of ``imageAsset``.
1363
+ */
1364
+ Images2PosedRGBDPerImageResult: {
1365
+ /** @description The source image the depth was estimated from. */
1366
+ imageAsset: components["schemas"]["TaskAsset"];
1367
+ /** @description Optional alpha mask as a URL or inline asset: an 8-bit grayscale PNG on the image grid whose pixel value / 255 is the alpha in [0, 1] (1 = kept, 0 = excluded). Null when the frame carries no mask. */
1368
+ maskAsset?: components["schemas"]["TaskAsset"] | null;
1369
+ /** @description Camera-to-world pose and intrinsics. */
1370
+ camera: components["schemas"]["PinholeCamera"];
1371
+ /** @description Linear-depth EXR in world units, aligned to camera, beside a confidence map. Multiple frames carry the calibrated keep-probability ('ultimate'); a single frame carries the backbone's own mask ('model'), the only score one view can support. Unproject the depth with the camera intrinsics to recover camera-space points in Three.js convention. */
1372
+ depth: components["schemas"]["LinearDepthBufferAsset"];
1373
+ /**
1374
+ * Centroidworld
1375
+ * @description Ground-plane pivot formed from the mean finite camera-space point transformed into world space and projected to y=0.
1376
+ */
1377
+ centroidWorld: [
1378
+ number,
1379
+ number,
1380
+ number
1381
+ ];
1382
+ };
1383
+ /**
1384
+ * Images2PosedRGBDRequest
1385
+ * @description Body of ``POST /api/v2/tasks:images2PosedRGBD``.
1386
+ */
1387
+ Images2PosedRGBDRequest: {
1388
+ /**
1389
+ * Frames
1390
+ * @description Ordered image inputs (min 1). A frame that carries a camera, a depth buffer or a mask is rejected rather than quietly ignored: none of them reaches the reconstruction.
1391
+ */
1392
+ frames: components["schemas"]["FrameRGBAsset"][];
1393
+ /**
1394
+ * Canonicalizetofirstframe
1395
+ * @description Place the first camera at the origin facing forward.
1396
+ * @default false
1397
+ */
1398
+ canonicalizeToFirstFrame?: boolean;
1399
+ /**
1400
+ * Targetresolution
1401
+ * @description Return the depth, confidence and camera intrinsics on this (width, height) pixel grid. The reconstruction is scaled to cover the requested size and center-cropped to it, so the result is exactly the size asked for and never stretched, and the intrinsics are updated with it -- unprojecting the returned depth with the returned camera gives the same geometry either way. A requested aspect that differs from the reconstruction's costs field of view, since the crop is what makes the size exact, and centroidWorld then describes the cropped view. Omit for the 1280 by 720 default; pass null to take the instance's own default.
1402
+ * @default [
1403
+ * 1280,
1404
+ * 720
1405
+ * ]
1406
+ */
1407
+ targetResolution?: [
1408
+ number,
1409
+ number
1410
+ ] | null;
1411
+ };
1412
+ /**
1413
+ * Images2PosedRGBDResponse
1414
+ * @description Public response projected into the completed Operation.
1415
+ */
1416
+ Images2PosedRGBDResponse: {
1417
+ /**
1418
+ * Results
1419
+ * @description One result per input image.
1420
+ */
1421
+ results: components["schemas"]["Images2PosedRGBDPerImageResult"][];
1422
+ };
1423
+ /** Images2PosedRGBDResponseOperation */
1424
+ Images2PosedRGBDResponseOperation: {
1425
+ /** Id */
1426
+ id: string;
1427
+ /** Ownerid */
1428
+ ownerId: string;
1429
+ /** Metadata */
1430
+ metadata?: {
1431
+ [key: string]: unknown;
1432
+ } | null;
1433
+ /** Done */
1434
+ done: boolean;
1435
+ error?: components["schemas"]["OperationError"] | null;
1436
+ /** @description Task response payload when the operation is done. */
1437
+ response?: components["schemas"]["Images2PosedRGBDResponse"] | null;
1438
+ /** Expiresatsecs */
1439
+ expiresAtSecs?: number | null;
1440
+ /**
1441
+ * Createdatsecs
1442
+ * @description Unix seconds when the operation was created (output-only).
1443
+ */
1444
+ createdAtSecs?: number | null;
1445
+ /**
1446
+ * Name
1447
+ * @description Canonical resource name ``accounts/{account}/operations/{operation}``.
1448
+ *
1449
+ * ``owner_id`` is the owning account, so the public name is derived, not
1450
+ * stored. Output-only: serialized for clients (AIP-style), and harmlessly
1451
+ * ignored when the LRO client deserializes a service response.
1452
+ */
1453
+ readonly name: string;
1454
+ };
1455
+ /**
1456
+ * LinearDepthBufferAsset
1457
+ * @description Linear-depth EXR (URL or inline asset).
1458
+ */
1459
+ LinearDepthBufferAsset: {
1460
+ /** @description Optional 8-bit grayscale PNG on the depth grid whose pixel value / 255 is the per-pixel depth confidence in [0, 1], as a URL or inline asset. */
1461
+ confidenceAsset?: components["schemas"]["TaskAsset"] | null;
1462
+ /** @description EXR of linear depth in world units, as a URL or inline asset. */
1463
+ depthAsset: components["schemas"]["TaskAsset"];
1464
+ };
1465
+ /** ListAssetsResponse */
1466
+ ListAssetsResponse: {
1467
+ /** Assets */
1468
+ assets?: components["schemas"]["Asset"][];
1469
+ /**
1470
+ * Nextpagetoken
1471
+ * @default
1472
+ */
1473
+ nextPageToken?: string;
1474
+ };
1475
+ /**
1476
+ * ListOperationsResponse
1477
+ * @description A page of operations, newest first.
1478
+ */
1479
+ ListOperationsResponse: {
1480
+ /** Operations */
1481
+ operations: components["schemas"]["Operation"][];
1482
+ /**
1483
+ * Nextpagetoken
1484
+ * @description Token for the next page; absent when there are no more.
1485
+ */
1486
+ nextPageToken?: string | null;
1487
+ };
1488
+ /**
1489
+ * LogDepthBufferAsset
1490
+ * @description Inverted log-depth PNG (URL or inline asset) plus its decode range.
1491
+ */
1492
+ LogDepthBufferAsset: {
1493
+ /** @description Optional 8-bit grayscale PNG on the depth grid whose pixel value / 255 is the per-pixel depth confidence in [0, 1], as a URL or inline asset. */
1494
+ confidenceAsset?: components["schemas"]["TaskAsset"] | null;
1495
+ /** @description Inverted log-depth grayscale PNG, as a URL or inline asset. */
1496
+ logDepthAsset: components["schemas"]["TaskAsset"];
1497
+ /**
1498
+ * Zmin
1499
+ * @description Linear depth in world units encoded as white (1.0).
1500
+ */
1501
+ zMin: number;
1502
+ /**
1503
+ * Zmax
1504
+ * @description Linear depth in world units encoded as black (>0).
1505
+ */
1506
+ zMax: number;
1507
+ };
1508
+ /**
1509
+ * MeshAssetOutput
1510
+ * @description Asset output for tasks that return `files.meshes.mesh`.
1511
+ */
1512
+ MeshAssetOutput: {
1513
+ files: components["schemas"]["MeshAssetOutputFiles"];
1514
+ };
1515
+ /**
1516
+ * MeshAssetOutputFiles
1517
+ * @description Asset output files for mesh tasks.
1518
+ */
1519
+ MeshAssetOutputFiles: {
1520
+ meshes: components["schemas"]["MeshFiles"];
1521
+ };
1522
+ /**
1523
+ * MeshFiles
1524
+ * @description Mesh family containing the generic mesh role.
1525
+ */
1526
+ MeshFiles: {
1527
+ /**
1528
+ * Mesh
1529
+ * @description Generated mesh files.
1530
+ */
1531
+ mesh: string[];
1532
+ };
1533
+ /**
1534
+ * Operation
1535
+ * @description An asynchronous long-running task operation.
1536
+ */
1537
+ Operation: {
1538
+ /** Id */
1539
+ id: string;
1540
+ /** Ownerid */
1541
+ ownerId: string;
1542
+ /** Metadata */
1543
+ metadata?: {
1544
+ [key: string]: unknown;
1545
+ } | null;
1546
+ /** Done */
1547
+ done: boolean;
1548
+ error?: components["schemas"]["OperationError"] | null;
1549
+ /** Response */
1550
+ response?: {
1551
+ [key: string]: unknown;
1552
+ } | null;
1553
+ /** Expiresatsecs */
1554
+ expiresAtSecs?: number | null;
1555
+ /**
1556
+ * Createdatsecs
1557
+ * @description Unix seconds when the operation was created (output-only).
1558
+ */
1559
+ createdAtSecs?: number | null;
1560
+ /**
1561
+ * Name
1562
+ * @description Canonical resource name ``accounts/{account}/operations/{operation}``.
1563
+ *
1564
+ * ``owner_id`` is the owning account, so the public name is derived, not
1565
+ * stored. Output-only: serialized for clients (AIP-style), and harmlessly
1566
+ * ignored when the LRO client deserializes a service response.
1567
+ */
1568
+ readonly name: string;
1569
+ };
1570
+ /**
1571
+ * OperationError
1572
+ * @description Error payload set on a failed operation.
1573
+ */
1574
+ OperationError: {
1575
+ /**
1576
+ * Code
1577
+ * @description Numeric status code; conventionally a google.rpc.Code value.
1578
+ */
1579
+ code?: number | null;
1580
+ /**
1581
+ * Message
1582
+ * @description Developer-readable error message in English.
1583
+ */
1584
+ message?: string | null;
1585
+ /**
1586
+ * Details
1587
+ * @description Structured error details, matching google.rpc.Status.details.
1588
+ */
1589
+ details?: {
1590
+ [key: string]: unknown;
1591
+ }[];
1592
+ };
1593
+ /**
1594
+ * OperationTrace
1595
+ * @description Public request/response data without the internal task record or raw LRO.
1596
+ */
1597
+ OperationTrace: {
1598
+ /** Operationid */
1599
+ operationId: string;
1600
+ /** Taskname */
1601
+ taskName: string;
1602
+ /** Taskversion */
1603
+ taskVersion: string;
1604
+ /** Request */
1605
+ request: {
1606
+ [key: string]: unknown;
1607
+ };
1608
+ /** Response */
1609
+ response?: {
1610
+ [key: string]: unknown;
1611
+ } | null;
1612
+ };
1613
+ /**
1614
+ * PinholeCamera
1615
+ * @description A posed pinhole camera.
1616
+ *
1617
+ * The axes convention of the pose is carried by
1618
+ * ``extrinsics.coordinate_system``.
1619
+ */
1620
+ PinholeCamera: {
1621
+ extrinsics: components["schemas"]["CoordinateFrame"];
1622
+ intrinsics: components["schemas"]["PinholeCameraIntrinsics"];
1623
+ };
1624
+ /**
1625
+ * PinholeCameraIntrinsics
1626
+ * @description Pinhole camera intrinsics in pixel coordinates (not normalized).
1627
+ *
1628
+ * Pixel coordinates have their origin (0, 0) at the top-left corner of the
1629
+ * image, +x right and +y down, so ``cx``/``cy`` measure from the top-left.
1630
+ * ``width`` and ``height`` are the image size in pixels the intrinsics
1631
+ * refer to. This is independent of the pose's ``coordinate_system``.
1632
+ */
1633
+ PinholeCameraIntrinsics: {
1634
+ /** Fx */
1635
+ fx: number;
1636
+ /** Fy */
1637
+ fy: number;
1638
+ /** Cx */
1639
+ cx: number;
1640
+ /** Cy */
1641
+ cy: number;
1642
+ /** Width */
1643
+ width: number;
1644
+ /** Height */
1645
+ height: number;
1646
+ };
1647
+ /**
1648
+ * PosedDepthAsset
1649
+ * @description A posed depth-only frame: a depth buffer with its camera.
1650
+ */
1651
+ PosedDepthAsset: {
1652
+ /** @description Source image as a URL or inline asset, or null (depth-only). */
1653
+ imageAsset?: components["schemas"]["TaskAsset"] | null;
1654
+ /** @description Optional alpha mask as a URL or inline asset: an 8-bit grayscale PNG on the image grid whose pixel value / 255 is the alpha in [0, 1] (1 = kept, 0 = excluded). Null when the frame carries no mask. */
1655
+ maskAsset?: components["schemas"]["TaskAsset"] | null;
1656
+ /** @description Camera-to-world pose and intrinsics. */
1657
+ camera: components["schemas"]["PinholeCamera"];
1658
+ /**
1659
+ * Depth
1660
+ * @description Depth buffer aligned to the camera.
1661
+ */
1662
+ depth: components["schemas"]["LogDepthBufferAsset"] | components["schemas"]["LinearDepthBufferAsset"];
1663
+ };
1664
+ /**
1665
+ * PosedRGBAAsset
1666
+ * @description A posed frame carrying both its RGB image and its alpha mask.
1667
+ */
1668
+ PosedRGBAAsset: {
1669
+ /** @description Source image as a URL or inline asset. */
1670
+ imageAsset: components["schemas"]["TaskAsset"];
1671
+ /** @description Alpha mask as a URL or inline asset: an 8-bit grayscale PNG on the image grid whose pixel value / 255 is the alpha in [0, 1] (1 = kept, 0 = excluded). */
1672
+ maskAsset: components["schemas"]["TaskAsset"];
1673
+ /** @description Camera-to-world pose and intrinsics. */
1674
+ camera: components["schemas"]["PinholeCamera"];
1675
+ /**
1676
+ * Depth
1677
+ * @description Optional depth buffer, as an inverted log-depth PNG (logDepthAsset) or a linear-depth EXR (depthAsset).
1678
+ */
1679
+ depth?: components["schemas"]["LogDepthBufferAsset"] | components["schemas"]["LinearDepthBufferAsset"] | null;
1680
+ };
1681
+ /**
1682
+ * PosedRGBAsset
1683
+ * @description A posed RGB frame: image plus its known camera.
1684
+ */
1685
+ PosedRGBAsset: {
1686
+ /** @description Source image as a URL or inline asset. */
1687
+ imageAsset: components["schemas"]["TaskAsset"];
1688
+ /** @description Optional alpha mask as a URL or inline asset: an 8-bit grayscale PNG on the image grid whose pixel value / 255 is the alpha in [0, 1] (1 = kept, 0 = excluded). Null when the frame carries no mask. */
1689
+ maskAsset?: components["schemas"]["TaskAsset"] | null;
1690
+ /** @description Camera-to-world pose and intrinsics. */
1691
+ camera: components["schemas"]["PinholeCamera"];
1692
+ /**
1693
+ * Depth
1694
+ * @description Optional depth buffer, as an inverted log-depth PNG (logDepthAsset) or a linear-depth EXR (depthAsset).
1695
+ */
1696
+ depth?: components["schemas"]["LogDepthBufferAsset"] | components["schemas"]["LinearDepthBufferAsset"] | null;
1697
+ };
1698
+ /**
1699
+ * PosedRGBDAsset
1700
+ * @description A posed frame carrying both its RGB image and its depth buffer.
1701
+ */
1702
+ PosedRGBDAsset: {
1703
+ /** @description Source image as a URL or inline asset. */
1704
+ imageAsset: components["schemas"]["TaskAsset"];
1705
+ /** @description Optional alpha mask as a URL or inline asset: an 8-bit grayscale PNG on the image grid whose pixel value / 255 is the alpha in [0, 1] (1 = kept, 0 = excluded). Null when the frame carries no mask. */
1706
+ maskAsset?: components["schemas"]["TaskAsset"] | null;
1707
+ /** @description Camera-to-world pose and intrinsics. */
1708
+ camera: components["schemas"]["PinholeCamera"];
1709
+ /**
1710
+ * Depth
1711
+ * @description Depth buffer aligned to the camera.
1712
+ */
1713
+ depth: components["schemas"]["LogDepthBufferAsset"] | components["schemas"]["LinearDepthBufferAsset"];
1714
+ };
1715
+ /**
1716
+ * ProducedBy
1717
+ * @description The task that produced this asset. Absent on an upload or import.
1718
+ */
1719
+ ProducedBy: {
1720
+ /**
1721
+ * Task
1722
+ * @description The task that produced it, e.g. ``image2DraftSplats``.
1723
+ */
1724
+ task?: string | null;
1725
+ /**
1726
+ * Operation
1727
+ * @description The Operation that produced it.
1728
+ */
1729
+ operation?: string | null;
1730
+ };
1731
+ /**
1732
+ * ResourceOrigin
1733
+ * @description Product surface that created a project resource.
1734
+ * @enum {string}
1735
+ */
1736
+ ResourceOrigin: "APPLET" | "DEVELOPER_API";
1737
+ /**
1738
+ * Splats2MeshAdvancedOptions
1739
+ * @description Advanced reconstruction controls for custom mesh generation.
1740
+ */
1741
+ Splats2MeshAdvancedOptions: {
1742
+ /**
1743
+ * Renderhw
1744
+ * @description Height and width of the main views rendered to measure the splat surface and texture it, in pixels.
1745
+ * @default 1024
1746
+ */
1747
+ renderHw?: number;
1748
+ /**
1749
+ * Renderhwsecondary
1750
+ * @description Height and width of the secondary views, in pixels. The anchor strategies sample extra cameras around each anchor and render them here, covering what the main views miss. `exterior_sphere` and a supplied camera list render no secondary views and ignore this.
1751
+ * @default 640
1752
+ */
1753
+ renderHwSecondary?: number;
1754
+ /**
1755
+ * Normalsource
1756
+ * @description Normals orient the implicit surface the mesh is extracted from. `depth` estimates them from the rendered depth; `render` aggregates the splats' own, which assumes each splat's local z axis points along the surface normal.
1757
+ * @default depth
1758
+ * @enum {string}
1759
+ */
1760
+ normalSource?: "depth" | "render";
1761
+ /**
1762
+ * Resolution
1763
+ * @description Resolution of the grid the implicit surface is built on, across the region's longest side. Powers of two only. This sets the finest detail the mesh can carry.
1764
+ * @default 512
1765
+ */
1766
+ resolution?: number;
1767
+ /**
1768
+ * Trimquantile
1769
+ * @description Drop vertices whose sample density falls below this quantile. Reconstruction closes the surface over regions it saw no samples in, and trimming cuts that invented skin back off. 0 keeps every vertex.
1770
+ * @default 0
1771
+ */
1772
+ trimQuantile?: number;
1773
+ };
1774
+ /**
1775
+ * Splats2MeshOrientedBoundingBox
1776
+ * @description Region to extract, as an oriented box in Three.js coordinates.
1777
+ */
1778
+ Splats2MeshOrientedBoundingBox: {
1779
+ /**
1780
+ * Center
1781
+ * @description Center of the region, in world space.
1782
+ */
1783
+ center: [
1784
+ number,
1785
+ number,
1786
+ number
1787
+ ];
1788
+ /**
1789
+ * Orientation
1790
+ * @description Rotation of the region away from the world axes, as an xyzw quaternion.
1791
+ */
1792
+ orientation: [
1793
+ number,
1794
+ number,
1795
+ number,
1796
+ number
1797
+ ];
1798
+ /**
1799
+ * Halfextents
1800
+ * @description Half the region's size along each of its own axes. All three must be positive.
1801
+ */
1802
+ halfExtents: [
1803
+ number,
1804
+ number,
1805
+ number
1806
+ ];
1807
+ };
1808
+ /**
1809
+ * Splats2MeshRequest
1810
+ * @description Body of a splats2Mesh request.
1811
+ */
1812
+ Splats2MeshRequest: {
1813
+ /**
1814
+ * Cameras
1815
+ * @description Cameras the splats are rendered from. The surface is reconstructed from those renders, so geometry no camera sees is not meshed. Name a strategy -- `auto_anchors` (the default) finds viewpoints in the scene's free space, `manual_anchors` takes them from the request, `exterior_sphere` rings the scene from outside for an object or turntable capture -- or pass a list of cameras to render as given, at most 512, sharing one width and height between 64 and 1024 that becomes the render resolution.
1816
+ */
1817
+ cameras?: components["schemas"]["PinholeCamera"][] | (components["schemas"]["CamerasManualAnchors"] | components["schemas"]["CamerasAutoAnchors"] | components["schemas"]["CamerasExteriorSphere"]) | null;
1818
+ /** @description Finer control over how the splats are rendered and how the surface is extracted. Omit for the defaults. */
1819
+ advancedOptions?: components["schemas"]["Splats2MeshAdvancedOptions"] | null;
1820
+ /** @description Region to extract, as an oriented box in Three.js coordinates. Omit to mesh the whole scene. */
1821
+ orientedBoundingBox?: components["schemas"]["Splats2MeshOrientedBoundingBox"] | null;
1822
+ /**
1823
+ * Targetfaces
1824
+ * @description Decimate the extracted mesh to at most this many faces. A target above the extracted count does nothing. Omit to keep every face.
1825
+ */
1826
+ targetFaces?: number | null;
1827
+ /**
1828
+ * Texturemode
1829
+ * @description Mesh appearance: 'image_texture' projects rendered views onto a UV atlas, 'vertex_color' bakes per-vertex colors, and 'none' leaves the mesh untextured.
1830
+ * @default image_texture
1831
+ * @enum {string}
1832
+ */
1833
+ textureMode?: "image_texture" | "vertex_color" | "none";
1834
+ /**
1835
+ * Texturesize
1836
+ * @description Height and width of the texture atlas, in pixels, for `image_texture` mode. One rendered view plus its border has to fit, so this must be at least 2% above the render size in play: the larger render bank under the anchor strategies, `renderHw` under `exterior_sphere`, or the supplied cameras' own size.
1837
+ * @default 4096
1838
+ */
1839
+ textureSize?: number;
1840
+ /** @description The Gaussian splat scene (.spz) to mesh. Inline base64 must carry a `data:` prefix to declare its media type: asset creation otherwise infers the type from the bytes, and the sniffer knows image formats only. */
1841
+ splatAsset: components["schemas"]["TaskAsset"];
1842
+ };
1843
+ /**
1844
+ * Splats2MeshResponse
1845
+ * @description Public response projected into the completed Operation.
1846
+ */
1847
+ Splats2MeshResponse: {
1848
+ /** @description The generated mesh. The GLB is at `files.meshes.mesh`. */
1849
+ assetOutput?: components["schemas"]["MeshAssetOutput"] | null;
1850
+ /**
1851
+ * Anchorpositions
1852
+ * @description Anchor positions the cameras were generated from, in Three.js coordinates. Null when no anchors were used: cameras were supplied directly, or `exterior_sphere` was chosen.
1853
+ */
1854
+ anchorPositions?: [
1855
+ number,
1856
+ number,
1857
+ number
1858
+ ][] | null;
1859
+ /**
1860
+ * Metadata
1861
+ * @deprecated
1862
+ * @description Deprecated runtime diagnostics. Informational only -- keys are not part of the contract and may change.
1863
+ */
1864
+ metadata?: {
1865
+ [key: string]: string;
1866
+ };
1867
+ };
1868
+ /** Splats2MeshResponseOperation */
1869
+ Splats2MeshResponseOperation: {
1870
+ /** Id */
1871
+ id: string;
1872
+ /** Ownerid */
1873
+ ownerId: string;
1874
+ /** Metadata */
1875
+ metadata?: {
1876
+ [key: string]: unknown;
1877
+ } | null;
1878
+ /** Done */
1879
+ done: boolean;
1880
+ error?: components["schemas"]["OperationError"] | null;
1881
+ /** @description Task response payload when the operation is done. */
1882
+ response?: components["schemas"]["Splats2MeshResponse"] | null;
1883
+ /** Expiresatsecs */
1884
+ expiresAtSecs?: number | null;
1885
+ /**
1886
+ * Createdatsecs
1887
+ * @description Unix seconds when the operation was created (output-only).
1888
+ */
1889
+ createdAtSecs?: number | null;
1890
+ /**
1891
+ * Name
1892
+ * @description Canonical resource name ``accounts/{account}/operations/{operation}``.
1893
+ *
1894
+ * ``owner_id`` is the owning account, so the public name is derived, not
1895
+ * stored. Output-only: serialized for clients (AIP-style), and harmlessly
1896
+ * ignored when the LRO client deserializes a service response.
1897
+ */
1898
+ readonly name: string;
1899
+ };
1900
+ /**
1901
+ * TaskAsset
1902
+ * @description Media input supplied by asset id, inline base64, or public URL.
1903
+ */
1904
+ TaskAsset: {
1905
+ /**
1906
+ * Assetid
1907
+ * @description Account-owned asset id, e.g. `asset_...`.
1908
+ */
1909
+ assetId?: string | null;
1910
+ /**
1911
+ * Base64
1912
+ * @description Base64-encoded media bytes, with or without a data URL prefix. Decoded size must be less than 10 MiB.
1913
+ */
1914
+ base64?: string | null;
1915
+ /**
1916
+ * Url
1917
+ * @description Public HTTP(S) URL containing the media.
1918
+ */
1919
+ url?: string | null;
1920
+ };
1921
+ /**
1922
+ * UploadGrant
1923
+ * @description Permission to upload one part's bytes, straight to the store.
1924
+ */
1925
+ UploadGrant: {
1926
+ /** Role */
1927
+ role: string;
1928
+ /**
1929
+ * Method
1930
+ * @description HTTP verb to use for the upload, e.g. PUT.
1931
+ */
1932
+ method: string;
1933
+ /** Url */
1934
+ url: string;
1935
+ /**
1936
+ * Headers
1937
+ * @description Headers the client MUST include on the upload request.
1938
+ */
1939
+ headers?: {
1940
+ [key: string]: string;
1941
+ };
1942
+ /**
1943
+ * Expiresat
1944
+ * Format: date-time
1945
+ */
1946
+ expiresAt: string;
1947
+ };
1948
+ /** ValidationError */
1949
+ ValidationError: {
1950
+ /** Location */
1951
+ loc: (string | number)[];
1952
+ /** Message */
1953
+ msg: string;
1954
+ /** Error Type */
1955
+ type: string;
1956
+ /** Input */
1957
+ input?: unknown;
1958
+ /** Context */
1959
+ ctx?: Record<string, never>;
1960
+ };
1961
+ /**
1962
+ * WaitOperationRequest
1963
+ * @description Body of ``POST /api/v2/operations/{operation}:wait``.
1964
+ */
1965
+ WaitOperationRequest: {
1966
+ /**
1967
+ * Timeoutsecs
1968
+ * @description Seconds to block waiting for the operation to finish, capped server-side at 30; omit to use the cap. Best-effort: the operation may still be running when this returns.
1969
+ */
1970
+ timeoutSecs?: number | null;
1971
+ };
1972
+ };
1973
+ responses: never;
1974
+ parameters: never;
1975
+ requestBodies: never;
1976
+ headers: never;
1977
+ pathItems: never;
1978
+ }
1979
+ export type Asset = components['schemas']['Asset'];
1980
+ export type AssetCreate = components['schemas']['AssetCreate'];
1981
+ export type AssetPart = components['schemas']['AssetPart'];
1982
+ export type AssetPartDeclaration = components['schemas']['AssetPartDeclaration'];
1983
+ export type AssetState = components['schemas']['AssetState'];
1984
+ export type AtlasChiselModelParameters = components['schemas']['AtlasChiselModelParameters'];
1985
+ export type AtlasChiselRequest = components['schemas']['AtlasChiselRequest'];
1986
+ export type AtlasChiselResponse = components['schemas']['AtlasChiselResponse'];
1987
+ export type AtlasChiselResponseOperation = components['schemas']['AtlasChiselResponseOperation'];
1988
+ export type AtlasGenerateModelParameters = components['schemas']['AtlasGenerateModelParameters'];
1989
+ export type AtlasGenerateRequest = components['schemas']['AtlasGenerateRequest'];
1990
+ export type AtlasGenerateResponse = components['schemas']['AtlasGenerateResponse'];
1991
+ export type AtlasGenerateResponseOperation = components['schemas']['AtlasGenerateResponseOperation'];
1992
+ export type AtlasMaskedModelParameters = components['schemas']['AtlasMaskedModelParameters'];
1993
+ export type AtlasMaskedRequest = components['schemas']['AtlasMaskedRequest'];
1994
+ export type AtlasMaskedResponse = components['schemas']['AtlasMaskedResponse'];
1995
+ export type AtlasMaskedResponseOperation = components['schemas']['AtlasMaskedResponseOperation'];
1996
+ export type AtlasTextToImageRequest = components['schemas']['AtlasTextToImageRequest'];
1997
+ export type AtlasTextToImageResponse = components['schemas']['AtlasTextToImageResponse'];
1998
+ export type AtlasTextToImageResponseOperation = components['schemas']['AtlasTextToImageResponseOperation'];
1999
+ export type CamerasAutoAnchors = components['schemas']['CamerasAutoAnchors'];
2000
+ export type CamerasExteriorSphere = components['schemas']['CamerasExteriorSphere'];
2001
+ export type CamerasManualAnchors = components['schemas']['CamerasManualAnchors'];
2002
+ export type CancelOperationRequest = components['schemas']['CancelOperationRequest'];
2003
+ export type CompleteUploadRequest = components['schemas']['CompleteUploadRequest'];
2004
+ export type CoordinateFrame = components['schemas']['CoordinateFrame'];
2005
+ export type CreateAssetRequest = components['schemas']['CreateAssetRequest'];
2006
+ export type CreateAssetResponse = components['schemas']['CreateAssetResponse'];
2007
+ export type CreateReadPrefixResponse = components['schemas']['CreateReadPrefixResponse'];
2008
+ export type CreateReadUrlResponse = components['schemas']['CreateReadUrlResponse'];
2009
+ export type CreateUploadUrlRequest = components['schemas']['CreateUploadUrlRequest'];
2010
+ export type CreateUploadUrlResponse = components['schemas']['CreateUploadUrlResponse'];
2011
+ export type CreateUploadUrlsRequest = components['schemas']['CreateUploadUrlsRequest'];
2012
+ export type CreateUploadUrlsResponse = components['schemas']['CreateUploadUrlsResponse'];
2013
+ export type Empty = components['schemas']['Empty'];
2014
+ export type FrameRGBAsset = components['schemas']['FrameRGBAsset'];
2015
+ export type HTTPValidationError = components['schemas']['HTTPValidationError'];
2016
+ export type ImageCollectionAssetOutput = components['schemas']['ImageCollectionAssetOutput'];
2017
+ export type ImageCollectionAssetOutputFiles = components['schemas']['ImageCollectionAssetOutputFiles'];
2018
+ export type ImageCollectionFiles = components['schemas']['ImageCollectionFiles'];
2019
+ export type Images2PosedRGBDPerImageResult = components['schemas']['Images2PosedRGBDPerImageResult'];
2020
+ export type Images2PosedRGBDRequest = components['schemas']['Images2PosedRGBDRequest'];
2021
+ export type Images2PosedRGBDResponse = components['schemas']['Images2PosedRGBDResponse'];
2022
+ export type Images2PosedRGBDResponseOperation = components['schemas']['Images2PosedRGBDResponseOperation'];
2023
+ export type LinearDepthBufferAsset = components['schemas']['LinearDepthBufferAsset'];
2024
+ export type ListAssetsResponse = components['schemas']['ListAssetsResponse'];
2025
+ export type ListOperationsResponse = components['schemas']['ListOperationsResponse'];
2026
+ export type LogDepthBufferAsset = components['schemas']['LogDepthBufferAsset'];
2027
+ export type MeshAssetOutput = components['schemas']['MeshAssetOutput'];
2028
+ export type MeshAssetOutputFiles = components['schemas']['MeshAssetOutputFiles'];
2029
+ export type MeshFiles = components['schemas']['MeshFiles'];
2030
+ export type Operation = components['schemas']['Operation'];
2031
+ export type OperationError = components['schemas']['OperationError'];
2032
+ export type OperationTrace = components['schemas']['OperationTrace'];
2033
+ export type PinholeCamera = components['schemas']['PinholeCamera'];
2034
+ export type PinholeCameraIntrinsics = components['schemas']['PinholeCameraIntrinsics'];
2035
+ export type PosedDepthAsset = components['schemas']['PosedDepthAsset'];
2036
+ export type PosedRGBAAsset = components['schemas']['PosedRGBAAsset'];
2037
+ export type PosedRGBAsset = components['schemas']['PosedRGBAsset'];
2038
+ export type PosedRGBDAsset = components['schemas']['PosedRGBDAsset'];
2039
+ export type ProducedBy = components['schemas']['ProducedBy'];
2040
+ export type ResourceOrigin = components['schemas']['ResourceOrigin'];
2041
+ export type Splats2MeshAdvancedOptions = components['schemas']['Splats2MeshAdvancedOptions'];
2042
+ export type Splats2MeshOrientedBoundingBox = components['schemas']['Splats2MeshOrientedBoundingBox'];
2043
+ export type Splats2MeshRequest = components['schemas']['Splats2MeshRequest'];
2044
+ export type Splats2MeshResponse = components['schemas']['Splats2MeshResponse'];
2045
+ export type Splats2MeshResponseOperation = components['schemas']['Splats2MeshResponseOperation'];
2046
+ export type TaskAsset = components['schemas']['TaskAsset'];
2047
+ export type UploadGrant = components['schemas']['UploadGrant'];
2048
+ export type ValidationError = components['schemas']['ValidationError'];
2049
+ export type WaitOperationRequest = components['schemas']['WaitOperationRequest'];
2050
+ export type $defs = Record<string, never>;
2051
+ export interface operations {
2052
+ api_health_api_v2_health_get: {
2053
+ parameters: {
2054
+ query?: never;
2055
+ header?: never;
2056
+ path?: never;
2057
+ cookie?: never;
2058
+ };
2059
+ requestBody?: never;
2060
+ responses: {
2061
+ /** @description Successful Response */
2062
+ 200: {
2063
+ headers: {
2064
+ [name: string]: unknown;
2065
+ };
2066
+ content: {
2067
+ "application/json": {
2068
+ [key: string]: string;
2069
+ };
2070
+ };
2071
+ };
2072
+ };
2073
+ };
2074
+ submit_atlasChisel_api_v2_tasks_atlasChisel_post: {
2075
+ parameters: {
2076
+ query?: {
2077
+ /** @description Block for the operation to finish before returning, up to the server wait cap. Returns the Operation either way — done with a response if it finished in time, otherwise still running. */
2078
+ wait?: boolean;
2079
+ };
2080
+ header?: {
2081
+ /** @description Optional idempotency key. */
2082
+ "Idempotency-Key"?: string | null;
2083
+ };
2084
+ path?: never;
2085
+ cookie?: never;
2086
+ };
2087
+ requestBody: {
2088
+ content: {
2089
+ "application/json": components["schemas"]["AtlasChiselRequest"];
2090
+ };
2091
+ };
2092
+ responses: {
2093
+ /** @description Successful Response */
2094
+ 201: {
2095
+ headers: {
2096
+ [name: string]: unknown;
2097
+ };
2098
+ content: {
2099
+ "application/json": components["schemas"]["AtlasChiselResponseOperation"];
2100
+ };
2101
+ };
2102
+ /** @description Validation Error */
2103
+ 422: {
2104
+ headers: {
2105
+ [name: string]: unknown;
2106
+ };
2107
+ content: {
2108
+ "application/json": components["schemas"]["HTTPValidationError"];
2109
+ };
2110
+ };
2111
+ };
2112
+ };
2113
+ submit_atlasGenerate_api_v2_tasks_atlasGenerate_post: {
2114
+ parameters: {
2115
+ query?: {
2116
+ /** @description Block for the operation to finish before returning, up to the server wait cap. Returns the Operation either way — done with a response if it finished in time, otherwise still running. */
2117
+ wait?: boolean;
2118
+ };
2119
+ header?: {
2120
+ /** @description Optional idempotency key. */
2121
+ "Idempotency-Key"?: string | null;
2122
+ };
2123
+ path?: never;
2124
+ cookie?: never;
2125
+ };
2126
+ requestBody: {
2127
+ content: {
2128
+ "application/json": components["schemas"]["AtlasGenerateRequest"];
2129
+ };
2130
+ };
2131
+ responses: {
2132
+ /** @description Successful Response */
2133
+ 201: {
2134
+ headers: {
2135
+ [name: string]: unknown;
2136
+ };
2137
+ content: {
2138
+ "application/json": components["schemas"]["AtlasGenerateResponseOperation"];
2139
+ };
2140
+ };
2141
+ /** @description Validation Error */
2142
+ 422: {
2143
+ headers: {
2144
+ [name: string]: unknown;
2145
+ };
2146
+ content: {
2147
+ "application/json": components["schemas"]["HTTPValidationError"];
2148
+ };
2149
+ };
2150
+ };
2151
+ };
2152
+ submit_atlasMasked_api_v2_tasks_atlasMasked_post: {
2153
+ parameters: {
2154
+ query?: {
2155
+ /** @description Block for the operation to finish before returning, up to the server wait cap. Returns the Operation either way — done with a response if it finished in time, otherwise still running. */
2156
+ wait?: boolean;
2157
+ };
2158
+ header?: {
2159
+ /** @description Optional idempotency key. */
2160
+ "Idempotency-Key"?: string | null;
2161
+ };
2162
+ path?: never;
2163
+ cookie?: never;
2164
+ };
2165
+ requestBody: {
2166
+ content: {
2167
+ "application/json": components["schemas"]["AtlasMaskedRequest"];
2168
+ };
2169
+ };
2170
+ responses: {
2171
+ /** @description Successful Response */
2172
+ 201: {
2173
+ headers: {
2174
+ [name: string]: unknown;
2175
+ };
2176
+ content: {
2177
+ "application/json": components["schemas"]["AtlasMaskedResponseOperation"];
2178
+ };
2179
+ };
2180
+ /** @description Validation Error */
2181
+ 422: {
2182
+ headers: {
2183
+ [name: string]: unknown;
2184
+ };
2185
+ content: {
2186
+ "application/json": components["schemas"]["HTTPValidationError"];
2187
+ };
2188
+ };
2189
+ };
2190
+ };
2191
+ submit_atlasTextToImage_api_v2_tasks_atlasTextToImage_post: {
2192
+ parameters: {
2193
+ query?: {
2194
+ /** @description Block for the operation to finish before returning, up to the server wait cap. Returns the Operation either way — done with a response if it finished in time, otherwise still running. */
2195
+ wait?: boolean;
2196
+ };
2197
+ header?: {
2198
+ /** @description Optional idempotency key. */
2199
+ "Idempotency-Key"?: string | null;
2200
+ };
2201
+ path?: never;
2202
+ cookie?: never;
2203
+ };
2204
+ requestBody: {
2205
+ content: {
2206
+ "application/json": components["schemas"]["AtlasTextToImageRequest"];
2207
+ };
2208
+ };
2209
+ responses: {
2210
+ /** @description Successful Response */
2211
+ 201: {
2212
+ headers: {
2213
+ [name: string]: unknown;
2214
+ };
2215
+ content: {
2216
+ "application/json": components["schemas"]["AtlasTextToImageResponseOperation"];
2217
+ };
2218
+ };
2219
+ /** @description Validation Error */
2220
+ 422: {
2221
+ headers: {
2222
+ [name: string]: unknown;
2223
+ };
2224
+ content: {
2225
+ "application/json": components["schemas"]["HTTPValidationError"];
2226
+ };
2227
+ };
2228
+ };
2229
+ };
2230
+ submit_images2PosedRGBD_api_v2_tasks_images2PosedRGBD_post: {
2231
+ parameters: {
2232
+ query?: {
2233
+ /** @description Block for the operation to finish before returning, up to the server wait cap. Returns the Operation either way — done with a response if it finished in time, otherwise still running. */
2234
+ wait?: boolean;
2235
+ };
2236
+ header?: {
2237
+ /** @description Optional idempotency key. */
2238
+ "Idempotency-Key"?: string | null;
2239
+ };
2240
+ path?: never;
2241
+ cookie?: never;
2242
+ };
2243
+ requestBody: {
2244
+ content: {
2245
+ "application/json": components["schemas"]["Images2PosedRGBDRequest"];
2246
+ };
2247
+ };
2248
+ responses: {
2249
+ /** @description Successful Response */
2250
+ 201: {
2251
+ headers: {
2252
+ [name: string]: unknown;
2253
+ };
2254
+ content: {
2255
+ "application/json": components["schemas"]["Images2PosedRGBDResponseOperation"];
2256
+ };
2257
+ };
2258
+ /** @description Validation Error */
2259
+ 422: {
2260
+ headers: {
2261
+ [name: string]: unknown;
2262
+ };
2263
+ content: {
2264
+ "application/json": components["schemas"]["HTTPValidationError"];
2265
+ };
2266
+ };
2267
+ };
2268
+ };
2269
+ submit_splats2Mesh_api_v2_tasks_splats2Mesh_post: {
2270
+ parameters: {
2271
+ query?: {
2272
+ /** @description Block for the operation to finish before returning, up to the server wait cap. Returns the Operation either way — done with a response if it finished in time, otherwise still running. */
2273
+ wait?: boolean;
2274
+ };
2275
+ header?: {
2276
+ /** @description Optional idempotency key. */
2277
+ "Idempotency-Key"?: string | null;
2278
+ };
2279
+ path?: never;
2280
+ cookie?: never;
2281
+ };
2282
+ requestBody: {
2283
+ content: {
2284
+ "application/json": components["schemas"]["Splats2MeshRequest"];
2285
+ };
2286
+ };
2287
+ responses: {
2288
+ /** @description Successful Response */
2289
+ 201: {
2290
+ headers: {
2291
+ [name: string]: unknown;
2292
+ };
2293
+ content: {
2294
+ "application/json": components["schemas"]["Splats2MeshResponseOperation"];
2295
+ };
2296
+ };
2297
+ /** @description Validation Error */
2298
+ 422: {
2299
+ headers: {
2300
+ [name: string]: unknown;
2301
+ };
2302
+ content: {
2303
+ "application/json": components["schemas"]["HTTPValidationError"];
2304
+ };
2305
+ };
2306
+ };
2307
+ };
2308
+ list_operations_api_v2_operations_get: {
2309
+ parameters: {
2310
+ query?: {
2311
+ origin?: components["schemas"]["ResourceOrigin"] | null;
2312
+ pageSize?: number;
2313
+ pageToken?: string | null;
2314
+ };
2315
+ header?: never;
2316
+ path?: never;
2317
+ cookie?: never;
2318
+ };
2319
+ requestBody?: never;
2320
+ responses: {
2321
+ /** @description Successful Response */
2322
+ 200: {
2323
+ headers: {
2324
+ [name: string]: unknown;
2325
+ };
2326
+ content: {
2327
+ "application/json": components["schemas"]["ListOperationsResponse"];
2328
+ };
2329
+ };
2330
+ /** @description Validation Error */
2331
+ 422: {
2332
+ headers: {
2333
+ [name: string]: unknown;
2334
+ };
2335
+ content: {
2336
+ "application/json": components["schemas"]["HTTPValidationError"];
2337
+ };
2338
+ };
2339
+ };
2340
+ };
2341
+ get_operation_trace_api_v2_operations__operation__trace_get: {
2342
+ parameters: {
2343
+ query?: never;
2344
+ header?: never;
2345
+ path: {
2346
+ operation: string;
2347
+ };
2348
+ cookie?: never;
2349
+ };
2350
+ requestBody?: never;
2351
+ responses: {
2352
+ /** @description Successful Response */
2353
+ 200: {
2354
+ headers: {
2355
+ [name: string]: unknown;
2356
+ };
2357
+ content: {
2358
+ "application/json": components["schemas"]["OperationTrace"];
2359
+ };
2360
+ };
2361
+ /** @description Validation Error */
2362
+ 422: {
2363
+ headers: {
2364
+ [name: string]: unknown;
2365
+ };
2366
+ content: {
2367
+ "application/json": components["schemas"]["HTTPValidationError"];
2368
+ };
2369
+ };
2370
+ };
2371
+ };
2372
+ wait_operation_api_v2_operations__operation__wait_post: {
2373
+ parameters: {
2374
+ query?: never;
2375
+ header?: never;
2376
+ path: {
2377
+ operation: string;
2378
+ };
2379
+ cookie?: never;
2380
+ };
2381
+ requestBody?: {
2382
+ content: {
2383
+ "application/json": components["schemas"]["WaitOperationRequest"] | null;
2384
+ };
2385
+ };
2386
+ responses: {
2387
+ /** @description Successful Response */
2388
+ 200: {
2389
+ headers: {
2390
+ [name: string]: unknown;
2391
+ };
2392
+ content: {
2393
+ "application/json": components["schemas"]["Operation"];
2394
+ };
2395
+ };
2396
+ /** @description Validation Error */
2397
+ 422: {
2398
+ headers: {
2399
+ [name: string]: unknown;
2400
+ };
2401
+ content: {
2402
+ "application/json": components["schemas"]["HTTPValidationError"];
2403
+ };
2404
+ };
2405
+ };
2406
+ };
2407
+ cancel_operation_api_v2_operations__operation__cancel_post: {
2408
+ parameters: {
2409
+ query?: never;
2410
+ header?: never;
2411
+ path: {
2412
+ operation: string;
2413
+ };
2414
+ cookie?: never;
2415
+ };
2416
+ requestBody?: {
2417
+ content: {
2418
+ "application/json": components["schemas"]["CancelOperationRequest"] | null;
2419
+ };
2420
+ };
2421
+ responses: {
2422
+ /** @description Successful Response */
2423
+ 200: {
2424
+ headers: {
2425
+ [name: string]: unknown;
2426
+ };
2427
+ content: {
2428
+ "application/json": components["schemas"]["Operation"];
2429
+ };
2430
+ };
2431
+ /** @description Validation Error */
2432
+ 422: {
2433
+ headers: {
2434
+ [name: string]: unknown;
2435
+ };
2436
+ content: {
2437
+ "application/json": components["schemas"]["HTTPValidationError"];
2438
+ };
2439
+ };
2440
+ };
2441
+ };
2442
+ get_operation_api_v2_operations__operation__get: {
2443
+ parameters: {
2444
+ query?: {
2445
+ /** @description Block for the operation to finish before returning, up to the server wait cap. */
2446
+ wait?: boolean;
2447
+ };
2448
+ header?: never;
2449
+ path: {
2450
+ operation: string;
2451
+ };
2452
+ cookie?: never;
2453
+ };
2454
+ requestBody?: never;
2455
+ responses: {
2456
+ /** @description Successful Response */
2457
+ 200: {
2458
+ headers: {
2459
+ [name: string]: unknown;
2460
+ };
2461
+ content: {
2462
+ "application/json": components["schemas"]["Operation"];
2463
+ };
2464
+ };
2465
+ /** @description Validation Error */
2466
+ 422: {
2467
+ headers: {
2468
+ [name: string]: unknown;
2469
+ };
2470
+ content: {
2471
+ "application/json": components["schemas"]["HTTPValidationError"];
2472
+ };
2473
+ };
2474
+ };
2475
+ };
2476
+ list_assets_api_v2_assets_get: {
2477
+ parameters: {
2478
+ query?: {
2479
+ origin?: components["schemas"]["ResourceOrigin"] | null;
2480
+ pageSize?: number;
2481
+ pageToken?: string | null;
2482
+ };
2483
+ header?: never;
2484
+ path?: never;
2485
+ cookie?: never;
2486
+ };
2487
+ requestBody?: never;
2488
+ responses: {
2489
+ /** @description Successful Response */
2490
+ 200: {
2491
+ headers: {
2492
+ [name: string]: unknown;
2493
+ };
2494
+ content: {
2495
+ "application/json": components["schemas"]["ListAssetsResponse"];
2496
+ };
2497
+ };
2498
+ /** @description Validation Error */
2499
+ 422: {
2500
+ headers: {
2501
+ [name: string]: unknown;
2502
+ };
2503
+ content: {
2504
+ "application/json": components["schemas"]["HTTPValidationError"];
2505
+ };
2506
+ };
2507
+ };
2508
+ };
2509
+ create_asset_api_v2_assets_post: {
2510
+ parameters: {
2511
+ query?: never;
2512
+ header?: never;
2513
+ path?: never;
2514
+ cookie?: never;
2515
+ };
2516
+ requestBody: {
2517
+ content: {
2518
+ "application/json": components["schemas"]["CreateAssetRequest"];
2519
+ };
2520
+ };
2521
+ responses: {
2522
+ /** @description Successful Response */
2523
+ 201: {
2524
+ headers: {
2525
+ [name: string]: unknown;
2526
+ };
2527
+ content: {
2528
+ "application/json": components["schemas"]["CreateAssetResponse"];
2529
+ };
2530
+ };
2531
+ /** @description Validation Error */
2532
+ 422: {
2533
+ headers: {
2534
+ [name: string]: unknown;
2535
+ };
2536
+ content: {
2537
+ "application/json": components["schemas"]["HTTPValidationError"];
2538
+ };
2539
+ };
2540
+ };
2541
+ };
2542
+ get_asset_api_v2_assets__asset__get: {
2543
+ parameters: {
2544
+ query?: never;
2545
+ header?: never;
2546
+ path: {
2547
+ asset: string;
2548
+ };
2549
+ cookie?: never;
2550
+ };
2551
+ requestBody?: never;
2552
+ responses: {
2553
+ /** @description Successful Response */
2554
+ 200: {
2555
+ headers: {
2556
+ [name: string]: unknown;
2557
+ };
2558
+ content: {
2559
+ "application/json": components["schemas"]["Asset"];
2560
+ };
2561
+ };
2562
+ /** @description Validation Error */
2563
+ 422: {
2564
+ headers: {
2565
+ [name: string]: unknown;
2566
+ };
2567
+ content: {
2568
+ "application/json": components["schemas"]["HTTPValidationError"];
2569
+ };
2570
+ };
2571
+ };
2572
+ };
2573
+ delete_asset_api_v2_assets__asset__delete: {
2574
+ parameters: {
2575
+ query?: never;
2576
+ header?: never;
2577
+ path: {
2578
+ asset: string;
2579
+ };
2580
+ cookie?: never;
2581
+ };
2582
+ requestBody?: never;
2583
+ responses: {
2584
+ /** @description Successful Response */
2585
+ 200: {
2586
+ headers: {
2587
+ [name: string]: unknown;
2588
+ };
2589
+ content: {
2590
+ "application/json": components["schemas"]["Empty"];
2591
+ };
2592
+ };
2593
+ /** @description Validation Error */
2594
+ 422: {
2595
+ headers: {
2596
+ [name: string]: unknown;
2597
+ };
2598
+ content: {
2599
+ "application/json": components["schemas"]["HTTPValidationError"];
2600
+ };
2601
+ };
2602
+ };
2603
+ };
2604
+ create_upload_url_api_v2_assets__asset__createUploadUrl_post: {
2605
+ parameters: {
2606
+ query?: never;
2607
+ header?: never;
2608
+ path: {
2609
+ asset: string;
2610
+ };
2611
+ cookie?: never;
2612
+ };
2613
+ requestBody: {
2614
+ content: {
2615
+ "application/json": components["schemas"]["CreateUploadUrlRequest"];
2616
+ };
2617
+ };
2618
+ responses: {
2619
+ /** @description Successful Response */
2620
+ 200: {
2621
+ headers: {
2622
+ [name: string]: unknown;
2623
+ };
2624
+ content: {
2625
+ "application/json": components["schemas"]["CreateUploadUrlResponse"];
2626
+ };
2627
+ };
2628
+ /** @description Validation Error */
2629
+ 422: {
2630
+ headers: {
2631
+ [name: string]: unknown;
2632
+ };
2633
+ content: {
2634
+ "application/json": components["schemas"]["HTTPValidationError"];
2635
+ };
2636
+ };
2637
+ };
2638
+ };
2639
+ create_read_url_api_v2_assets__asset__createReadUrl_post: {
2640
+ parameters: {
2641
+ query?: never;
2642
+ header?: never;
2643
+ path: {
2644
+ asset: string;
2645
+ };
2646
+ cookie?: never;
2647
+ };
2648
+ requestBody?: never;
2649
+ responses: {
2650
+ /** @description Successful Response */
2651
+ 200: {
2652
+ headers: {
2653
+ [name: string]: unknown;
2654
+ };
2655
+ content: {
2656
+ "application/json": components["schemas"]["CreateReadUrlResponse"];
2657
+ };
2658
+ };
2659
+ /** @description Validation Error */
2660
+ 422: {
2661
+ headers: {
2662
+ [name: string]: unknown;
2663
+ };
2664
+ content: {
2665
+ "application/json": components["schemas"]["HTTPValidationError"];
2666
+ };
2667
+ };
2668
+ };
2669
+ };
2670
+ create_upload_urls_api_v2_assets__asset__createUploadUrls_post: {
2671
+ parameters: {
2672
+ query?: never;
2673
+ header?: never;
2674
+ path: {
2675
+ asset: string;
2676
+ };
2677
+ cookie?: never;
2678
+ };
2679
+ requestBody: {
2680
+ content: {
2681
+ "application/json": components["schemas"]["CreateUploadUrlsRequest"];
2682
+ };
2683
+ };
2684
+ responses: {
2685
+ /** @description Successful Response */
2686
+ 200: {
2687
+ headers: {
2688
+ [name: string]: unknown;
2689
+ };
2690
+ content: {
2691
+ "application/json": components["schemas"]["CreateUploadUrlsResponse"];
2692
+ };
2693
+ };
2694
+ /** @description Validation Error */
2695
+ 422: {
2696
+ headers: {
2697
+ [name: string]: unknown;
2698
+ };
2699
+ content: {
2700
+ "application/json": components["schemas"]["HTTPValidationError"];
2701
+ };
2702
+ };
2703
+ };
2704
+ };
2705
+ complete_upload_api_v2_assets__asset__completeUpload_post: {
2706
+ parameters: {
2707
+ query?: never;
2708
+ header?: never;
2709
+ path: {
2710
+ asset: string;
2711
+ };
2712
+ cookie?: never;
2713
+ };
2714
+ requestBody: {
2715
+ content: {
2716
+ "application/json": components["schemas"]["CompleteUploadRequest"];
2717
+ };
2718
+ };
2719
+ responses: {
2720
+ /** @description Successful Response */
2721
+ 200: {
2722
+ headers: {
2723
+ [name: string]: unknown;
2724
+ };
2725
+ content: {
2726
+ "application/json": components["schemas"]["Asset"];
2727
+ };
2728
+ };
2729
+ /** @description Validation Error */
2730
+ 422: {
2731
+ headers: {
2732
+ [name: string]: unknown;
2733
+ };
2734
+ content: {
2735
+ "application/json": components["schemas"]["HTTPValidationError"];
2736
+ };
2737
+ };
2738
+ };
2739
+ };
2740
+ create_read_prefix_api_v2_assets_createReadPrefix_post: {
2741
+ parameters: {
2742
+ query?: never;
2743
+ header?: never;
2744
+ path?: never;
2745
+ cookie?: never;
2746
+ };
2747
+ requestBody?: never;
2748
+ responses: {
2749
+ /** @description Successful Response */
2750
+ 200: {
2751
+ headers: {
2752
+ [name: string]: unknown;
2753
+ };
2754
+ content: {
2755
+ "application/json": components["schemas"]["CreateReadPrefixResponse"];
2756
+ };
2757
+ };
2758
+ };
2759
+ };
2760
+ }