@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.
- package/LICENSE +202 -0
- package/README.md +109 -0
- package/dist/client.d.ts +34 -0
- package/dist/client.d.ts.map +1 -0
- package/dist/client.js +31 -0
- package/dist/client.js.map +1 -0
- package/dist/core/assets.d.ts +138 -0
- package/dist/core/assets.d.ts.map +1 -0
- package/dist/core/assets.js +104 -0
- package/dist/core/assets.js.map +1 -0
- package/dist/core/index.d.ts +5 -0
- package/dist/core/index.d.ts.map +1 -0
- package/dist/core/index.js +5 -0
- package/dist/core/index.js.map +1 -0
- package/dist/core/operations.d.ts +52 -0
- package/dist/core/operations.d.ts.map +1 -0
- package/dist/core/operations.js +81 -0
- package/dist/core/operations.js.map +1 -0
- package/dist/core/sleep.d.ts +7 -0
- package/dist/core/sleep.d.ts.map +1 -0
- package/dist/core/sleep.js +23 -0
- package/dist/core/sleep.js.map +1 -0
- package/dist/core/tasks.d.ts +27 -0
- package/dist/core/tasks.d.ts.map +1 -0
- package/dist/core/tasks.js +26 -0
- package/dist/core/tasks.js.map +1 -0
- package/dist/core/transport.d.ts +84 -0
- package/dist/core/transport.d.ts.map +1 -0
- package/dist/core/transport.js +171 -0
- package/dist/core/transport.js.map +1 -0
- package/dist/generated/developer-api.gen.d.ts +2760 -0
- package/dist/generated/developer-api.gen.d.ts.map +1 -0
- package/dist/generated/developer-api.gen.js +6 -0
- package/dist/generated/developer-api.gen.js.map +1 -0
- package/dist/generated/tasks.gen.d.ts +153 -0
- package/dist/generated/tasks.gen.d.ts.map +1 -0
- package/dist/generated/tasks.gen.js +80 -0
- package/dist/generated/tasks.gen.js.map +1 -0
- package/dist/index.d.ts +4 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +3 -0
- package/dist/index.js.map +1 -0
- package/examples/posing.ts +62 -0
- package/package.json +49 -0
- package/src/client.ts +55 -0
- package/src/core/assets.ts +162 -0
- package/src/core/index.ts +27 -0
- package/src/core/operations.ts +114 -0
- package/src/core/sleep.ts +22 -0
- package/src/core/tasks.ts +45 -0
- package/src/core/transport.ts +246 -0
- package/src/generated/developer-api.gen.ts +2760 -0
- package/src/generated/tasks.gen.ts +110 -0
- 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
|
+
}
|