@nodaro/sdk 2.28.0 → 2.31.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 (716) hide show
  1. package/README.md +33 -2
  2. package/dist/chunk-2DZWWIJ4.cjs +32 -0
  3. package/dist/chunk-2DZWWIJ4.cjs.map +1 -0
  4. package/dist/chunk-34PU2DAT.cjs +118 -0
  5. package/dist/chunk-34PU2DAT.cjs.map +1 -0
  6. package/dist/chunk-37Y5QAVA.js +3 -0
  7. package/dist/chunk-37Y5QAVA.js.map +1 -0
  8. package/dist/chunk-37YCKZX4.cjs +4 -0
  9. package/dist/chunk-37YCKZX4.cjs.map +1 -0
  10. package/dist/chunk-3B47IHB3.cjs +65 -0
  11. package/dist/chunk-3B47IHB3.cjs.map +1 -0
  12. package/dist/chunk-3BELHJBN.cjs +4 -0
  13. package/dist/chunk-3BELHJBN.cjs.map +1 -0
  14. package/dist/chunk-3PPSGM5X.js +3 -0
  15. package/dist/chunk-3PPSGM5X.js.map +1 -0
  16. package/dist/chunk-3QBH2VE2.cjs +80 -0
  17. package/dist/chunk-3QBH2VE2.cjs.map +1 -0
  18. package/dist/chunk-3QFTP5P5.js +102 -0
  19. package/dist/chunk-3QFTP5P5.js.map +1 -0
  20. package/dist/chunk-43FVH6LJ.cjs +123 -0
  21. package/dist/chunk-43FVH6LJ.cjs.map +1 -0
  22. package/dist/chunk-43NO4SGC.cjs +4 -0
  23. package/dist/chunk-43NO4SGC.cjs.map +1 -0
  24. package/dist/chunk-45CK55BH.cjs +4 -0
  25. package/dist/chunk-45CK55BH.cjs.map +1 -0
  26. package/dist/chunk-4NLVBYMW.js +280 -0
  27. package/dist/chunk-4NLVBYMW.js.map +1 -0
  28. package/dist/chunk-4WRDR4GN.js +102 -0
  29. package/dist/chunk-4WRDR4GN.js.map +1 -0
  30. package/dist/chunk-4WWSHV5G.cjs +4 -0
  31. package/dist/chunk-4WWSHV5G.cjs.map +1 -0
  32. package/dist/chunk-53SXNN3A.js +80 -0
  33. package/dist/chunk-53SXNN3A.js.map +1 -0
  34. package/dist/chunk-5ALNFATQ.cjs +27 -0
  35. package/dist/chunk-5ALNFATQ.cjs.map +1 -0
  36. package/dist/chunk-5UQNMNUE.cjs +4 -0
  37. package/dist/chunk-5UQNMNUE.cjs.map +1 -0
  38. package/dist/chunk-5WAI7VGO.js +184 -0
  39. package/dist/chunk-5WAI7VGO.js.map +1 -0
  40. package/dist/chunk-65E3JBFZ.js +52 -0
  41. package/dist/chunk-65E3JBFZ.js.map +1 -0
  42. package/dist/chunk-6JFNBAKV.js +3 -0
  43. package/dist/chunk-6JFNBAKV.js.map +1 -0
  44. package/dist/chunk-6OC6OKLY.cjs +4 -0
  45. package/dist/chunk-6OC6OKLY.cjs.map +1 -0
  46. package/dist/chunk-6OGGJQVA.js +25 -0
  47. package/dist/chunk-6OGGJQVA.js.map +1 -0
  48. package/dist/chunk-7A7HYFGM.js +3 -0
  49. package/dist/chunk-7A7HYFGM.js.map +1 -0
  50. package/dist/chunk-7ISSKQ6S.cjs +106 -0
  51. package/dist/chunk-7ISSKQ6S.cjs.map +1 -0
  52. package/dist/chunk-7LSFG2AF.js +194 -0
  53. package/dist/chunk-7LSFG2AF.js.map +1 -0
  54. package/dist/chunk-7MYKT2L4.cjs +4 -0
  55. package/dist/chunk-7MYKT2L4.cjs.map +1 -0
  56. package/dist/chunk-7QOCWJKD.cjs +25 -0
  57. package/dist/chunk-7QOCWJKD.cjs.map +1 -0
  58. package/dist/chunk-A2ZAFAWC.cjs +4 -0
  59. package/dist/chunk-A2ZAFAWC.cjs.map +1 -0
  60. package/dist/chunk-A3S55XGF.cjs +54 -0
  61. package/dist/chunk-A3S55XGF.cjs.map +1 -0
  62. package/dist/chunk-A3THLBFG.js +3 -0
  63. package/dist/chunk-A3THLBFG.js.map +1 -0
  64. package/dist/chunk-AJVSMNPZ.js +78 -0
  65. package/dist/chunk-AJVSMNPZ.js.map +1 -0
  66. package/dist/chunk-ALSLZG3U.js +124 -0
  67. package/dist/chunk-ALSLZG3U.js.map +1 -0
  68. package/dist/chunk-ALUUBPDG.cjs +4 -0
  69. package/dist/chunk-ALUUBPDG.cjs.map +1 -0
  70. package/dist/chunk-AO3W45LT.cjs +4 -0
  71. package/dist/chunk-AO3W45LT.cjs.map +1 -0
  72. package/dist/chunk-AUDHV3OE.js +3 -0
  73. package/dist/chunk-AUDHV3OE.js.map +1 -0
  74. package/dist/chunk-BAL576G2.cjs +4 -0
  75. package/dist/chunk-BAL576G2.cjs.map +1 -0
  76. package/dist/chunk-BFMKPELU.cjs +212 -0
  77. package/dist/chunk-BFMKPELU.cjs.map +1 -0
  78. package/dist/chunk-BKP6F2IX.js +3 -0
  79. package/dist/chunk-BKP6F2IX.js.map +1 -0
  80. package/dist/chunk-BLA44UCM.js +32 -0
  81. package/dist/chunk-BLA44UCM.js.map +1 -0
  82. package/dist/chunk-BPWUWUZ3.cjs +20 -0
  83. package/dist/chunk-BPWUWUZ3.cjs.map +1 -0
  84. package/dist/chunk-BRV7Z4GD.cjs +17 -0
  85. package/dist/chunk-BRV7Z4GD.cjs.map +1 -0
  86. package/dist/chunk-BU5A6K4C.js +122 -0
  87. package/dist/chunk-BU5A6K4C.js.map +1 -0
  88. package/dist/chunk-C22RJDW3.js +3 -0
  89. package/dist/chunk-C22RJDW3.js.map +1 -0
  90. package/dist/chunk-CGNVHN4V.js +3 -0
  91. package/dist/chunk-CGNVHN4V.js.map +1 -0
  92. package/dist/chunk-CJFIOVBA.js +3 -0
  93. package/dist/chunk-CJFIOVBA.js.map +1 -0
  94. package/dist/chunk-CJLLIVSB.cjs +4 -0
  95. package/dist/chunk-CJLLIVSB.cjs.map +1 -0
  96. package/dist/chunk-CK3AMMSC.js +194 -0
  97. package/dist/chunk-CK3AMMSC.js.map +1 -0
  98. package/dist/chunk-COCKKMNP.cjs +205 -0
  99. package/dist/chunk-COCKKMNP.cjs.map +1 -0
  100. package/dist/chunk-CR5E2SF3.cjs +212 -0
  101. package/dist/chunk-CR5E2SF3.cjs.map +1 -0
  102. package/dist/chunk-CRCPRZFN.js +3 -0
  103. package/dist/chunk-CRCPRZFN.js.map +1 -0
  104. package/dist/chunk-CYRFD6KR.cjs +4 -0
  105. package/dist/chunk-CYRFD6KR.cjs.map +1 -0
  106. package/dist/chunk-D3PW7AHZ.js +3 -0
  107. package/dist/chunk-D3PW7AHZ.js.map +1 -0
  108. package/dist/chunk-DKEYSJCE.cjs +82 -0
  109. package/dist/chunk-DKEYSJCE.cjs.map +1 -0
  110. package/dist/chunk-DPSMVOM3.js +15 -0
  111. package/dist/chunk-DPSMVOM3.js.map +1 -0
  112. package/dist/chunk-E2ZXHS6E.js +20 -0
  113. package/dist/chunk-E2ZXHS6E.js.map +1 -0
  114. package/dist/chunk-E37CVHWW.js +33 -0
  115. package/dist/chunk-E37CVHWW.js.map +1 -0
  116. package/dist/chunk-E5BM4BLO.js +78 -0
  117. package/dist/chunk-E5BM4BLO.js.map +1 -0
  118. package/dist/chunk-EHRWTYGR.cjs +4 -0
  119. package/dist/chunk-EHRWTYGR.cjs.map +1 -0
  120. package/dist/chunk-EJSGJDZY.js +212 -0
  121. package/dist/chunk-EJSGJDZY.js.map +1 -0
  122. package/dist/chunk-ELSOVJPF.js +3 -0
  123. package/dist/chunk-ELSOVJPF.js.map +1 -0
  124. package/dist/chunk-ERLXU47J.js +29 -0
  125. package/dist/chunk-ERLXU47J.js.map +1 -0
  126. package/dist/chunk-ES2E65HT.js +3 -0
  127. package/dist/chunk-ES2E65HT.js.map +1 -0
  128. package/dist/chunk-EXLAHZKF.js +3 -0
  129. package/dist/chunk-EXLAHZKF.js.map +1 -0
  130. package/dist/chunk-FHEYAW5H.js +3 -0
  131. package/dist/chunk-FHEYAW5H.js.map +1 -0
  132. package/dist/chunk-GA4LZZKQ.cjs +104 -0
  133. package/dist/chunk-GA4LZZKQ.cjs.map +1 -0
  134. package/dist/chunk-GAZJ2PA3.js +3 -0
  135. package/dist/chunk-GAZJ2PA3.js.map +1 -0
  136. package/dist/chunk-GB6C5OEZ.cjs +32 -0
  137. package/dist/chunk-GB6C5OEZ.cjs.map +1 -0
  138. package/dist/chunk-GD24ZRFD.js +3 -0
  139. package/dist/chunk-GD24ZRFD.js.map +1 -0
  140. package/dist/chunk-GI7LROLL.cjs +4 -0
  141. package/dist/chunk-GI7LROLL.cjs.map +1 -0
  142. package/dist/chunk-GRFLPEM2.cjs +16 -0
  143. package/dist/chunk-GRFLPEM2.cjs.map +1 -0
  144. package/dist/chunk-GVIFLUYZ.cjs +40 -0
  145. package/dist/chunk-GVIFLUYZ.cjs.map +1 -0
  146. package/dist/chunk-H7VQTG4M.js +35 -0
  147. package/dist/chunk-H7VQTG4M.js.map +1 -0
  148. package/dist/chunk-HAKYPZLB.cjs +242 -0
  149. package/dist/chunk-HAKYPZLB.cjs.map +1 -0
  150. package/dist/chunk-HFBR6G36.js +3 -0
  151. package/dist/chunk-HFBR6G36.js.map +1 -0
  152. package/dist/chunk-HGCVWOGK.cjs +209 -0
  153. package/dist/chunk-HGCVWOGK.cjs.map +1 -0
  154. package/dist/chunk-HLHR3R4P.js +3 -0
  155. package/dist/chunk-HLHR3R4P.js.map +1 -0
  156. package/dist/chunk-HRXXGGSJ.js +3 -0
  157. package/dist/chunk-HRXXGGSJ.js.map +1 -0
  158. package/dist/chunk-I3TYBAOX.js +3 -0
  159. package/dist/chunk-I3TYBAOX.js.map +1 -0
  160. package/dist/chunk-I4A5VJRL.js +352 -0
  161. package/dist/chunk-I4A5VJRL.js.map +1 -0
  162. package/dist/chunk-I6CXC345.js +102 -0
  163. package/dist/chunk-I6CXC345.js.map +1 -0
  164. package/dist/chunk-IGOPUMEX.cjs +4 -0
  165. package/dist/chunk-IGOPUMEX.cjs.map +1 -0
  166. package/dist/chunk-IHKIYVZQ.js +30 -0
  167. package/dist/chunk-IHKIYVZQ.js.map +1 -0
  168. package/dist/chunk-IMC2M5YM.cjs +12 -0
  169. package/dist/chunk-IMC2M5YM.cjs.map +1 -0
  170. package/dist/chunk-IQ6KWSXP.js +3 -0
  171. package/dist/chunk-IQ6KWSXP.js.map +1 -0
  172. package/dist/chunk-IS26FJO7.cjs +4 -0
  173. package/dist/chunk-IS26FJO7.cjs.map +1 -0
  174. package/dist/chunk-J4WFSKY6.js +50 -0
  175. package/dist/chunk-J4WFSKY6.js.map +1 -0
  176. package/dist/chunk-J5LGGCAS.cjs +126 -0
  177. package/dist/chunk-J5LGGCAS.cjs.map +1 -0
  178. package/dist/chunk-JDEZHITT.js +43 -0
  179. package/dist/chunk-JDEZHITT.js.map +1 -0
  180. package/dist/chunk-JGS6YBDW.js +260 -0
  181. package/dist/chunk-JGS6YBDW.js.map +1 -0
  182. package/dist/chunk-JMOKD6ZP.js +46 -0
  183. package/dist/chunk-JMOKD6ZP.js.map +1 -0
  184. package/dist/chunk-JOX5BJ6K.cjs +4 -0
  185. package/dist/chunk-JOX5BJ6K.cjs.map +1 -0
  186. package/dist/chunk-JTAW54UM.js +116 -0
  187. package/dist/chunk-JTAW54UM.js.map +1 -0
  188. package/dist/chunk-K4RQOSJH.js +203 -0
  189. package/dist/chunk-K4RQOSJH.js.map +1 -0
  190. package/dist/chunk-KAIE6WJB.cjs +4 -0
  191. package/dist/chunk-KAIE6WJB.cjs.map +1 -0
  192. package/dist/chunk-KEDPGWIK.cjs +4 -0
  193. package/dist/chunk-KEDPGWIK.cjs.map +1 -0
  194. package/dist/chunk-KG4R454Z.js +18 -0
  195. package/dist/chunk-KG4R454Z.js.map +1 -0
  196. package/dist/chunk-KGKCAGRD.cjs +22 -0
  197. package/dist/chunk-KGKCAGRD.cjs.map +1 -0
  198. package/dist/chunk-KNMW722T.cjs +48 -0
  199. package/dist/chunk-KNMW722T.cjs.map +1 -0
  200. package/dist/chunk-KTTL7BND.cjs +4 -0
  201. package/dist/chunk-KTTL7BND.cjs.map +1 -0
  202. package/dist/chunk-KXEWTYS4.cjs +80 -0
  203. package/dist/chunk-KXEWTYS4.cjs.map +1 -0
  204. package/dist/chunk-KZQKFBRN.js +3 -0
  205. package/dist/chunk-KZQKFBRN.js.map +1 -0
  206. package/dist/chunk-LAWYFC4G.cjs +37 -0
  207. package/dist/chunk-LAWYFC4G.cjs.map +1 -0
  208. package/dist/chunk-LHP2CWHD.js +228 -0
  209. package/dist/chunk-LHP2CWHD.js.map +1 -0
  210. package/dist/chunk-LHRQXWI5.js +3 -0
  211. package/dist/chunk-LHRQXWI5.js.map +1 -0
  212. package/dist/chunk-LKH5M44B.cjs +114 -0
  213. package/dist/chunk-LKH5M44B.cjs.map +1 -0
  214. package/dist/chunk-LLNNHLCE.cjs +4 -0
  215. package/dist/chunk-LLNNHLCE.cjs.map +1 -0
  216. package/dist/chunk-LWZLWSXD.cjs +4 -0
  217. package/dist/chunk-LWZLWSXD.cjs.map +1 -0
  218. package/dist/chunk-M6Y5TOYE.js +3 -0
  219. package/dist/chunk-M6Y5TOYE.js.map +1 -0
  220. package/dist/chunk-MBFUMWI5.cjs +31 -0
  221. package/dist/chunk-MBFUMWI5.cjs.map +1 -0
  222. package/dist/chunk-MEKI37WI.js +3 -0
  223. package/dist/chunk-MEKI37WI.js.map +1 -0
  224. package/dist/chunk-MQ74AKA2.cjs +200 -0
  225. package/dist/chunk-MQ74AKA2.cjs.map +1 -0
  226. package/dist/chunk-N6GLZOE4.cjs +282 -0
  227. package/dist/chunk-N6GLZOE4.cjs.map +1 -0
  228. package/dist/chunk-NBVARNVA.cjs +38 -0
  229. package/dist/chunk-NBVARNVA.cjs.map +1 -0
  230. package/dist/chunk-NCCBS6GU.js +42 -0
  231. package/dist/chunk-NCCBS6GU.js.map +1 -0
  232. package/dist/chunk-NGKODS3J.cjs +52 -0
  233. package/dist/chunk-NGKODS3J.cjs.map +1 -0
  234. package/dist/chunk-NJVSKUL2.cjs +4 -0
  235. package/dist/chunk-NJVSKUL2.cjs.map +1 -0
  236. package/dist/chunk-NLQQHJ25.cjs +104 -0
  237. package/dist/chunk-NLQQHJ25.cjs.map +1 -0
  238. package/dist/chunk-NNHWH7ER.js +181 -0
  239. package/dist/chunk-NNHWH7ER.js.map +1 -0
  240. package/dist/chunk-NX67YIF3.js +3 -0
  241. package/dist/chunk-NX67YIF3.js.map +1 -0
  242. package/dist/chunk-OA6FWYZF.cjs +4 -0
  243. package/dist/chunk-OA6FWYZF.cjs.map +1 -0
  244. package/dist/chunk-OJDBSKC2.js +3 -0
  245. package/dist/chunk-OJDBSKC2.js.map +1 -0
  246. package/dist/chunk-OLPA44QJ.js +3 -0
  247. package/dist/chunk-OLPA44QJ.js.map +1 -0
  248. package/dist/chunk-OMH7ATOQ.js +3 -0
  249. package/dist/chunk-OMH7ATOQ.js.map +1 -0
  250. package/dist/chunk-OPR4TULG.js +3 -0
  251. package/dist/chunk-OPR4TULG.js.map +1 -0
  252. package/dist/chunk-OSX2GVZ2.cjs +34 -0
  253. package/dist/chunk-OSX2GVZ2.cjs.map +1 -0
  254. package/dist/chunk-OXQKE5EG.cjs +282 -0
  255. package/dist/chunk-OXQKE5EG.cjs.map +1 -0
  256. package/dist/chunk-P6E4QDJN.js +30 -0
  257. package/dist/chunk-P6E4QDJN.js.map +1 -0
  258. package/dist/chunk-PEMLIAPZ.cjs +64 -0
  259. package/dist/chunk-PEMLIAPZ.cjs.map +1 -0
  260. package/dist/chunk-PGYQ754I.js +3 -0
  261. package/dist/chunk-PGYQ754I.js.map +1 -0
  262. package/dist/chunk-PHKYIWE4.cjs +16 -0
  263. package/dist/chunk-PHKYIWE4.cjs.map +1 -0
  264. package/dist/chunk-PMTM26LL.js +3 -0
  265. package/dist/chunk-PMTM26LL.js.map +1 -0
  266. package/dist/chunk-PY4OEKNX.cjs +4 -0
  267. package/dist/chunk-PY4OEKNX.cjs.map +1 -0
  268. package/dist/chunk-PZS2EXDR.cjs +4 -0
  269. package/dist/chunk-PZS2EXDR.cjs.map +1 -0
  270. package/dist/chunk-QITJGSFA.js +210 -0
  271. package/dist/chunk-QITJGSFA.js.map +1 -0
  272. package/dist/chunk-QRHJEITQ.cjs +4 -0
  273. package/dist/chunk-QRHJEITQ.cjs.map +1 -0
  274. package/dist/chunk-QUFU5RJ7.cjs +4 -0
  275. package/dist/chunk-QUFU5RJ7.cjs.map +1 -0
  276. package/dist/chunk-QVQCKOBM.js +3 -0
  277. package/dist/chunk-QVQCKOBM.js.map +1 -0
  278. package/dist/chunk-R63TTR35.cjs +200 -0
  279. package/dist/chunk-R63TTR35.cjs.map +1 -0
  280. package/dist/chunk-RA42NMWV.cjs +4 -0
  281. package/dist/chunk-RA42NMWV.cjs.map +1 -0
  282. package/dist/chunk-RAZN6C5R.cjs +12 -0
  283. package/dist/chunk-RAZN6C5R.cjs.map +1 -0
  284. package/dist/chunk-REUFPWM7.cjs +233 -0
  285. package/dist/chunk-REUFPWM7.cjs.map +1 -0
  286. package/dist/chunk-RHETJOUM.cjs +4 -0
  287. package/dist/chunk-RHETJOUM.cjs.map +1 -0
  288. package/dist/chunk-RJIJVVXS.js +3 -0
  289. package/dist/chunk-RJIJVVXS.js.map +1 -0
  290. package/dist/chunk-RKVRCNMB.js +3 -0
  291. package/dist/chunk-RKVRCNMB.js.map +1 -0
  292. package/dist/chunk-SBV5MWEL.cjs +53 -0
  293. package/dist/chunk-SBV5MWEL.cjs.map +1 -0
  294. package/dist/chunk-SFB4YLCS.js +121 -0
  295. package/dist/chunk-SFB4YLCS.js.map +1 -0
  296. package/dist/chunk-SLPD47SR.js +3 -0
  297. package/dist/chunk-SLPD47SR.js.map +1 -0
  298. package/dist/chunk-SS3B6PHT.cjs +35 -0
  299. package/dist/chunk-SS3B6PHT.cjs.map +1 -0
  300. package/dist/chunk-SUCHGNYT.js +3 -0
  301. package/dist/chunk-SUCHGNYT.js.map +1 -0
  302. package/dist/chunk-SYVNY3AH.cjs +44 -0
  303. package/dist/chunk-SYVNY3AH.cjs.map +1 -0
  304. package/dist/chunk-T3SYREY4.js +29 -0
  305. package/dist/chunk-T3SYREY4.js.map +1 -0
  306. package/dist/chunk-T7N7DFQJ.js +198 -0
  307. package/dist/chunk-T7N7DFQJ.js.map +1 -0
  308. package/dist/chunk-TRCENAIY.cjs +4 -0
  309. package/dist/chunk-TRCENAIY.cjs.map +1 -0
  310. package/dist/chunk-TVENC6PH.js +186 -0
  311. package/dist/chunk-TVENC6PH.js.map +1 -0
  312. package/dist/chunk-U4T3Z3K7.cjs +325 -0
  313. package/dist/chunk-U4T3Z3K7.cjs.map +1 -0
  314. package/dist/chunk-UI2NXUML.cjs +187 -0
  315. package/dist/chunk-UI2NXUML.cjs.map +1 -0
  316. package/dist/chunk-UIFFNTUX.js +3 -0
  317. package/dist/chunk-UIFFNTUX.js.map +1 -0
  318. package/dist/chunk-V4GPQ6Y2.js +3 -0
  319. package/dist/chunk-V4GPQ6Y2.js.map +1 -0
  320. package/dist/chunk-VGTRKXF2.js +93 -0
  321. package/dist/chunk-VGTRKXF2.js.map +1 -0
  322. package/dist/chunk-VGWOIWRQ.cjs +202 -0
  323. package/dist/chunk-VGWOIWRQ.cjs.map +1 -0
  324. package/dist/chunk-VLCNNA76.cjs +4 -0
  325. package/dist/chunk-VLCNNA76.cjs.map +1 -0
  326. package/dist/chunk-VPAUN75Q.js +3 -0
  327. package/dist/chunk-VPAUN75Q.js.map +1 -0
  328. package/dist/chunk-VT237QF2.js +3 -0
  329. package/dist/chunk-VT237QF2.js.map +1 -0
  330. package/dist/chunk-VV4TZG5S.js +321 -0
  331. package/dist/chunk-VV4TZG5S.js.map +1 -0
  332. package/dist/chunk-VYK6MBL4.cjs +4 -0
  333. package/dist/chunk-VYK6MBL4.cjs.map +1 -0
  334. package/dist/chunk-W33CKW6Q.cjs +4 -0
  335. package/dist/chunk-W33CKW6Q.cjs.map +1 -0
  336. package/dist/chunk-W5VHATSR.cjs +31 -0
  337. package/dist/chunk-W5VHATSR.cjs.map +1 -0
  338. package/dist/chunk-W7YI5UT3.js +3 -0
  339. package/dist/chunk-W7YI5UT3.js.map +1 -0
  340. package/dist/chunk-WEQWU2IC.js +34 -0
  341. package/dist/chunk-WEQWU2IC.js.map +1 -0
  342. package/dist/chunk-WK4VXPPZ.cjs +104 -0
  343. package/dist/chunk-WK4VXPPZ.cjs.map +1 -0
  344. package/dist/chunk-WSA4LMWR.cjs +96 -0
  345. package/dist/chunk-WSA4LMWR.cjs.map +1 -0
  346. package/dist/chunk-WUIEZ6Z4.cjs +360 -0
  347. package/dist/chunk-WUIEZ6Z4.cjs.map +1 -0
  348. package/dist/chunk-WUKIJJG2.cjs +45 -0
  349. package/dist/chunk-WUKIJJG2.cjs.map +1 -0
  350. package/dist/chunk-WVFAQBS7.js +29 -0
  351. package/dist/chunk-WVFAQBS7.js.map +1 -0
  352. package/dist/chunk-X7RDNMN7.js +3 -0
  353. package/dist/chunk-X7RDNMN7.js.map +1 -0
  354. package/dist/chunk-X7XP5WBP.cjs +4 -0
  355. package/dist/chunk-X7XP5WBP.cjs.map +1 -0
  356. package/dist/chunk-XQAIEPAZ.js +104 -0
  357. package/dist/chunk-XQAIEPAZ.js.map +1 -0
  358. package/dist/chunk-XWKNE6DH.cjs +4 -0
  359. package/dist/chunk-XWKNE6DH.cjs.map +1 -0
  360. package/dist/chunk-Y6V6CBY5.js +23 -0
  361. package/dist/chunk-Y6V6CBY5.js.map +1 -0
  362. package/dist/chunk-Y6VDCZPB.js +62 -0
  363. package/dist/chunk-Y6VDCZPB.js.map +1 -0
  364. package/dist/chunk-YDRXBRW2.cjs +184 -0
  365. package/dist/chunk-YDRXBRW2.cjs.map +1 -0
  366. package/dist/chunk-YFS2LMG4.cjs +124 -0
  367. package/dist/chunk-YFS2LMG4.cjs.map +1 -0
  368. package/dist/chunk-YN6CBIIB.js +63 -0
  369. package/dist/chunk-YN6CBIIB.js.map +1 -0
  370. package/dist/chunk-YOJ2XNQX.cjs +4 -0
  371. package/dist/chunk-YOJ2XNQX.cjs.map +1 -0
  372. package/dist/chunk-YOOZB4RL.js +3 -0
  373. package/dist/chunk-YOOZB4RL.js.map +1 -0
  374. package/dist/chunk-YVU2M7MI.js +34 -0
  375. package/dist/chunk-YVU2M7MI.js.map +1 -0
  376. package/dist/chunk-YXBZRB5H.cjs +4 -0
  377. package/dist/chunk-YXBZRB5H.cjs.map +1 -0
  378. package/dist/chunk-Z3ZKFI2M.js +43 -0
  379. package/dist/chunk-Z3ZKFI2M.js.map +1 -0
  380. package/dist/chunk-Z5GLY4R3.js +112 -0
  381. package/dist/chunk-Z5GLY4R3.js.map +1 -0
  382. package/dist/chunk-Z5OMWAQX.js +3 -0
  383. package/dist/chunk-Z5OMWAQX.js.map +1 -0
  384. package/dist/chunk-Z7LGWNI7.js +38 -0
  385. package/dist/chunk-Z7LGWNI7.js.map +1 -0
  386. package/dist/chunk-ZCWKX4V6.cjs +38 -0
  387. package/dist/chunk-ZCWKX4V6.cjs.map +1 -0
  388. package/dist/chunk-ZE5RISBZ.cjs +4 -0
  389. package/dist/chunk-ZE5RISBZ.cjs.map +1 -0
  390. package/dist/chunk-ZH4F2P2G.js +3 -0
  391. package/dist/chunk-ZH4F2P2G.js.map +1 -0
  392. package/dist/chunk-ZJGFLJ2Z.cjs +4 -0
  393. package/dist/chunk-ZJGFLJ2Z.cjs.map +1 -0
  394. package/dist/chunk-ZKBHD27K.cjs +4 -0
  395. package/dist/chunk-ZKBHD27K.cjs.map +1 -0
  396. package/dist/chunk-ZQPLRNKX.cjs +4 -0
  397. package/dist/chunk-ZQPLRNKX.cjs.map +1 -0
  398. package/dist/chunk-ZQQABQMH.cjs +31 -0
  399. package/dist/chunk-ZQQABQMH.cjs.map +1 -0
  400. package/dist/chunk-ZXJQSFIA.js +200 -0
  401. package/dist/chunk-ZXJQSFIA.js.map +1 -0
  402. package/dist/developer-apps-zSQXWmEG.d.cts +294 -0
  403. package/dist/developer-apps-zSQXWmEG.d.ts +294 -0
  404. package/dist/entries/apps.cjs +13 -0
  405. package/dist/entries/apps.cjs.map +1 -0
  406. package/dist/entries/apps.d.cts +300 -0
  407. package/dist/entries/apps.d.ts +300 -0
  408. package/dist/entries/apps.js +4 -0
  409. package/dist/entries/apps.js.map +1 -0
  410. package/dist/entries/audio.cjs +13 -0
  411. package/dist/entries/audio.cjs.map +1 -0
  412. package/dist/entries/audio.d.cts +200 -0
  413. package/dist/entries/audio.d.ts +200 -0
  414. package/dist/entries/audio.js +4 -0
  415. package/dist/entries/audio.js.map +1 -0
  416. package/dist/entries/billing.cjs +13 -0
  417. package/dist/entries/billing.cjs.map +1 -0
  418. package/dist/entries/billing.d.cts +208 -0
  419. package/dist/entries/billing.d.ts +208 -0
  420. package/dist/entries/billing.js +4 -0
  421. package/dist/entries/billing.js.map +1 -0
  422. package/dist/entries/catalogs.cjs +13 -0
  423. package/dist/entries/catalogs.cjs.map +1 -0
  424. package/dist/entries/catalogs.d.cts +82 -0
  425. package/dist/entries/catalogs.d.ts +82 -0
  426. package/dist/entries/catalogs.js +4 -0
  427. package/dist/entries/catalogs.js.map +1 -0
  428. package/dist/entries/characters.cjs +45 -0
  429. package/dist/entries/characters.cjs.map +1 -0
  430. package/dist/entries/characters.d.cts +741 -0
  431. package/dist/entries/characters.d.ts +741 -0
  432. package/dist/entries/characters.js +4 -0
  433. package/dist/entries/characters.js.map +1 -0
  434. package/dist/entries/client.cjs +78 -0
  435. package/dist/entries/client.cjs.map +1 -0
  436. package/dist/entries/client.d.cts +147 -0
  437. package/dist/entries/client.d.ts +147 -0
  438. package/dist/entries/client.js +53 -0
  439. package/dist/entries/client.js.map +1 -0
  440. package/dist/entries/collections.cjs +13 -0
  441. package/dist/entries/collections.cjs.map +1 -0
  442. package/dist/entries/collections.d.cts +77 -0
  443. package/dist/entries/collections.d.ts +77 -0
  444. package/dist/entries/collections.js +4 -0
  445. package/dist/entries/collections.js.map +1 -0
  446. package/dist/entries/community.cjs +13 -0
  447. package/dist/entries/community.cjs.map +1 -0
  448. package/dist/entries/community.d.cts +87 -0
  449. package/dist/entries/community.d.ts +87 -0
  450. package/dist/entries/community.js +4 -0
  451. package/dist/entries/community.js.map +1 -0
  452. package/dist/entries/competitors.cjs +13 -0
  453. package/dist/entries/competitors.cjs.map +1 -0
  454. package/dist/entries/competitors.d.cts +96 -0
  455. package/dist/entries/competitors.d.ts +96 -0
  456. package/dist/entries/competitors.js +4 -0
  457. package/dist/entries/competitors.js.map +1 -0
  458. package/dist/entries/copilot.cjs +15 -0
  459. package/dist/entries/copilot.cjs.map +1 -0
  460. package/dist/entries/copilot.d.cts +296 -0
  461. package/dist/entries/copilot.d.ts +296 -0
  462. package/dist/entries/copilot.js +6 -0
  463. package/dist/entries/copilot.js.map +1 -0
  464. package/dist/entries/core.cjs +26 -0
  465. package/dist/entries/core.cjs.map +1 -0
  466. package/dist/entries/core.d.cts +3 -0
  467. package/dist/entries/core.d.ts +3 -0
  468. package/dist/entries/core.js +5 -0
  469. package/dist/entries/core.js.map +1 -0
  470. package/dist/entries/creatures.cjs +29 -0
  471. package/dist/entries/creatures.cjs.map +1 -0
  472. package/dist/entries/creatures.d.cts +594 -0
  473. package/dist/entries/creatures.d.ts +594 -0
  474. package/dist/entries/creatures.js +4 -0
  475. package/dist/entries/creatures.js.map +1 -0
  476. package/dist/entries/credits.cjs +13 -0
  477. package/dist/entries/credits.cjs.map +1 -0
  478. package/dist/entries/credits.d.cts +229 -0
  479. package/dist/entries/credits.d.ts +229 -0
  480. package/dist/entries/credits.js +4 -0
  481. package/dist/entries/credits.js.map +1 -0
  482. package/dist/entries/developer-apps.cjs +13 -0
  483. package/dist/entries/developer-apps.cjs.map +1 -0
  484. package/dist/entries/developer-apps.d.cts +3 -0
  485. package/dist/entries/developer-apps.d.ts +3 -0
  486. package/dist/entries/developer-apps.js +4 -0
  487. package/dist/entries/developer-apps.js.map +1 -0
  488. package/dist/entries/edit.cjs +34 -0
  489. package/dist/entries/edit.cjs.map +1 -0
  490. package/dist/entries/edit.d.cts +705 -0
  491. package/dist/entries/edit.d.ts +705 -0
  492. package/dist/entries/edit.js +5 -0
  493. package/dist/entries/edit.js.map +1 -0
  494. package/dist/entries/errors.cjs +93 -0
  495. package/dist/entries/errors.cjs.map +1 -0
  496. package/dist/entries/errors.d.cts +338 -0
  497. package/dist/entries/errors.d.ts +338 -0
  498. package/dist/entries/errors.js +4 -0
  499. package/dist/entries/errors.js.map +1 -0
  500. package/dist/entries/executions.cjs +21 -0
  501. package/dist/entries/executions.cjs.map +1 -0
  502. package/dist/entries/executions.d.cts +120 -0
  503. package/dist/entries/executions.d.ts +120 -0
  504. package/dist/entries/executions.js +4 -0
  505. package/dist/entries/executions.js.map +1 -0
  506. package/dist/entries/gallery.cjs +13 -0
  507. package/dist/entries/gallery.cjs.map +1 -0
  508. package/dist/entries/gallery.d.cts +85 -0
  509. package/dist/entries/gallery.d.ts +85 -0
  510. package/dist/entries/gallery.js +4 -0
  511. package/dist/entries/gallery.js.map +1 -0
  512. package/dist/entries/jobs.cjs +13 -0
  513. package/dist/entries/jobs.cjs.map +1 -0
  514. package/dist/entries/jobs.d.cts +252 -0
  515. package/dist/entries/jobs.d.ts +252 -0
  516. package/dist/entries/jobs.js +4 -0
  517. package/dist/entries/jobs.js.map +1 -0
  518. package/dist/entries/library.cjs +13 -0
  519. package/dist/entries/library.cjs.map +1 -0
  520. package/dist/entries/library.d.cts +109 -0
  521. package/dist/entries/library.d.ts +109 -0
  522. package/dist/entries/library.js +4 -0
  523. package/dist/entries/library.js.map +1 -0
  524. package/dist/entries/llm.cjs +13 -0
  525. package/dist/entries/llm.cjs.map +1 -0
  526. package/dist/entries/llm.d.cts +98 -0
  527. package/dist/entries/llm.d.ts +98 -0
  528. package/dist/entries/llm.js +4 -0
  529. package/dist/entries/llm.js.map +1 -0
  530. package/dist/entries/locations.cjs +25 -0
  531. package/dist/entries/locations.cjs.map +1 -0
  532. package/dist/entries/locations.d.cts +573 -0
  533. package/dist/entries/locations.d.ts +573 -0
  534. package/dist/entries/locations.js +4 -0
  535. package/dist/entries/locations.js.map +1 -0
  536. package/dist/entries/media.cjs +15 -0
  537. package/dist/entries/media.cjs.map +1 -0
  538. package/dist/entries/media.d.cts +548 -0
  539. package/dist/entries/media.d.ts +548 -0
  540. package/dist/entries/media.js +6 -0
  541. package/dist/entries/media.js.map +1 -0
  542. package/dist/entries/models.cjs +13 -0
  543. package/dist/entries/models.cjs.map +1 -0
  544. package/dist/entries/models.d.cts +92 -0
  545. package/dist/entries/models.d.ts +92 -0
  546. package/dist/entries/models.js +4 -0
  547. package/dist/entries/models.js.map +1 -0
  548. package/dist/entries/moodboards.cjs +21 -0
  549. package/dist/entries/moodboards.cjs.map +1 -0
  550. package/dist/entries/moodboards.d.cts +77 -0
  551. package/dist/entries/moodboards.d.ts +77 -0
  552. package/dist/entries/moodboards.js +4 -0
  553. package/dist/entries/moodboards.js.map +1 -0
  554. package/dist/entries/node-presets.cjs +13 -0
  555. package/dist/entries/node-presets.cjs.map +1 -0
  556. package/dist/entries/node-presets.d.cts +217 -0
  557. package/dist/entries/node-presets.d.ts +217 -0
  558. package/dist/entries/node-presets.js +4 -0
  559. package/dist/entries/node-presets.js.map +1 -0
  560. package/dist/entries/nodes.cjs +22 -0
  561. package/dist/entries/nodes.cjs.map +1 -0
  562. package/dist/entries/nodes.d.cts +18 -0
  563. package/dist/entries/nodes.d.ts +18 -0
  564. package/dist/entries/nodes.js +5 -0
  565. package/dist/entries/nodes.js.map +1 -0
  566. package/dist/entries/oauth.cjs +13 -0
  567. package/dist/entries/oauth.cjs.map +1 -0
  568. package/dist/entries/oauth.d.cts +69 -0
  569. package/dist/entries/oauth.d.ts +69 -0
  570. package/dist/entries/oauth.js +4 -0
  571. package/dist/entries/oauth.js.map +1 -0
  572. package/dist/entries/objects.cjs +29 -0
  573. package/dist/entries/objects.cjs.map +1 -0
  574. package/dist/entries/objects.d.cts +544 -0
  575. package/dist/entries/objects.d.ts +544 -0
  576. package/dist/entries/objects.js +4 -0
  577. package/dist/entries/objects.js.map +1 -0
  578. package/dist/entries/organizations.cjs +21 -0
  579. package/dist/entries/organizations.cjs.map +1 -0
  580. package/dist/entries/organizations.d.cts +164 -0
  581. package/dist/entries/organizations.d.ts +164 -0
  582. package/dist/entries/organizations.js +4 -0
  583. package/dist/entries/organizations.js.map +1 -0
  584. package/dist/entries/palettes.cjs +21 -0
  585. package/dist/entries/palettes.cjs.map +1 -0
  586. package/dist/entries/palettes.d.cts +69 -0
  587. package/dist/entries/palettes.d.ts +69 -0
  588. package/dist/entries/palettes.js +4 -0
  589. package/dist/entries/palettes.js.map +1 -0
  590. package/dist/entries/picker-catalogs.cjs +13 -0
  591. package/dist/entries/picker-catalogs.cjs.map +1 -0
  592. package/dist/entries/picker-catalogs.d.cts +148 -0
  593. package/dist/entries/picker-catalogs.d.ts +148 -0
  594. package/dist/entries/picker-catalogs.js +4 -0
  595. package/dist/entries/picker-catalogs.js.map +1 -0
  596. package/dist/entries/pipelines.cjs +13 -0
  597. package/dist/entries/pipelines.cjs.map +1 -0
  598. package/dist/entries/pipelines.d.cts +255 -0
  599. package/dist/entries/pipelines.d.ts +255 -0
  600. package/dist/entries/pipelines.js +4 -0
  601. package/dist/entries/pipelines.js.map +1 -0
  602. package/dist/entries/projects.cjs +13 -0
  603. package/dist/entries/projects.cjs.map +1 -0
  604. package/dist/entries/projects.d.cts +49 -0
  605. package/dist/entries/projects.d.ts +49 -0
  606. package/dist/entries/projects.js +4 -0
  607. package/dist/entries/projects.js.map +1 -0
  608. package/dist/entries/prompt-helper.cjs +13 -0
  609. package/dist/entries/prompt-helper.cjs.map +1 -0
  610. package/dist/entries/prompt-helper.d.cts +73 -0
  611. package/dist/entries/prompt-helper.d.ts +73 -0
  612. package/dist/entries/prompt-helper.js +4 -0
  613. package/dist/entries/prompt-helper.js.map +1 -0
  614. package/dist/entries/recast.cjs +17 -0
  615. package/dist/entries/recast.cjs.map +1 -0
  616. package/dist/entries/recast.d.cts +229 -0
  617. package/dist/entries/recast.d.ts +229 -0
  618. package/dist/entries/recast.js +4 -0
  619. package/dist/entries/recast.js.map +1 -0
  620. package/dist/entries/reduce.cjs +13 -0
  621. package/dist/entries/reduce.cjs.map +1 -0
  622. package/dist/entries/reduce.d.cts +56 -0
  623. package/dist/entries/reduce.d.ts +56 -0
  624. package/dist/entries/reduce.js +4 -0
  625. package/dist/entries/reduce.js.map +1 -0
  626. package/dist/entries/saved-posts.cjs +13 -0
  627. package/dist/entries/saved-posts.cjs.map +1 -0
  628. package/dist/entries/saved-posts.d.cts +33 -0
  629. package/dist/entries/saved-posts.d.ts +33 -0
  630. package/dist/entries/saved-posts.js +4 -0
  631. package/dist/entries/saved-posts.js.map +1 -0
  632. package/dist/entries/scene3d.cjs +17 -0
  633. package/dist/entries/scene3d.cjs.map +1 -0
  634. package/dist/entries/scene3d.d.cts +131 -0
  635. package/dist/entries/scene3d.d.ts +131 -0
  636. package/dist/entries/scene3d.js +4 -0
  637. package/dist/entries/scene3d.js.map +1 -0
  638. package/dist/entries/sessions.cjs +13 -0
  639. package/dist/entries/sessions.cjs.map +1 -0
  640. package/dist/entries/sessions.d.cts +122 -0
  641. package/dist/entries/sessions.d.ts +122 -0
  642. package/dist/entries/sessions.js +4 -0
  643. package/dist/entries/sessions.js.map +1 -0
  644. package/dist/entries/shots.cjs +13 -0
  645. package/dist/entries/shots.cjs.map +1 -0
  646. package/dist/entries/shots.d.cts +78 -0
  647. package/dist/entries/shots.d.ts +78 -0
  648. package/dist/entries/shots.js +4 -0
  649. package/dist/entries/shots.js.map +1 -0
  650. package/dist/entries/studio.cjs +22 -0
  651. package/dist/entries/studio.cjs.map +1 -0
  652. package/dist/entries/studio.d.cts +281 -0
  653. package/dist/entries/studio.d.ts +281 -0
  654. package/dist/entries/studio.js +5 -0
  655. package/dist/entries/studio.js.map +1 -0
  656. package/dist/entries/templates.cjs +13 -0
  657. package/dist/entries/templates.cjs.map +1 -0
  658. package/dist/entries/templates.d.cts +110 -0
  659. package/dist/entries/templates.d.ts +110 -0
  660. package/dist/entries/templates.js +4 -0
  661. package/dist/entries/templates.js.map +1 -0
  662. package/dist/entries/tutorials.cjs +13 -0
  663. package/dist/entries/tutorials.cjs.map +1 -0
  664. package/dist/entries/tutorials.d.cts +63 -0
  665. package/dist/entries/tutorials.d.ts +63 -0
  666. package/dist/entries/tutorials.js +4 -0
  667. package/dist/entries/tutorials.js.map +1 -0
  668. package/dist/entries/uploads.cjs +13 -0
  669. package/dist/entries/uploads.cjs.map +1 -0
  670. package/dist/entries/uploads.d.cts +44 -0
  671. package/dist/entries/uploads.d.ts +44 -0
  672. package/dist/entries/uploads.js +4 -0
  673. package/dist/entries/uploads.js.map +1 -0
  674. package/dist/entries/video-pro.cjs +13 -0
  675. package/dist/entries/video-pro.cjs.map +1 -0
  676. package/dist/entries/video-pro.d.cts +60 -0
  677. package/dist/entries/video-pro.d.ts +60 -0
  678. package/dist/entries/video-pro.js +4 -0
  679. package/dist/entries/video-pro.js.map +1 -0
  680. package/dist/entries/voices.cjs +13 -0
  681. package/dist/entries/voices.cjs.map +1 -0
  682. package/dist/entries/voices.d.cts +498 -0
  683. package/dist/entries/voices.d.ts +498 -0
  684. package/dist/entries/voices.js +4 -0
  685. package/dist/entries/voices.js.map +1 -0
  686. package/dist/entries/webhooks.cjs +21 -0
  687. package/dist/entries/webhooks.cjs.map +1 -0
  688. package/dist/entries/webhooks.d.cts +64 -0
  689. package/dist/entries/webhooks.d.ts +64 -0
  690. package/dist/entries/webhooks.js +4 -0
  691. package/dist/entries/webhooks.js.map +1 -0
  692. package/dist/entries/workflows.cjs +13 -0
  693. package/dist/entries/workflows.cjs.map +1 -0
  694. package/dist/entries/workflows.d.cts +393 -0
  695. package/dist/entries/workflows.d.ts +393 -0
  696. package/dist/entries/workflows.js +4 -0
  697. package/dist/entries/workflows.js.map +1 -0
  698. package/dist/entries/workspaces.cjs +13 -0
  699. package/dist/entries/workspaces.cjs.map +1 -0
  700. package/dist/entries/workspaces.d.cts +124 -0
  701. package/dist/entries/workspaces.d.ts +124 -0
  702. package/dist/entries/workspaces.js +4 -0
  703. package/dist/entries/workspaces.js.map +1 -0
  704. package/dist/index.cjs +501 -4618
  705. package/dist/index.cjs.map +1 -1
  706. package/dist/index.d.cts +66 -9651
  707. package/dist/index.d.ts +66 -9651
  708. package/dist/index.js +100 -4511
  709. package/dist/index.js.map +1 -1
  710. package/dist/nodes-BPvrAoUs.d.cts +1264 -0
  711. package/dist/nodes-C2zu3uqn.d.ts +1264 -0
  712. package/dist/studio-productions-DUHvdSvk.d.cts +572 -0
  713. package/dist/studio-productions-vbCNSbtf.d.ts +572 -0
  714. package/dist/webhooks-BJawEIz8.d.ts +198 -0
  715. package/dist/webhooks-Dn_DtNTD.d.cts +198 -0
  716. package/package.json +253 -3
@@ -0,0 +1,705 @@
1
+ import { Transcript, SpeakerEmphasisStyle, EdlTargetAspect, SpeakerSwitchId, EditPlanTier, Edl, SpeakerMapResult, EditPlanMode } from '@nodaro/shared/edl';
2
+ export { ChapterSet, EditPlanMode, EditPlanTier, Edl, EdlClipSet, SpeakerMapResult, Transcript, unwrapEditPlanOutput } from '@nodaro/shared/edl';
3
+ import { N as NodaroClientCore } from '../developer-apps-zSQXWmEG.cjs';
4
+ import { UseCaseNodeType } from '@nodaro/shared/nodes';
5
+ export { USE_CASE_NODE_TYPES, UseCaseNodeType } from '@nodaro/shared/nodes';
6
+ import { CaptionStyle } from '@nodaro/shared/captions';
7
+ import '@nodaro/shared/apps';
8
+ import '@nodaro/shared/organizations';
9
+
10
+ /** One recording for {@link EditResource.speakerMap}: a camera, or the master / wide shot. */
11
+ interface SpeakerMapSource {
12
+ /**
13
+ * Your id for this recording (1–200 chars, unique within the request) — the
14
+ * camera id the map names. Use the id your EDL gives the same recording
15
+ * (`EdlSource.id`), so the map fits Camera Switch as it is.
16
+ */
17
+ id: string;
18
+ /** An audio OR video URL — the audio track is read either way. */
19
+ url: string;
20
+ /** `"audio"` for a sound-only recording (a master mic): never anyone's camera, and never the wide shot. Default `"video"`. */
21
+ kind?: "video" | "audio";
22
+ }
23
+ /**
24
+ * Input for {@link EditResource.speakerMap}: which camera each speaker is on,
25
+ * worked out from the cameras' own microphones. While a speaker talks, the
26
+ * camera that hears them loudest by at least `marginDb` is theirs; a speaker
27
+ * with no clear camera gets `""` (shown on the wide shot), and a camera that
28
+ * heard nothing is a note, never a failure.
29
+ */
30
+ interface SpeakerMapInput {
31
+ /** 2–6 recordings: the cameras, and the master / wide when you name them. */
32
+ sources: SpeakerMapSource[];
33
+ /** The word transcript WITH speaker labels (transcribe with speaker detection). */
34
+ transcript: Transcript;
35
+ /** An audio-sync result ({@link EditResource.audioSync}); omit when the recordings already share a clock. */
36
+ offsets?: AudioSyncResult;
37
+ /** The id of the master audio: hears everyone, so it is no one's camera. */
38
+ masterSourceId?: string;
39
+ /** The id of the wide shot: no one's camera; a speaker with no clear camera is shown on it. */
40
+ wideSourceId?: string;
41
+ /** How much louder (dB) the loudest camera must be than the next for a speaker to get it. Default 3. */
42
+ marginDb?: number;
43
+ /** Optionally associate this run with a workflow execution (display only). */
44
+ workflowId?: string;
45
+ }
46
+
47
+ /**
48
+ * The inputs of the podcast use-case runs on the `edit` resource (Tighten
49
+ * Episode, Chapters, Trailer, Clip Pack) and the request body each one sends.
50
+ * Split from `edit.ts`, which holds the methods, the type list and the
51
+ * continue routes; every name here is re-exported from there.
52
+ */
53
+
54
+ /**
55
+ * Input for {@link EditResource.tightenEpisode} and
56
+ * {@link EditResource.estimateTightenEpisode}: one recording in, the tightened
57
+ * episode out. Only `mediaUrl` is required; every other field left out takes
58
+ * the node's default.
59
+ */
60
+ interface TightenEpisodeInput {
61
+ /** The recording — a video or audio URL, up to 3 hours. */
62
+ mediaUrl: string;
63
+ /** Optional music bed, ducked under the voice and ending with the episode. */
64
+ musicUrl?: string;
65
+ /** `"video"` or `"audio"`; an audio recording always makes an audio episode. */
66
+ output?: "video" | "audio";
67
+ /**
68
+ * Frame a video episode with Speaker View: an output aspect and a layout,
69
+ * over automatic boxes on the speakers on screen. A layout the aspect does
70
+ * not draw is snapped to one it does. `null` or absent: no framing.
71
+ */
72
+ framing?: {
73
+ aspect: EdlTargetAspect;
74
+ layout: "auto" | "single" | "side-by-side" | "stacked" | "grid" | "pip";
75
+ } | null;
76
+ /** Captions on a video episode (on by default). */
77
+ captions?: boolean;
78
+ /** The captions' look. */
79
+ captionStyle?: CaptionStyle;
80
+ /**
81
+ * Stop at a quick preview for a person to review; render the full-quality
82
+ * episode afterwards with {@link EditResource.continueUseCase}
83
+ * (`mode: "render-final"`).
84
+ */
85
+ reviewBeforeRender?: boolean;
86
+ /** The planner's tier. */
87
+ planTier?: EditPlanTier;
88
+ /** Editing instructions for the planner (up to 4 000 characters). */
89
+ instructions?: string;
90
+ /** A style guide for the planner (up to 4 000 characters). */
91
+ styleGuide?: string;
92
+ /** How far the music dips under the voice, 0–100 (default 75). */
93
+ musicDuckAmount?: number;
94
+ }
95
+ /**
96
+ * Input for {@link EditResource.episodeChapters} and
97
+ * {@link EditResource.estimateEpisodeChapters}: one recording in, its chapters
98
+ * out. Only `mediaUrl` is required; every other field left out takes the
99
+ * node's default.
100
+ */
101
+ interface EpisodeChaptersInput {
102
+ /** The recording — a video or audio URL, up to 3 hours. */
103
+ mediaUrl: string;
104
+ /** The planner's tier (default `"economy"`). */
105
+ planTier?: EditPlanTier;
106
+ /** Instructions for the chapters, e.g. "5 to 8 chapters" (up to 4 000 characters). */
107
+ instructions?: string;
108
+ /** A style guide for the chapter titles (up to 4 000 characters). */
109
+ styleGuide?: string;
110
+ }
111
+ /** The formats a Trailer is delivered in, in delivery order (16:9 is a 1920×1080 landscape). */
112
+ declare const TRAILER_FORMATS: readonly ["9:16", "1:1", "4:5", "16:9"];
113
+ /** One Trailer format (see {@link TRAILER_FORMATS}). */
114
+ type TrailerFormat = (typeof TRAILER_FORMATS)[number];
115
+ /**
116
+ * Input for {@link EditResource.episodeTrailer} and
117
+ * {@link EditResource.estimateEpisodeTrailer}: one video recording in, a
118
+ * 20–40 s trailer out in each chosen format. Only `mediaUrl` is required.
119
+ */
120
+ interface EpisodeTrailerInput {
121
+ /** The recording — a video URL, up to 3 hours (an audio-only recording is refused). */
122
+ mediaUrl: string;
123
+ /** An optional intro card: a short video (15 s at most) played before the trailer. */
124
+ introCardUrl?: string;
125
+ /** The formats to deliver, padded, never cropped (default `["9:16", "1:1", "4:5"]`; an empty list is refused). */
126
+ formats?: TrailerFormat[];
127
+ /** Stop at a preview of the trailer; render every format with {@link EditResource.continueUseCase} (`mode: "render-final"`). */
128
+ reviewBeforeRender?: boolean;
129
+ /** The planner's tier (default `"standard"`). */
130
+ planTier?: EditPlanTier;
131
+ /** Instructions for the trailer (up to 4 000 characters). */
132
+ instructions?: string;
133
+ /** A style guide for the planner (up to 4 000 characters). */
134
+ styleGuide?: string;
135
+ }
136
+ /** The shortest and longest clip a Clip Pack asks the plan for, in seconds. */
137
+ declare const CLIP_PACK_MIN_TARGET_SEC = 5;
138
+ declare const CLIP_PACK_MAX_TARGET_SEC = 180;
139
+ /**
140
+ * A Clip Pack emphasis: `"none"`, or one or more of `"scale"`, `"border"` and
141
+ * `"dim"` joined with `"+"` (each once — the route refuses a repeat).
142
+ */
143
+ type ClipPackEmphasis = SpeakerEmphasisStyle | `${Exclude<SpeakerEmphasisStyle, "none">}+${string}`;
144
+ /**
145
+ * Input for {@link EditResource.clipPack} and
146
+ * {@link EditResource.estimateClipPack}: one recording in, a pack of short
147
+ * clips out. Only `mediaUrl` is required; every other field left out takes
148
+ * the node's default.
149
+ */
150
+ interface ClipPackInput {
151
+ /** The recording — a video or audio URL, up to 3 hours. An audio recording makes audio clips (no framing, no captions). */
152
+ mediaUrl: string;
153
+ /** How many clips to find, 1–50 (default 8). The plan may find fewer. */
154
+ count?: number;
155
+ /** Each clip's target length in seconds, {@link CLIP_PACK_MIN_TARGET_SEC}–{@link CLIP_PACK_MAX_TARGET_SEC} (default 60). */
156
+ targetDurationSec?: number;
157
+ /**
158
+ * Frame each video clip with Speaker View on automatic boxes over the
159
+ * episode's speakers: the shape, and optionally the layout (default
160
+ * `"stacked"`; one the shape does not draw is snapped), the switch at each
161
+ * speaker change (default `"pan"`) and the emphasis (default `"scale"`;
162
+ * `"none"`, or `"scale"`, `"border"` and `"dim"` joined with `"+"`). Left
163
+ * out: 9:16, stacked, pan, scale. `null`: no framing (the recording's shape).
164
+ */
165
+ framing?: {
166
+ aspect: EdlTargetAspect;
167
+ layout?: "auto" | "single" | "side-by-side" | "stacked" | "grid" | "pip";
168
+ switchType?: SpeakerSwitchId;
169
+ emphasisStyle?: ClipPackEmphasis;
170
+ } | null;
171
+ /** Caption each video clip (on by default). */
172
+ captions?: boolean;
173
+ /** The captions' look (default `"karaoke"`). */
174
+ captionStyle?: CaptionStyle;
175
+ /**
176
+ * Stop at quick previews of the clips for a person to review; render the
177
+ * kept clips at full quality with {@link EditResource.continueUseCase}
178
+ * (`mode: "render-final"`, an `editedEdl` that keeps or drops clips).
179
+ */
180
+ reviewBeforeRender?: boolean;
181
+ /** The planner's tier (default `"standard"`). */
182
+ planTier?: EditPlanTier;
183
+ /** Instructions for picking the clips (up to 4 000 characters). */
184
+ instructions?: string;
185
+ /** A style guide for the planner (up to 4 000 characters). */
186
+ styleGuide?: string;
187
+ }
188
+
189
+ /**
190
+ * A silence-detect job's `output_data.json` — the value to pass as
191
+ * {@link EditPlanInput.silence}. It is NOT what {@link EditResource.silenceDetect}
192
+ * returns (that is `{ jobId }`); fetch the finished job and read its
193
+ * `output_data.json`. The planner reads the `ranges` array — an input without
194
+ * one is silently ignored, so pass this whole object.
195
+ */
196
+ interface SilenceRanges {
197
+ /** Wire version of the payload. */
198
+ version?: number;
199
+ /** Silence spans on the source clock, in ms. */
200
+ ranges: ReadonlyArray<{
201
+ startMs: number;
202
+ endMs: number;
203
+ }>;
204
+ /** Total source duration, in ms. */
205
+ durationMs?: number;
206
+ }
207
+ /** Every editorial route answers with the queued job to poll. */
208
+ interface EditJobResult {
209
+ /** The queued job id — follow it via `client.jobs.getStatus(jobId)`. */
210
+ jobId: string;
211
+ }
212
+ interface SilenceDetectInput {
213
+ /**
214
+ * An audio OR video source. A single ffmpeg `silencedetect` pass runs over the
215
+ * source's audio proxy either way — no provider key required.
216
+ */
217
+ audioUrl: string;
218
+ /** dBFS threshold, always ≤ 0. Default -35 (a good podcast default). */
219
+ thresholdDb?: number;
220
+ /** Minimum silence length to report, in ms. Default 700. */
221
+ minSilenceMs?: number;
222
+ /** Padding kept around speech, in ms — shrinks each reported range inward. Default 120. */
223
+ padMs?: number;
224
+ /**
225
+ * Optionally associate this run with a workflow execution (display only — it
226
+ * ties the standalone job back to a workflow for the execution history).
227
+ */
228
+ workflowId?: string;
229
+ }
230
+ /** One recording for {@link EditResource.audioSync}. */
231
+ interface AudioSyncSource {
232
+ /**
233
+ * Your id for this recording (1–200 chars, unique within the request) —
234
+ * echoed back as its offset's `sourceId`. Use the id your EDL gives the same
235
+ * recording (`EdlSource.id`) and the result folds straight into it.
236
+ */
237
+ id: string;
238
+ /** An audio OR video URL — the audio track is read either way. */
239
+ url: string;
240
+ }
241
+ interface AudioSyncInput {
242
+ /** The 2–6 recordings of one conversation to line up (camera files and/or a master mic). */
243
+ sources: AudioSyncSource[];
244
+ /**
245
+ * The id of the source every offset is measured against (its own offset is
246
+ * 0). Must be one of `sources`' ids; default: the first source.
247
+ */
248
+ reference?: string;
249
+ /** Optionally associate this run with a workflow execution (display only). */
250
+ workflowId?: string;
251
+ }
252
+ /** One recording's measured clock offset in an {@link AudioSyncResult}. */
253
+ interface AudioSyncOffset {
254
+ /** The recording's `id` from the request. */
255
+ sourceId: string;
256
+ /**
257
+ * Where this recording sits on the reference's clock, in integer ms:
258
+ * `referenceMs = sourceMs + offsetMs` (the EDL's D19 sign — the value
259
+ * `EdlSource.offsetMs` takes when the reference is the master).
260
+ */
261
+ offsetMs: number;
262
+ /** 0–1. Below 0.5 a `notes` line asks for a check by ear. */
263
+ confidence: number;
264
+ /**
265
+ * Measured clock drift against the reference, in ms gained per hour; `null`
266
+ * when the shared stretch was too short to measure it. Drift is reported,
267
+ * never corrected — the offset is taken at the middle of the overlap.
268
+ */
269
+ driftMsPerHour: number | null;
270
+ }
271
+ /**
272
+ * An audio-sync job's `output_data.json`. It is NOT what
273
+ * {@link EditResource.audioSync} returns (that is `{ jobId }`); fetch the
274
+ * finished job and read its `output_data.json`.
275
+ */
276
+ interface AudioSyncResult {
277
+ /** Wire version of the payload. */
278
+ version: number;
279
+ /** The source every offset is measured against (its own offset is 0). */
280
+ reference: string;
281
+ offsets: AudioSyncOffset[];
282
+ /** Human-readable warnings: low confidence, measured drift, no shared sound. */
283
+ notes: string[];
284
+ }
285
+ interface ApplyEdlInput {
286
+ /** The edit decision list to render. Media resolves from each `edl.sources[i].url`. */
287
+ edl: Edl;
288
+ /**
289
+ * Optional media-URL overrides for `edl.sources[i].url`, POSITIONAL in this
290
+ * array's order. Each URL is SSRF-guarded server-side like any media the
291
+ * platform fetches.
292
+ */
293
+ sources?: string[];
294
+ /**
295
+ * Optional transcript to remap through the cut. The rendered job returns the
296
+ * remapped transcript on its `json` output. A word-level multi-hour transcript
297
+ * is several MB — if you only need the re-timed transcript (not a render), use
298
+ * {@link EditResource.remapTranscript} locally instead of sending it here.
299
+ */
300
+ transcript?: Transcript;
301
+ /** Render a full video (default) or an audio-only cut. */
302
+ output?: "video" | "audio";
303
+ /** Fast proxy draft or the final render. Default "final". */
304
+ quality?: "proxy" | "final";
305
+ /**
306
+ * Default crossfade (ms) on boundaries with no explicit transition; 0 = hard
307
+ * cuts. Per-boundary clamped to the ffmpeg-xfade limit server-side. Default 0.
308
+ */
309
+ crossfadeMs?: number;
310
+ /**
311
+ * The plan clip this render cuts — `edlSpanKey(clip)` from `@nodaro/shared`
312
+ * (`"<first inMs>-<last outMs>"`). The job's result carries it back as
313
+ * `output_data.clipKey`, so renders of a clip set can be matched to their
314
+ * clips. Omit for a render of no plan clip.
315
+ */
316
+ clipKey?: string;
317
+ /**
318
+ * The plan value this render cuts — `renderReadBasis(value)` from
319
+ * `@nodaro/shared` (16 lowercase hex digits), where `value` is the Edit
320
+ * Plan's Tighten EDL with any review applied, or the clip this render cuts.
321
+ * The job's result carries it back as `output_data.planBasis`, so a take can
322
+ * be told apart from one cut from an earlier plan. Send it only when the EDL
323
+ * you send IS that value (not one an intermediate step re-cut from an older
324
+ * plan); omit it otherwise. The result's `output_data.renderBasis` (the
325
+ * render's own settings and sources) is stamped by the server.
326
+ */
327
+ planBasis?: string;
328
+ /** Optionally associate this run with a workflow execution (display only). */
329
+ workflowId?: string;
330
+ }
331
+ /**
332
+ * One media source for an edit-plan run. Mirrors the shape the workflow engine
333
+ * sends: a stable `id` (adopted verbatim as the plan's `EdlSource` id), the
334
+ * media `url`, and the `kind`, plus optional per-source annotations the planner
335
+ * honors.
336
+ */
337
+ interface EditPlanSource {
338
+ /** Stable id for this source — becomes the `EdlSource` id in the returned plan. */
339
+ id: string;
340
+ /** The source's media URL (SSRF-guarded server-side). */
341
+ url: string;
342
+ /** This source's medium. */
343
+ kind: "video" | "audio";
344
+ /** Role annotation. `"master-audio"` marks the clock the plan is reserved on. */
345
+ role?: "master-audio" | "camera" | "wide" | "screen";
346
+ /** Speaker labels present in this source. */
347
+ speakers?: string[];
348
+ /**
349
+ * This source's origin on the master clock (masterMs = sourceMs + offsetMs).
350
+ * Set by hand, it wins over a measured offset from `offsets`.
351
+ */
352
+ offsetMs?: number;
353
+ }
354
+ interface EditPlanInput {
355
+ /**
356
+ * Planning mode. The finished job's `output_data` carries the plan — read it
357
+ * with {@link unwrapEditPlanOutput}, which also strips the relay's
358
+ * `viaNodaroCloud` marker:
359
+ * - `"tighten"` → an `Edl`.
360
+ * - `"clips"` → an {@link EdlClipSet} (`{ version, clips: Edl[] }`);
361
+ * `unwrapEditPlanOutput` returns the bare `Edl[]`.
362
+ * - `"chapters"` → a {@link ChapterSet} (`{ version, chapters: [...] }`).
363
+ * - `"trailer"` → an `Edl` (one short teaser cut from the strongest moments).
364
+ */
365
+ mode: EditPlanMode;
366
+ /** Reasoning tier — affects plan quality AND the credit bucket. */
367
+ planTier: EditPlanTier;
368
+ /** The timed transcript driving the plan. */
369
+ transcript: Transcript;
370
+ /**
371
+ * Optional detected silence ranges. Pass the silence-detect JOB'S RESULT —
372
+ * `getStatus(jobId).data.output_data.json` (a {@link SilenceRanges} object),
373
+ * NOT the `{ jobId }` that {@link EditResource.silenceDetect} returns. The
374
+ * planner reads the `ranges` array; an input without one is silently ignored.
375
+ */
376
+ silence?: SilenceRanges;
377
+ /** The recording's media sources (1–6). */
378
+ sources: EditPlanSource[];
379
+ /**
380
+ * Multicam: an {@link AudioSyncResult} (the audio-sync job's
381
+ * `output_data.json`) measured over these same source ids. Each source's
382
+ * measured offset is written onto its `offsetMs` BEFORE the request, on the
383
+ * master's clock (the `master-audio` source, else the first) — a source's
384
+ * own `offsetMs` wins. `editPlan` rejects with a {@link NodaroError}
385
+ * (`code: "edit_plan_sources"`), before any request or charge, when a
386
+ * source was not measured or matched weakly (confidence < 0.5 — set its
387
+ * `offsetMs` by hand), or the master was not measured.
388
+ */
389
+ offsets?: AudioSyncResult | string;
390
+ /**
391
+ * The id of the source the transcript was made from, when you know it. The
392
+ * plan follows the master's clock, so a transcript made from a source that
393
+ * is off it is rejected the same way.
394
+ */
395
+ transcriptSourceId?: string;
396
+ /** Free-text editing steer. */
397
+ instructions?: string;
398
+ /** Style-guide text applied to the plan. */
399
+ styleGuide?: string;
400
+ /** `"clips"` mode only: how many clips to cut. */
401
+ count?: number;
402
+ /** `"clips"` mode only: target duration per clip, in seconds. */
403
+ targetDurationSec?: number;
404
+ /** Target aspect for cut clips (`"clips"`) or the teaser (`"trailer"`). */
405
+ targetAspect?: "16:9" | "9:16" | "1:1" | "4:5";
406
+ /** Target platform hint (e.g. a social platform name). */
407
+ platform?: string;
408
+ /** Optionally associate this run with a workflow execution (display only). */
409
+ workflowId?: string;
410
+ }
411
+ /** Input for {@link EditResource.cameraSwitch} (podcast B5). */
412
+ interface CameraSwitchInput {
413
+ /** One EDL — an `editPlan` result (`unwrapEditPlanOutput`), not a clip set. */
414
+ edl: Edl;
415
+ /** The word transcript WITH speaker labels (transcribe with speaker detection). */
416
+ transcript: Transcript;
417
+ /** Speaker label → the EDL source id of that speaker's camera. A speaker
418
+ * left out shows the source whose `speakers` list names them, else the
419
+ * `wide` camera, else any camera that filmed them. */
420
+ speakerMap?: Record<string, string>;
421
+ /** A {@link EditResource.speakerMap} job's `output_data.json`: a label in `speakerMap`
422
+ * wins, then this result, then the n-th speaker heard gets the n-th camera. */
423
+ speakerMapResult?: SpeakerMapResult | string;
424
+ /** Speaker label → display name (on the segments and the returned transcript). */
425
+ speakerNames?: Record<string, string>;
426
+ /** The shortest shot in ms (default 2 500): a shorter turn holds the shot. */
427
+ minShotMs?: number;
428
+ /** Cut this long before the new speaker starts, ms (default 200). */
429
+ leadMs?: number;
430
+ /** With a `wide` source: break to it after this long on one camera, ms (default 20 000). */
431
+ maxShotMs?: number;
432
+ /** With a `wide` source: every N-th cut goes to the wide (default 0 = off). */
433
+ wideEvery?: number;
434
+ /** Overlapping speech → a layout hint (default false; Apply EDL renders cut-only edits). */
435
+ layoutHints?: boolean;
436
+ /** Optionally associate this run with a workflow execution (display only). */
437
+ workflowId?: string;
438
+ }
439
+
440
+ /** What a use-case run (`tightenEpisode`, `episodeChapters`, `episodeTrailer`, `clipPack`) and `continueUseCase` answer: the run's job to poll. */
441
+ interface UseCaseJobResult extends EditJobResult {
442
+ /** The run's execution (absent on a deduplicated retry). */
443
+ executionId?: string;
444
+ /** `true` when an `Idempotency-Key` retry found the run already started: `jobId` is that run. */
445
+ deduped?: boolean;
446
+ }
447
+ /** What `tightenEpisode` answers (a {@link UseCaseJobResult}). */
448
+ type TightenEpisodeJobResult = UseCaseJobResult;
449
+ /**
450
+ * What a use-case run is estimated at (`data`). Every credit amount is 0
451
+ * on an edition without credits; `durationSec` is `null` when the recording's
452
+ * length could not be read.
453
+ */
454
+ interface UseCaseEstimate {
455
+ /** The whole run: its steps plus the fee. */
456
+ totalCredits: number;
457
+ /** The steps at their own rates. */
458
+ stepsCredits: number;
459
+ /** The per-run fee. */
460
+ feeCredits: number;
461
+ /** The recording's length, in seconds. */
462
+ durationSec: number | null;
463
+ }
464
+ /** What a Tighten Episode run is estimated at (a {@link UseCaseEstimate}). */
465
+ type TightenEpisodeEstimate = UseCaseEstimate;
466
+ /** Input for {@link EditResource.continueUseCase}. */
467
+ interface UseCaseContinueInput {
468
+ /** The run to continue: the job `tightenEpisode`, `episodeChapters`, `episodeTrailer` or `clipPack` (or an earlier continuation) answered. */
469
+ jobId: string;
470
+ /**
471
+ * `"from-failed"` re-runs what did not finish of a failed run;
472
+ * `"render-final"` renders the full-quality result after a review-on preview
473
+ * (a Chapters run has no preview: it is refused `render_final_not_preview`;
474
+ * a Clip Pack edit that drops every clip is refused `use_case_nothing_kept`).
475
+ */
476
+ mode: "from-failed" | "render-final";
477
+ /** Render final only: the reviewer's edit of the plan (an EDL). */
478
+ editedEdl?: unknown;
479
+ /**
480
+ * The run's node type: its continuation goes to `POST /v1/<nodeType>/continue`.
481
+ * Optional: when absent the job is read first (`GET /v1/jobs/:id`, which
482
+ * needs the `jobs:read` scope on an app token) for the type the run records.
483
+ * Required when that read cannot answer: a key without `jobs:read`, or a job
484
+ * that records no use-case type (the call rejects with `use_case_type_unknown`).
485
+ */
486
+ nodeType?: UseCaseNodeType;
487
+ }
488
+ /** Per-call options for the use-case requests (Tighten Episode, Chapters, Trailer, Clip Pack, and their continuations). */
489
+ interface UseCaseRequestOptions {
490
+ /**
491
+ * Sent as the `Idempotency-Key` header. Reuse the same value when retrying
492
+ * the same request and the server answers the run it already started
493
+ * (`deduped: true`) instead of starting a second one.
494
+ */
495
+ idempotencyKey?: string;
496
+ }
497
+ /**
498
+ * Editorial primitives for podcast / long-form video editing, single-camera
499
+ * and multicam: measure the cameras' offsets ({@link audioSync}), plan the cut
500
+ * ({@link editPlan}), put each cut on the speaker's camera
501
+ * ({@link cameraSwitch}), render a Preview to review (`applyEdl` with
502
+ * `quality: "proxy"`), then the final (`quality: "final"`).
503
+ *
504
+ * - {@link silenceDetect}, {@link audioSync} and {@link applyEdl} are core nodes
505
+ * available on every edition.
506
+ * - {@link editPlan} and {@link cameraSwitch} run on nodaro.ai; a self-hosted
507
+ * install relays them once it is connected (a 503
508
+ * `code: "nodaro_connection_required"` otherwise).
509
+ * - {@link tightenEpisode} runs the whole chain (transcribe, plan, render, and
510
+ * optionally captions, music and framing) in one call. It is core, but a
511
+ * self-hosted install needs a nodaro.ai connection for the steps that run
512
+ * there (a 503 `code: "nodaro_connection_required"` otherwise).
513
+ * {@link continueUseCase} continues one of its runs.
514
+ * - {@link episodeChapters} lists a recording's chapters (transcribe, then the
515
+ * plan in chapters mode) in one call; nothing renders. Like
516
+ * {@link tightenEpisode}, a self-hosted install needs a nodaro.ai connection.
517
+ * - {@link episodeTrailer} cuts a 20–40 s trailer of a recording and delivers
518
+ * it in each chosen format in one call; the same connection applies.
519
+ * - {@link clipPack} cuts a recording into a pack of short clips (framed and
520
+ * captioned by default) in one call; the same connection applies.
521
+ * - {@link remapTranscript} is a PURE local transform (no request) — the same
522
+ * remap `applyEdl` performs on its `transcript`, exposed for callers that hold
523
+ * an EDL and a transcript and only want the re-timed transcript.
524
+ *
525
+ * Every request method except the estimates ({@link estimateTightenEpisode},
526
+ * {@link estimateEpisodeChapters}, {@link estimateEpisodeTrailer},
527
+ * {@link estimateClipPack}: a quote, `{ data }`) returns
528
+ * {@link EditJobResult} (the use-case runs a {@link UseCaseJobResult}); poll the
529
+ * `jobId` with `client.jobs.getStatus(jobId)`.
530
+ */
531
+ declare class EditResource {
532
+ private client;
533
+ constructor(client: NodaroClientCore);
534
+ /**
535
+ * Detect silence ranges in an audio/video source (`POST /v1/silence-detect`).
536
+ * Keyless — one ffmpeg pass over the source's audio proxy.
537
+ */
538
+ silenceDetect(input: SilenceDetectInput): Promise<EditJobResult>;
539
+ /**
540
+ * Measure how far apart the clocks of 2–6 recordings of one conversation are
541
+ * (`POST /v1/audio-sync`), by cross-correlating their audio — keyless, one
542
+ * ffmpeg decode per source. The finished job's `output_data.json` is an
543
+ * {@link AudioSyncResult}. A malformed request (fewer than 2 or more than 6
544
+ * sources, a repeated id, a `reference` that is not one of the ids) throws a
545
+ * typed `NodaroError` (400, `code: "validation_error"`) before any credits
546
+ * are reserved.
547
+ */
548
+ audioSync(input: AudioSyncInput): Promise<EditJobResult>;
549
+ /**
550
+ * Which camera each speaker is on, from the cameras' own microphones (`POST
551
+ * /v1/speaker-map`), keyless. `output_data.json` is a `SpeakerMapResult`: pass
552
+ * it to {@link cameraSwitch} as `speakerMapResult`. A malformed request throws
553
+ * a `NodaroError` (400 `validation_error`; 422 `no_speakers` for a transcript
554
+ * with no speaker labels) before any credits are reserved.
555
+ */
556
+ speakerMap(input: SpeakerMapInput): Promise<EditJobResult>;
557
+ /**
558
+ * Render an edit decision list into a video or audio cut (`POST /v1/apply-edl`).
559
+ * The EDL is validated at ingress — an unresolvable source or a picture-less
560
+ * segment on a video edit throws a typed `NodaroError` (400, `code:
561
+ * "invalid_edl"`) before any credits are reserved.
562
+ */
563
+ applyEdl(input: ApplyEdlInput): Promise<EditJobResult>;
564
+ /**
565
+ * Tighten Episode (`POST /v1/tighten-episode`): tighten a podcast recording
566
+ * in one call — transcribe, cut the silences and filler, render, with
567
+ * optional captions, music and framing. Answers the run's job to poll; its
568
+ * `output_data` holds the episode. The run is priced as its steps at their own
569
+ * rates plus the listed per-run fee. Quote it first with
570
+ * {@link estimateTightenEpisode}.
571
+ */
572
+ tightenEpisode(input: TightenEpisodeInput, options?: UseCaseRequestOptions): Promise<TightenEpisodeJobResult>;
573
+ /**
574
+ * What a Tighten Episode run is estimated at (`POST /v1/tighten-episode/estimate`):
575
+ * its steps at their own rates plus its per-run fee. Nothing is created or
576
+ * charged. The estimate leans high: the render is priced at the recording's
577
+ * full length, while the charge follows the minutes actually rendered.
578
+ */
579
+ estimateTightenEpisode(input: TightenEpisodeInput): Promise<{
580
+ data: TightenEpisodeEstimate;
581
+ }>;
582
+ /**
583
+ * Chapters (`POST /v1/episode-chapters`): transcribe a recording and list its
584
+ * chapters in one call. Answers the run's job to poll; the finished job's
585
+ * `output_data.text` is the list as show notes (one `0:00 Title` line per
586
+ * chapter; once a chapter starts at 1:00:00 or later, every line is
587
+ * `H:MM:SS`), `output_data.json` the list itself (`{ startMs, title }[]`, the
588
+ * same rows; the first starts at 0). A run that finds no chapters fails,
589
+ * and its fee is refunded. Priced as its steps at their own rates plus the
590
+ * listed per-run fee; quote it first with {@link estimateEpisodeChapters}.
591
+ */
592
+ episodeChapters(input: EpisodeChaptersInput, options?: UseCaseRequestOptions): Promise<UseCaseJobResult>;
593
+ /**
594
+ * What a Chapters run is estimated at (`POST /v1/episode-chapters/estimate`):
595
+ * its steps at their own rates plus its per-run fee. Nothing is created or
596
+ * charged. A recording whose length cannot be read is estimated at the
597
+ * 180-minute ceiling.
598
+ */
599
+ estimateEpisodeChapters(input: EpisodeChaptersInput): Promise<{
600
+ data: UseCaseEstimate;
601
+ }>;
602
+ /**
603
+ * Trailer (`POST /v1/episode-trailer`): cut a 20–40 s trailer of a recording
604
+ * and deliver it in each chosen format (padded, never cropped), optionally
605
+ * after an intro card, in one call. The finished job's `output_data.formats`
606
+ * is `{ format, url }[]` in format order, the first also `output_data.videoUrl`;
607
+ * a format that failed is named in `output_data.failedFormats` (the run keeps
608
+ * the others). With `reviewBeforeRender` the run stops at a preview
609
+ * (`videoUrl`, no formats yet). Priced as its steps at their own rates plus
610
+ * the listed per-run fee; quote it first with {@link estimateEpisodeTrailer}.
611
+ */
612
+ episodeTrailer(input: EpisodeTrailerInput, options?: UseCaseRequestOptions): Promise<UseCaseJobResult>;
613
+ /**
614
+ * What a Trailer run is estimated at (`POST /v1/episode-trailer/estimate`):
615
+ * its steps at their own rates plus its per-run fee. Nothing is created or
616
+ * charged. The trailer is quoted at 40 seconds, the longest trailer the
617
+ * plan cuts; a Render final is quoted on the trailer the run cut (with the
618
+ * review's edits), plus the intro card.
619
+ */
620
+ estimateEpisodeTrailer(input: EpisodeTrailerInput): Promise<{
621
+ data: UseCaseEstimate;
622
+ }>;
623
+ /**
624
+ * Clip Pack (`POST /v1/clip-pack`): cut a recording into a pack of short
625
+ * clips in one call — the plan finds the best moments (`count`, default 8,
626
+ * of about `targetDurationSec`, default 60), each is rendered (framed 9:16
627
+ * with the speakers stacked by default; `framing: null` keeps the
628
+ * recording's shape) and captioned. An audio recording makes audio clips.
629
+ * The finished job's `output_data.clips` is `{ url, title?, hook?, clipKey,
630
+ * thumbnailUrl?, captionsFailed? }[]` in plan order, the first also
631
+ * `output_data.videoUrl` (`audioUrl` for audio clips). Every clip is tried:
632
+ * one that cannot be rendered is skipped, not charged and counted on
633
+ * `failedClips` (the pack keeps the others and its fee); a clip whose
634
+ * captions failed comes uncaptioned (`captionsFailed`, counted on
635
+ * `failedCaptions`). When no clip renders the run fails and its fee is
636
+ * refunded. With `reviewBeforeRender` the run stops at previews; Render
637
+ * final ({@link continueUseCase}) renders only the clips the edit keeps.
638
+ * Priced as its steps at their own rates plus the listed per-run fee;
639
+ * quote it first with {@link estimateClipPack}.
640
+ */
641
+ clipPack(input: ClipPackInput, options?: UseCaseRequestOptions): Promise<UseCaseJobResult>;
642
+ /**
643
+ * What a Clip Pack run is estimated at (`POST /v1/clip-pack/estimate`): its
644
+ * steps at their own rates plus its per-run fee. Nothing is created or
645
+ * charged. Each clip is quoted at twice the target length (the plan may cut
646
+ * a clip longer than asked); the charge follows each clip's real length.
647
+ */
648
+ estimateClipPack(input: ClipPackInput): Promise<{
649
+ data: UseCaseEstimate;
650
+ }>;
651
+ /**
652
+ * Continue a use-case run as a new job (`POST /v1/<type>/continue`, the
653
+ * run's own type: `input.nodeType`, else the type the job records, read with
654
+ * `GET /v1/jobs/:id`; when that read cannot tell, this rejects with a
655
+ * `NodaroError` coded `use_case_type_unknown` — pass `nodeType` then):
656
+ * `"from-failed"` keeps the steps that finished and runs the rest (the fee
657
+ * is held again; the failed run's was refunded);
658
+ * `"render-final"` renders the full-quality result after a review-on preview,
659
+ * with the preview's settings and no fee. A refusal that names another job
660
+ * (`already_running`, `continuation_superseded`,
661
+ * `render_final_already_rendered`) throws a `ContinuationRefusedError`
662
+ * carrying that `jobId`.
663
+ */
664
+ continueUseCase(input: UseCaseContinueInput, options?: UseCaseRequestOptions): Promise<UseCaseJobResult>;
665
+ /**
666
+ * The use-case type a run records (`input_data.type`, else its `job_type`).
667
+ * When the key lacks the `jobs:read` scope (403 naming that scope) or the job
668
+ * names no use-case type, the type cannot be read: this rejects with a
669
+ * `NodaroError` (`use_case_type_unknown`, 400) asking for `nodeType`, and
670
+ * nothing is posted (decided 2026-10-18: no route is guessed for the run).
671
+ * Any other failure of the read, any other 403 included, is thrown as is.
672
+ */
673
+ private runTypeOf;
674
+ /**
675
+ * Plan a transcript-driven cut (`POST /v1/edit-plan`). Reads a timed
676
+ * transcript (plus optional silence ranges) and the media sources, and plans
677
+ * the edit. The finished job's `output_data` holds the plan: an `Edl`
678
+ * (`"tighten"` or `"trailer"`), an {@link EdlClipSet} (`"clips"`), or a
679
+ * {@link ChapterSet} (`"chapters"`) — normalize it with {@link unwrapEditPlanOutput}.
680
+ *
681
+ * On a self-hosted install the request relays to nodaro.ai and needs the
682
+ * install connected (a 503 `code: "nodaro_connection_required"` otherwise);
683
+ * on nodaro.ai it runs directly.
684
+ */
685
+ editPlan(input: EditPlanInput): Promise<EditJobResult>;
686
+ /**
687
+ * Camera Switch (podcast B5): choose which camera shows each cut of `edl`
688
+ * by who is speaking — the sound never changes. Cloud edition; a flat
689
+ * price. The finished job's `output_data.json` is the switched EDL (feed it
690
+ * to {@link applyEdl}) and `output_data.transcript` the transcript with
691
+ * `speakerNames` applied. A transcript with no speaker labels rejects with
692
+ * a {@link NodaroError} (`code: "no_speakers"`) before any request or charge.
693
+ */
694
+ cameraSwitch(input: CameraSwitchInput): Promise<EditJobResult>;
695
+ /**
696
+ * Remap a transcript through an EDL — a PURE client-side transform (NO
697
+ * request). Returns a new transcript whose word (and segment) timings are on
698
+ * the EDL's rendered output clock, dropping words that fall in cut regions and
699
+ * clipping straddlers. Runs `@nodaro/shared`'s canonical
700
+ * `remapTranscriptThroughEdl`, the same remap `applyEdl` performs server-side.
701
+ */
702
+ remapTranscript(edl: Edl, transcript: Transcript): Transcript;
703
+ }
704
+
705
+ export { type ApplyEdlInput, type AudioSyncInput, type AudioSyncOffset, type AudioSyncResult, type AudioSyncSource, CLIP_PACK_MAX_TARGET_SEC, CLIP_PACK_MIN_TARGET_SEC, type CameraSwitchInput, type ClipPackEmphasis, type ClipPackInput, type EditJobResult, type EditPlanInput, type EditPlanSource, EditResource, type EpisodeChaptersInput, type EpisodeTrailerInput, type SilenceDetectInput, type SilenceRanges, type SpeakerMapInput, type SpeakerMapSource, TRAILER_FORMATS, type TightenEpisodeEstimate, type TightenEpisodeInput, type TightenEpisodeJobResult, type TrailerFormat, type UseCaseContinueInput, type UseCaseEstimate, type UseCaseJobResult, type UseCaseRequestOptions };