@transloadit/zod 4.3.0 → 4.3.2

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 (648) hide show
  1. package/README.md +2 -2
  2. package/dist/v3/assembliesGet.d.ts +8 -3
  3. package/dist/v3/assembliesGet.d.ts.map +1 -1
  4. package/dist/v3/assemblyReplay.d.ts +7 -7858
  5. package/dist/v3/assemblyReplay.d.ts.map +1 -1
  6. package/dist/v3/assemblyReplayNotification.d.ts +7 -7858
  7. package/dist/v3/assemblyReplayNotification.d.ts.map +1 -1
  8. package/dist/v3/assemblyStatus.d.ts +4950 -423
  9. package/dist/v3/assemblyStatus.d.ts.map +1 -1
  10. package/dist/v3/assemblyStatus.js +223 -14
  11. package/dist/v3/bill.d.ts +5 -0
  12. package/dist/v3/bill.d.ts.map +1 -1
  13. package/dist/v3/builtinTemplates.d.ts +83 -0
  14. package/dist/v3/builtinTemplates.d.ts.map +1 -0
  15. package/dist/v3/builtinTemplates.js +18 -0
  16. package/dist/v3/index.d.ts +2 -0
  17. package/dist/v3/index.d.ts.map +1 -1
  18. package/dist/v3/index.js +2 -0
  19. package/dist/v3/robots/_index.d.ts +905 -72600
  20. package/dist/v3/robots/_index.d.ts.map +1 -1
  21. package/dist/v3/robots/_index.js +62 -11
  22. package/dist/v3/robots/_instructions-primitives.d.ts +46 -11
  23. package/dist/v3/robots/_instructions-primitives.d.ts.map +1 -1
  24. package/dist/v3/robots/_instructions-primitives.js +152 -32
  25. package/dist/v3/robots/ai-chat.d.ts +69 -4
  26. package/dist/v3/robots/ai-chat.d.ts.map +1 -1
  27. package/dist/v3/robots/ai-chat.js +35 -7
  28. package/dist/v3/robots/assembly-savejson.d.ts +6 -0
  29. package/dist/v3/robots/assembly-savejson.d.ts.map +1 -1
  30. package/dist/v3/robots/assembly-savejson.js +23 -1
  31. package/dist/v3/robots/audio-artwork.d.ts +12 -0
  32. package/dist/v3/robots/audio-artwork.d.ts.map +1 -1
  33. package/dist/v3/robots/audio-artwork.js +4 -5
  34. package/dist/v3/robots/audio-concat.d.ts +12 -0
  35. package/dist/v3/robots/audio-concat.d.ts.map +1 -1
  36. package/dist/v3/robots/audio-concat.js +1 -2
  37. package/dist/v3/robots/audio-encode.d.ts +12 -0
  38. package/dist/v3/robots/audio-encode.d.ts.map +1 -1
  39. package/dist/v3/robots/audio-encode.js +1 -2
  40. package/dist/v3/robots/audio-loop.d.ts +12 -0
  41. package/dist/v3/robots/audio-loop.d.ts.map +1 -1
  42. package/dist/v3/robots/audio-loop.js +1 -2
  43. package/dist/v3/robots/audio-merge.d.ts +12 -0
  44. package/dist/v3/robots/audio-merge.d.ts.map +1 -1
  45. package/dist/v3/robots/audio-merge.js +1 -2
  46. package/dist/v3/robots/audio-split.d.ts +2948 -0
  47. package/dist/v3/robots/audio-split.d.ts.map +1 -0
  48. package/dist/v3/robots/audio-split.js +87 -0
  49. package/dist/v3/robots/audio-waveform.d.ts +104 -6
  50. package/dist/v3/robots/audio-waveform.d.ts.map +1 -1
  51. package/dist/v3/robots/audio-waveform.js +72 -6
  52. package/dist/v3/robots/azure-import.d.ts +12 -0
  53. package/dist/v3/robots/azure-import.d.ts.map +1 -1
  54. package/dist/v3/robots/azure-import.js +0 -1
  55. package/dist/v3/robots/azure-store.d.ts +12 -0
  56. package/dist/v3/robots/azure-store.d.ts.map +1 -1
  57. package/dist/v3/robots/azure-store.js +0 -1
  58. package/dist/v3/robots/backblaze-import.d.ts +12 -0
  59. package/dist/v3/robots/backblaze-import.d.ts.map +1 -1
  60. package/dist/v3/robots/backblaze-import.js +0 -1
  61. package/dist/v3/robots/backblaze-store.d.ts +12 -0
  62. package/dist/v3/robots/backblaze-store.d.ts.map +1 -1
  63. package/dist/v3/robots/backblaze-store.js +0 -1
  64. package/dist/v3/robots/box-import.d.ts +162 -0
  65. package/dist/v3/robots/box-import.d.ts.map +1 -0
  66. package/dist/v3/robots/box-import.js +62 -0
  67. package/dist/v3/robots/box-store.d.ts +467 -0
  68. package/dist/v3/robots/box-store.d.ts.map +1 -0
  69. package/dist/v3/robots/box-store.js +65 -0
  70. package/dist/v3/robots/cloudfiles-import.d.ts +12 -0
  71. package/dist/v3/robots/cloudfiles-import.d.ts.map +1 -1
  72. package/dist/v3/robots/cloudfiles-import.js +0 -1
  73. package/dist/v3/robots/cloudfiles-store.d.ts +12 -0
  74. package/dist/v3/robots/cloudfiles-store.d.ts.map +1 -1
  75. package/dist/v3/robots/cloudfiles-store.js +0 -1
  76. package/dist/v3/robots/cloudflare-import.d.ts +12 -0
  77. package/dist/v3/robots/cloudflare-import.d.ts.map +1 -1
  78. package/dist/v3/robots/cloudflare-import.js +0 -1
  79. package/dist/v3/robots/cloudflare-store.d.ts +12 -0
  80. package/dist/v3/robots/cloudflare-store.d.ts.map +1 -1
  81. package/dist/v3/robots/cloudflare-store.js +0 -1
  82. package/dist/v3/robots/digitalocean-import.d.ts +12 -0
  83. package/dist/v3/robots/digitalocean-import.d.ts.map +1 -1
  84. package/dist/v3/robots/digitalocean-import.js +0 -1
  85. package/dist/v3/robots/digitalocean-store.d.ts +12 -0
  86. package/dist/v3/robots/digitalocean-store.d.ts.map +1 -1
  87. package/dist/v3/robots/digitalocean-store.js +0 -1
  88. package/dist/v3/robots/document-autorotate.d.ts +12 -0
  89. package/dist/v3/robots/document-autorotate.d.ts.map +1 -1
  90. package/dist/v3/robots/document-autorotate.js +8 -1
  91. package/dist/v3/robots/document-convert.d.ts +20 -8
  92. package/dist/v3/robots/document-convert.d.ts.map +1 -1
  93. package/dist/v3/robots/document-convert.js +9 -3
  94. package/dist/v3/robots/document-merge.d.ts +12 -0
  95. package/dist/v3/robots/document-merge.d.ts.map +1 -1
  96. package/dist/v3/robots/document-merge.js +0 -1
  97. package/dist/v3/robots/document-ocr.d.ts +12 -0
  98. package/dist/v3/robots/document-ocr.d.ts.map +1 -1
  99. package/dist/v3/robots/document-ocr.js +0 -1
  100. package/dist/v3/robots/document-optimize.d.ts +12 -0
  101. package/dist/v3/robots/document-optimize.d.ts.map +1 -1
  102. package/dist/v3/robots/document-optimize.js +0 -1
  103. package/dist/v3/robots/document-split.d.ts +12 -0
  104. package/dist/v3/robots/document-split.d.ts.map +1 -1
  105. package/dist/v3/robots/document-split.js +9 -1
  106. package/dist/v3/robots/document-thumbs.d.ts +36 -6
  107. package/dist/v3/robots/document-thumbs.d.ts.map +1 -1
  108. package/dist/v3/robots/document-thumbs.js +39 -6
  109. package/dist/v3/robots/dropbox-import.d.ts +12 -0
  110. package/dist/v3/robots/dropbox-import.d.ts.map +1 -1
  111. package/dist/v3/robots/dropbox-import.js +0 -1
  112. package/dist/v3/robots/dropbox-store.d.ts +12 -0
  113. package/dist/v3/robots/dropbox-store.d.ts.map +1 -1
  114. package/dist/v3/robots/dropbox-store.js +0 -1
  115. package/dist/v3/robots/edgly-deliver.d.ts +12 -0
  116. package/dist/v3/robots/edgly-deliver.d.ts.map +1 -1
  117. package/dist/v3/robots/edgly-deliver.js +8 -1
  118. package/dist/v3/robots/file-compress.d.ts +24 -0
  119. package/dist/v3/robots/file-compress.d.ts.map +1 -1
  120. package/dist/v3/robots/file-compress.js +8 -1
  121. package/dist/v3/robots/file-decompress.d.ts +36 -0
  122. package/dist/v3/robots/file-decompress.d.ts.map +1 -1
  123. package/dist/v3/robots/file-decompress.js +30 -5
  124. package/dist/v3/robots/file-filter.d.ts +12 -0
  125. package/dist/v3/robots/file-filter.d.ts.map +1 -1
  126. package/dist/v3/robots/file-filter.js +27 -6
  127. package/dist/v3/robots/file-hash.d.ts +36 -0
  128. package/dist/v3/robots/file-hash.d.ts.map +1 -1
  129. package/dist/v3/robots/file-hash.js +23 -1
  130. package/dist/v3/robots/file-preview.d.ts +24 -0
  131. package/dist/v3/robots/file-preview.d.ts.map +1 -1
  132. package/dist/v3/robots/file-preview.js +8 -1
  133. package/dist/v3/robots/file-read.d.ts +12 -0
  134. package/dist/v3/robots/file-read.d.ts.map +1 -1
  135. package/dist/v3/robots/file-read.js +9 -1
  136. package/dist/v3/robots/file-serve.d.ts +24 -0
  137. package/dist/v3/robots/file-serve.d.ts.map +1 -1
  138. package/dist/v3/robots/file-serve.js +38 -7
  139. package/dist/v3/robots/file-verify.d.ts +12 -0
  140. package/dist/v3/robots/file-verify.d.ts.map +1 -1
  141. package/dist/v3/robots/file-verify.js +0 -1
  142. package/dist/v3/robots/file-virusscan.d.ts +12 -0
  143. package/dist/v3/robots/file-virusscan.d.ts.map +1 -1
  144. package/dist/v3/robots/file-virusscan.js +5 -4
  145. package/dist/v3/robots/file-watermark.d.ts +12 -0
  146. package/dist/v3/robots/file-watermark.d.ts.map +1 -1
  147. package/dist/v3/robots/file-watermark.js +25 -1
  148. package/dist/v3/robots/ftp-import.d.ts +12 -0
  149. package/dist/v3/robots/ftp-import.d.ts.map +1 -1
  150. package/dist/v3/robots/ftp-import.js +0 -1
  151. package/dist/v3/robots/ftp-store.d.ts +12 -0
  152. package/dist/v3/robots/ftp-store.d.ts.map +1 -1
  153. package/dist/v3/robots/ftp-store.js +0 -1
  154. package/dist/v3/robots/google-import.d.ts +12 -0
  155. package/dist/v3/robots/google-import.d.ts.map +1 -1
  156. package/dist/v3/robots/google-import.js +0 -1
  157. package/dist/v3/robots/google-store.d.ts +12 -0
  158. package/dist/v3/robots/google-store.d.ts.map +1 -1
  159. package/dist/v3/robots/google-store.js +0 -1
  160. package/dist/v3/robots/html-convert.d.ts +12 -0
  161. package/dist/v3/robots/html-convert.d.ts.map +1 -1
  162. package/dist/v3/robots/html-convert.js +0 -1
  163. package/dist/v3/robots/http-import.d.ts +192 -0
  164. package/dist/v3/robots/http-import.d.ts.map +1 -1
  165. package/dist/v3/robots/http-import.js +8 -3
  166. package/dist/v3/robots/image-bgremove.d.ts +20 -8
  167. package/dist/v3/robots/image-bgremove.d.ts.map +1 -1
  168. package/dist/v3/robots/image-bgremove.js +4 -2
  169. package/dist/v3/robots/image-copyrightdetect.d.ts +477 -0
  170. package/dist/v3/robots/image-copyrightdetect.d.ts.map +1 -0
  171. package/dist/v3/robots/image-copyrightdetect.js +135 -0
  172. package/dist/v3/robots/image-describe.d.ts +12 -0
  173. package/dist/v3/robots/image-describe.d.ts.map +1 -1
  174. package/dist/v3/robots/image-describe.js +0 -1
  175. package/dist/v3/robots/image-enhance.d.ts +514 -0
  176. package/dist/v3/robots/image-enhance.d.ts.map +1 -0
  177. package/dist/v3/robots/image-enhance.js +145 -0
  178. package/dist/v3/robots/image-facedetect.d.ts +12 -0
  179. package/dist/v3/robots/image-facedetect.d.ts.map +1 -1
  180. package/dist/v3/robots/image-facedetect.js +0 -1
  181. package/dist/v3/robots/image-generate.d.ts +16 -5
  182. package/dist/v3/robots/image-generate.d.ts.map +1 -1
  183. package/dist/v3/robots/image-generate.js +62 -8
  184. package/dist/v3/robots/image-merge.d.ts +108 -24
  185. package/dist/v3/robots/image-merge.d.ts.map +1 -1
  186. package/dist/v3/robots/image-merge.js +75 -7
  187. package/dist/v3/robots/image-ocr.d.ts +12 -0
  188. package/dist/v3/robots/image-ocr.d.ts.map +1 -1
  189. package/dist/v3/robots/image-ocr.js +0 -1
  190. package/dist/v3/robots/image-optimize.d.ts +24 -0
  191. package/dist/v3/robots/image-optimize.d.ts.map +1 -1
  192. package/dist/v3/robots/image-optimize.js +17 -4
  193. package/dist/v3/robots/image-resize.d.ts +36 -12
  194. package/dist/v3/robots/image-resize.d.ts.map +1 -1
  195. package/dist/v3/robots/image-resize.js +38 -2
  196. package/dist/v3/robots/image-upscale.d.ts +459 -0
  197. package/dist/v3/robots/image-upscale.d.ts.map +1 -0
  198. package/dist/v3/robots/image-upscale.js +64 -0
  199. package/dist/v3/robots/mega-import.d.ts +256 -0
  200. package/dist/v3/robots/mega-import.d.ts.map +1 -0
  201. package/dist/v3/robots/mega-import.js +83 -0
  202. package/dist/v3/robots/mega-store.d.ts +538 -0
  203. package/dist/v3/robots/mega-store.d.ts.map +1 -0
  204. package/dist/v3/robots/mega-store.js +81 -0
  205. package/dist/v3/robots/meta-read.d.ts +12 -0
  206. package/dist/v3/robots/meta-read.d.ts.map +1 -1
  207. package/dist/v3/robots/meta-read.js +24 -1
  208. package/dist/v3/robots/meta-write.d.ts +12 -0
  209. package/dist/v3/robots/meta-write.d.ts.map +1 -1
  210. package/dist/v3/robots/meta-write.js +0 -1
  211. package/dist/v3/robots/minio-import.d.ts +12 -0
  212. package/dist/v3/robots/minio-import.d.ts.map +1 -1
  213. package/dist/v3/robots/minio-import.js +0 -1
  214. package/dist/v3/robots/minio-store.d.ts +12 -0
  215. package/dist/v3/robots/minio-store.d.ts.map +1 -1
  216. package/dist/v3/robots/minio-store.js +0 -1
  217. package/dist/v3/robots/progress-simulate.d.ts +6 -0
  218. package/dist/v3/robots/progress-simulate.d.ts.map +1 -1
  219. package/dist/v3/robots/progress-simulate.js +28 -1
  220. package/dist/v3/robots/s3-import.d.ts +12 -0
  221. package/dist/v3/robots/s3-import.d.ts.map +1 -1
  222. package/dist/v3/robots/s3-import.js +0 -1
  223. package/dist/v3/robots/s3-store.d.ts +12 -0
  224. package/dist/v3/robots/s3-store.d.ts.map +1 -1
  225. package/dist/v3/robots/s3-store.js +0 -1
  226. package/dist/v3/robots/script-run.d.ts +12 -0
  227. package/dist/v3/robots/script-run.d.ts.map +1 -1
  228. package/dist/v3/robots/script-run.js +10 -1
  229. package/dist/v3/robots/sftp-import.d.ts +12 -0
  230. package/dist/v3/robots/sftp-import.d.ts.map +1 -1
  231. package/dist/v3/robots/sftp-import.js +0 -1
  232. package/dist/v3/robots/sftp-store.d.ts +12 -0
  233. package/dist/v3/robots/sftp-store.d.ts.map +1 -1
  234. package/dist/v3/robots/sftp-store.js +0 -1
  235. package/dist/v3/robots/speech-transcribe.d.ts +12 -0
  236. package/dist/v3/robots/speech-transcribe.d.ts.map +1 -1
  237. package/dist/v3/robots/speech-transcribe.js +0 -1
  238. package/dist/v3/robots/supabase-import.d.ts +12 -0
  239. package/dist/v3/robots/supabase-import.d.ts.map +1 -1
  240. package/dist/v3/robots/supabase-import.js +0 -1
  241. package/dist/v3/robots/supabase-store.d.ts +12 -0
  242. package/dist/v3/robots/supabase-store.d.ts.map +1 -1
  243. package/dist/v3/robots/supabase-store.js +0 -1
  244. package/dist/v3/robots/swift-import.d.ts +12 -0
  245. package/dist/v3/robots/swift-import.d.ts.map +1 -1
  246. package/dist/v3/robots/swift-import.js +0 -1
  247. package/dist/v3/robots/swift-store.d.ts +12 -0
  248. package/dist/v3/robots/swift-store.d.ts.map +1 -1
  249. package/dist/v3/robots/swift-store.js +0 -1
  250. package/dist/v3/robots/text-speak.d.ts +12 -0
  251. package/dist/v3/robots/text-speak.d.ts.map +1 -1
  252. package/dist/v3/robots/text-speak.js +0 -1
  253. package/dist/v3/robots/text-translate.d.ts +20 -8
  254. package/dist/v3/robots/text-translate.d.ts.map +1 -1
  255. package/dist/v3/robots/text-translate.js +0 -1
  256. package/dist/v3/robots/tigris-import.d.ts +12 -0
  257. package/dist/v3/robots/tigris-import.d.ts.map +1 -1
  258. package/dist/v3/robots/tigris-import.js +0 -1
  259. package/dist/v3/robots/tigris-store.d.ts +12 -0
  260. package/dist/v3/robots/tigris-store.d.ts.map +1 -1
  261. package/dist/v3/robots/tigris-store.js +0 -1
  262. package/dist/v3/robots/tlcdn-deliver.d.ts +24 -0
  263. package/dist/v3/robots/tlcdn-deliver.d.ts.map +1 -1
  264. package/dist/v3/robots/tlcdn-deliver.js +19 -6
  265. package/dist/v3/robots/tus-store.d.ts +12 -0
  266. package/dist/v3/robots/tus-store.d.ts.map +1 -1
  267. package/dist/v3/robots/tus-store.js +1 -14
  268. package/dist/v3/robots/upload-handle.d.ts +12 -0
  269. package/dist/v3/robots/upload-handle.d.ts.map +1 -1
  270. package/dist/v3/robots/upload-handle.js +0 -1
  271. package/dist/v3/robots/video-adaptive.d.ts +44 -8
  272. package/dist/v3/robots/video-adaptive.d.ts.map +1 -1
  273. package/dist/v3/robots/video-adaptive.js +22 -6
  274. package/dist/v3/robots/video-artwork.d.ts +2867 -0
  275. package/dist/v3/robots/video-artwork.d.ts.map +1 -0
  276. package/dist/v3/robots/video-artwork.js +65 -0
  277. package/dist/v3/robots/video-concat.d.ts +48 -0
  278. package/dist/v3/robots/video-concat.d.ts.map +1 -1
  279. package/dist/v3/robots/video-concat.js +30 -1
  280. package/dist/v3/robots/video-encode.d.ts +12 -0
  281. package/dist/v3/robots/video-encode.d.ts.map +1 -1
  282. package/dist/v3/robots/video-encode.js +0 -1
  283. package/dist/v3/robots/video-generate.d.ts +606 -0
  284. package/dist/v3/robots/video-generate.d.ts.map +1 -0
  285. package/dist/v3/robots/video-generate.js +89 -0
  286. package/dist/v3/robots/video-merge.d.ts +36 -0
  287. package/dist/v3/robots/video-merge.d.ts.map +1 -1
  288. package/dist/v3/robots/video-merge.js +33 -1
  289. package/dist/v3/robots/video-ondemand.d.ts +12 -0
  290. package/dist/v3/robots/video-ondemand.d.ts.map +1 -1
  291. package/dist/v3/robots/video-ondemand.js +3 -4
  292. package/dist/v3/robots/video-split.d.ts +2951 -0
  293. package/dist/v3/robots/video-split.d.ts.map +1 -0
  294. package/dist/v3/robots/video-split.js +77 -0
  295. package/dist/v3/robots/video-subtitle.d.ts +64 -4
  296. package/dist/v3/robots/video-subtitle.d.ts.map +1 -1
  297. package/dist/v3/robots/video-subtitle.js +61 -8
  298. package/dist/v3/robots/video-thumbs.d.ts +12 -0
  299. package/dist/v3/robots/video-thumbs.d.ts.map +1 -1
  300. package/dist/v3/robots/video-thumbs.js +0 -1
  301. package/dist/v3/robots/vimeo-import.d.ts +16 -4
  302. package/dist/v3/robots/vimeo-import.d.ts.map +1 -1
  303. package/dist/v3/robots/vimeo-import.js +0 -1
  304. package/dist/v3/robots/vimeo-store.d.ts +14 -2
  305. package/dist/v3/robots/vimeo-store.d.ts.map +1 -1
  306. package/dist/v3/robots/vimeo-store.js +14 -3
  307. package/dist/v3/robots/wasabi-import.d.ts +12 -0
  308. package/dist/v3/robots/wasabi-import.d.ts.map +1 -1
  309. package/dist/v3/robots/wasabi-import.js +0 -1
  310. package/dist/v3/robots/wasabi-store.d.ts +12 -0
  311. package/dist/v3/robots/wasabi-store.d.ts.map +1 -1
  312. package/dist/v3/robots/wasabi-store.js +0 -1
  313. package/dist/v3/robots/youtube-store.d.ts +12 -0
  314. package/dist/v3/robots/youtube-store.d.ts.map +1 -1
  315. package/dist/v3/robots/youtube-store.js +4 -5
  316. package/dist/v3/skillFrontmatter.d.ts +29 -0
  317. package/dist/v3/skillFrontmatter.d.ts.map +1 -0
  318. package/dist/v3/skillFrontmatter.js +18 -0
  319. package/dist/v3/template.d.ts +77 -132139
  320. package/dist/v3/template.d.ts.map +1 -1
  321. package/dist/v3/template.js +30 -7
  322. package/dist/v3/templateCredential.d.ts +13 -3
  323. package/dist/v3/templateCredential.d.ts.map +1 -1
  324. package/dist/v3/templateCredential.js +1 -0
  325. package/dist/v4/assembliesGet.d.ts +1 -0
  326. package/dist/v4/assembliesGet.d.ts.map +1 -1
  327. package/dist/v4/assemblyReplay.d.ts +1 -0
  328. package/dist/v4/assemblyReplay.d.ts.map +1 -1
  329. package/dist/v4/assemblyReplayNotification.d.ts +1 -0
  330. package/dist/v4/assemblyReplayNotification.d.ts.map +1 -1
  331. package/dist/v4/assemblyStatus.d.ts +937 -94
  332. package/dist/v4/assemblyStatus.d.ts.map +1 -1
  333. package/dist/v4/assemblyStatus.js +223 -14
  334. package/dist/v4/bill.d.ts +1 -0
  335. package/dist/v4/bill.d.ts.map +1 -1
  336. package/dist/v4/builtinTemplates.d.ts +35 -0
  337. package/dist/v4/builtinTemplates.d.ts.map +1 -0
  338. package/dist/v4/builtinTemplates.js +18 -0
  339. package/dist/v4/index.d.ts +2 -0
  340. package/dist/v4/index.d.ts.map +1 -1
  341. package/dist/v4/index.js +2 -0
  342. package/dist/v4/robots/_index.d.ts +913 -26311
  343. package/dist/v4/robots/_index.d.ts.map +1 -1
  344. package/dist/v4/robots/_index.js +62 -11
  345. package/dist/v4/robots/_instructions-primitives.d.ts +59 -8
  346. package/dist/v4/robots/_instructions-primitives.d.ts.map +1 -1
  347. package/dist/v4/robots/_instructions-primitives.js +105 -5
  348. package/dist/v4/robots/ai-chat.d.ts +73 -4
  349. package/dist/v4/robots/ai-chat.d.ts.map +1 -1
  350. package/dist/v4/robots/ai-chat.js +35 -7
  351. package/dist/v4/robots/assembly-savejson.d.ts +14 -0
  352. package/dist/v4/robots/assembly-savejson.d.ts.map +1 -1
  353. package/dist/v4/robots/assembly-savejson.js +23 -1
  354. package/dist/v4/robots/audio-artwork.d.ts +28 -0
  355. package/dist/v4/robots/audio-artwork.d.ts.map +1 -1
  356. package/dist/v4/robots/audio-artwork.js +4 -5
  357. package/dist/v4/robots/audio-concat.d.ts +28 -0
  358. package/dist/v4/robots/audio-concat.d.ts.map +1 -1
  359. package/dist/v4/robots/audio-concat.js +1 -2
  360. package/dist/v4/robots/audio-encode.d.ts +28 -0
  361. package/dist/v4/robots/audio-encode.d.ts.map +1 -1
  362. package/dist/v4/robots/audio-encode.js +1 -2
  363. package/dist/v4/robots/audio-loop.d.ts +28 -0
  364. package/dist/v4/robots/audio-loop.d.ts.map +1 -1
  365. package/dist/v4/robots/audio-loop.js +1 -2
  366. package/dist/v4/robots/audio-merge.d.ts +28 -0
  367. package/dist/v4/robots/audio-merge.d.ts.map +1 -1
  368. package/dist/v4/robots/audio-merge.js +1 -2
  369. package/dist/v4/robots/audio-split.d.ts +742 -0
  370. package/dist/v4/robots/audio-split.d.ts.map +1 -0
  371. package/dist/v4/robots/audio-split.js +87 -0
  372. package/dist/v4/robots/audio-waveform.d.ts +152 -6
  373. package/dist/v4/robots/audio-waveform.d.ts.map +1 -1
  374. package/dist/v4/robots/audio-waveform.js +72 -6
  375. package/dist/v4/robots/azure-import.d.ts +28 -0
  376. package/dist/v4/robots/azure-import.d.ts.map +1 -1
  377. package/dist/v4/robots/azure-import.js +0 -1
  378. package/dist/v4/robots/azure-store.d.ts +28 -0
  379. package/dist/v4/robots/azure-store.d.ts.map +1 -1
  380. package/dist/v4/robots/azure-store.js +0 -1
  381. package/dist/v4/robots/backblaze-import.d.ts +28 -0
  382. package/dist/v4/robots/backblaze-import.d.ts.map +1 -1
  383. package/dist/v4/robots/backblaze-import.js +0 -1
  384. package/dist/v4/robots/backblaze-store.d.ts +28 -0
  385. package/dist/v4/robots/backblaze-store.d.ts.map +1 -1
  386. package/dist/v4/robots/backblaze-store.js +0 -1
  387. package/dist/v4/robots/box-import.d.ts +110 -0
  388. package/dist/v4/robots/box-import.d.ts.map +1 -0
  389. package/dist/v4/robots/box-import.js +62 -0
  390. package/dist/v4/robots/box-store.d.ts +163 -0
  391. package/dist/v4/robots/box-store.d.ts.map +1 -0
  392. package/dist/v4/robots/box-store.js +65 -0
  393. package/dist/v4/robots/cloudfiles-import.d.ts +28 -0
  394. package/dist/v4/robots/cloudfiles-import.d.ts.map +1 -1
  395. package/dist/v4/robots/cloudfiles-import.js +0 -1
  396. package/dist/v4/robots/cloudfiles-store.d.ts +28 -0
  397. package/dist/v4/robots/cloudfiles-store.d.ts.map +1 -1
  398. package/dist/v4/robots/cloudfiles-store.js +0 -1
  399. package/dist/v4/robots/cloudflare-import.d.ts +28 -0
  400. package/dist/v4/robots/cloudflare-import.d.ts.map +1 -1
  401. package/dist/v4/robots/cloudflare-import.js +0 -1
  402. package/dist/v4/robots/cloudflare-store.d.ts +28 -0
  403. package/dist/v4/robots/cloudflare-store.d.ts.map +1 -1
  404. package/dist/v4/robots/cloudflare-store.js +0 -1
  405. package/dist/v4/robots/digitalocean-import.d.ts +28 -0
  406. package/dist/v4/robots/digitalocean-import.d.ts.map +1 -1
  407. package/dist/v4/robots/digitalocean-import.js +0 -1
  408. package/dist/v4/robots/digitalocean-store.d.ts +28 -0
  409. package/dist/v4/robots/digitalocean-store.d.ts.map +1 -1
  410. package/dist/v4/robots/digitalocean-store.js +0 -1
  411. package/dist/v4/robots/document-autorotate.d.ts +28 -0
  412. package/dist/v4/robots/document-autorotate.d.ts.map +1 -1
  413. package/dist/v4/robots/document-autorotate.js +8 -1
  414. package/dist/v4/robots/document-convert.d.ts +32 -0
  415. package/dist/v4/robots/document-convert.d.ts.map +1 -1
  416. package/dist/v4/robots/document-convert.js +9 -3
  417. package/dist/v4/robots/document-merge.d.ts +28 -0
  418. package/dist/v4/robots/document-merge.d.ts.map +1 -1
  419. package/dist/v4/robots/document-merge.js +0 -1
  420. package/dist/v4/robots/document-ocr.d.ts +28 -0
  421. package/dist/v4/robots/document-ocr.d.ts.map +1 -1
  422. package/dist/v4/robots/document-ocr.js +0 -1
  423. package/dist/v4/robots/document-optimize.d.ts +28 -0
  424. package/dist/v4/robots/document-optimize.d.ts.map +1 -1
  425. package/dist/v4/robots/document-optimize.js +0 -1
  426. package/dist/v4/robots/document-split.d.ts +28 -0
  427. package/dist/v4/robots/document-split.d.ts.map +1 -1
  428. package/dist/v4/robots/document-split.js +9 -1
  429. package/dist/v4/robots/document-thumbs.d.ts +54 -2
  430. package/dist/v4/robots/document-thumbs.d.ts.map +1 -1
  431. package/dist/v4/robots/document-thumbs.js +39 -6
  432. package/dist/v4/robots/dropbox-import.d.ts +28 -0
  433. package/dist/v4/robots/dropbox-import.d.ts.map +1 -1
  434. package/dist/v4/robots/dropbox-import.js +0 -1
  435. package/dist/v4/robots/dropbox-store.d.ts +28 -0
  436. package/dist/v4/robots/dropbox-store.d.ts.map +1 -1
  437. package/dist/v4/robots/dropbox-store.js +0 -1
  438. package/dist/v4/robots/edgly-deliver.d.ts +28 -0
  439. package/dist/v4/robots/edgly-deliver.d.ts.map +1 -1
  440. package/dist/v4/robots/edgly-deliver.js +8 -1
  441. package/dist/v4/robots/file-compress.d.ts +32 -0
  442. package/dist/v4/robots/file-compress.d.ts.map +1 -1
  443. package/dist/v4/robots/file-compress.js +8 -1
  444. package/dist/v4/robots/file-decompress.d.ts +36 -0
  445. package/dist/v4/robots/file-decompress.d.ts.map +1 -1
  446. package/dist/v4/robots/file-decompress.js +30 -5
  447. package/dist/v4/robots/file-filter.d.ts +28 -0
  448. package/dist/v4/robots/file-filter.d.ts.map +1 -1
  449. package/dist/v4/robots/file-filter.js +27 -6
  450. package/dist/v4/robots/file-hash.d.ts +56 -0
  451. package/dist/v4/robots/file-hash.d.ts.map +1 -1
  452. package/dist/v4/robots/file-hash.js +23 -1
  453. package/dist/v4/robots/file-preview.d.ts +40 -8
  454. package/dist/v4/robots/file-preview.d.ts.map +1 -1
  455. package/dist/v4/robots/file-preview.js +8 -1
  456. package/dist/v4/robots/file-read.d.ts +28 -0
  457. package/dist/v4/robots/file-read.d.ts.map +1 -1
  458. package/dist/v4/robots/file-read.js +9 -1
  459. package/dist/v4/robots/file-serve.d.ts +32 -0
  460. package/dist/v4/robots/file-serve.d.ts.map +1 -1
  461. package/dist/v4/robots/file-serve.js +38 -7
  462. package/dist/v4/robots/file-verify.d.ts +28 -0
  463. package/dist/v4/robots/file-verify.d.ts.map +1 -1
  464. package/dist/v4/robots/file-verify.js +0 -1
  465. package/dist/v4/robots/file-virusscan.d.ts +28 -0
  466. package/dist/v4/robots/file-virusscan.d.ts.map +1 -1
  467. package/dist/v4/robots/file-virusscan.js +5 -4
  468. package/dist/v4/robots/file-watermark.d.ts +28 -0
  469. package/dist/v4/robots/file-watermark.d.ts.map +1 -1
  470. package/dist/v4/robots/file-watermark.js +25 -1
  471. package/dist/v4/robots/ftp-import.d.ts +28 -0
  472. package/dist/v4/robots/ftp-import.d.ts.map +1 -1
  473. package/dist/v4/robots/ftp-import.js +0 -1
  474. package/dist/v4/robots/ftp-store.d.ts +28 -0
  475. package/dist/v4/robots/ftp-store.d.ts.map +1 -1
  476. package/dist/v4/robots/ftp-store.js +0 -1
  477. package/dist/v4/robots/google-import.d.ts +28 -0
  478. package/dist/v4/robots/google-import.d.ts.map +1 -1
  479. package/dist/v4/robots/google-import.js +0 -1
  480. package/dist/v4/robots/google-store.d.ts +28 -0
  481. package/dist/v4/robots/google-store.d.ts.map +1 -1
  482. package/dist/v4/robots/google-store.js +0 -1
  483. package/dist/v4/robots/html-convert.d.ts +28 -0
  484. package/dist/v4/robots/html-convert.d.ts.map +1 -1
  485. package/dist/v4/robots/html-convert.js +0 -1
  486. package/dist/v4/robots/http-import.d.ts +60 -0
  487. package/dist/v4/robots/http-import.d.ts.map +1 -1
  488. package/dist/v4/robots/http-import.js +8 -3
  489. package/dist/v4/robots/image-bgremove.d.ts +32 -4
  490. package/dist/v4/robots/image-bgremove.d.ts.map +1 -1
  491. package/dist/v4/robots/image-bgremove.js +4 -2
  492. package/dist/v4/robots/image-copyrightdetect.d.ts +202 -0
  493. package/dist/v4/robots/image-copyrightdetect.d.ts.map +1 -0
  494. package/dist/v4/robots/image-copyrightdetect.js +135 -0
  495. package/dist/v4/robots/image-describe.d.ts +28 -0
  496. package/dist/v4/robots/image-describe.d.ts.map +1 -1
  497. package/dist/v4/robots/image-describe.js +0 -1
  498. package/dist/v4/robots/image-enhance.d.ts +290 -0
  499. package/dist/v4/robots/image-enhance.d.ts.map +1 -0
  500. package/dist/v4/robots/image-enhance.js +145 -0
  501. package/dist/v4/robots/image-facedetect.d.ts +28 -0
  502. package/dist/v4/robots/image-facedetect.d.ts.map +1 -1
  503. package/dist/v4/robots/image-facedetect.js +0 -1
  504. package/dist/v4/robots/image-generate.d.ts +32 -4
  505. package/dist/v4/robots/image-generate.d.ts.map +1 -1
  506. package/dist/v4/robots/image-generate.js +62 -8
  507. package/dist/v4/robots/image-merge.d.ts +132 -8
  508. package/dist/v4/robots/image-merge.d.ts.map +1 -1
  509. package/dist/v4/robots/image-merge.js +75 -7
  510. package/dist/v4/robots/image-ocr.d.ts +28 -0
  511. package/dist/v4/robots/image-ocr.d.ts.map +1 -1
  512. package/dist/v4/robots/image-ocr.js +0 -1
  513. package/dist/v4/robots/image-optimize.d.ts +32 -0
  514. package/dist/v4/robots/image-optimize.d.ts.map +1 -1
  515. package/dist/v4/robots/image-optimize.js +17 -4
  516. package/dist/v4/robots/image-resize.d.ts +91 -59
  517. package/dist/v4/robots/image-resize.d.ts.map +1 -1
  518. package/dist/v4/robots/image-resize.js +38 -2
  519. package/dist/v4/robots/image-upscale.d.ts +176 -0
  520. package/dist/v4/robots/image-upscale.d.ts.map +1 -0
  521. package/dist/v4/robots/image-upscale.js +64 -0
  522. package/dist/v4/robots/mega-import.d.ts +142 -0
  523. package/dist/v4/robots/mega-import.d.ts.map +1 -0
  524. package/dist/v4/robots/mega-import.js +83 -0
  525. package/dist/v4/robots/mega-store.d.ts +198 -0
  526. package/dist/v4/robots/mega-store.d.ts.map +1 -0
  527. package/dist/v4/robots/mega-store.js +80 -0
  528. package/dist/v4/robots/meta-read.d.ts +28 -0
  529. package/dist/v4/robots/meta-read.d.ts.map +1 -1
  530. package/dist/v4/robots/meta-read.js +24 -1
  531. package/dist/v4/robots/meta-write.d.ts +28 -0
  532. package/dist/v4/robots/meta-write.d.ts.map +1 -1
  533. package/dist/v4/robots/meta-write.js +0 -1
  534. package/dist/v4/robots/minio-import.d.ts +28 -0
  535. package/dist/v4/robots/minio-import.d.ts.map +1 -1
  536. package/dist/v4/robots/minio-import.js +0 -1
  537. package/dist/v4/robots/minio-store.d.ts +28 -0
  538. package/dist/v4/robots/minio-store.d.ts.map +1 -1
  539. package/dist/v4/robots/minio-store.js +0 -1
  540. package/dist/v4/robots/progress-simulate.d.ts +14 -0
  541. package/dist/v4/robots/progress-simulate.d.ts.map +1 -1
  542. package/dist/v4/robots/progress-simulate.js +28 -1
  543. package/dist/v4/robots/s3-import.d.ts +28 -0
  544. package/dist/v4/robots/s3-import.d.ts.map +1 -1
  545. package/dist/v4/robots/s3-import.js +0 -1
  546. package/dist/v4/robots/s3-store.d.ts +28 -0
  547. package/dist/v4/robots/s3-store.d.ts.map +1 -1
  548. package/dist/v4/robots/s3-store.js +0 -1
  549. package/dist/v4/robots/script-run.d.ts +28 -0
  550. package/dist/v4/robots/script-run.d.ts.map +1 -1
  551. package/dist/v4/robots/script-run.js +10 -1
  552. package/dist/v4/robots/sftp-import.d.ts +28 -0
  553. package/dist/v4/robots/sftp-import.d.ts.map +1 -1
  554. package/dist/v4/robots/sftp-import.js +0 -1
  555. package/dist/v4/robots/sftp-store.d.ts +28 -0
  556. package/dist/v4/robots/sftp-store.d.ts.map +1 -1
  557. package/dist/v4/robots/sftp-store.js +0 -1
  558. package/dist/v4/robots/speech-transcribe.d.ts +28 -0
  559. package/dist/v4/robots/speech-transcribe.d.ts.map +1 -1
  560. package/dist/v4/robots/speech-transcribe.js +0 -1
  561. package/dist/v4/robots/supabase-import.d.ts +28 -0
  562. package/dist/v4/robots/supabase-import.d.ts.map +1 -1
  563. package/dist/v4/robots/supabase-import.js +0 -1
  564. package/dist/v4/robots/supabase-store.d.ts +28 -0
  565. package/dist/v4/robots/supabase-store.d.ts.map +1 -1
  566. package/dist/v4/robots/supabase-store.js +0 -1
  567. package/dist/v4/robots/swift-import.d.ts +28 -0
  568. package/dist/v4/robots/swift-import.d.ts.map +1 -1
  569. package/dist/v4/robots/swift-import.js +0 -1
  570. package/dist/v4/robots/swift-store.d.ts +28 -0
  571. package/dist/v4/robots/swift-store.d.ts.map +1 -1
  572. package/dist/v4/robots/swift-store.js +0 -1
  573. package/dist/v4/robots/text-speak.d.ts +28 -0
  574. package/dist/v4/robots/text-speak.d.ts.map +1 -1
  575. package/dist/v4/robots/text-speak.js +0 -1
  576. package/dist/v4/robots/text-translate.d.ts +100 -72
  577. package/dist/v4/robots/text-translate.d.ts.map +1 -1
  578. package/dist/v4/robots/text-translate.js +0 -1
  579. package/dist/v4/robots/tigris-import.d.ts +28 -0
  580. package/dist/v4/robots/tigris-import.d.ts.map +1 -1
  581. package/dist/v4/robots/tigris-import.js +0 -1
  582. package/dist/v4/robots/tigris-store.d.ts +28 -0
  583. package/dist/v4/robots/tigris-store.d.ts.map +1 -1
  584. package/dist/v4/robots/tigris-store.js +0 -1
  585. package/dist/v4/robots/tlcdn-deliver.d.ts +32 -0
  586. package/dist/v4/robots/tlcdn-deliver.d.ts.map +1 -1
  587. package/dist/v4/robots/tlcdn-deliver.js +19 -6
  588. package/dist/v4/robots/tus-store.d.ts +28 -0
  589. package/dist/v4/robots/tus-store.d.ts.map +1 -1
  590. package/dist/v4/robots/tus-store.js +1 -14
  591. package/dist/v4/robots/upload-handle.d.ts +28 -0
  592. package/dist/v4/robots/upload-handle.d.ts.map +1 -1
  593. package/dist/v4/robots/upload-handle.js +0 -1
  594. package/dist/v4/robots/video-adaptive.d.ts +40 -0
  595. package/dist/v4/robots/video-adaptive.d.ts.map +1 -1
  596. package/dist/v4/robots/video-adaptive.js +22 -6
  597. package/dist/v4/robots/video-artwork.d.ts +734 -0
  598. package/dist/v4/robots/video-artwork.d.ts.map +1 -0
  599. package/dist/v4/robots/video-artwork.js +65 -0
  600. package/dist/v4/robots/video-concat.d.ts +56 -0
  601. package/dist/v4/robots/video-concat.d.ts.map +1 -1
  602. package/dist/v4/robots/video-concat.js +30 -1
  603. package/dist/v4/robots/video-encode.d.ts +28 -0
  604. package/dist/v4/robots/video-encode.d.ts.map +1 -1
  605. package/dist/v4/robots/video-encode.js +0 -1
  606. package/dist/v4/robots/video-generate.d.ts +221 -0
  607. package/dist/v4/robots/video-generate.d.ts.map +1 -0
  608. package/dist/v4/robots/video-generate.js +89 -0
  609. package/dist/v4/robots/video-merge.d.ts +52 -0
  610. package/dist/v4/robots/video-merge.d.ts.map +1 -1
  611. package/dist/v4/robots/video-merge.js +33 -1
  612. package/dist/v4/robots/video-ondemand.d.ts +28 -0
  613. package/dist/v4/robots/video-ondemand.d.ts.map +1 -1
  614. package/dist/v4/robots/video-ondemand.js +3 -4
  615. package/dist/v4/robots/video-split.d.ts +1382 -0
  616. package/dist/v4/robots/video-split.d.ts.map +1 -0
  617. package/dist/v4/robots/video-split.js +77 -0
  618. package/dist/v4/robots/video-subtitle.d.ts +48 -4
  619. package/dist/v4/robots/video-subtitle.d.ts.map +1 -1
  620. package/dist/v4/robots/video-subtitle.js +61 -8
  621. package/dist/v4/robots/video-thumbs.d.ts +28 -0
  622. package/dist/v4/robots/video-thumbs.d.ts.map +1 -1
  623. package/dist/v4/robots/video-thumbs.js +0 -1
  624. package/dist/v4/robots/vimeo-import.d.ts +28 -0
  625. package/dist/v4/robots/vimeo-import.d.ts.map +1 -1
  626. package/dist/v4/robots/vimeo-import.js +0 -1
  627. package/dist/v4/robots/vimeo-store.d.ts +28 -0
  628. package/dist/v4/robots/vimeo-store.d.ts.map +1 -1
  629. package/dist/v4/robots/vimeo-store.js +14 -3
  630. package/dist/v4/robots/wasabi-import.d.ts +28 -0
  631. package/dist/v4/robots/wasabi-import.d.ts.map +1 -1
  632. package/dist/v4/robots/wasabi-import.js +0 -1
  633. package/dist/v4/robots/wasabi-store.d.ts +28 -0
  634. package/dist/v4/robots/wasabi-store.d.ts.map +1 -1
  635. package/dist/v4/robots/wasabi-store.js +0 -1
  636. package/dist/v4/robots/youtube-store.d.ts +34 -6
  637. package/dist/v4/robots/youtube-store.d.ts.map +1 -1
  638. package/dist/v4/robots/youtube-store.js +4 -5
  639. package/dist/v4/skillFrontmatter.d.ts +15 -0
  640. package/dist/v4/skillFrontmatter.d.ts.map +1 -0
  641. package/dist/v4/skillFrontmatter.js +18 -0
  642. package/dist/v4/template.d.ts +55 -39011
  643. package/dist/v4/template.d.ts.map +1 -1
  644. package/dist/v4/template.js +29 -7
  645. package/dist/v4/templateCredential.d.ts +3 -0
  646. package/dist/v4/templateCredential.d.ts.map +1 -1
  647. package/dist/v4/templateCredential.js +1 -0
  648. package/package.json +5 -7
@@ -0,0 +1,145 @@
1
+ import { z } from 'zod/v3';
2
+ import { imageQualitySchema, interpolateRobot, robotBase, robotImagemagick, robotUse, } from "./_instructions-primitives.js";
3
+ export const meta = {
4
+ bytescount: 1,
5
+ discount_factor: 1,
6
+ discount_pct: 0,
7
+ example_code: {
8
+ steps: {
9
+ enhanced_classic: {
10
+ robot: '/image/enhance',
11
+ use: ':original',
12
+ enhance: 'auto',
13
+ preset: 'vivid',
14
+ },
15
+ enhanced_ai: {
16
+ robot: '/image/enhance',
17
+ use: ':original',
18
+ engine: 'ai',
19
+ ai_preset: 'restore',
20
+ },
21
+ },
22
+ },
23
+ example_code_description: 'Enhance uploaded images with classic auto mode or AI restoration:',
24
+ minimum_charge: 0,
25
+ output_factor: 0.6,
26
+ override_lvl1: 'Image Manipulation',
27
+ purpose_sentence: 'automatically enhances images by adjusting levels, contrast, and sharpness, and optionally applies photo filter presets',
28
+ purpose_verb: 'enhance',
29
+ purpose_word: 'enhance',
30
+ purpose_words: 'Enhance images',
31
+ service_slug: 'image-manipulation',
32
+ slot_count: 15,
33
+ title: 'Enhance images',
34
+ typical_file_size_mb: 1.2,
35
+ typical_file_type: 'image',
36
+ name: 'ImageEnhanceRobot',
37
+ priceFactor: 1,
38
+ queueSlotCount: 15,
39
+ isAllowedForUrlTransform: true,
40
+ trackOutputFileSize: true,
41
+ isInternal: false,
42
+ removeJobResultFilesFromDiskRightAfterStoringOnS3: false,
43
+ stage: 'beta',
44
+ };
45
+ const enhanceModeSchema = z.enum(['auto', 'auto_gentle', 'auto_aggressive', 'none']).default('auto');
46
+ const presetSchema = z
47
+ .enum([
48
+ 'none',
49
+ 'warm',
50
+ 'cool',
51
+ 'vintage',
52
+ 'vivid',
53
+ 'matte',
54
+ 'cinematic',
55
+ 'golden_hour',
56
+ 'bw_dramatic',
57
+ 'bw_classic',
58
+ 'noir',
59
+ 'fade',
60
+ 'pastel',
61
+ 'teal_orange',
62
+ ])
63
+ .default('none');
64
+ const engineSchema = z.enum(['classic', 'ai']).default('classic');
65
+ const aiPresetSchema = z.enum(['restore', 'face_restore']).default('restore');
66
+ export const robotImageEnhanceInstructionsSchema = robotBase
67
+ .merge(robotUse)
68
+ .merge(robotImagemagick)
69
+ .extend({
70
+ robot: z.literal('/image/enhance').describe(`
71
+ With this <dfn>Robot</dfn> you can automatically enhance images with one click — adjusting levels, contrast, saturation, sharpness, and white balance to produce an optimally balanced image. It also supports a library of named photo filter presets (e.g. \`warm\`, \`cool\`, \`vintage\`, \`vivid\`) that apply curated color grading and tone adjustments.
72
+
73
+ It works well together with [🤖/image/resize](/docs/robots/image-resize/) — you can enhance first, then resize, or vice versa.
74
+
75
+ > [!Note]
76
+ > This <dfn>Robot</dfn> accepts all image types supported by ImageMagick and will pass through unsupported types unchanged.
77
+
78
+ > [!Note]
79
+ > \`engine: "classic"\` uses \`enhance\`, \`preset\`, \`sharpen\`, and \`denoise\`. \`engine: "ai"\` uses \`ai_preset\` and \`quality\`; classic controls are ignored in AI mode.
80
+
81
+ > [!Note]
82
+ > Output keeps the original file extension when possible. In AI mode, if the target extension is not writable by the selected \`imagemagick_stack\`, the file is passed through unchanged.
83
+ `),
84
+ enhance: enhanceModeSchema.describe(`
85
+ The auto-enhancement mode. \`"auto"\` applies balanced auto-levels, gamma correction, and subtle sharpening. \`"auto_gentle"\` is more conservative (good for already-decent photos). \`"auto_aggressive"\` applies stronger normalization and contrast. \`"none"\` skips auto-enhance (useful when only applying a preset filter).
86
+ `),
87
+ preset: presetSchema.describe(`
88
+ A named color grading preset to apply. Applied after auto-enhancement. Use \`"none"\` to skip preset application.
89
+
90
+ Available presets:
91
+ - \`warm\` — Warm golden tones
92
+ - \`cool\` — Cool blue-shifted tones
93
+ - \`vintage\` — Faded retro look with warm shadows
94
+ - \`vivid\` — Boosted saturation and contrast
95
+ - \`matte\` — Lifted blacks for a matte film look
96
+ - \`cinematic\` — Teal-and-orange cinema grading
97
+ - \`golden_hour\` — Warm sunset-like glow
98
+ - \`bw_dramatic\` — High-contrast black and white
99
+ - \`bw_classic\` — Classic film black and white
100
+ - \`noir\` — Dark, moody black and white
101
+ - \`fade\` — Washed-out faded look
102
+ - \`pastel\` — Soft, desaturated pastel tones
103
+ - \`teal_orange\` — Complementary teal shadows and orange highlights
104
+ `),
105
+ engine: engineSchema.describe(`
106
+ Enhancement engine to use.
107
+
108
+ - \`"classic"\` uses ImageMagick-based adjustments and presets.
109
+ - \`"ai"\` uses AI restoration models on Replicate (typically higher latency and cost than classic mode).
110
+ `),
111
+ ai_preset: aiPresetSchema.describe(`
112
+ AI enhancement preset used when \`engine\` is set to \`"ai"\`:
113
+ - \`restore\` — General image restoration.
114
+ - \`face_restore\` — Portrait-focused face restoration.
115
+
116
+ AI mode is not intended for image upscaling. For dedicated upscaling, use [🤖/image/upscale](/docs/robots/image-upscale/).
117
+ `),
118
+ sharpen: z
119
+ .number()
120
+ .min(0)
121
+ .max(10)
122
+ .default(0)
123
+ .describe(`
124
+ Additional sharpening amount (\`0\` = none, \`10\` = maximum). The \`"auto"\` enhance mode already applies subtle sharpening; this parameter adds more on top.
125
+ `),
126
+ denoise: z
127
+ .number()
128
+ .min(0)
129
+ .max(10)
130
+ .default(0)
131
+ .describe(`
132
+ Noise reduction strength (\`0\` = none, \`10\` = maximum). Useful for high-ISO photos.
133
+ `),
134
+ quality: imageQualitySchema.describe(`
135
+ Quality of the output image. A value between \`1\` and \`100\`. Defaults to \`92\`.
136
+ `),
137
+ })
138
+ .strict();
139
+ export const robotImageEnhanceInstructionsWithHiddenFieldsSchema = robotImageEnhanceInstructionsSchema.extend({
140
+ result: z
141
+ .union([z.literal('debug'), robotImageEnhanceInstructionsSchema.shape.result])
142
+ .optional(),
143
+ });
144
+ export const interpolatableRobotImageEnhanceInstructionsSchema = interpolateRobot(robotImageEnhanceInstructionsSchema);
145
+ export const interpolatableRobotImageEnhanceInstructionsWithHiddenFieldsSchema = interpolateRobot(robotImageEnhanceInstructionsWithHiddenFieldsSchema);
@@ -2,6 +2,7 @@ import { z } from 'zod/v3';
2
2
  import type { RobotMetaInput } from './_instructions-primitives.ts';
3
3
  export declare const meta: RobotMetaInput;
4
4
  export declare const robotImageFacedetectInstructionsSchema: z.ZodObject<{
5
+ interpolate: z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodUnion<[z.ZodBoolean, z.ZodEnum<["true", "false"]>]>, boolean, boolean | "false" | "true">, z.ZodRecord<z.ZodString, z.ZodEffects<z.ZodUnion<[z.ZodBoolean, z.ZodEnum<["true", "false"]>]>, boolean, boolean | "false" | "true">>]>>;
5
6
  output_meta: z.ZodOptional<z.ZodUnion<[z.ZodRecord<z.ZodString, z.ZodBoolean>, z.ZodBoolean, z.ZodArray<z.ZodString, "many">]>>;
6
7
  result: z.ZodDefault<z.ZodBoolean>;
7
8
  queue: z.ZodOptional<z.ZodEnum<["batch"]>>;
@@ -74,6 +75,7 @@ export declare const robotImageFacedetectInstructionsSchema: z.ZodObject<{
74
75
  crop_padding: string;
75
76
  min_confidence: number;
76
77
  faces: number | "each" | "group" | "max-confidence" | "max-size";
78
+ interpolate?: boolean | Record<string, boolean> | undefined;
77
79
  use?: string | string[] | {
78
80
  name: string;
79
81
  fields?: string | undefined;
@@ -93,6 +95,7 @@ export declare const robotImageFacedetectInstructionsSchema: z.ZodObject<{
93
95
  provider?: "aws" | "gcp" | "replicate" | "fal" | "transloadit" | undefined;
94
96
  }, {
95
97
  robot: "/image/facedetect";
98
+ interpolate?: boolean | "false" | "true" | Record<string, boolean | "false" | "true"> | undefined;
96
99
  use?: string | string[] | {
97
100
  name: string;
98
101
  fields?: string | undefined;
@@ -120,6 +123,7 @@ export declare const robotImageFacedetectInstructionsSchema: z.ZodObject<{
120
123
  faces?: number | "each" | "group" | "max-confidence" | "max-size" | undefined;
121
124
  }>;
122
125
  export declare const robotImageFacedetectInstructionsWithHiddenFieldsSchema: z.ZodObject<{
126
+ interpolate: z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodUnion<[z.ZodBoolean, z.ZodEnum<["true", "false"]>]>, boolean, boolean | "false" | "true">, z.ZodRecord<z.ZodString, z.ZodEffects<z.ZodUnion<[z.ZodBoolean, z.ZodEnum<["true", "false"]>]>, boolean, boolean | "false" | "true">>]>>;
123
127
  output_meta: z.ZodOptional<z.ZodUnion<[z.ZodRecord<z.ZodString, z.ZodBoolean>, z.ZodBoolean, z.ZodArray<z.ZodString, "many">]>>;
124
128
  queue: z.ZodOptional<z.ZodEnum<["batch"]>>;
125
129
  force_accept: z.ZodDefault<z.ZodBoolean>;
@@ -190,6 +194,7 @@ export declare const robotImageFacedetectInstructionsWithHiddenFieldsSchema: z.Z
190
194
  crop_padding: string;
191
195
  min_confidence: number;
192
196
  faces: number | "each" | "group" | "max-confidence" | "max-size";
197
+ interpolate?: boolean | Record<string, boolean> | undefined;
193
198
  use?: string | string[] | {
194
199
  name: string;
195
200
  fields?: string | undefined;
@@ -210,6 +215,7 @@ export declare const robotImageFacedetectInstructionsWithHiddenFieldsSchema: z.Z
210
215
  provider?: "aws" | "gcp" | "replicate" | "fal" | "transloadit" | undefined;
211
216
  }, {
212
217
  robot: "/image/facedetect";
218
+ interpolate?: boolean | "false" | "true" | Record<string, boolean | "false" | "true"> | undefined;
213
219
  use?: string | string[] | {
214
220
  name: string;
215
221
  fields?: string | undefined;
@@ -239,6 +245,7 @@ export declare const robotImageFacedetectInstructionsWithHiddenFieldsSchema: z.Z
239
245
  export type RobotImageFacedetectInstructions = z.infer<typeof robotImageFacedetectInstructionsSchema>;
240
246
  export type RobotImageFacedetectInstructionsWithHiddenFields = z.infer<typeof robotImageFacedetectInstructionsWithHiddenFieldsSchema>;
241
247
  export declare const interpolatableRobotImageFacedetectInstructionsSchema: z.ZodObject<{
248
+ interpolate: z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodUnion<[z.ZodBoolean, z.ZodEnum<["true", "false"]>]>, boolean, boolean | "false" | "true">, z.ZodRecord<z.ZodString, z.ZodEffects<z.ZodUnion<[z.ZodBoolean, z.ZodEnum<["true", "false"]>]>, boolean, boolean | "false" | "true">>]>>;
242
249
  output_meta: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodRecord<z.ZodString, z.ZodUnion<[z.ZodString, z.ZodBoolean]>>, z.ZodUnion<[z.ZodString, z.ZodBoolean]>, z.ZodUnion<[z.ZodString, z.ZodArray<z.ZodString, "many">]>]>>;
243
250
  result: z.ZodDefault<z.ZodUnion<[z.ZodString, z.ZodBoolean]>>;
244
251
  queue: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodEnum<["batch"]>]>>;
@@ -309,6 +316,7 @@ export declare const interpolatableRobotImageFacedetectInstructionsSchema: z.Zod
309
316
  crop_padding: string;
310
317
  min_confidence: string | number;
311
318
  faces: string | number;
319
+ interpolate?: boolean | Record<string, boolean> | undefined;
312
320
  use?: string | string[] | {
313
321
  name: string;
314
322
  fields?: string | undefined;
@@ -328,6 +336,7 @@ export declare const interpolatableRobotImageFacedetectInstructionsSchema: z.Zod
328
336
  provider?: string | undefined;
329
337
  }, {
330
338
  robot: "/image/facedetect";
339
+ interpolate?: boolean | "false" | "true" | Record<string, boolean | "false" | "true"> | undefined;
331
340
  use?: string | string[] | {
332
341
  name: string;
333
342
  fields?: string | undefined;
@@ -357,6 +366,7 @@ export declare const interpolatableRobotImageFacedetectInstructionsSchema: z.Zod
357
366
  export type InterpolatableRobotImageFacedetectInstructions = InterpolatableRobotImageFacedetectInstructionsInput;
358
367
  export type InterpolatableRobotImageFacedetectInstructionsInput = z.input<typeof interpolatableRobotImageFacedetectInstructionsSchema>;
359
368
  export declare const interpolatableRobotImageFacedetectInstructionsWithHiddenFieldsSchema: z.ZodObject<{
369
+ interpolate: z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodUnion<[z.ZodBoolean, z.ZodEnum<["true", "false"]>]>, boolean, boolean | "false" | "true">, z.ZodRecord<z.ZodString, z.ZodEffects<z.ZodUnion<[z.ZodBoolean, z.ZodEnum<["true", "false"]>]>, boolean, boolean | "false" | "true">>]>>;
360
370
  output_meta: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodRecord<z.ZodString, z.ZodUnion<[z.ZodString, z.ZodBoolean]>>, z.ZodUnion<[z.ZodString, z.ZodBoolean]>, z.ZodUnion<[z.ZodString, z.ZodArray<z.ZodString, "many">]>]>>;
361
371
  queue: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodEnum<["batch"]>]>>;
362
372
  force_accept: z.ZodDefault<z.ZodUnion<[z.ZodString, z.ZodBoolean]>>;
@@ -426,6 +436,7 @@ export declare const interpolatableRobotImageFacedetectInstructionsWithHiddenFie
426
436
  crop_padding: string;
427
437
  min_confidence: string | number;
428
438
  faces: string | number;
439
+ interpolate?: boolean | Record<string, boolean> | undefined;
429
440
  use?: string | string[] | {
430
441
  name: string;
431
442
  fields?: string | undefined;
@@ -446,6 +457,7 @@ export declare const interpolatableRobotImageFacedetectInstructionsWithHiddenFie
446
457
  provider?: string | undefined;
447
458
  }, {
448
459
  robot: "/image/facedetect";
460
+ interpolate?: boolean | "false" | "true" | Record<string, boolean | "false" | "true"> | undefined;
449
461
  use?: string | string[] | {
450
462
  name: string;
451
463
  fields?: string | undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"image-facedetect.d.ts","sourceRoot":"","sources":["../../../src/v3/robots/image-facedetect.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAA;AAE1B,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAA;AAQnE,eAAO,MAAM,IAAI,EAAE,cAwClB,CAAA;AAED,eAAO,MAAM,sCAAsC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAqGxC,CAAA;AAEX,eAAO,MAAM,sDAAsD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAK/D,CAAA;AAEJ,MAAM,MAAM,gCAAgC,GAAG,CAAC,CAAC,KAAK,CACpD,OAAO,sCAAsC,CAC9C,CAAA;AACD,MAAM,MAAM,gDAAgD,GAAG,CAAC,CAAC,KAAK,CACpE,OAAO,sDAAsD,CAC9D,CAAA;AAED,eAAO,MAAM,oDAAoD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAEhE,CAAA;AACD,MAAM,MAAM,8CAA8C,GACxD,mDAAmD,CAAA;AAErD,MAAM,MAAM,mDAAmD,GAAG,CAAC,CAAC,KAAK,CACvE,OAAO,oDAAoD,CAC5D,CAAA;AAED,eAAO,MAAM,oEAAoE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EACP,CAAA;AAC1E,MAAM,MAAM,8DAA8D,GAAG,CAAC,CAAC,KAAK,CAClF,OAAO,oEAAoE,CAC5E,CAAA;AACD,MAAM,MAAM,mEAAmE,GAAG,CAAC,CAAC,KAAK,CACvF,OAAO,oEAAoE,CAC5E,CAAA"}
1
+ {"version":3,"file":"image-facedetect.d.ts","sourceRoot":"","sources":["../../../src/v3/robots/image-facedetect.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAA;AAE1B,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAA;AAQnE,eAAO,MAAM,IAAI,EAAE,cAuClB,CAAA;AAED,eAAO,MAAM,sCAAsC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAqGxC,CAAA;AAEX,eAAO,MAAM,sDAAsD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAK/D,CAAA;AAEJ,MAAM,MAAM,gCAAgC,GAAG,CAAC,CAAC,KAAK,CACpD,OAAO,sCAAsC,CAC9C,CAAA;AACD,MAAM,MAAM,gDAAgD,GAAG,CAAC,CAAC,KAAK,CACpE,OAAO,sDAAsD,CAC9D,CAAA;AAED,eAAO,MAAM,oDAAoD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAEhE,CAAA;AACD,MAAM,MAAM,8CAA8C,GACxD,mDAAmD,CAAA;AAErD,MAAM,MAAM,mDAAmD,GAAG,CAAC,CAAC,KAAK,CACvE,OAAO,oDAAoD,CAC5D,CAAA;AAED,eAAO,MAAM,oEAAoE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EACP,CAAA;AAC1E,MAAM,MAAM,8DAA8D,GAAG,CAAC,CAAC,KAAK,CAClF,OAAO,oEAAoE,CAC5E,CAAA;AACD,MAAM,MAAM,mEAAmE,GAAG,CAAC,CAAC,KAAK,CACvF,OAAO,oEAAoE,CAC5E,CAAA"}
@@ -1,7 +1,6 @@
1
1
  import { z } from 'zod/v3';
2
2
  import { aiProviderSchema, interpolateRobot, robotBase, robotUse, } from "./_instructions-primitives.js";
3
3
  export const meta = {
4
- allowed_for_url_transform: true,
5
4
  bytescount: 1,
6
5
  discount_factor: 1,
7
6
  discount_pct: 0,
@@ -2,12 +2,14 @@ import { z } from 'zod/v3';
2
2
  import type { RobotMetaInput } from './_instructions-primitives.ts';
3
3
  export declare const meta: RobotMetaInput;
4
4
  export declare const robotImageGenerateInstructionsSchema: z.ZodObject<{
5
+ interpolate: z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodUnion<[z.ZodBoolean, z.ZodEnum<["true", "false"]>]>, boolean, boolean | "false" | "true">, z.ZodRecord<z.ZodString, z.ZodEffects<z.ZodUnion<[z.ZodBoolean, z.ZodEnum<["true", "false"]>]>, boolean, boolean | "false" | "true">>]>>;
5
6
  output_meta: z.ZodOptional<z.ZodUnion<[z.ZodRecord<z.ZodString, z.ZodBoolean>, z.ZodBoolean, z.ZodArray<z.ZodString, "many">]>>;
6
7
  result: z.ZodDefault<z.ZodBoolean>;
7
8
  queue: z.ZodOptional<z.ZodEnum<["batch"]>>;
8
9
  force_accept: z.ZodDefault<z.ZodBoolean>;
9
10
  ignore_errors: z.ZodDefault<z.ZodEffects<z.ZodUnion<[z.ZodBoolean, z.ZodArray<z.ZodEnum<["meta", "execute"]>, "many">]>, string[], boolean | ("meta" | "execute")[]>>;
10
11
  } & {
12
+ robot: z.ZodLiteral<"/image/generate">;
11
13
  use: z.ZodOptional<z.ZodUnion<[z.ZodUnion<[z.ZodString, z.ZodArray<z.ZodString, "many">, z.ZodArray<z.ZodObject<{
12
14
  name: z.ZodString;
13
15
  fields: z.ZodOptional<z.ZodString>;
@@ -56,8 +58,6 @@ export declare const robotImageGenerateInstructionsSchema: z.ZodObject<{
56
58
  bundle_steps?: boolean | undefined;
57
59
  group_by_original?: boolean | undefined;
58
60
  }>]>>;
59
- } & {
60
- robot: z.ZodLiteral<"/image/generate">;
61
61
  model: z.ZodOptional<z.ZodString>;
62
62
  prompt: z.ZodString;
63
63
  format: z.ZodOptional<z.ZodEnum<["jpeg", "jpg", "png", "gif", "webp", "svg"]>>;
@@ -73,6 +73,7 @@ export declare const robotImageGenerateInstructionsSchema: z.ZodObject<{
73
73
  force_accept: boolean;
74
74
  ignore_errors: string[];
75
75
  prompt: string;
76
+ interpolate?: boolean | Record<string, boolean> | undefined;
76
77
  use?: string | string[] | {
77
78
  name: string;
78
79
  fields?: string | undefined;
@@ -100,6 +101,7 @@ export declare const robotImageGenerateInstructionsSchema: z.ZodObject<{
100
101
  }, {
101
102
  robot: "/image/generate";
102
103
  prompt: string;
104
+ interpolate?: boolean | "false" | "true" | Record<string, boolean | "false" | "true"> | undefined;
103
105
  use?: string | string[] | {
104
106
  name: string;
105
107
  fields?: string | undefined;
@@ -129,10 +131,12 @@ export declare const robotImageGenerateInstructionsSchema: z.ZodObject<{
129
131
  num_outputs?: number | undefined;
130
132
  }>;
131
133
  export declare const robotImageGenerateInstructionsWithHiddenFieldsSchema: z.ZodObject<{
134
+ interpolate: z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodUnion<[z.ZodBoolean, z.ZodEnum<["true", "false"]>]>, boolean, boolean | "false" | "true">, z.ZodRecord<z.ZodString, z.ZodEffects<z.ZodUnion<[z.ZodBoolean, z.ZodEnum<["true", "false"]>]>, boolean, boolean | "false" | "true">>]>>;
132
135
  output_meta: z.ZodOptional<z.ZodUnion<[z.ZodRecord<z.ZodString, z.ZodBoolean>, z.ZodBoolean, z.ZodArray<z.ZodString, "many">]>>;
133
136
  queue: z.ZodOptional<z.ZodEnum<["batch"]>>;
134
137
  force_accept: z.ZodDefault<z.ZodBoolean>;
135
138
  ignore_errors: z.ZodDefault<z.ZodEffects<z.ZodUnion<[z.ZodBoolean, z.ZodArray<z.ZodEnum<["meta", "execute"]>, "many">]>, string[], boolean | ("meta" | "execute")[]>>;
139
+ robot: z.ZodLiteral<"/image/generate">;
136
140
  use: z.ZodOptional<z.ZodUnion<[z.ZodUnion<[z.ZodString, z.ZodArray<z.ZodString, "many">, z.ZodArray<z.ZodObject<{
137
141
  name: z.ZodString;
138
142
  fields: z.ZodOptional<z.ZodString>;
@@ -181,7 +185,6 @@ export declare const robotImageGenerateInstructionsWithHiddenFieldsSchema: z.Zod
181
185
  bundle_steps?: boolean | undefined;
182
186
  group_by_original?: boolean | undefined;
183
187
  }>]>>;
184
- robot: z.ZodLiteral<"/image/generate">;
185
188
  model: z.ZodOptional<z.ZodString>;
186
189
  prompt: z.ZodString;
187
190
  format: z.ZodOptional<z.ZodEnum<["jpeg", "jpg", "png", "gif", "webp", "svg"]>>;
@@ -199,6 +202,7 @@ export declare const robotImageGenerateInstructionsWithHiddenFieldsSchema: z.Zod
199
202
  force_accept: boolean;
200
203
  ignore_errors: string[];
201
204
  prompt: string;
205
+ interpolate?: boolean | Record<string, boolean> | undefined;
202
206
  use?: string | string[] | {
203
207
  name: string;
204
208
  fields?: string | undefined;
@@ -228,6 +232,7 @@ export declare const robotImageGenerateInstructionsWithHiddenFieldsSchema: z.Zod
228
232
  }, {
229
233
  robot: "/image/generate";
230
234
  prompt: string;
235
+ interpolate?: boolean | "false" | "true" | Record<string, boolean | "false" | "true"> | undefined;
231
236
  use?: string | string[] | {
232
237
  name: string;
233
238
  fields?: string | undefined;
@@ -260,10 +265,12 @@ export declare const robotImageGenerateInstructionsWithHiddenFieldsSchema: z.Zod
260
265
  export type RobotImageGenerateInstructions = z.infer<typeof robotImageGenerateInstructionsSchema>;
261
266
  export type RobotImageGenerateInstructionsWithHiddenFields = z.infer<typeof robotImageGenerateInstructionsWithHiddenFieldsSchema>;
262
267
  export declare const interpolatableRobotImageGenerateInstructionsSchema: z.ZodObject<{
268
+ interpolate: z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodUnion<[z.ZodBoolean, z.ZodEnum<["true", "false"]>]>, boolean, boolean | "false" | "true">, z.ZodRecord<z.ZodString, z.ZodEffects<z.ZodUnion<[z.ZodBoolean, z.ZodEnum<["true", "false"]>]>, boolean, boolean | "false" | "true">>]>>;
263
269
  output_meta: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodRecord<z.ZodString, z.ZodUnion<[z.ZodString, z.ZodBoolean]>>, z.ZodUnion<[z.ZodString, z.ZodBoolean]>, z.ZodUnion<[z.ZodString, z.ZodArray<z.ZodString, "many">]>]>>;
264
270
  queue: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodEnum<["batch"]>]>>;
265
271
  force_accept: z.ZodDefault<z.ZodUnion<[z.ZodString, z.ZodBoolean]>>;
266
272
  ignore_errors: z.ZodDefault<z.ZodUnion<[z.ZodString, z.ZodEffects<z.ZodUnion<[z.ZodBoolean, z.ZodArray<z.ZodEnum<["meta", "execute"]>, "many">]>, string[], boolean | ("meta" | "execute")[]>]>>;
273
+ robot: z.ZodLiteral<"/image/generate">;
267
274
  use: z.ZodOptional<z.ZodUnion<[z.ZodUnion<[z.ZodString, z.ZodArray<z.ZodString, "many">, z.ZodArray<z.ZodObject<{
268
275
  name: z.ZodString;
269
276
  fields: z.ZodOptional<z.ZodString>;
@@ -312,7 +319,6 @@ export declare const interpolatableRobotImageGenerateInstructionsSchema: z.ZodOb
312
319
  bundle_steps?: boolean | undefined;
313
320
  group_by_original?: boolean | undefined;
314
321
  }>]>>;
315
- robot: z.ZodLiteral<"/image/generate">;
316
322
  model: z.ZodOptional<z.ZodString>;
317
323
  prompt: z.ZodString;
318
324
  format: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodEnum<["jpeg", "jpg", "png", "gif", "webp", "svg"]>]>>;
@@ -329,6 +335,7 @@ export declare const interpolatableRobotImageGenerateInstructionsSchema: z.ZodOb
329
335
  force_accept: string | boolean;
330
336
  ignore_errors: string | string[];
331
337
  prompt: string;
338
+ interpolate?: boolean | Record<string, boolean> | undefined;
332
339
  use?: string | string[] | {
333
340
  name: string;
334
341
  fields?: string | undefined;
@@ -358,6 +365,7 @@ export declare const interpolatableRobotImageGenerateInstructionsSchema: z.ZodOb
358
365
  }, {
359
366
  robot: "/image/generate";
360
367
  prompt: string;
368
+ interpolate?: boolean | "false" | "true" | Record<string, boolean | "false" | "true"> | undefined;
361
369
  use?: string | string[] | {
362
370
  name: string;
363
371
  fields?: string | undefined;
@@ -390,10 +398,12 @@ export declare const interpolatableRobotImageGenerateInstructionsSchema: z.ZodOb
390
398
  export type InterpolatableRobotImageGenerateInstructions = InterpolatableRobotImageGenerateInstructionsInput;
391
399
  export type InterpolatableRobotImageGenerateInstructionsInput = z.input<typeof interpolatableRobotImageGenerateInstructionsSchema>;
392
400
  export declare const interpolatableRobotImageGenerateInstructionsWithHiddenFieldsSchema: z.ZodObject<{
401
+ interpolate: z.ZodOptional<z.ZodUnion<[z.ZodEffects<z.ZodUnion<[z.ZodBoolean, z.ZodEnum<["true", "false"]>]>, boolean, boolean | "false" | "true">, z.ZodRecord<z.ZodString, z.ZodEffects<z.ZodUnion<[z.ZodBoolean, z.ZodEnum<["true", "false"]>]>, boolean, boolean | "false" | "true">>]>>;
393
402
  output_meta: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodRecord<z.ZodString, z.ZodUnion<[z.ZodString, z.ZodBoolean]>>, z.ZodUnion<[z.ZodString, z.ZodBoolean]>, z.ZodUnion<[z.ZodString, z.ZodArray<z.ZodString, "many">]>]>>;
394
403
  queue: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodEnum<["batch"]>]>>;
395
404
  force_accept: z.ZodDefault<z.ZodUnion<[z.ZodString, z.ZodBoolean]>>;
396
405
  ignore_errors: z.ZodDefault<z.ZodUnion<[z.ZodString, z.ZodEffects<z.ZodUnion<[z.ZodBoolean, z.ZodArray<z.ZodEnum<["meta", "execute"]>, "many">]>, string[], boolean | ("meta" | "execute")[]>]>>;
406
+ robot: z.ZodLiteral<"/image/generate">;
397
407
  use: z.ZodOptional<z.ZodUnion<[z.ZodUnion<[z.ZodString, z.ZodArray<z.ZodString, "many">, z.ZodArray<z.ZodObject<{
398
408
  name: z.ZodString;
399
409
  fields: z.ZodOptional<z.ZodString>;
@@ -442,7 +452,6 @@ export declare const interpolatableRobotImageGenerateInstructionsWithHiddenField
442
452
  bundle_steps?: boolean | undefined;
443
453
  group_by_original?: boolean | undefined;
444
454
  }>]>>;
445
- robot: z.ZodLiteral<"/image/generate">;
446
455
  model: z.ZodOptional<z.ZodString>;
447
456
  prompt: z.ZodString;
448
457
  format: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodEnum<["jpeg", "jpg", "png", "gif", "webp", "svg"]>]>>;
@@ -459,6 +468,7 @@ export declare const interpolatableRobotImageGenerateInstructionsWithHiddenField
459
468
  force_accept: string | boolean;
460
469
  ignore_errors: string | string[];
461
470
  prompt: string;
471
+ interpolate?: boolean | Record<string, boolean> | undefined;
462
472
  use?: string | string[] | {
463
473
  name: string;
464
474
  fields?: string | undefined;
@@ -488,6 +498,7 @@ export declare const interpolatableRobotImageGenerateInstructionsWithHiddenField
488
498
  }, {
489
499
  robot: "/image/generate";
490
500
  prompt: string;
501
+ interpolate?: boolean | "false" | "true" | Record<string, boolean | "false" | "true"> | undefined;
491
502
  use?: string | string[] | {
492
503
  name: string;
493
504
  fields?: string | undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"image-generate.d.ts","sourceRoot":"","sources":["../../../src/v3/robots/image-generate.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAA;AAE1B,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAA;AAGnE,eAAO,MAAM,IAAI,EAAE,cAyBlB,CAAA;AAED,eAAO,MAAM,oCAAoC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA0BtC,CAAA;AAEX,eAAO,MAAM,oDAAoD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAM7D,CAAA;AAEJ,MAAM,MAAM,8BAA8B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oCAAoC,CAAC,CAAA;AACjG,MAAM,MAAM,8CAA8C,GAAG,CAAC,CAAC,KAAK,CAClE,OAAO,oDAAoD,CAC5D,CAAA;AAED,eAAO,MAAM,kDAAkD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAE9D,CAAA;AACD,MAAM,MAAM,4CAA4C,GACtD,iDAAiD,CAAA;AAEnD,MAAM,MAAM,iDAAiD,GAAG,CAAC,CAAC,KAAK,CACrE,OAAO,kDAAkD,CAC1D,CAAA;AAED,eAAO,MAAM,kEAAkE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAE9E,CAAA;AACD,MAAM,MAAM,4DAA4D,GAAG,CAAC,CAAC,KAAK,CAChF,OAAO,kEAAkE,CAC1E,CAAA;AACD,MAAM,MAAM,iEAAiE,GAAG,CAAC,CAAC,KAAK,CACrF,OAAO,kEAAkE,CAC1E,CAAA"}
1
+ {"version":3,"file":"image-generate.d.ts","sourceRoot":"","sources":["../../../src/v3/robots/image-generate.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAA;AAE1B,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAA;AAGnE,eAAO,MAAM,IAAI,EAAE,cA4ClB,CAAA;AASD,eAAO,MAAM,oCAAoC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAsEtC,CAAA;AAEX,eAAO,MAAM,oDAAoD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAM7D,CAAA;AAEJ,MAAM,MAAM,8BAA8B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oCAAoC,CAAC,CAAA;AACjG,MAAM,MAAM,8CAA8C,GAAG,CAAC,CAAC,KAAK,CAClE,OAAO,oDAAoD,CAC5D,CAAA;AAED,eAAO,MAAM,kDAAkD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAE9D,CAAA;AACD,MAAM,MAAM,4CAA4C,GACtD,iDAAiD,CAAA;AAEnD,MAAM,MAAM,iDAAiD,GAAG,CAAC,CAAC,KAAK,CACrE,OAAO,kDAAkD,CAC1D,CAAA;AAED,eAAO,MAAM,kEAAkE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAE9E,CAAA;AACD,MAAM,MAAM,4DAA4D,GAAG,CAAC,CAAC,KAAK,CAChF,OAAO,kEAAkE,CAC1E,CAAA;AACD,MAAM,MAAM,iEAAiE,GAAG,CAAC,CAAC,KAAK,CACrF,OAAO,kEAAkE,CAC1E,CAAA"}
@@ -1,10 +1,27 @@
1
1
  import { z } from 'zod/v3';
2
2
  import { interpolateRobot, robotBase, robotUse } from "./_instructions-primitives.js";
3
3
  export const meta = {
4
- allowed_for_url_transform: true,
5
4
  bytescount: 1,
6
5
  discount_factor: 1,
7
6
  discount_pct: 0,
7
+ example_code: {
8
+ steps: {
9
+ ':original': {
10
+ robot: '/upload/handle',
11
+ },
12
+ inpainted: {
13
+ robot: '/image/generate',
14
+ use: [
15
+ { name: ':original', as: 'image' },
16
+ { name: ':original', as: 'mask' },
17
+ ],
18
+ model: 'google/nano-banana-pro',
19
+ prompt: 'Replace the masked area with a breaching whale. Keep the rest of the image unchanged.',
20
+ format: 'png',
21
+ },
22
+ },
23
+ },
24
+ example_code_description: 'Inpaint an image by uploading an original image and a mask image, then use both files in /image/generate.',
8
25
  minimum_charge: 0,
9
26
  output_factor: 0.6,
10
27
  purpose_sentence: 'generates images from text prompts using AI',
@@ -26,23 +43,60 @@ export const meta = {
26
43
  removeJobResultFilesFromDiskRightAfterStoringOnS3: false,
27
44
  stage: 'ga',
28
45
  };
46
+ // Internal documentation (for public docs, see transloadit.com/docs)
47
+ //
48
+ // Inpainting: When input files are provided via `use`, file metadata (field name, mime) is
49
+ // prepended to the prompt so the model understands each file's role. Users should name upload
50
+ // fields semantically (e.g., "mask", "image") or use the `as` directive. Field is checked first,
51
+ // then `as`. Models that accept explicit image/mask inputs use these roles deterministically.
52
+ // Models that infer roles from prompt context receive this file metadata in the prompt.
29
53
  export const robotImageGenerateInstructionsSchema = robotBase
30
54
  .merge(robotUse)
31
55
  .extend({
32
56
  robot: z.literal('/image/generate'),
57
+ use: robotUse.shape.use.describe(`
58
+ Specifies which Step(s) to use as input.
59
+
60
+ For inpainting, provide both the source image and mask through \`use\`, typically with:
61
+
62
+ \`\`\`json
63
+ {
64
+ "use": [
65
+ { "name": ":original", "as": "image" },
66
+ { "name": ":original", "as": "mask" }
67
+ ]
68
+ }
69
+ \`\`\`
70
+
71
+ Best practice:
72
+ - Tag source and mask inputs explicitly using \`as\` (or semantic upload field names)
73
+ - Keep the prompt focused on what should change in the masked/transparent region
74
+ - Leave the model/provider choice to the robot defaults unless you have a specific need
75
+ `),
33
76
  model: z
34
77
  .string()
35
78
  .optional()
36
- .describe('The AI model to use for image generation. Defaults to google/nano-banana.'),
37
- prompt: z.string().describe('The prompt describing the desired image content.'),
79
+ .describe('The AI model to use. Defaults to google/nano-banana. Supported models include flux-1.1-pro-ultra, flux-schnell, recraft-v3, google/nano-banana, google/nano-banana-2, google/nano-banana-pro, openai/gpt-image-2, and stability-ai/stable-diffusion-inpainting. The legacy alias gpt-image-2 is also accepted for backwards compatibility.'),
80
+ prompt: z
81
+ .string()
82
+ .describe('Prompt describing the desired image. For inpainting, describe what should appear in the masked/transparent region and that the rest should stay unchanged.'),
38
83
  format: z
39
84
  .enum(['jpeg', 'jpg', 'png', 'gif', 'webp', 'svg'])
40
85
  .optional()
41
- .describe('Format of the generated image.'),
86
+ .describe('Output format. Defaults depend on model: png for Google models and openai/gpt-image-2, svg for recraft-v3, jpeg for others. Google models currently return PNG only.'),
42
87
  seed: z.number().optional().describe('Seed for the random number generator.'),
43
- aspect_ratio: z.string().optional().describe('Aspect ratio of the generated image.'),
44
- height: z.number().optional().describe('Height of the generated image.'),
45
- width: z.number().optional().describe('Width of the generated image.'),
88
+ aspect_ratio: z
89
+ .string()
90
+ .optional()
91
+ .describe('Requested output aspect ratio. For Google models, width/height can also be used and orientation is derived automatically when aspect_ratio is omitted.'),
92
+ height: z
93
+ .number()
94
+ .optional()
95
+ .describe('Requested output height in pixels (mainly used by Google image models and openai/gpt-image-2).'),
96
+ width: z
97
+ .number()
98
+ .optional()
99
+ .describe('Requested output width in pixels (mainly used by Google image models and openai/gpt-image-2).'),
46
100
  style: z.string().optional().describe('Style of the generated image.'),
47
101
  num_outputs: z
48
102
  .number()
@@ -50,7 +104,7 @@ export const robotImageGenerateInstructionsSchema = robotBase
50
104
  .min(1)
51
105
  .max(10)
52
106
  .optional()
53
- .describe('Number of image variants to generate.'),
107
+ .describe('Number of output variants to generate (1-10).'),
54
108
  })
55
109
  .strict();
56
110
  export const robotImageGenerateInstructionsWithHiddenFieldsSchema = robotImageGenerateInstructionsSchema.extend({