@scenario-labs/sdk 3.2.0 → 3.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (516) hide show
  1. package/CHANGELOG.md +27 -0
  2. package/client.d.mts +20 -5
  3. package/client.d.mts.map +1 -1
  4. package/client.d.ts +20 -5
  5. package/client.d.ts.map +1 -1
  6. package/client.js +9 -0
  7. package/client.js.map +1 -1
  8. package/client.mjs +9 -0
  9. package/client.mjs.map +1 -1
  10. package/core/pagination.d.mts +42 -0
  11. package/core/pagination.d.mts.map +1 -1
  12. package/core/pagination.d.ts +42 -0
  13. package/core/pagination.d.ts.map +1 -1
  14. package/core/pagination.js +79 -1
  15. package/core/pagination.js.map +1 -1
  16. package/core/pagination.mjs +75 -0
  17. package/core/pagination.mjs.map +1 -1
  18. package/internal/utils/values.d.mts +6 -0
  19. package/internal/utils/values.d.mts.map +1 -1
  20. package/internal/utils/values.d.ts +6 -0
  21. package/internal/utils/values.d.ts.map +1 -1
  22. package/internal/utils/values.js +11 -0
  23. package/internal/utils/values.js.map +1 -1
  24. package/internal/utils/values.mjs +10 -0
  25. package/internal/utils/values.mjs.map +1 -1
  26. package/lib/generate.js +7 -7
  27. package/lib/generate.js.map +1 -1
  28. package/lib/generate.mjs +7 -7
  29. package/lib/generate.mjs.map +1 -1
  30. package/lib/job.d.mts +1 -1
  31. package/lib/job.d.mts.map +1 -1
  32. package/lib/job.d.ts +1 -1
  33. package/lib/job.d.ts.map +1 -1
  34. package/lib/job.js +5 -6
  35. package/lib/job.js.map +1 -1
  36. package/lib/job.mjs +6 -7
  37. package/lib/job.mjs.map +1 -1
  38. package/lib/models.d.mts.map +1 -1
  39. package/lib/models.d.ts.map +1 -1
  40. package/lib/models.js +7 -5
  41. package/lib/models.js.map +1 -1
  42. package/lib/models.mjs +8 -6
  43. package/lib/models.mjs.map +1 -1
  44. package/lib/query.d.mts +21 -0
  45. package/lib/query.d.mts.map +1 -0
  46. package/lib/query.d.ts +21 -0
  47. package/lib/query.d.ts.map +1 -0
  48. package/lib/query.js +36 -0
  49. package/lib/query.js.map +1 -0
  50. package/lib/query.mjs +33 -0
  51. package/lib/query.mjs.map +1 -0
  52. package/lib/scenario.d.mts +3 -0
  53. package/lib/scenario.d.mts.map +1 -1
  54. package/lib/scenario.d.ts +3 -0
  55. package/lib/scenario.d.ts.map +1 -1
  56. package/lib/scenario.js +6 -0
  57. package/lib/scenario.js.map +1 -1
  58. package/lib/scenario.mjs +6 -0
  59. package/lib/scenario.mjs.map +1 -1
  60. package/lib/scope.d.mts +27 -7
  61. package/lib/scope.d.mts.map +1 -1
  62. package/lib/scope.d.ts +27 -7
  63. package/lib/scope.d.ts.map +1 -1
  64. package/lib/scope.js +40 -7
  65. package/lib/scope.js.map +1 -1
  66. package/lib/scope.mjs +37 -7
  67. package/lib/scope.mjs.map +1 -1
  68. package/lib/upload.d.mts +1 -1
  69. package/lib/upload.d.mts.map +1 -1
  70. package/lib/upload.d.ts +1 -1
  71. package/lib/upload.d.ts.map +1 -1
  72. package/lib/upload.js +6 -7
  73. package/lib/upload.js.map +1 -1
  74. package/lib/upload.mjs +7 -8
  75. package/lib/upload.mjs.map +1 -1
  76. package/lib/workflow.d.mts.map +1 -1
  77. package/lib/workflow.d.ts.map +1 -1
  78. package/lib/workflow.js +8 -6
  79. package/lib/workflow.js.map +1 -1
  80. package/lib/workflow.mjs +9 -7
  81. package/lib/workflow.mjs.map +1 -1
  82. package/lib/workflow_validator.d.mts +5 -0
  83. package/lib/workflow_validator.d.mts.map +1 -1
  84. package/lib/workflow_validator.d.ts +5 -0
  85. package/lib/workflow_validator.d.ts.map +1 -1
  86. package/lib/workflow_validator.js +113 -0
  87. package/lib/workflow_validator.js.map +1 -1
  88. package/lib/workflow_validator.mjs +113 -0
  89. package/lib/workflow_validator.mjs.map +1 -1
  90. package/package.json +1 -1
  91. package/resources/assets/assets.d.mts +130 -31
  92. package/resources/assets/assets.d.mts.map +1 -1
  93. package/resources/assets/assets.d.ts +130 -31
  94. package/resources/assets/assets.d.ts.map +1 -1
  95. package/resources/assets/assets.js +34 -11
  96. package/resources/assets/assets.js.map +1 -1
  97. package/resources/assets/assets.mjs +34 -11
  98. package/resources/assets/assets.mjs.map +1 -1
  99. package/resources/assets/download.d.mts +24 -5
  100. package/resources/assets/download.d.mts.map +1 -1
  101. package/resources/assets/download.d.ts +24 -5
  102. package/resources/assets/download.d.ts.map +1 -1
  103. package/resources/assets/download.js +15 -3
  104. package/resources/assets/download.js.map +1 -1
  105. package/resources/assets/download.mjs +15 -3
  106. package/resources/assets/download.mjs.map +1 -1
  107. package/resources/collections/assets.d.mts.map +1 -1
  108. package/resources/collections/assets.d.ts.map +1 -1
  109. package/resources/collections/assets.js +3 -2
  110. package/resources/collections/assets.js.map +1 -1
  111. package/resources/collections/assets.mjs +3 -2
  112. package/resources/collections/assets.mjs.map +1 -1
  113. package/resources/collections/collections.d.mts.map +1 -1
  114. package/resources/collections/collections.d.ts.map +1 -1
  115. package/resources/collections/collections.js +20 -5
  116. package/resources/collections/collections.js.map +1 -1
  117. package/resources/collections/collections.mjs +20 -5
  118. package/resources/collections/collections.mjs.map +1 -1
  119. package/resources/collections/models.d.mts.map +1 -1
  120. package/resources/collections/models.d.ts.map +1 -1
  121. package/resources/collections/models.js +3 -2
  122. package/resources/collections/models.js.map +1 -1
  123. package/resources/collections/models.mjs +3 -2
  124. package/resources/collections/models.mjs.map +1 -1
  125. package/resources/generate.d.mts +1719 -225
  126. package/resources/generate.d.mts.map +1 -1
  127. package/resources/generate.d.ts +1719 -225
  128. package/resources/generate.d.ts.map +1 -1
  129. package/resources/generate.js +65 -8
  130. package/resources/generate.js.map +1 -1
  131. package/resources/generate.mjs +65 -8
  132. package/resources/generate.mjs.map +1 -1
  133. package/resources/index.d.mts +5 -2
  134. package/resources/index.d.mts.map +1 -1
  135. package/resources/index.d.ts +5 -2
  136. package/resources/index.d.ts.map +1 -1
  137. package/resources/index.js +7 -1
  138. package/resources/index.js.map +1 -1
  139. package/resources/index.mjs +3 -0
  140. package/resources/index.mjs.map +1 -1
  141. package/resources/jobs.d.mts +176 -74
  142. package/resources/jobs.d.mts.map +1 -1
  143. package/resources/jobs.d.ts +176 -74
  144. package/resources/jobs.d.ts.map +1 -1
  145. package/resources/jobs.js +16 -4
  146. package/resources/jobs.js.map +1 -1
  147. package/resources/jobs.mjs +16 -4
  148. package/resources/jobs.mjs.map +1 -1
  149. package/resources/models/description.d.mts +2 -2
  150. package/resources/models/description.d.mts.map +1 -1
  151. package/resources/models/description.d.ts +2 -2
  152. package/resources/models/description.d.ts.map +1 -1
  153. package/resources/models/description.js +6 -2
  154. package/resources/models/description.js.map +1 -1
  155. package/resources/models/description.mjs +6 -2
  156. package/resources/models/description.mjs.map +1 -1
  157. package/resources/models/examples.d.mts +120 -48
  158. package/resources/models/examples.d.mts.map +1 -1
  159. package/resources/models/examples.d.ts +120 -48
  160. package/resources/models/examples.d.ts.map +1 -1
  161. package/resources/models/examples.js +6 -2
  162. package/resources/models/examples.js.map +1 -1
  163. package/resources/models/examples.mjs +6 -2
  164. package/resources/models/examples.mjs.map +1 -1
  165. package/resources/models/index.d.mts +3 -0
  166. package/resources/models/index.d.mts.map +1 -1
  167. package/resources/models/index.d.ts +3 -0
  168. package/resources/models/index.d.ts.map +1 -1
  169. package/resources/models/index.js +7 -1
  170. package/resources/models/index.js.map +1 -1
  171. package/resources/models/index.mjs +3 -0
  172. package/resources/models/index.mjs.map +1 -1
  173. package/resources/models/models.d.mts +215 -77
  174. package/resources/models/models.d.mts.map +1 -1
  175. package/resources/models/models.d.ts +215 -77
  176. package/resources/models/models.d.ts.map +1 -1
  177. package/resources/models/models.js +52 -11
  178. package/resources/models/models.js.map +1 -1
  179. package/resources/models/models.mjs +52 -11
  180. package/resources/models/models.mjs.map +1 -1
  181. package/resources/models/presets.d.mts +1016 -0
  182. package/resources/models/presets.d.mts.map +1 -0
  183. package/resources/models/presets.d.ts +1016 -0
  184. package/resources/models/presets.d.ts.map +1 -0
  185. package/resources/models/presets.js +52 -0
  186. package/resources/models/presets.js.map +1 -0
  187. package/resources/models/presets.mjs +48 -0
  188. package/resources/models/presets.mjs.map +1 -0
  189. package/resources/models/prompt-guide.d.mts +64 -0
  190. package/resources/models/prompt-guide.d.mts.map +1 -0
  191. package/resources/models/prompt-guide.d.ts +64 -0
  192. package/resources/models/prompt-guide.d.ts.map +1 -0
  193. package/resources/models/prompt-guide.js +31 -0
  194. package/resources/models/prompt-guide.js.map +1 -0
  195. package/resources/models/prompt-guide.mjs +27 -0
  196. package/resources/models/prompt-guide.mjs.map +1 -0
  197. package/resources/models/scores.d.mts +278 -0
  198. package/resources/models/scores.d.mts.map +1 -0
  199. package/resources/models/scores.d.ts +278 -0
  200. package/resources/models/scores.d.ts.map +1 -0
  201. package/resources/models/scores.js +29 -0
  202. package/resources/models/scores.js.map +1 -0
  203. package/resources/models/scores.mjs +25 -0
  204. package/resources/models/scores.mjs.map +1 -0
  205. package/resources/models/train.d.mts +108 -45
  206. package/resources/models/train.d.mts.map +1 -1
  207. package/resources/models/train.d.ts +108 -45
  208. package/resources/models/train.d.ts.map +1 -1
  209. package/resources/models/train.js +3 -2
  210. package/resources/models/train.js.map +1 -1
  211. package/resources/models/train.mjs +3 -2
  212. package/resources/models/train.mjs.map +1 -1
  213. package/resources/models/training-images.d.mts.map +1 -1
  214. package/resources/models/training-images.d.ts.map +1 -1
  215. package/resources/models/training-images.js +5 -4
  216. package/resources/models/training-images.js.map +1 -1
  217. package/resources/models/training-images.mjs +5 -4
  218. package/resources/models/training-images.mjs.map +1 -1
  219. package/resources/projects/api-keys.d.mts +54 -0
  220. package/resources/projects/api-keys.d.mts.map +1 -0
  221. package/resources/projects/api-keys.d.ts +54 -0
  222. package/resources/projects/api-keys.d.ts.map +1 -0
  223. package/resources/projects/api-keys.js +23 -0
  224. package/resources/projects/api-keys.js.map +1 -0
  225. package/resources/projects/api-keys.mjs +19 -0
  226. package/resources/projects/api-keys.mjs.map +1 -0
  227. package/resources/projects/brief.d.mts +149 -0
  228. package/resources/projects/brief.d.mts.map +1 -0
  229. package/resources/projects/brief.d.ts +149 -0
  230. package/resources/projects/brief.d.ts.map +1 -0
  231. package/resources/projects/brief.js +28 -0
  232. package/resources/projects/brief.js.map +1 -0
  233. package/resources/projects/brief.mjs +24 -0
  234. package/resources/projects/brief.mjs.map +1 -0
  235. package/resources/projects/index.d.mts +9 -0
  236. package/resources/projects/index.d.mts.map +1 -0
  237. package/resources/projects/index.d.ts +9 -0
  238. package/resources/projects/index.d.ts.map +1 -0
  239. package/resources/projects/index.js +21 -0
  240. package/resources/projects/index.js.map +1 -0
  241. package/resources/projects/index.mjs +10 -0
  242. package/resources/projects/index.mjs.map +1 -0
  243. package/resources/projects/instructions.d.mts +102 -0
  244. package/resources/projects/instructions.d.mts.map +1 -0
  245. package/resources/projects/instructions.d.ts +102 -0
  246. package/resources/projects/instructions.d.ts.map +1 -0
  247. package/resources/projects/instructions.js +24 -0
  248. package/resources/projects/instructions.js.map +1 -0
  249. package/resources/projects/instructions.mjs +20 -0
  250. package/resources/projects/instructions.mjs.map +1 -0
  251. package/resources/projects/members.d.mts +788 -0
  252. package/resources/projects/members.d.mts.map +1 -0
  253. package/resources/projects/members.d.ts +788 -0
  254. package/resources/projects/members.d.ts.map +1 -0
  255. package/resources/projects/members.js +30 -0
  256. package/resources/projects/members.js.map +1 -0
  257. package/resources/projects/members.mjs +26 -0
  258. package/resources/projects/members.mjs.map +1 -0
  259. package/resources/projects/memory.d.mts +102 -0
  260. package/resources/projects/memory.d.mts.map +1 -0
  261. package/resources/projects/memory.d.ts +102 -0
  262. package/resources/projects/memory.d.ts.map +1 -0
  263. package/resources/projects/memory.js +24 -0
  264. package/resources/projects/memory.js.map +1 -0
  265. package/resources/projects/memory.mjs +20 -0
  266. package/resources/projects/memory.mjs.map +1 -0
  267. package/resources/projects/projects.d.mts +1129 -0
  268. package/resources/projects/projects.d.mts.map +1 -0
  269. package/resources/projects/projects.d.ts +1129 -0
  270. package/resources/projects/projects.d.ts.map +1 -0
  271. package/resources/projects/projects.js +79 -0
  272. package/resources/projects/projects.js.map +1 -0
  273. package/resources/projects/projects.mjs +74 -0
  274. package/resources/projects/projects.mjs.map +1 -0
  275. package/resources/projects/watermark.d.mts +459 -0
  276. package/resources/projects/watermark.d.mts.map +1 -0
  277. package/resources/projects/watermark.d.ts +459 -0
  278. package/resources/projects/watermark.d.ts.map +1 -0
  279. package/resources/projects/watermark.js +46 -0
  280. package/resources/projects/watermark.js.map +1 -0
  281. package/resources/projects/watermark.mjs +42 -0
  282. package/resources/projects/watermark.mjs.map +1 -0
  283. package/resources/projects/webhook-endpoints/events.d.mts +87 -0
  284. package/resources/projects/webhook-endpoints/events.d.mts.map +1 -0
  285. package/resources/projects/webhook-endpoints/events.d.ts +87 -0
  286. package/resources/projects/webhook-endpoints/events.d.ts.map +1 -0
  287. package/resources/projects/webhook-endpoints/events.js +28 -0
  288. package/resources/projects/webhook-endpoints/events.js.map +1 -0
  289. package/resources/projects/webhook-endpoints/events.mjs +24 -0
  290. package/resources/projects/webhook-endpoints/events.mjs.map +1 -0
  291. package/resources/projects/webhook-endpoints/index.d.mts +3 -0
  292. package/resources/projects/webhook-endpoints/index.d.mts.map +1 -0
  293. package/resources/projects/webhook-endpoints/index.d.ts +3 -0
  294. package/resources/projects/webhook-endpoints/index.d.ts.map +1 -0
  295. package/resources/projects/webhook-endpoints/index.js +9 -0
  296. package/resources/projects/webhook-endpoints/index.js.map +1 -0
  297. package/resources/projects/webhook-endpoints/index.mjs +4 -0
  298. package/resources/projects/webhook-endpoints/index.mjs.map +1 -0
  299. package/resources/projects/webhook-endpoints/webhook-endpoints.d.mts +249 -0
  300. package/resources/projects/webhook-endpoints/webhook-endpoints.d.mts.map +1 -0
  301. package/resources/projects/webhook-endpoints/webhook-endpoints.d.ts +249 -0
  302. package/resources/projects/webhook-endpoints/webhook-endpoints.d.ts.map +1 -0
  303. package/resources/projects/webhook-endpoints/webhook-endpoints.js +44 -0
  304. package/resources/projects/webhook-endpoints/webhook-endpoints.js.map +1 -0
  305. package/resources/projects/webhook-endpoints/webhook-endpoints.mjs +39 -0
  306. package/resources/projects/webhook-endpoints/webhook-endpoints.mjs.map +1 -0
  307. package/resources/projects/webhook-endpoints.d.mts +2 -0
  308. package/resources/projects/webhook-endpoints.d.mts.map +1 -0
  309. package/resources/projects/webhook-endpoints.d.ts +2 -0
  310. package/resources/projects/webhook-endpoints.d.ts.map +1 -0
  311. package/resources/projects/webhook-endpoints.js +6 -0
  312. package/resources/projects/webhook-endpoints.js.map +1 -0
  313. package/resources/projects/webhook-endpoints.mjs +3 -0
  314. package/resources/projects/webhook-endpoints.mjs.map +1 -0
  315. package/resources/projects.d.mts +2 -0
  316. package/resources/projects.d.mts.map +1 -0
  317. package/resources/projects.d.ts +2 -0
  318. package/resources/projects.d.ts.map +1 -0
  319. package/resources/projects.js +6 -0
  320. package/resources/projects.js.map +1 -0
  321. package/resources/projects.mjs +3 -0
  322. package/resources/projects.mjs.map +1 -0
  323. package/resources/recommendations.d.mts +1107 -0
  324. package/resources/recommendations.d.mts.map +1 -0
  325. package/resources/recommendations.d.ts +1107 -0
  326. package/resources/recommendations.d.ts.map +1 -0
  327. package/resources/recommendations.js +17 -0
  328. package/resources/recommendations.js.map +1 -0
  329. package/resources/recommendations.mjs +13 -0
  330. package/resources/recommendations.mjs.map +1 -0
  331. package/resources/search.d.mts.map +1 -1
  332. package/resources/search.d.ts.map +1 -1
  333. package/resources/search.js +4 -3
  334. package/resources/search.js.map +1 -1
  335. package/resources/search.mjs +4 -3
  336. package/resources/search.mjs.map +1 -1
  337. package/resources/tags.d.mts.map +1 -1
  338. package/resources/tags.d.ts.map +1 -1
  339. package/resources/tags.js +5 -1
  340. package/resources/tags.js.map +1 -1
  341. package/resources/tags.mjs +5 -1
  342. package/resources/tags.mjs.map +1 -1
  343. package/resources/teams/brief.d.mts +149 -0
  344. package/resources/teams/brief.d.mts.map +1 -0
  345. package/resources/teams/brief.d.ts +149 -0
  346. package/resources/teams/brief.d.ts.map +1 -0
  347. package/resources/teams/brief.js +28 -0
  348. package/resources/teams/brief.js.map +1 -0
  349. package/resources/teams/brief.mjs +24 -0
  350. package/resources/teams/brief.mjs.map +1 -0
  351. package/resources/teams/index.d.mts +7 -0
  352. package/resources/teams/index.d.mts.map +1 -0
  353. package/resources/teams/index.d.ts +7 -0
  354. package/resources/teams/index.d.ts.map +1 -0
  355. package/resources/teams/index.js +17 -0
  356. package/resources/teams/index.js.map +1 -0
  357. package/resources/teams/index.mjs +8 -0
  358. package/resources/teams/index.mjs.map +1 -0
  359. package/resources/teams/ip-filters.d.mts +115 -0
  360. package/resources/teams/ip-filters.d.mts.map +1 -0
  361. package/resources/teams/ip-filters.d.ts +115 -0
  362. package/resources/teams/ip-filters.d.ts.map +1 -0
  363. package/resources/teams/ip-filters.js +45 -0
  364. package/resources/teams/ip-filters.js.map +1 -0
  365. package/resources/teams/ip-filters.mjs +41 -0
  366. package/resources/teams/ip-filters.mjs.map +1 -0
  367. package/resources/teams/members.d.mts +204 -0
  368. package/resources/teams/members.d.mts.map +1 -0
  369. package/resources/teams/members.d.ts +204 -0
  370. package/resources/teams/members.d.ts.map +1 -0
  371. package/resources/teams/members.js +30 -0
  372. package/resources/teams/members.js.map +1 -0
  373. package/resources/teams/members.mjs +26 -0
  374. package/resources/teams/members.mjs.map +1 -0
  375. package/resources/teams/teams.d.mts +878 -0
  376. package/resources/teams/teams.d.mts.map +1 -0
  377. package/resources/teams/teams.d.ts +878 -0
  378. package/resources/teams/teams.d.ts.map +1 -0
  379. package/resources/teams/teams.js +66 -0
  380. package/resources/teams/teams.js.map +1 -0
  381. package/resources/teams/teams.mjs +61 -0
  382. package/resources/teams/teams.mjs.map +1 -0
  383. package/resources/teams/watermark.d.mts +459 -0
  384. package/resources/teams/watermark.d.mts.map +1 -0
  385. package/resources/teams/watermark.d.ts +459 -0
  386. package/resources/teams/watermark.d.ts.map +1 -0
  387. package/resources/teams/watermark.js +46 -0
  388. package/resources/teams/watermark.js.map +1 -0
  389. package/resources/teams/watermark.mjs +42 -0
  390. package/resources/teams/watermark.mjs.map +1 -0
  391. package/resources/teams/webhook-endpoints/events.d.mts +87 -0
  392. package/resources/teams/webhook-endpoints/events.d.mts.map +1 -0
  393. package/resources/teams/webhook-endpoints/events.d.ts +87 -0
  394. package/resources/teams/webhook-endpoints/events.d.ts.map +1 -0
  395. package/resources/teams/webhook-endpoints/events.js +28 -0
  396. package/resources/teams/webhook-endpoints/events.js.map +1 -0
  397. package/resources/teams/webhook-endpoints/events.mjs +24 -0
  398. package/resources/teams/webhook-endpoints/events.mjs.map +1 -0
  399. package/resources/teams/webhook-endpoints/index.d.mts +3 -0
  400. package/resources/teams/webhook-endpoints/index.d.mts.map +1 -0
  401. package/resources/teams/webhook-endpoints/index.d.ts +3 -0
  402. package/resources/teams/webhook-endpoints/index.d.ts.map +1 -0
  403. package/resources/teams/webhook-endpoints/index.js +9 -0
  404. package/resources/teams/webhook-endpoints/index.js.map +1 -0
  405. package/resources/teams/webhook-endpoints/index.mjs +4 -0
  406. package/resources/teams/webhook-endpoints/index.mjs.map +1 -0
  407. package/resources/teams/webhook-endpoints/webhook-endpoints.d.mts +250 -0
  408. package/resources/teams/webhook-endpoints/webhook-endpoints.d.mts.map +1 -0
  409. package/resources/teams/webhook-endpoints/webhook-endpoints.d.ts +250 -0
  410. package/resources/teams/webhook-endpoints/webhook-endpoints.d.ts.map +1 -0
  411. package/resources/teams/webhook-endpoints/webhook-endpoints.js +45 -0
  412. package/resources/teams/webhook-endpoints/webhook-endpoints.js.map +1 -0
  413. package/resources/teams/webhook-endpoints/webhook-endpoints.mjs +40 -0
  414. package/resources/teams/webhook-endpoints/webhook-endpoints.mjs.map +1 -0
  415. package/resources/teams/webhook-endpoints.d.mts +2 -0
  416. package/resources/teams/webhook-endpoints.d.mts.map +1 -0
  417. package/resources/teams/webhook-endpoints.d.ts +2 -0
  418. package/resources/teams/webhook-endpoints.d.ts.map +1 -0
  419. package/resources/teams/webhook-endpoints.js +6 -0
  420. package/resources/teams/webhook-endpoints.js.map +1 -0
  421. package/resources/teams/webhook-endpoints.mjs +3 -0
  422. package/resources/teams/webhook-endpoints.mjs.map +1 -0
  423. package/resources/teams.d.mts +2 -0
  424. package/resources/teams.d.mts.map +1 -0
  425. package/resources/teams.d.ts +2 -0
  426. package/resources/teams.d.ts.map +1 -0
  427. package/resources/teams.js +6 -0
  428. package/resources/teams.js.map +1 -0
  429. package/resources/teams.mjs +3 -0
  430. package/resources/teams.mjs.map +1 -0
  431. package/resources/uploads.d.mts.map +1 -1
  432. package/resources/uploads.d.ts.map +1 -1
  433. package/resources/uploads.js +15 -3
  434. package/resources/uploads.js.map +1 -1
  435. package/resources/uploads.mjs +15 -3
  436. package/resources/uploads.mjs.map +1 -1
  437. package/resources/usages.d.mts +51 -24
  438. package/resources/usages.d.mts.map +1 -1
  439. package/resources/usages.d.ts +51 -24
  440. package/resources/usages.d.ts.map +1 -1
  441. package/resources/usages.js +2 -1
  442. package/resources/usages.js.map +1 -1
  443. package/resources/usages.mjs +2 -1
  444. package/resources/usages.mjs.map +1 -1
  445. package/resources/workflows.d.mts +1381 -280
  446. package/resources/workflows.d.mts.map +1 -1
  447. package/resources/workflows.d.ts +1381 -280
  448. package/resources/workflows.d.ts.map +1 -1
  449. package/resources/workflows.js +39 -8
  450. package/resources/workflows.js.map +1 -1
  451. package/resources/workflows.mjs +39 -8
  452. package/resources/workflows.mjs.map +1 -1
  453. package/src/client.ts +101 -0
  454. package/src/core/pagination.ts +144 -0
  455. package/src/internal/utils/values.ts +10 -0
  456. package/src/lib/generate.ts +7 -7
  457. package/src/lib/job.ts +9 -7
  458. package/src/lib/models.ts +8 -6
  459. package/src/lib/query.ts +42 -0
  460. package/src/lib/scenario.ts +8 -0
  461. package/src/lib/scope.ts +42 -7
  462. package/src/lib/upload.ts +10 -8
  463. package/src/lib/workflow.ts +9 -7
  464. package/src/lib/workflow_validator.ts +115 -0
  465. package/src/resources/assets/assets.ts +192 -33
  466. package/src/resources/assets/download.ts +43 -8
  467. package/src/resources/collections/assets.ts +3 -2
  468. package/src/resources/collections/collections.ts +20 -5
  469. package/src/resources/collections/models.ts +3 -2
  470. package/src/resources/generate.ts +2350 -186
  471. package/src/resources/index.ts +34 -0
  472. package/src/resources/jobs.ts +204 -74
  473. package/src/resources/models/description.ts +10 -2
  474. package/src/resources/models/examples.ts +140 -46
  475. package/src/resources/models/index.ts +25 -0
  476. package/src/resources/models/models.ts +326 -88
  477. package/src/resources/models/presets.ts +1335 -0
  478. package/src/resources/models/prompt-guide.ts +102 -0
  479. package/src/resources/models/scores.ts +383 -0
  480. package/src/resources/models/train.ts +121 -46
  481. package/src/resources/models/training-images.ts +5 -4
  482. package/src/resources/projects/api-keys.ts +86 -0
  483. package/src/resources/projects/brief.ts +197 -0
  484. package/src/resources/projects/index.ts +71 -0
  485. package/src/resources/projects/instructions.ts +134 -0
  486. package/src/resources/projects/members.ts +958 -0
  487. package/src/resources/projects/memory.ts +134 -0
  488. package/src/resources/projects/projects.ts +1478 -0
  489. package/src/resources/projects/watermark.ts +590 -0
  490. package/src/resources/projects/webhook-endpoints/events.ts +179 -0
  491. package/src/resources/projects/webhook-endpoints/index.ts +19 -0
  492. package/src/resources/projects/webhook-endpoints/webhook-endpoints.ts +452 -0
  493. package/src/resources/projects/webhook-endpoints.ts +3 -0
  494. package/src/resources/projects.ts +3 -0
  495. package/src/resources/recommendations.ts +1502 -0
  496. package/src/resources/search.ts +4 -3
  497. package/src/resources/tags.ts +5 -1
  498. package/src/resources/teams/brief.ts +193 -0
  499. package/src/resources/teams/index.ts +62 -0
  500. package/src/resources/teams/ip-filters.ts +177 -0
  501. package/src/resources/teams/members.ts +282 -0
  502. package/src/resources/teams/teams.ts +1255 -0
  503. package/src/resources/teams/watermark.ts +590 -0
  504. package/src/resources/teams/webhook-endpoints/events.ts +179 -0
  505. package/src/resources/teams/webhook-endpoints/index.ts +19 -0
  506. package/src/resources/teams/webhook-endpoints/webhook-endpoints.ts +453 -0
  507. package/src/resources/teams/webhook-endpoints.ts +3 -0
  508. package/src/resources/teams.ts +3 -0
  509. package/src/resources/uploads.ts +15 -3
  510. package/src/resources/usages.ts +58 -23
  511. package/src/resources/workflows.ts +1707 -241
  512. package/src/version.ts +1 -1
  513. package/version.d.mts +1 -1
  514. package/version.d.ts +1 -1
  515. package/version.js +1 -1
  516. package/version.mjs +1 -1
@@ -19,6 +19,20 @@ export declare class Generate extends APIResource {
19
19
  * Get embeddings from text
20
20
  */
21
21
  embed(params: GenerateEmbedParams, options?: RequestOptions): APIPromise<GenerateEmbedResponse>;
22
+ /**
23
+ * Check prompts and/or existing assets against the team's enabled IP-detection
24
+ * filters, without generating anything. Advisory only: the call never blocks and
25
+ * nothing is stored. The payload is analyzed as ONE input set, so the answer is a
26
+ * single merged verdict — call the route once per item to know which item trips a
27
+ * filter. Videos are analyzed through their extracted frames; audio and 3d assets
28
+ * are returned in `skippedAssetIds` and are never checked. Available on the
29
+ * Enterprise plan only; a team with no enabled filter gets `evaluatedFilters: 0`
30
+ * and is charged nothing. Billed on the provider tokens the check sends — the
31
+ * prompt plus every analyzed image, once per enabled filter — with a 1 CU minimum,
32
+ * reported under `ipDetection.creativeUnitsCharged` and surfaced in
33
+ * `GET /v1/usages` as `ip-detection`.
34
+ */
35
+ ipDetection(params: GenerateIPDetectionParams, options?: RequestOptions): APIPromise<GenerateIPDetectionResponse>;
22
36
  /**
23
37
  * Patch an asset with an image.
24
38
  */
@@ -27,6 +41,14 @@ export declare class Generate extends APIResource {
27
41
  * Generate, complete or invent new prompts.
28
42
  */
29
43
  prompt(params: GeneratePromptParams, options?: RequestOptions): APIPromise<GeneratePromptResponse>;
44
+ /**
45
+ * Verify an image against the applicable brand/style/campaign briefs and generic
46
+ * AI-quality checks; returns a combined score, verdict, reasons, and suggested
47
+ * fixes. The verdict is stored on the asset: pass an asset id to re-score it in
48
+ * place (for example after the brief changed), or a data URL to upload the image
49
+ * as an asset (deduplicated on content) and score it.
50
+ */
51
+ qualityGate(params: GenerateQualityGateParams, options?: RequestOptions): APIPromise<GenerateQualityGateResponse>;
30
52
  /**
31
53
  * Generate with any model (Image, Video, Audio, 3d, Text).
32
54
  *
@@ -180,7 +202,7 @@ export declare namespace GenerateCaptionResponse {
180
202
  /**
181
203
  * The type of the job for the node.
182
204
  */
183
- type: 'custom-model' | 'for-each' | 'generate-prompt' | 'list' | 'logic' | 'model' | 'remove-background' | 'transform' | 'user-approval' | 'workflow';
205
+ type: 'custom-model' | 'for-each' | 'generate-prompt' | 'list' | 'logic' | 'model' | 'remove-background' | 'transform' | 'user-approval' | 'user-selection' | 'workflow';
184
206
  /**
185
207
  * List of produced assets for this node.
186
208
  */
@@ -205,13 +227,14 @@ export declare namespace GenerateCaptionResponse {
205
227
  */
206
228
  includeOutputsInWorkflowJob?: true;
207
229
  /**
208
- * The inputs of the node.
230
+ * The inputs of the node. For a user-selection node, the array input's `min`/`max`
231
+ * bound how many items the user may pick (defaults: 1 and 100); conditional
232
+ * connections may be present as additional inputs.
209
233
  */
210
234
  inputs?: Array<Flow.Input>;
211
235
  /**
212
- * Statically-configured items for a List node. The node outputs this array as-is
213
- * when executed. Only available for List nodes. The values can be strings,
214
- * numbers, or asset IDs.
236
+ * Statically-configured items for a List node, or the frozen candidate list of a
237
+ * UserSelection node. The values can be strings, numbers, or asset IDs.
215
238
  */
216
239
  items?: Array<string>;
217
240
  /**
@@ -412,8 +435,7 @@ export declare namespace GenerateCaptionResponse {
412
435
  * - \`ifNotDefined\`: Input is required when another specified input is not
413
436
  * defined
414
437
  * - \`ifDefined\`: Input is required when another specified input is defined
415
- * - \`conditionalValues\`: Input is required when another input has a specific
416
- * value
438
+ * - \`conditional\`: Input is required when other inputs have specific values
417
439
  *
418
440
  * By default, the input is not required.
419
441
  */
@@ -574,8 +596,7 @@ export declare namespace GenerateCaptionResponse {
574
596
  * - \`ifNotDefined\`: Input is required when another specified input is not
575
597
  * defined
576
598
  * - \`ifDefined\`: Input is required when another specified input is defined
577
- * - \`conditionalValues\`: Input is required when another input has a specific
578
- * value
599
+ * - \`conditional\`: Input is required when other inputs have specific values
579
600
  *
580
601
  * By default, the input is not required.
581
602
  */
@@ -625,8 +646,7 @@ export declare namespace GenerateCaptionResponse {
625
646
  * - \`ifNotDefined\`: Input is required when another specified input is not
626
647
  * defined
627
648
  * - \`ifDefined\`: Input is required when another specified input is defined
628
- * - \`conditionalValues\`: Input is required when another input has a specific
629
- * value
649
+ * - \`conditional\`: Input is required when other inputs have specific values
630
650
  *
631
651
  * By default, the input is not required.
632
652
  */
@@ -636,12 +656,9 @@ export declare namespace GenerateCaptionResponse {
636
656
  */
637
657
  always?: boolean;
638
658
  /**
639
- * Makes this input required when another input has a specific value:
640
- *
641
- * - Key: name of the input to check
642
- * - Value: operation and allowed values that trigger the requirement
659
+ * Makes this input required when other inputs have one of the listed values
643
660
  */
644
- conditionalValues?: unknown;
661
+ conditional?: Required.Conditional;
645
662
  /**
646
663
  * Makes this input required when another input is defined:
647
664
  *
@@ -657,6 +674,24 @@ export declare namespace GenerateCaptionResponse {
657
674
  */
658
675
  ifNotDefined?: unknown;
659
676
  }
677
+ namespace Required {
678
+ /**
679
+ * Makes this input required when other inputs have one of the listed values
680
+ */
681
+ interface Conditional {
682
+ /**
683
+ * The conditions to check:
684
+ *
685
+ * - Key: name of the input to check
686
+ * - Value: values of that input that satisfy the condition
687
+ */
688
+ values: unknown;
689
+ /**
690
+ * How the conditions combine: \`and\` (all must match) or \`or\` (any must match)
691
+ */
692
+ operator?: 'and' | 'or';
693
+ }
694
+ }
660
695
  }
661
696
  /**
662
697
  * The reference to another input or output of the same workflow. Must have at
@@ -692,8 +727,7 @@ export declare namespace GenerateCaptionResponse {
692
727
  * - \`ifNotDefined\`: Input is required when another specified input is not
693
728
  * defined
694
729
  * - \`ifDefined\`: Input is required when another specified input is defined
695
- * - \`conditionalValues\`: Input is required when another input has a specific
696
- * value
730
+ * - \`conditional\`: Input is required when other inputs have specific values
697
731
  *
698
732
  * By default, the input is not required.
699
733
  */
@@ -703,12 +737,9 @@ export declare namespace GenerateCaptionResponse {
703
737
  */
704
738
  always?: boolean;
705
739
  /**
706
- * Makes this input required when another input has a specific value:
707
- *
708
- * - Key: name of the input to check
709
- * - Value: operation and allowed values that trigger the requirement
740
+ * Makes this input required when other inputs have one of the listed values
710
741
  */
711
- conditionalValues?: unknown;
742
+ conditional?: Required.Conditional;
712
743
  /**
713
744
  * Makes this input required when another input is defined:
714
745
  *
@@ -724,6 +755,24 @@ export declare namespace GenerateCaptionResponse {
724
755
  */
725
756
  ifNotDefined?: unknown;
726
757
  }
758
+ namespace Required {
759
+ /**
760
+ * Makes this input required when other inputs have one of the listed values
761
+ */
762
+ interface Conditional {
763
+ /**
764
+ * The conditions to check:
765
+ *
766
+ * - Key: name of the input to check
767
+ * - Value: values of that input that satisfy the condition
768
+ */
769
+ values: unknown;
770
+ /**
771
+ * How the conditions combine: \`and\` (all must match) or \`or\` (any must match)
772
+ */
773
+ operator?: 'and' | 'or';
774
+ }
775
+ }
727
776
  }
728
777
  /**
729
778
  * The logic of the node. Only available for logic nodes.
@@ -1058,7 +1107,7 @@ export declare namespace GenerateDescribeStyleResponse {
1058
1107
  /**
1059
1108
  * The type of the job for the node.
1060
1109
  */
1061
- type: 'custom-model' | 'for-each' | 'generate-prompt' | 'list' | 'logic' | 'model' | 'remove-background' | 'transform' | 'user-approval' | 'workflow';
1110
+ type: 'custom-model' | 'for-each' | 'generate-prompt' | 'list' | 'logic' | 'model' | 'remove-background' | 'transform' | 'user-approval' | 'user-selection' | 'workflow';
1062
1111
  /**
1063
1112
  * List of produced assets for this node.
1064
1113
  */
@@ -1083,13 +1132,14 @@ export declare namespace GenerateDescribeStyleResponse {
1083
1132
  */
1084
1133
  includeOutputsInWorkflowJob?: true;
1085
1134
  /**
1086
- * The inputs of the node.
1135
+ * The inputs of the node. For a user-selection node, the array input's `min`/`max`
1136
+ * bound how many items the user may pick (defaults: 1 and 100); conditional
1137
+ * connections may be present as additional inputs.
1087
1138
  */
1088
1139
  inputs?: Array<Flow.Input>;
1089
1140
  /**
1090
- * Statically-configured items for a List node. The node outputs this array as-is
1091
- * when executed. Only available for List nodes. The values can be strings,
1092
- * numbers, or asset IDs.
1141
+ * Statically-configured items for a List node, or the frozen candidate list of a
1142
+ * UserSelection node. The values can be strings, numbers, or asset IDs.
1093
1143
  */
1094
1144
  items?: Array<string>;
1095
1145
  /**
@@ -1290,8 +1340,7 @@ export declare namespace GenerateDescribeStyleResponse {
1290
1340
  * - \`ifNotDefined\`: Input is required when another specified input is not
1291
1341
  * defined
1292
1342
  * - \`ifDefined\`: Input is required when another specified input is defined
1293
- * - \`conditionalValues\`: Input is required when another input has a specific
1294
- * value
1343
+ * - \`conditional\`: Input is required when other inputs have specific values
1295
1344
  *
1296
1345
  * By default, the input is not required.
1297
1346
  */
@@ -1452,8 +1501,7 @@ export declare namespace GenerateDescribeStyleResponse {
1452
1501
  * - \`ifNotDefined\`: Input is required when another specified input is not
1453
1502
  * defined
1454
1503
  * - \`ifDefined\`: Input is required when another specified input is defined
1455
- * - \`conditionalValues\`: Input is required when another input has a specific
1456
- * value
1504
+ * - \`conditional\`: Input is required when other inputs have specific values
1457
1505
  *
1458
1506
  * By default, the input is not required.
1459
1507
  */
@@ -1503,8 +1551,7 @@ export declare namespace GenerateDescribeStyleResponse {
1503
1551
  * - \`ifNotDefined\`: Input is required when another specified input is not
1504
1552
  * defined
1505
1553
  * - \`ifDefined\`: Input is required when another specified input is defined
1506
- * - \`conditionalValues\`: Input is required when another input has a specific
1507
- * value
1554
+ * - \`conditional\`: Input is required when other inputs have specific values
1508
1555
  *
1509
1556
  * By default, the input is not required.
1510
1557
  */
@@ -1514,12 +1561,9 @@ export declare namespace GenerateDescribeStyleResponse {
1514
1561
  */
1515
1562
  always?: boolean;
1516
1563
  /**
1517
- * Makes this input required when another input has a specific value:
1518
- *
1519
- * - Key: name of the input to check
1520
- * - Value: operation and allowed values that trigger the requirement
1564
+ * Makes this input required when other inputs have one of the listed values
1521
1565
  */
1522
- conditionalValues?: unknown;
1566
+ conditional?: Required.Conditional;
1523
1567
  /**
1524
1568
  * Makes this input required when another input is defined:
1525
1569
  *
@@ -1535,6 +1579,24 @@ export declare namespace GenerateDescribeStyleResponse {
1535
1579
  */
1536
1580
  ifNotDefined?: unknown;
1537
1581
  }
1582
+ namespace Required {
1583
+ /**
1584
+ * Makes this input required when other inputs have one of the listed values
1585
+ */
1586
+ interface Conditional {
1587
+ /**
1588
+ * The conditions to check:
1589
+ *
1590
+ * - Key: name of the input to check
1591
+ * - Value: values of that input that satisfy the condition
1592
+ */
1593
+ values: unknown;
1594
+ /**
1595
+ * How the conditions combine: \`and\` (all must match) or \`or\` (any must match)
1596
+ */
1597
+ operator?: 'and' | 'or';
1598
+ }
1599
+ }
1538
1600
  }
1539
1601
  /**
1540
1602
  * The reference to another input or output of the same workflow. Must have at
@@ -1570,8 +1632,7 @@ export declare namespace GenerateDescribeStyleResponse {
1570
1632
  * - \`ifNotDefined\`: Input is required when another specified input is not
1571
1633
  * defined
1572
1634
  * - \`ifDefined\`: Input is required when another specified input is defined
1573
- * - \`conditionalValues\`: Input is required when another input has a specific
1574
- * value
1635
+ * - \`conditional\`: Input is required when other inputs have specific values
1575
1636
  *
1576
1637
  * By default, the input is not required.
1577
1638
  */
@@ -1581,12 +1642,9 @@ export declare namespace GenerateDescribeStyleResponse {
1581
1642
  */
1582
1643
  always?: boolean;
1583
1644
  /**
1584
- * Makes this input required when another input has a specific value:
1585
- *
1586
- * - Key: name of the input to check
1587
- * - Value: operation and allowed values that trigger the requirement
1645
+ * Makes this input required when other inputs have one of the listed values
1588
1646
  */
1589
- conditionalValues?: unknown;
1647
+ conditional?: Required.Conditional;
1590
1648
  /**
1591
1649
  * Makes this input required when another input is defined:
1592
1650
  *
@@ -1602,6 +1660,24 @@ export declare namespace GenerateDescribeStyleResponse {
1602
1660
  */
1603
1661
  ifNotDefined?: unknown;
1604
1662
  }
1663
+ namespace Required {
1664
+ /**
1665
+ * Makes this input required when other inputs have one of the listed values
1666
+ */
1667
+ interface Conditional {
1668
+ /**
1669
+ * The conditions to check:
1670
+ *
1671
+ * - Key: name of the input to check
1672
+ * - Value: values of that input that satisfy the condition
1673
+ */
1674
+ values: unknown;
1675
+ /**
1676
+ * How the conditions combine: \`and\` (all must match) or \`or\` (any must match)
1677
+ */
1678
+ operator?: 'and' | 'or';
1679
+ }
1680
+ }
1605
1681
  }
1606
1682
  /**
1607
1683
  * The logic of the node. Only available for logic nodes.
@@ -1929,7 +2005,7 @@ export declare namespace GenerateDetectResponse {
1929
2005
  /**
1930
2006
  * The type of the job for the node.
1931
2007
  */
1932
- type: 'custom-model' | 'for-each' | 'generate-prompt' | 'list' | 'logic' | 'model' | 'remove-background' | 'transform' | 'user-approval' | 'workflow';
2008
+ type: 'custom-model' | 'for-each' | 'generate-prompt' | 'list' | 'logic' | 'model' | 'remove-background' | 'transform' | 'user-approval' | 'user-selection' | 'workflow';
1933
2009
  /**
1934
2010
  * List of produced assets for this node.
1935
2011
  */
@@ -1954,13 +2030,14 @@ export declare namespace GenerateDetectResponse {
1954
2030
  */
1955
2031
  includeOutputsInWorkflowJob?: true;
1956
2032
  /**
1957
- * The inputs of the node.
2033
+ * The inputs of the node. For a user-selection node, the array input's `min`/`max`
2034
+ * bound how many items the user may pick (defaults: 1 and 100); conditional
2035
+ * connections may be present as additional inputs.
1958
2036
  */
1959
2037
  inputs?: Array<Flow.Input>;
1960
2038
  /**
1961
- * Statically-configured items for a List node. The node outputs this array as-is
1962
- * when executed. Only available for List nodes. The values can be strings,
1963
- * numbers, or asset IDs.
2039
+ * Statically-configured items for a List node, or the frozen candidate list of a
2040
+ * UserSelection node. The values can be strings, numbers, or asset IDs.
1964
2041
  */
1965
2042
  items?: Array<string>;
1966
2043
  /**
@@ -2161,8 +2238,7 @@ export declare namespace GenerateDetectResponse {
2161
2238
  * - \`ifNotDefined\`: Input is required when another specified input is not
2162
2239
  * defined
2163
2240
  * - \`ifDefined\`: Input is required when another specified input is defined
2164
- * - \`conditionalValues\`: Input is required when another input has a specific
2165
- * value
2241
+ * - \`conditional\`: Input is required when other inputs have specific values
2166
2242
  *
2167
2243
  * By default, the input is not required.
2168
2244
  */
@@ -2323,8 +2399,7 @@ export declare namespace GenerateDetectResponse {
2323
2399
  * - \`ifNotDefined\`: Input is required when another specified input is not
2324
2400
  * defined
2325
2401
  * - \`ifDefined\`: Input is required when another specified input is defined
2326
- * - \`conditionalValues\`: Input is required when another input has a specific
2327
- * value
2402
+ * - \`conditional\`: Input is required when other inputs have specific values
2328
2403
  *
2329
2404
  * By default, the input is not required.
2330
2405
  */
@@ -2374,8 +2449,7 @@ export declare namespace GenerateDetectResponse {
2374
2449
  * - \`ifNotDefined\`: Input is required when another specified input is not
2375
2450
  * defined
2376
2451
  * - \`ifDefined\`: Input is required when another specified input is defined
2377
- * - \`conditionalValues\`: Input is required when another input has a specific
2378
- * value
2452
+ * - \`conditional\`: Input is required when other inputs have specific values
2379
2453
  *
2380
2454
  * By default, the input is not required.
2381
2455
  */
@@ -2385,12 +2459,9 @@ export declare namespace GenerateDetectResponse {
2385
2459
  */
2386
2460
  always?: boolean;
2387
2461
  /**
2388
- * Makes this input required when another input has a specific value:
2389
- *
2390
- * - Key: name of the input to check
2391
- * - Value: operation and allowed values that trigger the requirement
2462
+ * Makes this input required when other inputs have one of the listed values
2392
2463
  */
2393
- conditionalValues?: unknown;
2464
+ conditional?: Required.Conditional;
2394
2465
  /**
2395
2466
  * Makes this input required when another input is defined:
2396
2467
  *
@@ -2406,6 +2477,24 @@ export declare namespace GenerateDetectResponse {
2406
2477
  */
2407
2478
  ifNotDefined?: unknown;
2408
2479
  }
2480
+ namespace Required {
2481
+ /**
2482
+ * Makes this input required when other inputs have one of the listed values
2483
+ */
2484
+ interface Conditional {
2485
+ /**
2486
+ * The conditions to check:
2487
+ *
2488
+ * - Key: name of the input to check
2489
+ * - Value: values of that input that satisfy the condition
2490
+ */
2491
+ values: unknown;
2492
+ /**
2493
+ * How the conditions combine: \`and\` (all must match) or \`or\` (any must match)
2494
+ */
2495
+ operator?: 'and' | 'or';
2496
+ }
2497
+ }
2409
2498
  }
2410
2499
  /**
2411
2500
  * The reference to another input or output of the same workflow. Must have at
@@ -2441,8 +2530,7 @@ export declare namespace GenerateDetectResponse {
2441
2530
  * - \`ifNotDefined\`: Input is required when another specified input is not
2442
2531
  * defined
2443
2532
  * - \`ifDefined\`: Input is required when another specified input is defined
2444
- * - \`conditionalValues\`: Input is required when another input has a specific
2445
- * value
2533
+ * - \`conditional\`: Input is required when other inputs have specific values
2446
2534
  *
2447
2535
  * By default, the input is not required.
2448
2536
  */
@@ -2452,12 +2540,9 @@ export declare namespace GenerateDetectResponse {
2452
2540
  */
2453
2541
  always?: boolean;
2454
2542
  /**
2455
- * Makes this input required when another input has a specific value:
2456
- *
2457
- * - Key: name of the input to check
2458
- * - Value: operation and allowed values that trigger the requirement
2543
+ * Makes this input required when other inputs have one of the listed values
2459
2544
  */
2460
- conditionalValues?: unknown;
2545
+ conditional?: Required.Conditional;
2461
2546
  /**
2462
2547
  * Makes this input required when another input is defined:
2463
2548
  *
@@ -2473,6 +2558,24 @@ export declare namespace GenerateDetectResponse {
2473
2558
  */
2474
2559
  ifNotDefined?: unknown;
2475
2560
  }
2561
+ namespace Required {
2562
+ /**
2563
+ * Makes this input required when other inputs have one of the listed values
2564
+ */
2565
+ interface Conditional {
2566
+ /**
2567
+ * The conditions to check:
2568
+ *
2569
+ * - Key: name of the input to check
2570
+ * - Value: values of that input that satisfy the condition
2571
+ */
2572
+ values: unknown;
2573
+ /**
2574
+ * How the conditions combine: \`and\` (all must match) or \`or\` (any must match)
2575
+ */
2576
+ operator?: 'and' | 'or';
2577
+ }
2578
+ }
2476
2579
  }
2477
2580
  /**
2478
2581
  * The logic of the node. Only available for logic nodes.
@@ -2684,7 +2787,7 @@ export declare namespace GenerateDetectResponse {
2684
2787
  * exposes a JPEG preview as `url` and its `.exr` or `.hdr` file as the original).
2685
2788
  * Omitted when the stored format could not be determined.
2686
2789
  */
2687
- originalMimeType?: 'application/gzip' | 'application/json' | 'application/octet-stream' | 'application/pdf' | 'application/safetensors' | 'application/vnd.autodesk.fbx' | 'application/x-authorware-bin' | 'application/x-zip-compressed' | 'application/x.autodesk.fbx' | 'application/zip' | 'audio/m4a' | 'audio/mpeg' | 'audio/ogg' | 'audio/wav' | 'image/aces' | 'image/avif' | 'image/bmp' | 'image/gif' | 'image/heic' | 'image/jpeg' | 'image/png' | 'image/svg+xml' | 'image/tiff' | 'image/vnd.radiance' | 'image/webp' | 'image/x-exr' | 'model/glb' | 'model/gltf+json' | 'model/gltf-binary' | 'model/ksplat' | 'model/mtl' | 'model/obj' | 'model/ply' | 'model/sog' | 'model/splat' | 'model/spz' | 'model/stl' | 'model/vnd.collada+xml' | 'model/vnd.ms-package.3dmanufacturing-3dmodel+xml' | 'model/x-3d-vox' | 'model/x-fbx' | 'model/x-maya-ascii' | 'model/x-maya-binary' | 'model/x3d+xml' | 'text/plain' | 'video/mp4' | 'video/quicktime' | 'video/webm';
2790
+ originalMimeType?: 'application/gzip' | 'application/json' | 'application/octet-stream' | 'application/pdf' | 'application/safetensors' | 'application/vnd.autodesk.fbx' | 'application/x-authorware-bin' | 'application/x-zip-compressed' | 'application/x.autodesk.fbx' | 'application/zip' | 'audio/flac' | 'audio/m4a' | 'audio/mpeg' | 'audio/ogg' | 'audio/wav' | 'image/aces' | 'image/avif' | 'image/bmp' | 'image/gif' | 'image/heic' | 'image/jpeg' | 'image/png' | 'image/svg+xml' | 'image/tiff' | 'image/vnd.radiance' | 'image/webp' | 'image/x-exr' | 'model/glb' | 'model/gltf+json' | 'model/gltf-binary' | 'model/ksplat' | 'model/mtl' | 'model/obj' | 'model/ply' | 'model/sog' | 'model/splat' | 'model/spz' | 'model/stl' | 'model/vnd.collada+xml' | 'model/vnd.ms-package.3dmanufacturing-3dmodel+xml' | 'model/x-3d-vox' | 'model/x-blender' | 'model/x-fbx' | 'model/x-maya-ascii' | 'model/x-maya-binary' | 'model/x3d+xml' | 'text/plain' | 'video/mp4' | 'video/quicktime' | 'video/webm';
2688
2791
  /**
2689
2792
  * The output index of the asset within a job This index is an positive integer
2690
2793
  * that starts at 0 It is used to differentiate between multiple outputs of the
@@ -2803,6 +2906,11 @@ export declare namespace GenerateDetectResponse {
2803
2906
  * Contrast factor for Grayscale detector
2804
2907
  */
2805
2908
  factor?: number;
2909
+ /**
2910
+ * The name its parent's files reference it by (an OBJ's MTL, an MTL's texture),
2911
+ * kept as delivered.
2912
+ */
2913
+ fileName?: string;
2806
2914
  filterSpeckle?: number;
2807
2915
  /**
2808
2916
  * Determine the scale at which the upscale process works.
@@ -2876,6 +2984,10 @@ export declare namespace GenerateDetectResponse {
2876
2984
  * To invert the relief
2877
2985
  */
2878
2986
  invert?: boolean;
2987
+ /**
2988
+ * Its own references (an OBJ's `mtllib`, an MTL's maps) were kept as delivered.
2989
+ */
2990
+ keepsFileNames?: boolean;
2879
2991
  /**
2880
2992
  * How polished is the surface? 0 is like a rough surface, 1 is like a mirror
2881
2993
  */
@@ -3686,7 +3798,7 @@ export declare namespace GenerateEmbedResponse {
3686
3798
  /**
3687
3799
  * The type of the job for the node.
3688
3800
  */
3689
- type: 'custom-model' | 'for-each' | 'generate-prompt' | 'list' | 'logic' | 'model' | 'remove-background' | 'transform' | 'user-approval' | 'workflow';
3801
+ type: 'custom-model' | 'for-each' | 'generate-prompt' | 'list' | 'logic' | 'model' | 'remove-background' | 'transform' | 'user-approval' | 'user-selection' | 'workflow';
3690
3802
  /**
3691
3803
  * List of produced assets for this node.
3692
3804
  */
@@ -3711,13 +3823,14 @@ export declare namespace GenerateEmbedResponse {
3711
3823
  */
3712
3824
  includeOutputsInWorkflowJob?: true;
3713
3825
  /**
3714
- * The inputs of the node.
3826
+ * The inputs of the node. For a user-selection node, the array input's `min`/`max`
3827
+ * bound how many items the user may pick (defaults: 1 and 100); conditional
3828
+ * connections may be present as additional inputs.
3715
3829
  */
3716
3830
  inputs?: Array<Flow.Input>;
3717
3831
  /**
3718
- * Statically-configured items for a List node. The node outputs this array as-is
3719
- * when executed. Only available for List nodes. The values can be strings,
3720
- * numbers, or asset IDs.
3832
+ * Statically-configured items for a List node, or the frozen candidate list of a
3833
+ * UserSelection node. The values can be strings, numbers, or asset IDs.
3721
3834
  */
3722
3835
  items?: Array<string>;
3723
3836
  /**
@@ -3918,8 +4031,7 @@ export declare namespace GenerateEmbedResponse {
3918
4031
  * - \`ifNotDefined\`: Input is required when another specified input is not
3919
4032
  * defined
3920
4033
  * - \`ifDefined\`: Input is required when another specified input is defined
3921
- * - \`conditionalValues\`: Input is required when another input has a specific
3922
- * value
4034
+ * - \`conditional\`: Input is required when other inputs have specific values
3923
4035
  *
3924
4036
  * By default, the input is not required.
3925
4037
  */
@@ -4080,8 +4192,7 @@ export declare namespace GenerateEmbedResponse {
4080
4192
  * - \`ifNotDefined\`: Input is required when another specified input is not
4081
4193
  * defined
4082
4194
  * - \`ifDefined\`: Input is required when another specified input is defined
4083
- * - \`conditionalValues\`: Input is required when another input has a specific
4084
- * value
4195
+ * - \`conditional\`: Input is required when other inputs have specific values
4085
4196
  *
4086
4197
  * By default, the input is not required.
4087
4198
  */
@@ -4131,8 +4242,7 @@ export declare namespace GenerateEmbedResponse {
4131
4242
  * - \`ifNotDefined\`: Input is required when another specified input is not
4132
4243
  * defined
4133
4244
  * - \`ifDefined\`: Input is required when another specified input is defined
4134
- * - \`conditionalValues\`: Input is required when another input has a specific
4135
- * value
4245
+ * - \`conditional\`: Input is required when other inputs have specific values
4136
4246
  *
4137
4247
  * By default, the input is not required.
4138
4248
  */
@@ -4142,12 +4252,9 @@ export declare namespace GenerateEmbedResponse {
4142
4252
  */
4143
4253
  always?: boolean;
4144
4254
  /**
4145
- * Makes this input required when another input has a specific value:
4146
- *
4147
- * - Key: name of the input to check
4148
- * - Value: operation and allowed values that trigger the requirement
4255
+ * Makes this input required when other inputs have one of the listed values
4149
4256
  */
4150
- conditionalValues?: unknown;
4257
+ conditional?: Required.Conditional;
4151
4258
  /**
4152
4259
  * Makes this input required when another input is defined:
4153
4260
  *
@@ -4163,6 +4270,24 @@ export declare namespace GenerateEmbedResponse {
4163
4270
  */
4164
4271
  ifNotDefined?: unknown;
4165
4272
  }
4273
+ namespace Required {
4274
+ /**
4275
+ * Makes this input required when other inputs have one of the listed values
4276
+ */
4277
+ interface Conditional {
4278
+ /**
4279
+ * The conditions to check:
4280
+ *
4281
+ * - Key: name of the input to check
4282
+ * - Value: values of that input that satisfy the condition
4283
+ */
4284
+ values: unknown;
4285
+ /**
4286
+ * How the conditions combine: \`and\` (all must match) or \`or\` (any must match)
4287
+ */
4288
+ operator?: 'and' | 'or';
4289
+ }
4290
+ }
4166
4291
  }
4167
4292
  /**
4168
4293
  * The reference to another input or output of the same workflow. Must have at
@@ -4198,8 +4323,7 @@ export declare namespace GenerateEmbedResponse {
4198
4323
  * - \`ifNotDefined\`: Input is required when another specified input is not
4199
4324
  * defined
4200
4325
  * - \`ifDefined\`: Input is required when another specified input is defined
4201
- * - \`conditionalValues\`: Input is required when another input has a specific
4202
- * value
4326
+ * - \`conditional\`: Input is required when other inputs have specific values
4203
4327
  *
4204
4328
  * By default, the input is not required.
4205
4329
  */
@@ -4209,12 +4333,9 @@ export declare namespace GenerateEmbedResponse {
4209
4333
  */
4210
4334
  always?: boolean;
4211
4335
  /**
4212
- * Makes this input required when another input has a specific value:
4213
- *
4214
- * - Key: name of the input to check
4215
- * - Value: operation and allowed values that trigger the requirement
4336
+ * Makes this input required when other inputs have one of the listed values
4216
4337
  */
4217
- conditionalValues?: unknown;
4338
+ conditional?: Required.Conditional;
4218
4339
  /**
4219
4340
  * Makes this input required when another input is defined:
4220
4341
  *
@@ -4230,6 +4351,24 @@ export declare namespace GenerateEmbedResponse {
4230
4351
  */
4231
4352
  ifNotDefined?: unknown;
4232
4353
  }
4354
+ namespace Required {
4355
+ /**
4356
+ * Makes this input required when other inputs have one of the listed values
4357
+ */
4358
+ interface Conditional {
4359
+ /**
4360
+ * The conditions to check:
4361
+ *
4362
+ * - Key: name of the input to check
4363
+ * - Value: values of that input that satisfy the condition
4364
+ */
4365
+ values: unknown;
4366
+ /**
4367
+ * How the conditions combine: \`and\` (all must match) or \`or\` (any must match)
4368
+ */
4369
+ operator?: 'and' | 'or';
4370
+ }
4371
+ }
4233
4372
  }
4234
4373
  /**
4235
4374
  * The logic of the node. Only available for logic nodes.
@@ -4425,6 +4564,101 @@ export declare namespace GenerateEmbedResponse {
4425
4564
  }
4426
4565
  }
4427
4566
  }
4567
+ /**
4568
+ * Response of POST /generate/ip-detection.
4569
+ */
4570
+ export interface GenerateIPDetectionResponse {
4571
+ /**
4572
+ * Merged verdict for the whole input set. `action` is always `allowed` or
4573
+ * `flagged` — this route is advisory and blocks nothing — while
4574
+ * `creativeUnitsCharged` and `analyzedImagesCount` report what was billed and what
4575
+ * was actually analyzed.
4576
+ */
4577
+ ipDetection: GenerateIPDetectionResponse.IPDetection;
4578
+ /**
4579
+ * Input asset ids excluded from image analysis — audio and 3d assets, or a video
4580
+ * with no extractable frame. Their content was NOT checked.
4581
+ */
4582
+ skippedAssetIds: Array<string>;
4583
+ }
4584
+ export declare namespace GenerateIPDetectionResponse {
4585
+ /**
4586
+ * Merged verdict for the whole input set. `action` is always `allowed` or
4587
+ * `flagged` — this route is advisory and blocks nothing — while
4588
+ * `creativeUnitsCharged` and `analyzedImagesCount` report what was billed and what
4589
+ * was actually analyzed.
4590
+ */
4591
+ interface IPDetection {
4592
+ /**
4593
+ * Whether and how detection affected the request.
4594
+ */
4595
+ action: 'allowed' | 'blocked' | 'flagged';
4596
+ /**
4597
+ * Number of images the detectors actually analyzed — a video counts as each of its
4598
+ * extracted frames, and an image that could not be read is excluded (and not
4599
+ * billed). Each of them is priced once per enabled filter.
4600
+ */
4601
+ analyzedImagesCount: number;
4602
+ /**
4603
+ * IP-detection CU fee, separate from creativeUnitsCost: it follows the provider
4604
+ * tokens the run sends — the prompt plus every analyzed image, once per enabled
4605
+ * filter — with a 1 CU minimum per run.
4606
+ */
4607
+ creativeUnitsCharged: number;
4608
+ /**
4609
+ * Number of enabled filters evaluated for this request.
4610
+ */
4611
+ evaluatedFilters: number;
4612
+ /**
4613
+ * Per-filter verdicts gathered for this request.
4614
+ */
4615
+ findings: Array<IPDetection.Finding>;
4616
+ /**
4617
+ * Whether a filter considered the inputs an IP risk. Independent of `action`: a
4618
+ * request blocked because a detector errored is `blocked` and NOT flagged.
4619
+ */
4620
+ flagged: boolean;
4621
+ /**
4622
+ * True if one or more detectors errored while evaluating this request.
4623
+ */
4624
+ hasDetectorError?: boolean;
4625
+ }
4626
+ namespace IPDetection {
4627
+ /**
4628
+ * A single filter's verdict.
4629
+ */
4630
+ interface Finding {
4631
+ /**
4632
+ * Category of the filter that produced this verdict.
4633
+ */
4634
+ category: 'artist-style' | 'brand-trademark' | 'celebrity-likeness' | 'custom' | 'fictional-character';
4635
+ /**
4636
+ * Confidence score from 0 (low) to 1 (high).
4637
+ */
4638
+ confidence: number;
4639
+ /**
4640
+ * Identifier of the filter that produced this verdict.
4641
+ */
4642
+ filterId: string;
4643
+ /**
4644
+ * Display name of the filter that produced this verdict.
4645
+ */
4646
+ filterName: string;
4647
+ /**
4648
+ * Whether this filter considered the request an IP risk.
4649
+ */
4650
+ flagged: boolean;
4651
+ /**
4652
+ * Short, user-facing explanation of the verdict.
4653
+ */
4654
+ reason: string;
4655
+ /**
4656
+ * Named entities the filter recognized (e.g. characters, brands, people).
4657
+ */
4658
+ entities?: Array<string>;
4659
+ }
4660
+ }
4661
+ }
4428
4662
  export interface GeneratePatchResponse {
4429
4663
  job: GeneratePatchResponse.Job;
4430
4664
  asset?: GeneratePatchResponse.Asset;
@@ -4557,7 +4791,7 @@ export declare namespace GeneratePatchResponse {
4557
4791
  /**
4558
4792
  * The type of the job for the node.
4559
4793
  */
4560
- type: 'custom-model' | 'for-each' | 'generate-prompt' | 'list' | 'logic' | 'model' | 'remove-background' | 'transform' | 'user-approval' | 'workflow';
4794
+ type: 'custom-model' | 'for-each' | 'generate-prompt' | 'list' | 'logic' | 'model' | 'remove-background' | 'transform' | 'user-approval' | 'user-selection' | 'workflow';
4561
4795
  /**
4562
4796
  * List of produced assets for this node.
4563
4797
  */
@@ -4582,13 +4816,14 @@ export declare namespace GeneratePatchResponse {
4582
4816
  */
4583
4817
  includeOutputsInWorkflowJob?: true;
4584
4818
  /**
4585
- * The inputs of the node.
4819
+ * The inputs of the node. For a user-selection node, the array input's `min`/`max`
4820
+ * bound how many items the user may pick (defaults: 1 and 100); conditional
4821
+ * connections may be present as additional inputs.
4586
4822
  */
4587
4823
  inputs?: Array<Flow.Input>;
4588
4824
  /**
4589
- * Statically-configured items for a List node. The node outputs this array as-is
4590
- * when executed. Only available for List nodes. The values can be strings,
4591
- * numbers, or asset IDs.
4825
+ * Statically-configured items for a List node, or the frozen candidate list of a
4826
+ * UserSelection node. The values can be strings, numbers, or asset IDs.
4592
4827
  */
4593
4828
  items?: Array<string>;
4594
4829
  /**
@@ -4789,8 +5024,7 @@ export declare namespace GeneratePatchResponse {
4789
5024
  * - \`ifNotDefined\`: Input is required when another specified input is not
4790
5025
  * defined
4791
5026
  * - \`ifDefined\`: Input is required when another specified input is defined
4792
- * - \`conditionalValues\`: Input is required when another input has a specific
4793
- * value
5027
+ * - \`conditional\`: Input is required when other inputs have specific values
4794
5028
  *
4795
5029
  * By default, the input is not required.
4796
5030
  */
@@ -4951,8 +5185,7 @@ export declare namespace GeneratePatchResponse {
4951
5185
  * - \`ifNotDefined\`: Input is required when another specified input is not
4952
5186
  * defined
4953
5187
  * - \`ifDefined\`: Input is required when another specified input is defined
4954
- * - \`conditionalValues\`: Input is required when another input has a specific
4955
- * value
5188
+ * - \`conditional\`: Input is required when other inputs have specific values
4956
5189
  *
4957
5190
  * By default, the input is not required.
4958
5191
  */
@@ -5002,8 +5235,7 @@ export declare namespace GeneratePatchResponse {
5002
5235
  * - \`ifNotDefined\`: Input is required when another specified input is not
5003
5236
  * defined
5004
5237
  * - \`ifDefined\`: Input is required when another specified input is defined
5005
- * - \`conditionalValues\`: Input is required when another input has a specific
5006
- * value
5238
+ * - \`conditional\`: Input is required when other inputs have specific values
5007
5239
  *
5008
5240
  * By default, the input is not required.
5009
5241
  */
@@ -5013,12 +5245,9 @@ export declare namespace GeneratePatchResponse {
5013
5245
  */
5014
5246
  always?: boolean;
5015
5247
  /**
5016
- * Makes this input required when another input has a specific value:
5017
- *
5018
- * - Key: name of the input to check
5019
- * - Value: operation and allowed values that trigger the requirement
5248
+ * Makes this input required when other inputs have one of the listed values
5020
5249
  */
5021
- conditionalValues?: unknown;
5250
+ conditional?: Required.Conditional;
5022
5251
  /**
5023
5252
  * Makes this input required when another input is defined:
5024
5253
  *
@@ -5034,6 +5263,24 @@ export declare namespace GeneratePatchResponse {
5034
5263
  */
5035
5264
  ifNotDefined?: unknown;
5036
5265
  }
5266
+ namespace Required {
5267
+ /**
5268
+ * Makes this input required when other inputs have one of the listed values
5269
+ */
5270
+ interface Conditional {
5271
+ /**
5272
+ * The conditions to check:
5273
+ *
5274
+ * - Key: name of the input to check
5275
+ * - Value: values of that input that satisfy the condition
5276
+ */
5277
+ values: unknown;
5278
+ /**
5279
+ * How the conditions combine: \`and\` (all must match) or \`or\` (any must match)
5280
+ */
5281
+ operator?: 'and' | 'or';
5282
+ }
5283
+ }
5037
5284
  }
5038
5285
  /**
5039
5286
  * The reference to another input or output of the same workflow. Must have at
@@ -5069,8 +5316,7 @@ export declare namespace GeneratePatchResponse {
5069
5316
  * - \`ifNotDefined\`: Input is required when another specified input is not
5070
5317
  * defined
5071
5318
  * - \`ifDefined\`: Input is required when another specified input is defined
5072
- * - \`conditionalValues\`: Input is required when another input has a specific
5073
- * value
5319
+ * - \`conditional\`: Input is required when other inputs have specific values
5074
5320
  *
5075
5321
  * By default, the input is not required.
5076
5322
  */
@@ -5080,12 +5326,9 @@ export declare namespace GeneratePatchResponse {
5080
5326
  */
5081
5327
  always?: boolean;
5082
5328
  /**
5083
- * Makes this input required when another input has a specific value:
5084
- *
5085
- * - Key: name of the input to check
5086
- * - Value: operation and allowed values that trigger the requirement
5329
+ * Makes this input required when other inputs have one of the listed values
5087
5330
  */
5088
- conditionalValues?: unknown;
5331
+ conditional?: Required.Conditional;
5089
5332
  /**
5090
5333
  * Makes this input required when another input is defined:
5091
5334
  *
@@ -5101,6 +5344,24 @@ export declare namespace GeneratePatchResponse {
5101
5344
  */
5102
5345
  ifNotDefined?: unknown;
5103
5346
  }
5347
+ namespace Required {
5348
+ /**
5349
+ * Makes this input required when other inputs have one of the listed values
5350
+ */
5351
+ interface Conditional {
5352
+ /**
5353
+ * The conditions to check:
5354
+ *
5355
+ * - Key: name of the input to check
5356
+ * - Value: values of that input that satisfy the condition
5357
+ */
5358
+ values: unknown;
5359
+ /**
5360
+ * How the conditions combine: \`and\` (all must match) or \`or\` (any must match)
5361
+ */
5362
+ operator?: 'and' | 'or';
5363
+ }
5364
+ }
5104
5365
  }
5105
5366
  /**
5106
5367
  * The logic of the node. Only available for logic nodes.
@@ -5312,7 +5573,7 @@ export declare namespace GeneratePatchResponse {
5312
5573
  * exposes a JPEG preview as `url` and its `.exr` or `.hdr` file as the original).
5313
5574
  * Omitted when the stored format could not be determined.
5314
5575
  */
5315
- originalMimeType?: 'application/gzip' | 'application/json' | 'application/octet-stream' | 'application/pdf' | 'application/safetensors' | 'application/vnd.autodesk.fbx' | 'application/x-authorware-bin' | 'application/x-zip-compressed' | 'application/x.autodesk.fbx' | 'application/zip' | 'audio/m4a' | 'audio/mpeg' | 'audio/ogg' | 'audio/wav' | 'image/aces' | 'image/avif' | 'image/bmp' | 'image/gif' | 'image/heic' | 'image/jpeg' | 'image/png' | 'image/svg+xml' | 'image/tiff' | 'image/vnd.radiance' | 'image/webp' | 'image/x-exr' | 'model/glb' | 'model/gltf+json' | 'model/gltf-binary' | 'model/ksplat' | 'model/mtl' | 'model/obj' | 'model/ply' | 'model/sog' | 'model/splat' | 'model/spz' | 'model/stl' | 'model/vnd.collada+xml' | 'model/vnd.ms-package.3dmanufacturing-3dmodel+xml' | 'model/x-3d-vox' | 'model/x-fbx' | 'model/x-maya-ascii' | 'model/x-maya-binary' | 'model/x3d+xml' | 'text/plain' | 'video/mp4' | 'video/quicktime' | 'video/webm';
5576
+ originalMimeType?: 'application/gzip' | 'application/json' | 'application/octet-stream' | 'application/pdf' | 'application/safetensors' | 'application/vnd.autodesk.fbx' | 'application/x-authorware-bin' | 'application/x-zip-compressed' | 'application/x.autodesk.fbx' | 'application/zip' | 'audio/flac' | 'audio/m4a' | 'audio/mpeg' | 'audio/ogg' | 'audio/wav' | 'image/aces' | 'image/avif' | 'image/bmp' | 'image/gif' | 'image/heic' | 'image/jpeg' | 'image/png' | 'image/svg+xml' | 'image/tiff' | 'image/vnd.radiance' | 'image/webp' | 'image/x-exr' | 'model/glb' | 'model/gltf+json' | 'model/gltf-binary' | 'model/ksplat' | 'model/mtl' | 'model/obj' | 'model/ply' | 'model/sog' | 'model/splat' | 'model/spz' | 'model/stl' | 'model/vnd.collada+xml' | 'model/vnd.ms-package.3dmanufacturing-3dmodel+xml' | 'model/x-3d-vox' | 'model/x-blender' | 'model/x-fbx' | 'model/x-maya-ascii' | 'model/x-maya-binary' | 'model/x3d+xml' | 'text/plain' | 'video/mp4' | 'video/quicktime' | 'video/webm';
5316
5577
  /**
5317
5578
  * The output index of the asset within a job This index is an positive integer
5318
5579
  * that starts at 0 It is used to differentiate between multiple outputs of the
@@ -5431,6 +5692,11 @@ export declare namespace GeneratePatchResponse {
5431
5692
  * Contrast factor for Grayscale detector
5432
5693
  */
5433
5694
  factor?: number;
5695
+ /**
5696
+ * The name its parent's files reference it by (an OBJ's MTL, an MTL's texture),
5697
+ * kept as delivered.
5698
+ */
5699
+ fileName?: string;
5434
5700
  filterSpeckle?: number;
5435
5701
  /**
5436
5702
  * Determine the scale at which the upscale process works.
@@ -5504,6 +5770,10 @@ export declare namespace GeneratePatchResponse {
5504
5770
  * To invert the relief
5505
5771
  */
5506
5772
  invert?: boolean;
5773
+ /**
5774
+ * Its own references (an OBJ's `mtllib`, an MTL's maps) were kept as delivered.
5775
+ */
5776
+ keepsFileNames?: boolean;
5507
5777
  /**
5508
5778
  * How polished is the surface? 0 is like a rough surface, 1 is like a mirror
5509
5779
  */
@@ -6321,7 +6591,7 @@ export declare namespace GeneratePromptResponse {
6321
6591
  /**
6322
6592
  * The type of the job for the node.
6323
6593
  */
6324
- type: 'custom-model' | 'for-each' | 'generate-prompt' | 'list' | 'logic' | 'model' | 'remove-background' | 'transform' | 'user-approval' | 'workflow';
6594
+ type: 'custom-model' | 'for-each' | 'generate-prompt' | 'list' | 'logic' | 'model' | 'remove-background' | 'transform' | 'user-approval' | 'user-selection' | 'workflow';
6325
6595
  /**
6326
6596
  * List of produced assets for this node.
6327
6597
  */
@@ -6346,13 +6616,14 @@ export declare namespace GeneratePromptResponse {
6346
6616
  */
6347
6617
  includeOutputsInWorkflowJob?: true;
6348
6618
  /**
6349
- * The inputs of the node.
6619
+ * The inputs of the node. For a user-selection node, the array input's `min`/`max`
6620
+ * bound how many items the user may pick (defaults: 1 and 100); conditional
6621
+ * connections may be present as additional inputs.
6350
6622
  */
6351
6623
  inputs?: Array<Flow.Input>;
6352
6624
  /**
6353
- * Statically-configured items for a List node. The node outputs this array as-is
6354
- * when executed. Only available for List nodes. The values can be strings,
6355
- * numbers, or asset IDs.
6625
+ * Statically-configured items for a List node, or the frozen candidate list of a
6626
+ * UserSelection node. The values can be strings, numbers, or asset IDs.
6356
6627
  */
6357
6628
  items?: Array<string>;
6358
6629
  /**
@@ -6553,8 +6824,7 @@ export declare namespace GeneratePromptResponse {
6553
6824
  * - \`ifNotDefined\`: Input is required when another specified input is not
6554
6825
  * defined
6555
6826
  * - \`ifDefined\`: Input is required when another specified input is defined
6556
- * - \`conditionalValues\`: Input is required when another input has a specific
6557
- * value
6827
+ * - \`conditional\`: Input is required when other inputs have specific values
6558
6828
  *
6559
6829
  * By default, the input is not required.
6560
6830
  */
@@ -6715,8 +6985,7 @@ export declare namespace GeneratePromptResponse {
6715
6985
  * - \`ifNotDefined\`: Input is required when another specified input is not
6716
6986
  * defined
6717
6987
  * - \`ifDefined\`: Input is required when another specified input is defined
6718
- * - \`conditionalValues\`: Input is required when another input has a specific
6719
- * value
6988
+ * - \`conditional\`: Input is required when other inputs have specific values
6720
6989
  *
6721
6990
  * By default, the input is not required.
6722
6991
  */
@@ -6766,8 +7035,7 @@ export declare namespace GeneratePromptResponse {
6766
7035
  * - \`ifNotDefined\`: Input is required when another specified input is not
6767
7036
  * defined
6768
7037
  * - \`ifDefined\`: Input is required when another specified input is defined
6769
- * - \`conditionalValues\`: Input is required when another input has a specific
6770
- * value
7038
+ * - \`conditional\`: Input is required when other inputs have specific values
6771
7039
  *
6772
7040
  * By default, the input is not required.
6773
7041
  */
@@ -6777,12 +7045,9 @@ export declare namespace GeneratePromptResponse {
6777
7045
  */
6778
7046
  always?: boolean;
6779
7047
  /**
6780
- * Makes this input required when another input has a specific value:
6781
- *
6782
- * - Key: name of the input to check
6783
- * - Value: operation and allowed values that trigger the requirement
7048
+ * Makes this input required when other inputs have one of the listed values
6784
7049
  */
6785
- conditionalValues?: unknown;
7050
+ conditional?: Required.Conditional;
6786
7051
  /**
6787
7052
  * Makes this input required when another input is defined:
6788
7053
  *
@@ -6798,6 +7063,24 @@ export declare namespace GeneratePromptResponse {
6798
7063
  */
6799
7064
  ifNotDefined?: unknown;
6800
7065
  }
7066
+ namespace Required {
7067
+ /**
7068
+ * Makes this input required when other inputs have one of the listed values
7069
+ */
7070
+ interface Conditional {
7071
+ /**
7072
+ * The conditions to check:
7073
+ *
7074
+ * - Key: name of the input to check
7075
+ * - Value: values of that input that satisfy the condition
7076
+ */
7077
+ values: unknown;
7078
+ /**
7079
+ * How the conditions combine: \`and\` (all must match) or \`or\` (any must match)
7080
+ */
7081
+ operator?: 'and' | 'or';
7082
+ }
7083
+ }
6801
7084
  }
6802
7085
  /**
6803
7086
  * The reference to another input or output of the same workflow. Must have at
@@ -6833,8 +7116,7 @@ export declare namespace GeneratePromptResponse {
6833
7116
  * - \`ifNotDefined\`: Input is required when another specified input is not
6834
7117
  * defined
6835
7118
  * - \`ifDefined\`: Input is required when another specified input is defined
6836
- * - \`conditionalValues\`: Input is required when another input has a specific
6837
- * value
7119
+ * - \`conditional\`: Input is required when other inputs have specific values
6838
7120
  *
6839
7121
  * By default, the input is not required.
6840
7122
  */
@@ -6844,12 +7126,9 @@ export declare namespace GeneratePromptResponse {
6844
7126
  */
6845
7127
  always?: boolean;
6846
7128
  /**
6847
- * Makes this input required when another input has a specific value:
6848
- *
6849
- * - Key: name of the input to check
6850
- * - Value: operation and allowed values that trigger the requirement
7129
+ * Makes this input required when other inputs have one of the listed values
6851
7130
  */
6852
- conditionalValues?: unknown;
7131
+ conditional?: Required.Conditional;
6853
7132
  /**
6854
7133
  * Makes this input required when another input is defined:
6855
7134
  *
@@ -6865,6 +7144,24 @@ export declare namespace GeneratePromptResponse {
6865
7144
  */
6866
7145
  ifNotDefined?: unknown;
6867
7146
  }
7147
+ namespace Required {
7148
+ /**
7149
+ * Makes this input required when other inputs have one of the listed values
7150
+ */
7151
+ interface Conditional {
7152
+ /**
7153
+ * The conditions to check:
7154
+ *
7155
+ * - Key: name of the input to check
7156
+ * - Value: values of that input that satisfy the condition
7157
+ */
7158
+ values: unknown;
7159
+ /**
7160
+ * How the conditions combine: \`and\` (all must match) or \`or\` (any must match)
7161
+ */
7162
+ operator?: 'and' | 'or';
7163
+ }
7164
+ }
6868
7165
  }
6869
7166
  /**
6870
7167
  * The logic of the node. Only available for logic nodes.
@@ -7081,15 +7378,36 @@ export declare namespace GeneratePromptResponse {
7081
7378
  }
7082
7379
  }
7083
7380
  }
7084
- export interface GenerateRunModelResponse {
7085
- job: GenerateRunModelResponse.Job;
7381
+ export interface GenerateQualityGateResponse {
7382
+ /**
7383
+ * Always-on generic AI-quality dimension
7384
+ */
7385
+ aiQuality: GenerateQualityGateResponse.AIQuality;
7386
+ /**
7387
+ * Briefs that contributed to this verdict
7388
+ */
7389
+ appliedBriefs: Array<GenerateQualityGateResponse.AppliedBrief>;
7390
+ asset: GenerateQualityGateResponse.Asset;
7391
+ /**
7392
+ * 0–100 combined score
7393
+ */
7394
+ overallScore: number;
7395
+ /**
7396
+ * pass / warn / fail: the worse of overallScore and aiQuality.score, each read
7397
+ * against sensitivity
7398
+ */
7399
+ verdict: 'fail' | 'pass' | 'warn';
7400
+ /**
7401
+ * Brief-compliance dimension; omitted when no brief applied
7402
+ */
7403
+ briefCompliance?: GenerateQualityGateResponse.BriefCompliance;
7086
7404
  /**
7087
7405
  * Compute Units cost per billing action for this request, after discount. Values
7088
7406
  * sum to `creativeUnitsCost`. Only Compute-Units-consuming actions with a non-zero
7089
7407
  * charge appear. Lets clients split the total (e.g. generation vs `quality-gate`)
7090
7408
  * — including on dryRun estimates.
7091
7409
  */
7092
- costDetails?: GenerateRunModelResponse.CostDetails;
7410
+ costDetails?: GenerateQualityGateResponse.CostDetails;
7093
7411
  /**
7094
7412
  * The Compute Units cost for the request billed
7095
7413
  */
@@ -7101,66 +7419,1135 @@ export interface GenerateRunModelResponse {
7101
7419
  /**
7102
7420
  * IP detection findings, when detection ran for this request.
7103
7421
  */
7104
- ipDetection?: GenerateRunModelResponse.IPDetection;
7422
+ ipDetection?: GenerateQualityGateResponse.IPDetection;
7423
+ /**
7424
+ * Sensitivity used to derive the verdict
7425
+ */
7426
+ sensitivity?: 'high' | 'low' | 'medium';
7105
7427
  }
7106
- export declare namespace GenerateRunModelResponse {
7107
- interface Job {
7428
+ export declare namespace GenerateQualityGateResponse {
7429
+ /**
7430
+ * Always-on generic AI-quality dimension
7431
+ */
7432
+ interface AIQuality {
7108
7433
  /**
7109
- * The job creation date as an ISO string (example: "2023-02-03T11:19:41.579Z")
7434
+ * Why the image scored as it did
7110
7435
  */
7111
- createdAt: string;
7436
+ reasons: Array<string>;
7112
7437
  /**
7113
- * The job ID (example: "job_ocZCnG1Df35XRL1QyCZSRxAG8")
7438
+ * 0–100; higher is better (more compliant / less AI-looking)
7114
7439
  */
7115
- jobId: string;
7440
+ score: number;
7116
7441
  /**
7117
- * The type of job
7442
+ * Actionable suggestions to improve the score
7118
7443
  */
7119
- jobType: 'assets-download' | 'canvas-export' | 'caption' | 'caption-llava' | 'custom' | 'describe-style' | 'detection' | 'embed' | 'flux' | 'flux-model-training' | 'generate-prompt' | 'image-generation' | 'image-prompt-editing' | 'inference' | 'mesh-preview-rendering' | 'model-download' | 'model-import' | 'model-training' | 'musubi-model-training' | 'openai-image-generation' | 'patch-image' | 'pixelate' | 'reframe' | 'remove-background' | 'repaint' | 'restyle' | 'segment' | 'skybox-3d' | 'skybox-base-360' | 'skybox-hdri' | 'skybox-upscale-360' | 'splat' | 'texture' | 'translate' | 'upload' | 'upscale' | 'upscale-skybox' | 'upscale-texture' | 'vectorize' | 'workflow';
7444
+ suggestions: Array<string>;
7445
+ }
7446
+ /**
7447
+ * Identifies a brief that contributed to a verdict.
7448
+ */
7449
+ interface AppliedBrief {
7120
7450
  /**
7121
- * Metadata of the job with some additional information
7451
+ * The brief's id
7122
7452
  */
7123
- metadata: Job.Metadata;
7453
+ id: string;
7124
7454
  /**
7125
- * Progress of the job (between 0 and 1)
7455
+ * The brief's scope
7126
7456
  */
7127
- progress: number;
7457
+ level: 'project' | 'team';
7458
+ }
7459
+ interface Asset {
7128
7460
  /**
7129
- * The current status of the job
7461
+ * The asset ID (example: "asset_GTrL3mq4SXWyMxkOHRxlpw")
7130
7462
  */
7131
- status: 'canceled' | 'failure' | 'finalizing' | 'in-progress' | 'pending' | 'queued' | 'success' | 'warming-up';
7463
+ id: string;
7132
7464
  /**
7133
- * The history of the different statuses the job went through with the ISO string
7134
- * date of when the job reached each statuses.
7465
+ * The author user ID (example: "dcf121faaa1a0a0bbbd9ca1b73d62aea")
7135
7466
  */
7136
- statusHistory: Array<Job.StatusHistory>;
7467
+ authorId: string;
7137
7468
  /**
7138
- * The job last update date as an ISO string (example: "2023-02-03T11:19:41.579Z")
7469
+ * A list of CollectionId this asset belongs to
7139
7470
  */
7140
- updatedAt: string;
7471
+ collectionIds: Array<string>;
7141
7472
  /**
7142
- * The author user ID (example: "dcf121faaa1a0a0bbbd9ca1b73d62aea")
7473
+ * The asset creation date as an ISO string (example: "2023-02-03T11:19:41.579Z")
7143
7474
  */
7144
- authorId?: string;
7475
+ createdAt: string;
7145
7476
  /**
7146
- * The billing of the job
7477
+ * List of edit capabilities
7147
7478
  */
7148
- billing?: Job.Billing;
7479
+ editCapabilities: Array<'DETECTION' | 'GENERATIVE_FILL' | 'PIXELATE' | 'PROMPT_EDITING' | 'REFINE' | 'REFRAME' | 'REMOVE_BACKGROUND' | 'SEGMENTATION' | 'UPSCALE' | 'UPSCALE_360' | 'VECTORIZATION'>;
7149
7480
  /**
7150
- * The owner ID (example: "team_U3Qmc8PCdWXwAQJ4Dvw4tV6D")
7481
+ * The kind of asset
7151
7482
  */
7152
- ownerId?: string;
7153
- }
7154
- namespace Job {
7483
+ kind: '3d' | 'audio' | 'document' | 'image' | 'image-hdr' | 'json' | 'text' | 'video';
7155
7484
  /**
7156
- * Metadata of the job with some additional information
7485
+ * Metadata of the asset with some additional information
7157
7486
  */
7158
- interface Metadata {
7159
- /**
7160
- * List of produced assets for this job
7161
- */
7162
- assetIds?: Array<string>;
7163
- /**
7487
+ metadata: Asset.Metadata;
7488
+ /**
7489
+ * The mime type of the asset (example: "image/png")
7490
+ */
7491
+ mimeType: string;
7492
+ /**
7493
+ * The owner (project) ID (example: "proj_23tlk332lkht3kl2" or
7494
+ * "team_dlkhgs23tlk3hlkth32lkht3kl2" for old teams)
7495
+ */
7496
+ ownerId: string;
7497
+ /**
7498
+ * The privacy of the asset
7499
+ */
7500
+ privacy: 'private' | 'public' | 'unlisted';
7501
+ /**
7502
+ * The properties of the asset, content may depend on the kind of asset returned
7503
+ */
7504
+ properties: Asset.Properties;
7505
+ /**
7506
+ * source of the asset
7507
+ */
7508
+ source: '3d23d' | '3d23d:texture' | '3d:texture' | '3d:texture:albedo' | '3d:texture:metallic' | '3d:texture:mtl' | '3d:texture:normal' | '3d:texture:roughness' | 'audio2audio' | 'audio2txt' | 'audio2video' | 'background-removal' | 'canvas' | 'canvas-drawing' | 'canvas-export' | 'detection' | 'generative-fill' | 'image-prompt-editing' | 'img23d' | 'img2img' | 'img2splat' | 'img2txt' | 'img2video' | 'inference-control-net' | 'inference-control-net-img' | 'inference-control-net-inpainting' | 'inference-control-net-inpainting-ip-adapter' | 'inference-control-net-ip-adapter' | 'inference-control-net-reference' | 'inference-control-net-texture' | 'inference-img' | 'inference-img-ip-adapter' | 'inference-img-texture' | 'inference-in-paint' | 'inference-in-paint-ip-adapter' | 'inference-reference' | 'inference-reference-texture' | 'inference-txt' | 'inference-txt-ip-adapter' | 'inference-txt-texture' | 'patch' | 'pixelization' | 'reframe' | 'restyle' | 'segment' | 'segmentation-image' | 'segmentation-mask' | 'skybox-3d' | 'skybox-base-360' | 'skybox-hdri' | 'texture' | 'texture:albedo' | 'texture:ao' | 'texture:edge' | 'texture:height' | 'texture:metallic' | 'texture:normal' | 'texture:smoothness' | 'txt23d' | 'txt2audio' | 'txt2img' | 'txt2txt' | 'txt2video' | 'unknown' | 'uploaded' | 'uploaded-3d' | 'uploaded-audio' | 'uploaded-avatar' | 'uploaded-text' | 'uploaded-video' | 'upscale' | 'upscale-skybox' | 'upscale-texture' | 'upscale-video' | 'vectorization' | 'video23d' | 'video2audio' | 'video2img' | 'video2video' | 'voice-clone';
7509
+ /**
7510
+ * The actual status
7511
+ */
7512
+ status: 'error' | 'pending' | 'success';
7513
+ /**
7514
+ * The associated tags (example: ["sci-fi", "landscape"])
7515
+ */
7516
+ tags: Array<string>;
7517
+ /**
7518
+ * The asset last update date as an ISO string (example:
7519
+ * "2023-02-03T11:19:41.579Z")
7520
+ */
7521
+ updatedAt: string;
7522
+ /**
7523
+ * Signed URL to get the asset content
7524
+ */
7525
+ url: string;
7526
+ /**
7527
+ * Automatic captioning of the asset
7528
+ */
7529
+ automaticCaptioning?: string;
7530
+ /**
7531
+ * The description, it will contain in priority:
7532
+ *
7533
+ * - the manual description
7534
+ * - the advanced captioning when the asset is used in training flow
7535
+ * - the automatic captioning
7536
+ */
7537
+ description?: string;
7538
+ /**
7539
+ * The embedding of the asset when requested.
7540
+ *
7541
+ * Only available when an asset can be embedded (ie: not Detection maps)
7542
+ */
7543
+ embedding?: Array<number>;
7544
+ /**
7545
+ * The video asset's first frame.
7546
+ *
7547
+ * Contains the assetId and the url of the first frame.
7548
+ */
7549
+ firstFrame?: Asset.FirstFrame;
7550
+ /**
7551
+ * Whether the asset is hidden.
7552
+ */
7553
+ isHidden?: boolean;
7554
+ /**
7555
+ * The video asset's last frame.
7556
+ *
7557
+ * Contains the assetId and the url of the last frame.
7558
+ */
7559
+ lastFrame?: Asset.LastFrame;
7560
+ /**
7561
+ * The NSFW labels
7562
+ */
7563
+ nsfw?: Array<string>;
7564
+ /**
7565
+ * The original file url.
7566
+ *
7567
+ * Contains the url of the original file. without any conversion. Only available
7568
+ * for some specific video, audio and threeD assets. Is only specified if the given
7569
+ * asset data has been replaced with a new file during the creation of the asset.
7570
+ */
7571
+ originalFileUrl?: string;
7572
+ /**
7573
+ * The mime type of the original file url.
7574
+ *
7575
+ * The original file is stored under a key that carries no extension, so this is
7576
+ * the only way to know which format `originalFileUrl` serves (e.g. an HDRi skybox
7577
+ * exposes a JPEG preview as `url` and its `.exr` or `.hdr` file as the original).
7578
+ * Omitted when the stored format could not be determined.
7579
+ */
7580
+ originalMimeType?: 'application/gzip' | 'application/json' | 'application/octet-stream' | 'application/pdf' | 'application/safetensors' | 'application/vnd.autodesk.fbx' | 'application/x-authorware-bin' | 'application/x-zip-compressed' | 'application/x.autodesk.fbx' | 'application/zip' | 'audio/flac' | 'audio/m4a' | 'audio/mpeg' | 'audio/ogg' | 'audio/wav' | 'image/aces' | 'image/avif' | 'image/bmp' | 'image/gif' | 'image/heic' | 'image/jpeg' | 'image/png' | 'image/svg+xml' | 'image/tiff' | 'image/vnd.radiance' | 'image/webp' | 'image/x-exr' | 'model/glb' | 'model/gltf+json' | 'model/gltf-binary' | 'model/ksplat' | 'model/mtl' | 'model/obj' | 'model/ply' | 'model/sog' | 'model/splat' | 'model/spz' | 'model/stl' | 'model/vnd.collada+xml' | 'model/vnd.ms-package.3dmanufacturing-3dmodel+xml' | 'model/x-3d-vox' | 'model/x-blender' | 'model/x-fbx' | 'model/x-maya-ascii' | 'model/x-maya-binary' | 'model/x3d+xml' | 'text/plain' | 'video/mp4' | 'video/quicktime' | 'video/webm';
7581
+ /**
7582
+ * The output index of the asset within a job This index is an positive integer
7583
+ * that starts at 0 It is used to differentiate between multiple outputs of the
7584
+ * same job If the job has only one output, this index is 0
7585
+ */
7586
+ outputIndex?: number;
7587
+ /**
7588
+ * The asset's preview.
7589
+ *
7590
+ * Contains the assetId and the url of the preview.
7591
+ */
7592
+ preview?: Asset.Preview;
7593
+ /**
7594
+ * Quality Gate result, computed asynchronously after generation.
7595
+ *
7596
+ * `details` (the per-dimension reasons and suggestions) is returned only when the
7597
+ * asset is read with `withQualityGateDetails=true`.
7598
+ */
7599
+ qualityGate?: Asset.QualityGate;
7600
+ /**
7601
+ * The asset's thumbnail.
7602
+ *
7603
+ * Contains the assetId and the url of the thumbnail.
7604
+ */
7605
+ thumbnail?: Asset.Thumbnail;
7606
+ }
7607
+ namespace Asset {
7608
+ /**
7609
+ * Metadata of the asset with some additional information
7610
+ */
7611
+ interface Metadata {
7612
+ kind: '3d' | 'audio' | 'document' | 'image' | 'image-hdr' | 'json' | 'text' | 'video';
7613
+ /**
7614
+ * The type of the asset. Ex: 'inference-txt2img' will represent an asset generated
7615
+ * from a text to image model
7616
+ */
7617
+ type: '3d-texture' | '3d-texture-albedo' | '3d-texture-metallic' | '3d-texture-mtl' | '3d-texture-normal' | '3d-texture-roughness' | '3d23d' | '3d23d-texture' | 'audio2audio' | 'audio2txt' | 'audio2video' | 'background-removal' | 'canvas' | 'canvas-drawing' | 'canvas-export' | 'detection' | 'generative-fill' | 'image-prompt-editing' | 'img23d' | 'img2img' | 'img2splat' | 'img2txt' | 'img2video' | 'inference-controlnet' | 'inference-controlnet-img2img' | 'inference-controlnet-inpaint' | 'inference-controlnet-inpaint-ip-adapter' | 'inference-controlnet-ip-adapter' | 'inference-controlnet-reference' | 'inference-controlnet-texture' | 'inference-img2img' | 'inference-img2img-ip-adapter' | 'inference-img2img-texture' | 'inference-inpaint' | 'inference-inpaint-ip-adapter' | 'inference-reference' | 'inference-reference-texture' | 'inference-txt2img' | 'inference-txt2img-ip-adapter' | 'inference-txt2img-texture' | 'patch' | 'pixelization' | 'reframe' | 'restyle' | 'segment' | 'segmentation-image' | 'segmentation-mask' | 'skybox-3d' | 'skybox-base-360' | 'skybox-hdri' | 'texture' | 'texture-albedo' | 'texture-ao' | 'texture-edge' | 'texture-height' | 'texture-metallic' | 'texture-normal' | 'texture-smoothness' | 'txt23d' | 'txt2audio' | 'txt2img' | 'txt2txt' | 'txt2video' | 'unknown' | 'uploaded' | 'uploaded-3d' | 'uploaded-audio' | 'uploaded-avatar' | 'uploaded-text' | 'uploaded-video' | 'upscale' | 'upscale-skybox' | 'upscale-texture' | 'upscale-video' | 'vectorization' | 'video23d' | 'video2audio' | 'video2img' | 'video2video' | 'voice-clone';
7618
+ /**
7619
+ * How angular is the surface? 0 is like a sphere, 1 is like a mechanical object
7620
+ */
7621
+ angular?: number;
7622
+ /**
7623
+ * The optional aspect ratio given for the generation, only applicable for some
7624
+ * models
7625
+ */
7626
+ aspectRatio?: string;
7627
+ backgroundOpacity?: number;
7628
+ /**
7629
+ * The baseModelId that maybe changed at inference time
7630
+ */
7631
+ baseModelId?: string;
7632
+ /**
7633
+ * A bounding box around the object of interest, in the format [x1, y1, x2, y2].
7634
+ */
7635
+ bbox?: Array<number>;
7636
+ betterQuality?: boolean;
7637
+ /**
7638
+ * The control image already processed by canny detector. Must reference an
7639
+ * existing AssetId.
7640
+ */
7641
+ cannyStructureImage?: string;
7642
+ /**
7643
+ * Activate clustering.
7644
+ */
7645
+ clustering?: boolean;
7646
+ /**
7647
+ * Ensure upscaled tile have the same color histogram as original tile.
7648
+ */
7649
+ colorCorrection?: boolean;
7650
+ colorMode?: string;
7651
+ colorPrecision?: number;
7652
+ /**
7653
+ * Flux Kontext LoRA to style the image. For Flux Kontext Prompt Editing.
7654
+ */
7655
+ concepts?: Array<Metadata.Concept>;
7656
+ contours?: Array<Array<Array<Array<number>>>>;
7657
+ /**
7658
+ * End step for control.
7659
+ */
7660
+ controlEnd?: number;
7661
+ /**
7662
+ * The date when the asset was copied to a project
7663
+ */
7664
+ copiedAt?: string;
7665
+ cornerThreshold?: number;
7666
+ /**
7667
+ * Allow the generation of "hallucinations" during the upscale process, which adds
7668
+ * additional details and deviates from the original image. Default: optimized for
7669
+ * your preset and style.
7670
+ */
7671
+ creativity?: number;
7672
+ /**
7673
+ * Amount of decay in creativity over the upscale process. The lowest the value,
7674
+ * the less the creativity will be preserved over the upscale process.
7675
+ */
7676
+ creativityDecay?: number;
7677
+ /**
7678
+ * If true, use the default parameters
7679
+ */
7680
+ defaultParameters?: boolean;
7681
+ /**
7682
+ * The depth fidelity if a depth image provided
7683
+ */
7684
+ depthFidelity?: number;
7685
+ /**
7686
+ * The control image processed by depth estimator. Must reference an existing
7687
+ * AssetId.
7688
+ */
7689
+ depthImage?: string;
7690
+ /**
7691
+ * Amount of details to remove or add
7692
+ */
7693
+ detailsLevel?: number;
7694
+ dilate?: number;
7695
+ /**
7696
+ * Contrast factor for Grayscale detector
7697
+ */
7698
+ factor?: number;
7699
+ /**
7700
+ * The name its parent's files reference it by (an OBJ's MTL, an MTL's texture),
7701
+ * kept as delivered.
7702
+ */
7703
+ fileName?: string;
7704
+ filterSpeckle?: number;
7705
+ /**
7706
+ * Determine the scale at which the upscale process works.
7707
+ *
7708
+ * - With a small value, the upscale works at the largest scale, resulting in fewer
7709
+ * added details and more coherent images. Ideal for portraits, for example.
7710
+ * - With a large value, the upscale works at the smallest scale, resulting in more
7711
+ * added details and more hallucinations. Ideal for landscapes, for example.
7712
+ *
7713
+ * (info): A small value is slower and more expensive to run.
7714
+ */
7715
+ fractality?: number;
7716
+ /**
7717
+ * Apply extra control to the Skybox 360 geometry. The higher the value, the more
7718
+ * the 360 geometry will influence the generated skybox image.
7719
+ *
7720
+ * Use with caution. Default is adapted to the other parameters.
7721
+ */
7722
+ geometryEnforcement?: number;
7723
+ /**
7724
+ * The guidance used to generate this asset
7725
+ */
7726
+ guidance?: number;
7727
+ halfMode?: boolean;
7728
+ hdr?: number;
7729
+ height?: number;
7730
+ /**
7731
+ * High threshold for Canny detector
7732
+ */
7733
+ highThreshold?: number;
7734
+ /**
7735
+ * (deprecated) Horizontal expansion ratio.
7736
+ */
7737
+ horizontalExpansionRatio?: number;
7738
+ /**
7739
+ * The input image to process. Must reference an existing AssetId or be a data URL.
7740
+ */
7741
+ image?: string;
7742
+ /**
7743
+ * Strengthen the similarity to the original image during the upscale. Default:
7744
+ * optimized for your preset and style.
7745
+ */
7746
+ imageFidelity?: number;
7747
+ /**
7748
+ * Preserve the seamless properties of skybox or texture images. Input has to be of
7749
+ * same type (seamless).
7750
+ */
7751
+ imageType?: 'seamfull' | 'skybox' | 'texture';
7752
+ /**
7753
+ * The id of the Inference describing how this image was generated
7754
+ */
7755
+ inferenceId?: string;
7756
+ /**
7757
+ * When set to `high`, allows to better preserve details from the input images in
7758
+ * the output. This is especially useful when using images that contain elements
7759
+ * like faces or logos that require accurate preservation in the generated image.
7760
+ *
7761
+ * You can provide multiple input images that will all be preserved with high
7762
+ * fidelity, but keep in mind that the first image will be preserved with richer
7763
+ * textures and finer details, so if you include elements such as faces, consider
7764
+ * placing them in the first image.
7765
+ *
7766
+ * Only available for the `gpt-image-1` model.
7767
+ */
7768
+ inputFidelity?: 'high' | 'low';
7769
+ /**
7770
+ * Location of the input image in the output.
7771
+ */
7772
+ inputLocation?: 'bottom' | 'left' | 'middle' | 'right' | 'top';
7773
+ /**
7774
+ * To invert the relief
7775
+ */
7776
+ invert?: boolean;
7777
+ /**
7778
+ * Its own references (an OBJ's `mtllib`, an MTL's maps) were kept as delivered.
7779
+ */
7780
+ keepsFileNames?: boolean;
7781
+ /**
7782
+ * How polished is the surface? 0 is like a rough surface, 1 is like a mirror
7783
+ */
7784
+ keypointThreshold?: number;
7785
+ layerDifference?: number;
7786
+ lengthThreshold?: number;
7787
+ /**
7788
+ * The ISO timestamp when the lock on the canvas will expire
7789
+ */
7790
+ lockExpiresAt?: string;
7791
+ /**
7792
+ * Low threshold for Canny detector
7793
+ */
7794
+ lowThreshold?: number;
7795
+ /**
7796
+ * The mask used for the asset generation or editing
7797
+ */
7798
+ mask?: string;
7799
+ maxIterations?: number;
7800
+ /**
7801
+ * Maximum threshold for Grayscale conversion
7802
+ */
7803
+ maxThreshold?: number;
7804
+ /**
7805
+ * Minimum threshold for Grayscale conversion
7806
+ */
7807
+ minThreshold?: number;
7808
+ /**
7809
+ * Modality to detect
7810
+ */
7811
+ modality?: 'canny' | 'depth' | 'grayscale' | 'lineart_anime' | 'mlsd' | 'normal' | 'pose' | 'scribble' | 'segmentation' | 'sketch';
7812
+ mode?: string;
7813
+ /**
7814
+ * The modelId used to generate this asset
7815
+ */
7816
+ modelId?: string;
7817
+ /**
7818
+ * The type of the generator used
7819
+ */
7820
+ modelType?: 'custom' | 'elevenlabs-voice' | 'flux.1' | 'flux.1-composition' | 'flux.1-kontext-dev' | 'flux.1-kontext-lora' | 'flux.1-krea-dev' | 'flux.1-krea-lora' | 'flux.1-lora' | 'flux.1-pro' | 'flux.1.1-pro-ultra' | 'flux.2-dev-edit-lora' | 'flux.2-dev-lora' | 'flux.2-klein-4b-edit-lora' | 'flux.2-klein-4b-lora' | 'flux.2-klein-9b-edit-lora' | 'flux.2-klein-9b-lora' | 'flux.2-klein-base-4b-edit-lora' | 'flux.2-klein-base-4b-lora' | 'flux.2-klein-base-9b-edit-lora' | 'flux.2-klein-base-9b-lora' | 'flux1.1-pro' | 'gpt-image-1' | 'qwen-image-2512-lora' | 'qwen-image-edit-2509-lora' | 'qwen-image-edit-2511-lora' | 'qwen-image-edit-lora' | 'qwen-image-lora' | 'zimage-de-turbo-lora' | 'zimage-lora' | 'zimage-turbo-lora';
7821
+ name?: string;
7822
+ nbMasks?: number;
7823
+ /**
7824
+ * The negative prompt used to generate this asset
7825
+ */
7826
+ negativePrompt?: string;
7827
+ /**
7828
+ * Controls the influence of the negative prompt. Default 0 means the negative
7829
+ * prompt has no effect. Higher values increase negative prompt influence. Must
7830
+ * be > 0 if negativePrompt is provided.
7831
+ */
7832
+ negativePromptStrength?: number;
7833
+ /**
7834
+ * The number of denoising steps for each image generation.
7835
+ */
7836
+ numInferenceSteps?: number;
7837
+ /**
7838
+ * The number of outputs to generate.
7839
+ */
7840
+ numOutputs?: number;
7841
+ originalAssetId?: string;
7842
+ outputIndex?: number;
7843
+ /**
7844
+ * Overlap percentage for the output image.
7845
+ */
7846
+ overlapPercentage?: number;
7847
+ /**
7848
+ * Override the embeddings of the model. Only your prompt and negativePrompt will
7849
+ * be used. Use with caution.
7850
+ */
7851
+ overrideEmbeddings?: boolean;
7852
+ parentId?: string;
7853
+ parentJobId?: string;
7854
+ pathPrecision?: number;
7855
+ /**
7856
+ * List of points (label, x, y) in the image where label = 0 for background and 1
7857
+ * for object.
7858
+ */
7859
+ points?: Array<Array<number>>;
7860
+ /**
7861
+ * How polished is the surface? 0 is like a rough surface, 1 is like a mirror
7862
+ */
7863
+ polished?: number;
7864
+ preset?: string;
7865
+ progressPercent?: number;
7866
+ /**
7867
+ * The prompt that guided the asset generation or editing
7868
+ */
7869
+ prompt?: string;
7870
+ /**
7871
+ * Increase the fidelity to the prompt during upscale. Default: optimized for your
7872
+ * preset and style.
7873
+ */
7874
+ promptFidelity?: number;
7875
+ /**
7876
+ * How raised is the surface? 0 is flat like water, 1 is like a very rough rock
7877
+ */
7878
+ raised?: number;
7879
+ /**
7880
+ * The reference images used for the asset generation or editing
7881
+ */
7882
+ referenceImages?: Array<string>;
7883
+ /**
7884
+ * Additional refinement steps before scaling.
7885
+ *
7886
+ * If scalingFactor == 1, the refinement process will be applied (1 +
7887
+ * refinementSteps) times. If scalingFactor > 1, the refinement process will be
7888
+ * applied refinementSteps times.
7889
+ */
7890
+ refinementSteps?: number;
7891
+ /**
7892
+ * Remove background for Grayscale detector
7893
+ */
7894
+ removeBackground?: boolean;
7895
+ /**
7896
+ * Size proportion of the input image in the output.
7897
+ */
7898
+ resizeOption?: number;
7899
+ /**
7900
+ * Boolean to output the contours.
7901
+ */
7902
+ resultContours?: boolean;
7903
+ /**
7904
+ * Boolean to return the source image with the mask applied as alpha channel (RGBA
7905
+ * PNG, transparent background) instead of the binary mask. Mutually exclusive with
7906
+ * `resultMask` — passing both as `true` returns a 400 error. Note:
7907
+ * `backgroundOpacity` is no longer honored — alpha is binary (0/255) only.
7908
+ */
7909
+ resultImage?: boolean;
7910
+ /**
7911
+ * Boolean to return the binary masks in the response. Mutually exclusive with
7912
+ * `resultImage` — passing both as `true` returns a 400 error.
7913
+ */
7914
+ resultMask?: boolean;
7915
+ rootParentId?: string;
7916
+ /**
7917
+ * Save a flipbook of the texture. Deactivated when the input texture is larger
7918
+ * than 2048x2048px
7919
+ */
7920
+ saveFlipbook?: boolean;
7921
+ /**
7922
+ * Scaling factor (when `targetWidth` not specified)
7923
+ */
7924
+ scalingFactor?: number;
7925
+ /**
7926
+ * The scheduler used to generate this asset
7927
+ */
7928
+ scheduler?: string;
7929
+ /**
7930
+ * The seed used to generate this asset. <!> Can be a string or a number in some
7931
+ * cases <!>.
7932
+ */
7933
+ seed?: string;
7934
+ /**
7935
+ * Sharpen tiles.
7936
+ */
7937
+ sharpen?: boolean;
7938
+ /**
7939
+ * How shiny is the surface? 0 is like a matte surface, 1 is like a diamond
7940
+ */
7941
+ shiny?: number;
7942
+ size?: number;
7943
+ /**
7944
+ * Activate sketch detection instead of canny.
7945
+ */
7946
+ sketch?: boolean;
7947
+ sourceProjectId?: string;
7948
+ spliceThreshold?: number;
7949
+ /**
7950
+ * The strength
7951
+ *
7952
+ * Only available for the `flux-kontext` LoRA model.
7953
+ */
7954
+ strength?: number;
7955
+ /**
7956
+ * Strength for the input image structure preservation
7957
+ */
7958
+ structureFidelity?: number;
7959
+ /**
7960
+ * The control image for structure. A canny detector will be applied to this image.
7961
+ * Must reference an existing AssetId.
7962
+ */
7963
+ structureImage?: string;
7964
+ style?: '3d-cartoon' | '3d-rendered' | 'anime' | 'cartoon' | 'cinematic' | 'claymation' | 'cloud-skydome' | 'comic' | 'cyberpunk' | 'enchanted' | 'fantasy' | 'ink' | 'manga' | 'manga-color' | 'minimalist' | 'neon-tron' | 'oil-painting' | 'pastel' | 'photo' | 'photography' | 'psychedelic' | 'retro-fantasy' | 'scifi-concept-art' | 'space' | 'standard' | 'whimsical';
7965
+ /**
7966
+ * The higher the value the more it will look like the style image(s)
7967
+ */
7968
+ styleFidelity?: number;
7969
+ /**
7970
+ * List of style images. Most of the time, only one image is enough. It must be
7971
+ * existing AssetIds.
7972
+ */
7973
+ styleImages?: Array<string>;
7974
+ /**
7975
+ * Condition the influence of the style image(s). The higher the value, the more
7976
+ * the style images will influence the upscaled image.
7977
+ */
7978
+ styleImagesFidelity?: number;
7979
+ /**
7980
+ * The target height of the output image.
7981
+ */
7982
+ targetHeight?: number;
7983
+ /**
7984
+ * Target width for the upscaled image, take priority over scaling factor
7985
+ */
7986
+ targetWidth?: number;
7987
+ /**
7988
+ * A textual description / keywords describing the object of interest.
7989
+ */
7990
+ text?: string;
7991
+ /**
7992
+ * The asset to convert in texture maps. Must reference an existing AssetId.
7993
+ */
7994
+ texture?: string;
7995
+ /**
7996
+ * The thumbnail of the canvas
7997
+ */
7998
+ thumbnail?: Metadata.Thumbnail;
7999
+ /**
8000
+ * If set to true, during the upscaling process, the model will match tiles of the
8001
+ * source image with tiles of the style image(s). This will result in a more
8002
+ * coherent restyle. Works best with style images that have a similar composition.
8003
+ */
8004
+ tileStyle?: boolean;
8005
+ trainingImage?: boolean;
8006
+ /**
8007
+ * (deprecated) Vertical expansion ratio.
8008
+ */
8009
+ verticalExpansionRatio?: number;
8010
+ /**
8011
+ * The width of the rendered image.
8012
+ */
8013
+ width?: number;
8014
+ }
8015
+ namespace Metadata {
8016
+ interface Concept {
8017
+ /**
8018
+ * The model ID (example: "model_eyVcnFJcR92BxBkz7N6g5w")
8019
+ */
8020
+ modelId: string;
8021
+ /**
8022
+ * The scale of the model (example: 1.0) For Flux Kontext Prompt Editing, the scale
8023
+ * is between 0 and 2.
8024
+ */
8025
+ scale: number;
8026
+ /**
8027
+ * The epoch of the model (example: "000001") Only available for Flux Lora Trained
8028
+ * models
8029
+ */
8030
+ modelEpoch?: string;
8031
+ }
8032
+ /**
8033
+ * The thumbnail of the canvas
8034
+ */
8035
+ interface Thumbnail {
8036
+ /**
8037
+ * The AssetId of the image used as a thumbnail for the canvas (example:
8038
+ * "asset_GTrL3mq4SXWyMxkOHRxlpw")
8039
+ */
8040
+ assetId: string;
8041
+ /**
8042
+ * The url of the image used as a thumbnail for the canvas
8043
+ */
8044
+ url: string;
8045
+ }
8046
+ }
8047
+ /**
8048
+ * The properties of the asset, content may depend on the kind of asset returned
8049
+ */
8050
+ interface Properties {
8051
+ size: number;
8052
+ /**
8053
+ * Number of animation frames if animations exist
8054
+ */
8055
+ animationFrameCount?: number;
8056
+ /**
8057
+ * Bitrate of the media in bits per second
8058
+ */
8059
+ bitrate?: number;
8060
+ /**
8061
+ * Number of bones if skeleton exists
8062
+ */
8063
+ boneCount?: number;
8064
+ /**
8065
+ * Recommended preview camera mode emitted by the generator (gsplat route); passed
8066
+ * through to mesh-rendering verbatim.
8067
+ */
8068
+ cameraMode?: 'aerial' | 'interior' | 'turntable';
8069
+ /**
8070
+ * Recommended preview camera path emitted by the generator (gsplat route); passed
8071
+ * through to mesh-rendering verbatim.
8072
+ */
8073
+ cameraTrajectory?: Array<Properties.CameraTrajectory>;
8074
+ /**
8075
+ * Number of channels of the audio
8076
+ */
8077
+ channels?: number;
8078
+ /**
8079
+ * Number of Unicode code points in the text. Code-point-aware (so a non-BMP emoji
8080
+ * counts as 1) but not full grapheme-cluster aware (a ZWJ sequence still counts as
8081
+ * several).
8082
+ */
8083
+ charCount?: number;
8084
+ /**
8085
+ * Classification of the audio
8086
+ */
8087
+ classification?: 'effect' | 'interview' | 'music' | 'other' | 'sound' | 'speech' | 'text' | 'unknown';
8088
+ /**
8089
+ * Codec name of the media
8090
+ */
8091
+ codecName?: string;
8092
+ /**
8093
+ * Description of the audio
8094
+ */
8095
+ description?: string;
8096
+ /**
8097
+ * Bounding box dimensions [width, height, depth]
8098
+ */
8099
+ dimensions?: Array<number>;
8100
+ /**
8101
+ * Duration of the media in seconds
8102
+ */
8103
+ duration?: number;
8104
+ /**
8105
+ * Number of faces/triangles in the mesh
8106
+ */
8107
+ faceCount?: number;
8108
+ /**
8109
+ * Format of the mesh file (e.g. 'glb', etc.)
8110
+ */
8111
+ format?: string;
8112
+ /**
8113
+ * Frame rate of the video in frames per second
8114
+ */
8115
+ frameRate?: number;
8116
+ /**
8117
+ * Whether the mesh has animations
8118
+ */
8119
+ hasAnimations?: boolean;
8120
+ /**
8121
+ * True when `preview` holds the entire content unmodified — consumers can use it
8122
+ * directly without fetching `asset.url`. False or undefined means the content
8123
+ * exceeds the preview budget and consumers must fetch the full body from S3 to
8124
+ * read past the preview.
8125
+ */
8126
+ hasFullPreview?: boolean;
8127
+ /**
8128
+ * Whether the mesh has normal vectors
8129
+ */
8130
+ hasNormals?: boolean;
8131
+ /**
8132
+ * Whether the mesh has bones/skeleton
8133
+ */
8134
+ hasSkeleton?: boolean;
8135
+ /**
8136
+ * Whether the mesh has UV coordinates
8137
+ */
8138
+ hasUVs?: boolean;
8139
+ height?: number;
8140
+ /**
8141
+ * Number of frames in the video
8142
+ */
8143
+ nbFrames?: number;
8144
+ /**
8145
+ * Leading slice of the content used for inline UI display and as a search
8146
+ * shortcut. Capped at TEXT_PREVIEW_MAX_BYTES (UTF-8) and always cut on a
8147
+ * code-point boundary so no character is split. Number of characters in the
8148
+ * preview varies by script (around 1024 for ASCII, ~340 for CJK, ~256 for
8149
+ * emoji-heavy text at the default 1 KB budget).
8150
+ */
8151
+ preview?: string;
8152
+ /**
8153
+ * Sample rate of the media in Hz
8154
+ */
8155
+ sampleRate?: number;
8156
+ /**
8157
+ * Transcription of the audio
8158
+ */
8159
+ transcription?: Properties.Transcription;
8160
+ /**
8161
+ * Number of vertices in the mesh
8162
+ */
8163
+ vertexCount?: number;
8164
+ width?: number;
8165
+ /**
8166
+ * Number of whitespace-separated words in the text
8167
+ */
8168
+ wordCount?: number;
8169
+ }
8170
+ namespace Properties {
8171
+ /**
8172
+ * One explicit camera keyframe for the splat route. Several are interpolated over
8173
+ * the requested frames into an orbit/fly-through; a single keyframe renders a
8174
+ * static view. Overrides {@link SplatCameraMode} when provided.
8175
+ */
8176
+ interface CameraTrajectory {
8177
+ /**
8178
+ * Camera eye position in the splat's world frame.
8179
+ */
8180
+ position: Array<number>;
8181
+ /**
8182
+ * Look-at point in the splat's world frame.
8183
+ */
8184
+ target: Array<number>;
8185
+ /**
8186
+ * Vertical field of view in degrees (defaults to 50 in the renderer).
8187
+ */
8188
+ fov?: number;
8189
+ }
8190
+ /**
8191
+ * Transcription of the audio
8192
+ */
8193
+ interface Transcription {
8194
+ text: string;
8195
+ }
8196
+ }
8197
+ /**
8198
+ * The video asset's first frame.
8199
+ *
8200
+ * Contains the assetId and the url of the first frame.
8201
+ */
8202
+ interface FirstFrame {
8203
+ assetId: string;
8204
+ url: string;
8205
+ }
8206
+ /**
8207
+ * The video asset's last frame.
8208
+ *
8209
+ * Contains the assetId and the url of the last frame.
8210
+ */
8211
+ interface LastFrame {
8212
+ assetId: string;
8213
+ url: string;
8214
+ }
8215
+ /**
8216
+ * The asset's preview.
8217
+ *
8218
+ * Contains the assetId and the url of the preview.
8219
+ */
8220
+ interface Preview {
8221
+ assetId: string;
8222
+ url: string;
8223
+ }
8224
+ /**
8225
+ * Quality Gate result, computed asynchronously after generation.
8226
+ *
8227
+ * `details` (the per-dimension reasons and suggestions) is returned only when the
8228
+ * asset is read with `withQualityGateDetails=true`.
8229
+ */
8230
+ interface QualityGate {
8231
+ /**
8232
+ * ISO-8601 timestamp of when scoring ran
8233
+ */
8234
+ computedAt: string;
8235
+ /**
8236
+ * Whether scoring succeeded or errored
8237
+ */
8238
+ status: 'error' | 'scored';
8239
+ /**
8240
+ * Rubric/model version that produced this result
8241
+ */
8242
+ version: string;
8243
+ /**
8244
+ * Generic AI-quality sub-score
8245
+ */
8246
+ aiQualityScore?: number;
8247
+ /**
8248
+ * Ids of briefs that contributed
8249
+ */
8250
+ appliedBriefIds?: Array<string>;
8251
+ /**
8252
+ * Brief-compliance sub-score (omitted when no brief applied)
8253
+ */
8254
+ briefComplianceScore?: number;
8255
+ /**
8256
+ * Per-dimension reasons and suggestions, as produced by the detector.
8257
+ *
8258
+ * Returned only when the asset is read with `withQualityGateDetails=true` by the
8259
+ * project that owns it — the brief-compliance text paraphrases that project's
8260
+ * brief, so a cross-project read of a public asset gets the summary alone. Also
8261
+ * omitted when the archived verdict is unavailable (asset scored by an older
8262
+ * version, or an unreadable archive).
8263
+ */
8264
+ details?: QualityGate.Details;
8265
+ /**
8266
+ * Error message when status is 'error' (truncated)
8267
+ */
8268
+ error?: string;
8269
+ /**
8270
+ * 0–100 composite score (present when status is 'scored')
8271
+ */
8272
+ overallScore?: number;
8273
+ /**
8274
+ * Sensitivity used for the verdict
8275
+ */
8276
+ sensitivity?: 'high' | 'low' | 'medium';
8277
+ /**
8278
+ * pass / warn / fail (present when status is 'scored')
8279
+ */
8280
+ verdict?: 'fail' | 'pass' | 'warn';
8281
+ }
8282
+ namespace QualityGate {
8283
+ /**
8284
+ * Per-dimension reasons and suggestions, as produced by the detector.
8285
+ *
8286
+ * Returned only when the asset is read with `withQualityGateDetails=true` by the
8287
+ * project that owns it — the brief-compliance text paraphrases that project's
8288
+ * brief, so a cross-project read of a public asset gets the summary alone. Also
8289
+ * omitted when the archived verdict is unavailable (asset scored by an older
8290
+ * version, or an unreadable archive).
8291
+ */
8292
+ interface Details {
8293
+ /**
8294
+ * Always-on generic AI-quality dimension
8295
+ */
8296
+ aiQuality: Details.AIQuality;
8297
+ /**
8298
+ * Brief-compliance dimension; omitted when no brief applied
8299
+ */
8300
+ briefCompliance?: Details.BriefCompliance;
8301
+ }
8302
+ namespace Details {
8303
+ /**
8304
+ * Always-on generic AI-quality dimension
8305
+ */
8306
+ interface AIQuality {
8307
+ /**
8308
+ * Why the image scored as it did
8309
+ */
8310
+ reasons: Array<string>;
8311
+ /**
8312
+ * 0–100; higher is better (more compliant / less AI-looking)
8313
+ */
8314
+ score: number;
8315
+ /**
8316
+ * Actionable suggestions to improve the score
8317
+ */
8318
+ suggestions: Array<string>;
8319
+ }
8320
+ /**
8321
+ * Brief-compliance dimension; omitted when no brief applied
8322
+ */
8323
+ interface BriefCompliance {
8324
+ /**
8325
+ * Why the image scored as it did
8326
+ */
8327
+ reasons: Array<string>;
8328
+ /**
8329
+ * 0–100; higher is better (more compliant / less AI-looking)
8330
+ */
8331
+ score: number;
8332
+ /**
8333
+ * Actionable suggestions to improve the score
8334
+ */
8335
+ suggestions: Array<string>;
8336
+ }
8337
+ }
8338
+ }
8339
+ /**
8340
+ * The asset's thumbnail.
8341
+ *
8342
+ * Contains the assetId and the url of the thumbnail.
8343
+ */
8344
+ interface Thumbnail {
8345
+ assetId: string;
8346
+ url: string;
8347
+ }
8348
+ }
8349
+ /**
8350
+ * Brief-compliance dimension; omitted when no brief applied
8351
+ */
8352
+ interface BriefCompliance {
8353
+ /**
8354
+ * Why the image scored as it did
8355
+ */
8356
+ reasons: Array<string>;
8357
+ /**
8358
+ * 0–100; higher is better (more compliant / less AI-looking)
8359
+ */
8360
+ score: number;
8361
+ /**
8362
+ * Actionable suggestions to improve the score
8363
+ */
8364
+ suggestions: Array<string>;
8365
+ }
8366
+ /**
8367
+ * Compute Units cost per billing action for this request, after discount. Values
8368
+ * sum to `creativeUnitsCost`. Only Compute-Units-consuming actions with a non-zero
8369
+ * charge appear. Lets clients split the total (e.g. generation vs `quality-gate`)
8370
+ * — including on dryRun estimates.
8371
+ */
8372
+ interface CostDetails {
8373
+ 'assistant-message'?: number;
8374
+ caption?: number;
8375
+ 'custom-generation'?: number;
8376
+ 'describe-style'?: number;
8377
+ detection?: number;
8378
+ embed?: number;
8379
+ 'image-prompt-editing'?: number;
8380
+ 'inference-images'?: number;
8381
+ 'ip-detection'?: number;
8382
+ pixelate?: number;
8383
+ prompt?: number;
8384
+ 'quality-gate'?: number;
8385
+ 'remove-background'?: number;
8386
+ repaint?: number;
8387
+ restyle?: number;
8388
+ segmentation?: number;
8389
+ 'skybox-base-360'?: number;
8390
+ 'skybox-upscale-360'?: number;
8391
+ texture?: number;
8392
+ 'train-model'?: number;
8393
+ translate?: number;
8394
+ upscale?: number;
8395
+ vectorization?: number;
8396
+ }
8397
+ /**
8398
+ * IP detection findings, when detection ran for this request.
8399
+ */
8400
+ interface IPDetection {
8401
+ /**
8402
+ * Whether and how detection affected the request.
8403
+ */
8404
+ action: 'allowed' | 'blocked' | 'flagged';
8405
+ /**
8406
+ * Number of images the detectors actually analyzed — a video counts as each of its
8407
+ * extracted frames, and an image that could not be read is excluded (and not
8408
+ * billed). Each of them is priced once per enabled filter.
8409
+ */
8410
+ analyzedImagesCount: number;
8411
+ /**
8412
+ * IP-detection CU fee, separate from creativeUnitsCost: it follows the provider
8413
+ * tokens the run sends — the prompt plus every analyzed image, once per enabled
8414
+ * filter — with a 1 CU minimum per run.
8415
+ */
8416
+ creativeUnitsCharged: number;
8417
+ /**
8418
+ * Number of enabled filters evaluated for this request.
8419
+ */
8420
+ evaluatedFilters: number;
8421
+ /**
8422
+ * Per-filter verdicts gathered for this request.
8423
+ */
8424
+ findings: Array<IPDetection.Finding>;
8425
+ /**
8426
+ * Whether a filter considered the inputs an IP risk. Independent of `action`: a
8427
+ * request blocked because a detector errored is `blocked` and NOT flagged.
8428
+ */
8429
+ flagged: boolean;
8430
+ /**
8431
+ * True if one or more detectors errored while evaluating this request.
8432
+ */
8433
+ hasDetectorError?: boolean;
8434
+ }
8435
+ namespace IPDetection {
8436
+ /**
8437
+ * A single filter's verdict.
8438
+ */
8439
+ interface Finding {
8440
+ /**
8441
+ * Category of the filter that produced this verdict.
8442
+ */
8443
+ category: 'artist-style' | 'brand-trademark' | 'celebrity-likeness' | 'custom' | 'fictional-character';
8444
+ /**
8445
+ * Confidence score from 0 (low) to 1 (high).
8446
+ */
8447
+ confidence: number;
8448
+ /**
8449
+ * Identifier of the filter that produced this verdict.
8450
+ */
8451
+ filterId: string;
8452
+ /**
8453
+ * Display name of the filter that produced this verdict.
8454
+ */
8455
+ filterName: string;
8456
+ /**
8457
+ * Whether this filter considered the request an IP risk.
8458
+ */
8459
+ flagged: boolean;
8460
+ /**
8461
+ * Short, user-facing explanation of the verdict.
8462
+ */
8463
+ reason: string;
8464
+ /**
8465
+ * Named entities the filter recognized (e.g. characters, brands, people).
8466
+ */
8467
+ entities?: Array<string>;
8468
+ }
8469
+ }
8470
+ }
8471
+ export interface GenerateRunModelResponse {
8472
+ job: GenerateRunModelResponse.Job;
8473
+ /**
8474
+ * Compute Units cost per billing action for this request, after discount. Values
8475
+ * sum to `creativeUnitsCost`. Only Compute-Units-consuming actions with a non-zero
8476
+ * charge appear. Lets clients split the total (e.g. generation vs `quality-gate`)
8477
+ * — including on dryRun estimates.
8478
+ */
8479
+ costDetails?: GenerateRunModelResponse.CostDetails;
8480
+ /**
8481
+ * The Compute Units cost for the request billed
8482
+ */
8483
+ creativeUnitsCost?: number;
8484
+ /**
8485
+ * The Compute Units discount for the request billed
8486
+ */
8487
+ creativeUnitsDiscount?: number;
8488
+ /**
8489
+ * IP detection findings, when detection ran for this request.
8490
+ */
8491
+ ipDetection?: GenerateRunModelResponse.IPDetection;
8492
+ }
8493
+ export declare namespace GenerateRunModelResponse {
8494
+ interface Job {
8495
+ /**
8496
+ * The job creation date as an ISO string (example: "2023-02-03T11:19:41.579Z")
8497
+ */
8498
+ createdAt: string;
8499
+ /**
8500
+ * The job ID (example: "job_ocZCnG1Df35XRL1QyCZSRxAG8")
8501
+ */
8502
+ jobId: string;
8503
+ /**
8504
+ * The type of job
8505
+ */
8506
+ jobType: 'assets-download' | 'canvas-export' | 'caption' | 'caption-llava' | 'custom' | 'describe-style' | 'detection' | 'embed' | 'flux' | 'flux-model-training' | 'generate-prompt' | 'image-generation' | 'image-prompt-editing' | 'inference' | 'mesh-preview-rendering' | 'model-download' | 'model-import' | 'model-training' | 'musubi-model-training' | 'openai-image-generation' | 'patch-image' | 'pixelate' | 'reframe' | 'remove-background' | 'repaint' | 'restyle' | 'segment' | 'skybox-3d' | 'skybox-base-360' | 'skybox-hdri' | 'skybox-upscale-360' | 'splat' | 'texture' | 'translate' | 'upload' | 'upscale' | 'upscale-skybox' | 'upscale-texture' | 'vectorize' | 'workflow';
8507
+ /**
8508
+ * Metadata of the job with some additional information
8509
+ */
8510
+ metadata: Job.Metadata;
8511
+ /**
8512
+ * Progress of the job (between 0 and 1)
8513
+ */
8514
+ progress: number;
8515
+ /**
8516
+ * The current status of the job
8517
+ */
8518
+ status: 'canceled' | 'failure' | 'finalizing' | 'in-progress' | 'pending' | 'queued' | 'success' | 'warming-up';
8519
+ /**
8520
+ * The history of the different statuses the job went through with the ISO string
8521
+ * date of when the job reached each statuses.
8522
+ */
8523
+ statusHistory: Array<Job.StatusHistory>;
8524
+ /**
8525
+ * The job last update date as an ISO string (example: "2023-02-03T11:19:41.579Z")
8526
+ */
8527
+ updatedAt: string;
8528
+ /**
8529
+ * The author user ID (example: "dcf121faaa1a0a0bbbd9ca1b73d62aea")
8530
+ */
8531
+ authorId?: string;
8532
+ /**
8533
+ * The billing of the job
8534
+ */
8535
+ billing?: Job.Billing;
8536
+ /**
8537
+ * The owner ID (example: "team_U3Qmc8PCdWXwAQJ4Dvw4tV6D")
8538
+ */
8539
+ ownerId?: string;
8540
+ }
8541
+ namespace Job {
8542
+ /**
8543
+ * Metadata of the job with some additional information
8544
+ */
8545
+ interface Metadata {
8546
+ /**
8547
+ * List of produced assets for this job
8548
+ */
8549
+ assetIds?: Array<string>;
8550
+ /**
7164
8551
  * Eventual error for the job
7165
8552
  */
7166
8553
  error?: string | null;
@@ -7212,7 +8599,7 @@ export declare namespace GenerateRunModelResponse {
7212
8599
  /**
7213
8600
  * The type of the job for the node.
7214
8601
  */
7215
- type: 'custom-model' | 'for-each' | 'generate-prompt' | 'list' | 'logic' | 'model' | 'remove-background' | 'transform' | 'user-approval' | 'workflow';
8602
+ type: 'custom-model' | 'for-each' | 'generate-prompt' | 'list' | 'logic' | 'model' | 'remove-background' | 'transform' | 'user-approval' | 'user-selection' | 'workflow';
7216
8603
  /**
7217
8604
  * List of produced assets for this node.
7218
8605
  */
@@ -7237,13 +8624,14 @@ export declare namespace GenerateRunModelResponse {
7237
8624
  */
7238
8625
  includeOutputsInWorkflowJob?: true;
7239
8626
  /**
7240
- * The inputs of the node.
8627
+ * The inputs of the node. For a user-selection node, the array input's `min`/`max`
8628
+ * bound how many items the user may pick (defaults: 1 and 100); conditional
8629
+ * connections may be present as additional inputs.
7241
8630
  */
7242
8631
  inputs?: Array<Flow.Input>;
7243
8632
  /**
7244
- * Statically-configured items for a List node. The node outputs this array as-is
7245
- * when executed. Only available for List nodes. The values can be strings,
7246
- * numbers, or asset IDs.
8633
+ * Statically-configured items for a List node, or the frozen candidate list of a
8634
+ * UserSelection node. The values can be strings, numbers, or asset IDs.
7247
8635
  */
7248
8636
  items?: Array<string>;
7249
8637
  /**
@@ -7444,8 +8832,7 @@ export declare namespace GenerateRunModelResponse {
7444
8832
  * - \`ifNotDefined\`: Input is required when another specified input is not
7445
8833
  * defined
7446
8834
  * - \`ifDefined\`: Input is required when another specified input is defined
7447
- * - \`conditionalValues\`: Input is required when another input has a specific
7448
- * value
8835
+ * - \`conditional\`: Input is required when other inputs have specific values
7449
8836
  *
7450
8837
  * By default, the input is not required.
7451
8838
  */
@@ -7606,8 +8993,7 @@ export declare namespace GenerateRunModelResponse {
7606
8993
  * - \`ifNotDefined\`: Input is required when another specified input is not
7607
8994
  * defined
7608
8995
  * - \`ifDefined\`: Input is required when another specified input is defined
7609
- * - \`conditionalValues\`: Input is required when another input has a specific
7610
- * value
8996
+ * - \`conditional\`: Input is required when other inputs have specific values
7611
8997
  *
7612
8998
  * By default, the input is not required.
7613
8999
  */
@@ -7657,8 +9043,7 @@ export declare namespace GenerateRunModelResponse {
7657
9043
  * - \`ifNotDefined\`: Input is required when another specified input is not
7658
9044
  * defined
7659
9045
  * - \`ifDefined\`: Input is required when another specified input is defined
7660
- * - \`conditionalValues\`: Input is required when another input has a specific
7661
- * value
9046
+ * - \`conditional\`: Input is required when other inputs have specific values
7662
9047
  *
7663
9048
  * By default, the input is not required.
7664
9049
  */
@@ -7668,12 +9053,9 @@ export declare namespace GenerateRunModelResponse {
7668
9053
  */
7669
9054
  always?: boolean;
7670
9055
  /**
7671
- * Makes this input required when another input has a specific value:
7672
- *
7673
- * - Key: name of the input to check
7674
- * - Value: operation and allowed values that trigger the requirement
9056
+ * Makes this input required when other inputs have one of the listed values
7675
9057
  */
7676
- conditionalValues?: unknown;
9058
+ conditional?: Required.Conditional;
7677
9059
  /**
7678
9060
  * Makes this input required when another input is defined:
7679
9061
  *
@@ -7689,6 +9071,24 @@ export declare namespace GenerateRunModelResponse {
7689
9071
  */
7690
9072
  ifNotDefined?: unknown;
7691
9073
  }
9074
+ namespace Required {
9075
+ /**
9076
+ * Makes this input required when other inputs have one of the listed values
9077
+ */
9078
+ interface Conditional {
9079
+ /**
9080
+ * The conditions to check:
9081
+ *
9082
+ * - Key: name of the input to check
9083
+ * - Value: values of that input that satisfy the condition
9084
+ */
9085
+ values: unknown;
9086
+ /**
9087
+ * How the conditions combine: \`and\` (all must match) or \`or\` (any must match)
9088
+ */
9089
+ operator?: 'and' | 'or';
9090
+ }
9091
+ }
7692
9092
  }
7693
9093
  /**
7694
9094
  * The reference to another input or output of the same workflow. Must have at
@@ -7724,8 +9124,7 @@ export declare namespace GenerateRunModelResponse {
7724
9124
  * - \`ifNotDefined\`: Input is required when another specified input is not
7725
9125
  * defined
7726
9126
  * - \`ifDefined\`: Input is required when another specified input is defined
7727
- * - \`conditionalValues\`: Input is required when another input has a specific
7728
- * value
9127
+ * - \`conditional\`: Input is required when other inputs have specific values
7729
9128
  *
7730
9129
  * By default, the input is not required.
7731
9130
  */
@@ -7735,12 +9134,9 @@ export declare namespace GenerateRunModelResponse {
7735
9134
  */
7736
9135
  always?: boolean;
7737
9136
  /**
7738
- * Makes this input required when another input has a specific value:
7739
- *
7740
- * - Key: name of the input to check
7741
- * - Value: operation and allowed values that trigger the requirement
9137
+ * Makes this input required when other inputs have one of the listed values
7742
9138
  */
7743
- conditionalValues?: unknown;
9139
+ conditional?: Required.Conditional;
7744
9140
  /**
7745
9141
  * Makes this input required when another input is defined:
7746
9142
  *
@@ -7756,6 +9152,24 @@ export declare namespace GenerateRunModelResponse {
7756
9152
  */
7757
9153
  ifNotDefined?: unknown;
7758
9154
  }
9155
+ namespace Required {
9156
+ /**
9157
+ * Makes this input required when other inputs have one of the listed values
9158
+ */
9159
+ interface Conditional {
9160
+ /**
9161
+ * The conditions to check:
9162
+ *
9163
+ * - Key: name of the input to check
9164
+ * - Value: values of that input that satisfy the condition
9165
+ */
9166
+ values: unknown;
9167
+ /**
9168
+ * How the conditions combine: \`and\` (all must match) or \`or\` (any must match)
9169
+ */
9170
+ operator?: 'and' | 'or';
9171
+ }
9172
+ }
7759
9173
  }
7760
9174
  /**
7761
9175
  * The logic of the node. Only available for logic nodes.
@@ -8090,7 +9504,7 @@ export declare namespace GenerateTranslateResponse {
8090
9504
  /**
8091
9505
  * The type of the job for the node.
8092
9506
  */
8093
- type: 'custom-model' | 'for-each' | 'generate-prompt' | 'list' | 'logic' | 'model' | 'remove-background' | 'transform' | 'user-approval' | 'workflow';
9507
+ type: 'custom-model' | 'for-each' | 'generate-prompt' | 'list' | 'logic' | 'model' | 'remove-background' | 'transform' | 'user-approval' | 'user-selection' | 'workflow';
8094
9508
  /**
8095
9509
  * List of produced assets for this node.
8096
9510
  */
@@ -8115,13 +9529,14 @@ export declare namespace GenerateTranslateResponse {
8115
9529
  */
8116
9530
  includeOutputsInWorkflowJob?: true;
8117
9531
  /**
8118
- * The inputs of the node.
9532
+ * The inputs of the node. For a user-selection node, the array input's `min`/`max`
9533
+ * bound how many items the user may pick (defaults: 1 and 100); conditional
9534
+ * connections may be present as additional inputs.
8119
9535
  */
8120
9536
  inputs?: Array<Flow.Input>;
8121
9537
  /**
8122
- * Statically-configured items for a List node. The node outputs this array as-is
8123
- * when executed. Only available for List nodes. The values can be strings,
8124
- * numbers, or asset IDs.
9538
+ * Statically-configured items for a List node, or the frozen candidate list of a
9539
+ * UserSelection node. The values can be strings, numbers, or asset IDs.
8125
9540
  */
8126
9541
  items?: Array<string>;
8127
9542
  /**
@@ -8322,8 +9737,7 @@ export declare namespace GenerateTranslateResponse {
8322
9737
  * - \`ifNotDefined\`: Input is required when another specified input is not
8323
9738
  * defined
8324
9739
  * - \`ifDefined\`: Input is required when another specified input is defined
8325
- * - \`conditionalValues\`: Input is required when another input has a specific
8326
- * value
9740
+ * - \`conditional\`: Input is required when other inputs have specific values
8327
9741
  *
8328
9742
  * By default, the input is not required.
8329
9743
  */
@@ -8484,8 +9898,7 @@ export declare namespace GenerateTranslateResponse {
8484
9898
  * - \`ifNotDefined\`: Input is required when another specified input is not
8485
9899
  * defined
8486
9900
  * - \`ifDefined\`: Input is required when another specified input is defined
8487
- * - \`conditionalValues\`: Input is required when another input has a specific
8488
- * value
9901
+ * - \`conditional\`: Input is required when other inputs have specific values
8489
9902
  *
8490
9903
  * By default, the input is not required.
8491
9904
  */
@@ -8535,8 +9948,7 @@ export declare namespace GenerateTranslateResponse {
8535
9948
  * - \`ifNotDefined\`: Input is required when another specified input is not
8536
9949
  * defined
8537
9950
  * - \`ifDefined\`: Input is required when another specified input is defined
8538
- * - \`conditionalValues\`: Input is required when another input has a specific
8539
- * value
9951
+ * - \`conditional\`: Input is required when other inputs have specific values
8540
9952
  *
8541
9953
  * By default, the input is not required.
8542
9954
  */
@@ -8546,12 +9958,9 @@ export declare namespace GenerateTranslateResponse {
8546
9958
  */
8547
9959
  always?: boolean;
8548
9960
  /**
8549
- * Makes this input required when another input has a specific value:
8550
- *
8551
- * - Key: name of the input to check
8552
- * - Value: operation and allowed values that trigger the requirement
9961
+ * Makes this input required when other inputs have one of the listed values
8553
9962
  */
8554
- conditionalValues?: unknown;
9963
+ conditional?: Required.Conditional;
8555
9964
  /**
8556
9965
  * Makes this input required when another input is defined:
8557
9966
  *
@@ -8567,6 +9976,24 @@ export declare namespace GenerateTranslateResponse {
8567
9976
  */
8568
9977
  ifNotDefined?: unknown;
8569
9978
  }
9979
+ namespace Required {
9980
+ /**
9981
+ * Makes this input required when other inputs have one of the listed values
9982
+ */
9983
+ interface Conditional {
9984
+ /**
9985
+ * The conditions to check:
9986
+ *
9987
+ * - Key: name of the input to check
9988
+ * - Value: values of that input that satisfy the condition
9989
+ */
9990
+ values: unknown;
9991
+ /**
9992
+ * How the conditions combine: \`and\` (all must match) or \`or\` (any must match)
9993
+ */
9994
+ operator?: 'and' | 'or';
9995
+ }
9996
+ }
8570
9997
  }
8571
9998
  /**
8572
9999
  * The reference to another input or output of the same workflow. Must have at
@@ -8602,8 +10029,7 @@ export declare namespace GenerateTranslateResponse {
8602
10029
  * - \`ifNotDefined\`: Input is required when another specified input is not
8603
10030
  * defined
8604
10031
  * - \`ifDefined\`: Input is required when another specified input is defined
8605
- * - \`conditionalValues\`: Input is required when another input has a specific
8606
- * value
10032
+ * - \`conditional\`: Input is required when other inputs have specific values
8607
10033
  *
8608
10034
  * By default, the input is not required.
8609
10035
  */
@@ -8613,12 +10039,9 @@ export declare namespace GenerateTranslateResponse {
8613
10039
  */
8614
10040
  always?: boolean;
8615
10041
  /**
8616
- * Makes this input required when another input has a specific value:
8617
- *
8618
- * - Key: name of the input to check
8619
- * - Value: operation and allowed values that trigger the requirement
10042
+ * Makes this input required when other inputs have one of the listed values
8620
10043
  */
8621
- conditionalValues?: unknown;
10044
+ conditional?: Required.Conditional;
8622
10045
  /**
8623
10046
  * Makes this input required when another input is defined:
8624
10047
  *
@@ -8634,6 +10057,24 @@ export declare namespace GenerateTranslateResponse {
8634
10057
  */
8635
10058
  ifNotDefined?: unknown;
8636
10059
  }
10060
+ namespace Required {
10061
+ /**
10062
+ * Makes this input required when other inputs have one of the listed values
10063
+ */
10064
+ interface Conditional {
10065
+ /**
10066
+ * The conditions to check:
10067
+ *
10068
+ * - Key: name of the input to check
10069
+ * - Value: values of that input that satisfy the condition
10070
+ */
10071
+ values: unknown;
10072
+ /**
10073
+ * How the conditions combine: \`and\` (all must match) or \`or\` (any must match)
10074
+ */
10075
+ operator?: 'and' | 'or';
10076
+ }
10077
+ }
8637
10078
  }
8638
10079
  /**
8639
10080
  * The logic of the node. Only available for logic nodes.
@@ -9057,6 +10498,30 @@ export interface GenerateEmbedParams {
9057
10498
  */
9058
10499
  projectId?: string;
9059
10500
  }
10501
+ export interface GenerateIPDetectionParams {
10502
+ /**
10503
+ * Query param: Estimate the operation instead of running it: the call returns a
10504
+ * 269 response carrying the creative units cost. `api` estimates at the API tier.
10505
+ */
10506
+ dryRun?: 'true' | 'api';
10507
+ /**
10508
+ * Query param: The projectId used for ownership resource management. Either to
10509
+ * assert ownership or to set the owner of the resource(s)
10510
+ */
10511
+ projectId?: string;
10512
+ /**
10513
+ * Body param: Asset ids to check. Videos are analyzed through their extracted
10514
+ * first/last frames; audio and 3d assets are not analyzed and come back in
10515
+ * `skippedAssetIds`.
10516
+ */
10517
+ assetIds?: Array<string>;
10518
+ /**
10519
+ * Body param: Prompts to check, analyzed as one text of 250 000 characters in
10520
+ * total at most — as much as the longest prompt any model accepts. At least one
10521
+ * prompt or one analyzable asset id is required.
10522
+ */
10523
+ prompts?: Array<string>;
10524
+ }
9060
10525
  export interface GeneratePatchParams {
9061
10526
  /**
9062
10527
  * Body param: The input image as a data URL (example:
@@ -9243,6 +10708,35 @@ export interface GeneratePromptParams {
9243
10708
  */
9244
10709
  topP?: number;
9245
10710
  }
10711
+ export interface GenerateQualityGateParams {
10712
+ /**
10713
+ * Body param: Image to verify: an asset id ("asset\_...") or a data URL. A data
10714
+ * URL is uploaded into the project as an asset (deduplicated on content, so the
10715
+ * same bytes always resolve to the same asset), and the verdict is stored on that
10716
+ * asset — re-verifying an already-scored asset replaces its result.
10717
+ */
10718
+ image: string;
10719
+ /**
10720
+ * Query param: Estimate the operation instead of running it: the call returns a
10721
+ * 269 response carrying the creative units cost. `api` estimates at the API tier.
10722
+ */
10723
+ dryRun?: 'true' | 'api';
10724
+ /**
10725
+ * Query param: If set to true, returns the original asset without transformation
10726
+ */
10727
+ originalAssets?: boolean;
10728
+ /**
10729
+ * Query param: The projectId used for ownership resource management. Either to
10730
+ * assert ownership or to set the owner of the resource(s)
10731
+ */
10732
+ projectId?: string;
10733
+ /**
10734
+ * Body param: Threshold strictness for this call. Overrides the scope's stored
10735
+ * sensitivity when set; otherwise the resolved scope setting (or "medium") is
10736
+ * used.
10737
+ */
10738
+ sensitivity?: 'high' | 'low' | 'medium';
10739
+ }
9246
10740
  export interface GenerateRunModelParams {
9247
10741
  /**
9248
10742
  * Body param: The request body for the custom generation must be retrieve from GET
@@ -9327,6 +10821,6 @@ export interface GenerateTranslateParams {
9327
10821
  topP?: number;
9328
10822
  }
9329
10823
  export declare namespace Generate {
9330
- export { type GenerateCaptionResponse as GenerateCaptionResponse, type GenerateDescribeStyleResponse as GenerateDescribeStyleResponse, type GenerateDetectResponse as GenerateDetectResponse, type GenerateEmbedResponse as GenerateEmbedResponse, type GeneratePatchResponse as GeneratePatchResponse, type GeneratePromptResponse as GeneratePromptResponse, type GenerateRunModelResponse as GenerateRunModelResponse, type GenerateTranslateResponse as GenerateTranslateResponse, type GenerateCaptionParams as GenerateCaptionParams, type GenerateDescribeStyleParams as GenerateDescribeStyleParams, type GenerateDetectParams as GenerateDetectParams, type GenerateEmbedParams as GenerateEmbedParams, type GeneratePatchParams as GeneratePatchParams, type GeneratePromptParams as GeneratePromptParams, type GenerateRunModelParams as GenerateRunModelParams, type GenerateTranslateParams as GenerateTranslateParams, };
10824
+ export { type GenerateCaptionResponse as GenerateCaptionResponse, type GenerateDescribeStyleResponse as GenerateDescribeStyleResponse, type GenerateDetectResponse as GenerateDetectResponse, type GenerateEmbedResponse as GenerateEmbedResponse, type GenerateIPDetectionResponse as GenerateIPDetectionResponse, type GeneratePatchResponse as GeneratePatchResponse, type GeneratePromptResponse as GeneratePromptResponse, type GenerateQualityGateResponse as GenerateQualityGateResponse, type GenerateRunModelResponse as GenerateRunModelResponse, type GenerateTranslateResponse as GenerateTranslateResponse, type GenerateCaptionParams as GenerateCaptionParams, type GenerateDescribeStyleParams as GenerateDescribeStyleParams, type GenerateDetectParams as GenerateDetectParams, type GenerateEmbedParams as GenerateEmbedParams, type GenerateIPDetectionParams as GenerateIPDetectionParams, type GeneratePatchParams as GeneratePatchParams, type GeneratePromptParams as GeneratePromptParams, type GenerateQualityGateParams as GenerateQualityGateParams, type GenerateRunModelParams as GenerateRunModelParams, type GenerateTranslateParams as GenerateTranslateParams, };
9331
10825
  }
9332
10826
  //# sourceMappingURL=generate.d.mts.map