@keboola/api-client 55.0.0 → 56.0.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 (252) hide show
  1. package/API-SURFACE.md +3 -1
  2. package/CHANGELOG.md +16 -0
  3. package/dist/{adminRoles-BTKVwEy8.d.cts → adminRoles-BFOPSedO.d.cts} +2 -2
  4. package/dist/{adminRoles-Cm513r1G.d.ts → adminRoles-CUB0JddB.d.ts} +2 -2
  5. package/dist/ai/index.d.cts +2 -2
  6. package/dist/ai/index.d.ts +2 -2
  7. package/dist/ai/types.d.cts +1 -1
  8. package/dist/ai/types.d.ts +1 -1
  9. package/dist/apps/index.d.cts +2 -2
  10. package/dist/apps/index.d.ts +2 -2
  11. package/dist/apps/types.d.cts +1 -1
  12. package/dist/apps/types.d.ts +1 -1
  13. package/dist/assets/index.d.cts +1 -1
  14. package/dist/assets/index.d.ts +1 -1
  15. package/dist/auth/index.cjs +1 -1
  16. package/dist/auth/index.d.cts +1 -1
  17. package/dist/auth/index.d.ts +1 -1
  18. package/dist/auth/index.js +1 -1
  19. package/dist/auth/types.d.cts +1 -1
  20. package/dist/auth/types.d.ts +1 -1
  21. package/dist/{authClient-BM4L8XEN.js → authClient-B_Mb4Vzs.js} +3 -45
  22. package/dist/authClient-B_Mb4Vzs.js.map +1 -0
  23. package/dist/{authClient-DspK50e7.cjs → authClient-C9QqhT2M.cjs} +6 -60
  24. package/dist/authClient-C9QqhT2M.cjs.map +1 -0
  25. package/dist/{authClient-NBi0pqD5.d.cts → authClient-DOetdp2k.d.cts} +4 -4
  26. package/dist/{authClient-ij_Rm2Yn.d.ts → authClient-Dgyb0EFi.d.ts} +4 -4
  27. package/dist/billing/index.d.cts +1 -1
  28. package/dist/billing/index.d.ts +1 -1
  29. package/dist/billing/types.d.cts +1 -1
  30. package/dist/billing/types.d.ts +1 -1
  31. package/dist/chat/index.d.cts +2 -2
  32. package/dist/chat/index.d.ts +2 -2
  33. package/dist/chat/types.d.cts +1 -1
  34. package/dist/chat/types.d.ts +1 -1
  35. package/dist/collectByCursor-2-8SuJ-8.js +76 -0
  36. package/dist/collectByCursor-2-8SuJ-8.js.map +1 -0
  37. package/dist/collectByCursor-D58__WD1.cjs +105 -0
  38. package/dist/collectByCursor-D58__WD1.cjs.map +1 -0
  39. package/dist/componentsMcp/index.d.cts +1 -1
  40. package/dist/componentsMcp/index.d.ts +1 -1
  41. package/dist/componentsMcp/types.d.cts +1 -1
  42. package/dist/componentsMcp/types.d.ts +1 -1
  43. package/dist/constants/index.d.cts +3 -3
  44. package/dist/constants/index.d.ts +3 -3
  45. package/dist/dataScience/index.d.cts +3 -3
  46. package/dist/dataScience/index.d.ts +3 -3
  47. package/dist/dataScience/types.d.cts +1 -1
  48. package/dist/dataScience/types.d.ts +1 -1
  49. package/dist/developerPortal/index.d.cts +2 -2
  50. package/dist/developerPortal/index.d.ts +2 -2
  51. package/dist/developerPortal/types.d.cts +1 -1
  52. package/dist/developerPortal/types.d.ts +1 -1
  53. package/dist/domain/permissions/index.d.cts +1 -1
  54. package/dist/domain/permissions/index.d.ts +1 -1
  55. package/dist/editor/index.d.cts +2 -2
  56. package/dist/editor/index.d.ts +2 -2
  57. package/dist/editor/types.d.cts +1 -1
  58. package/dist/editor/types.d.ts +1 -1
  59. package/dist/encryption/index.d.cts +1 -1
  60. package/dist/encryption/index.d.ts +1 -1
  61. package/dist/encryption/types.d.cts +1 -1
  62. package/dist/encryption/types.d.ts +1 -1
  63. package/dist/import/index.d.cts +3 -3
  64. package/dist/import/index.d.ts +3 -3
  65. package/dist/{index-DLWMm1-T.d.ts → index-A8udJCGv.d.ts} +4 -4
  66. package/dist/{index-d9zxFmNI.d.cts → index-B-HhOTVk.d.cts} +4 -4
  67. package/dist/{index-BVe4S2CK.d.ts → index-B2YNTI4p.d.ts} +4 -4
  68. package/dist/{index-CEDjFidH.d.ts → index-B30dBBBH.d.ts} +3 -3
  69. package/dist/{index-D3hWR_e4.d.ts → index-B7Ogo2SK.d.ts} +2 -2
  70. package/dist/{index-CdeWTy8t.d.ts → index-BH1jo-bb.d.ts} +4 -4
  71. package/dist/{index-DTGOEke4.d.ts → index-BaJ-GMa7.d.ts} +3 -3
  72. package/dist/{index-DeWeUUfE.d.ts → index-Bgu3hnMO.d.ts} +4 -4
  73. package/dist/{index-BGsP2QBc.d.ts → index-C6FI_Lc7.d.ts} +3 -3
  74. package/dist/{index-BGE3eZfd.d.cts → index-CLqZfRpv.d.cts} +3 -3
  75. package/dist/{index-CZvBjQvl.d.ts → index-CLxvW_pn.d.ts} +4 -4
  76. package/dist/{index-CQNwp6wX.d.ts → index-C_A0JS9s.d.ts} +3 -3
  77. package/dist/{index-CWowDl63.d.cts → index-CmtqbTse.d.cts} +3 -3
  78. package/dist/{index-BE6qM0vu.d.cts → index-CpidrJQc.d.cts} +4 -4
  79. package/dist/{index-CYk7Aa8u.d.cts → index-CxoJuIzB.d.cts} +2 -2
  80. package/dist/{index-B8K-Bbdq.d.cts → index-DAb1g6je.d.cts} +3 -3
  81. package/dist/{index-CmyFWQXn.d.cts → index-DPhGNQC5.d.cts} +140 -34
  82. package/dist/{index-CNJBmCHM.d.cts → index-DXNRd61K.d.cts} +4 -4
  83. package/dist/{index-FrsEkDvX.d.cts → index-DcKc3_Y1.d.cts} +3 -2
  84. package/dist/{index-FrsEkDvX.d.ts → index-DcKc3_Y1.d.ts} +3 -2
  85. package/dist/{index-8QhOqFLY.d.cts → index-Dx02AUpZ.d.cts} +4 -4
  86. package/dist/{index-BXgjPlZN.d.cts → index-DxbqDi_0.d.cts} +4 -4
  87. package/dist/{index-CQPs3hrp.d.ts → index-GlHJ4j3a.d.ts} +140 -34
  88. package/dist/{index-iFCann29.d.cts → index-RHYdFrfn.d.cts} +3 -3
  89. package/dist/index.cjs +7 -7
  90. package/dist/index.d.cts +6 -6
  91. package/dist/index.d.ts +6 -6
  92. package/dist/index.js +3 -3
  93. package/dist/kaiAgent/index.d.cts +2 -2
  94. package/dist/kaiAgent/index.d.ts +2 -2
  95. package/dist/kaiAgent/types.d.cts +1 -1
  96. package/dist/kaiAgent/types.d.ts +1 -1
  97. package/dist/management/index.d.cts +1 -1
  98. package/dist/management/index.d.ts +1 -1
  99. package/dist/management/types.d.cts +1 -1
  100. package/dist/management/types.d.ts +1 -1
  101. package/dist/{metaObject-D7oudegV.d.cts → metaObject-BsBMgWRt.d.cts} +2 -2
  102. package/dist/{metaObject-ClvW342q.d.ts → metaObject-qWyZAD-5.d.ts} +2 -2
  103. package/dist/metastore/index.d.cts +1 -1
  104. package/dist/metastore/index.d.ts +1 -1
  105. package/dist/metastore/types.d.cts +1 -1
  106. package/dist/metastore/types.d.ts +1 -1
  107. package/dist/microsoftGraph/index.d.cts +2 -2
  108. package/dist/microsoftGraph/index.d.ts +2 -2
  109. package/dist/microsoftGraph/types.d.cts +1 -1
  110. package/dist/microsoftGraph/types.d.ts +1 -1
  111. package/dist/notifications/index.d.cts +2 -2
  112. package/dist/notifications/index.d.ts +2 -2
  113. package/dist/notifications/types.d.cts +1 -1
  114. package/dist/notifications/types.d.ts +1 -1
  115. package/dist/oauth/index.d.cts +2 -2
  116. package/dist/oauth/index.d.ts +2 -2
  117. package/dist/oauth/types.d.cts +1 -1
  118. package/dist/oauth/types.d.ts +1 -1
  119. package/dist/omnisearch/index.d.cts +2 -2
  120. package/dist/omnisearch/index.d.ts +2 -2
  121. package/dist/omnisearch/types.d.cts +1 -1
  122. package/dist/omnisearch/types.d.ts +1 -1
  123. package/dist/{project-DS0HOV3M.d.ts → project-CmV1OhK4.d.ts} +3 -3
  124. package/dist/{project-BGk9CtOq.d.cts → project-F6eHCACz.d.cts} +3 -3
  125. package/dist/queryService/index.d.cts +1 -1
  126. package/dist/queryService/index.d.ts +1 -1
  127. package/dist/queryService/types.d.cts +1 -1
  128. package/dist/queryService/types.d.ts +1 -1
  129. package/dist/queue/index.d.cts +3 -3
  130. package/dist/queue/index.d.ts +3 -3
  131. package/dist/queue/types.d.cts +1 -1
  132. package/dist/queue/types.d.ts +1 -1
  133. package/dist/scheduler/index.d.cts +2 -2
  134. package/dist/scheduler/index.d.ts +2 -2
  135. package/dist/scheduler/types.d.cts +1 -1
  136. package/dist/scheduler/types.d.ts +1 -1
  137. package/dist/sdk/configurations/index.d.cts +3 -3
  138. package/dist/sdk/configurations/index.d.ts +3 -3
  139. package/dist/sdk/dataAppServer/index.cjs +1 -1
  140. package/dist/sdk/dataAppServer/index.d.cts +1 -1
  141. package/dist/sdk/dataAppServer/index.d.ts +1 -1
  142. package/dist/sdk/dataAppServer/index.js +1 -1
  143. package/dist/sdk/developerPortal/index.d.cts +3 -3
  144. package/dist/sdk/developerPortal/index.d.ts +3 -3
  145. package/dist/sdk/kaiMemory/index.d.cts +1 -1
  146. package/dist/sdk/kaiMemory/index.d.ts +1 -1
  147. package/dist/sdk/kaiMemory/types.d.cts +1 -1
  148. package/dist/sdk/kaiMemory/types.d.ts +1 -1
  149. package/dist/sdk/queryService/index.d.cts +1 -1
  150. package/dist/sdk/queryService/index.d.ts +1 -1
  151. package/dist/sdk/securityPolicy/index.d.cts +2 -2
  152. package/dist/sdk/securityPolicy/index.d.ts +2 -2
  153. package/dist/sdk/securityPolicy/types.d.cts +1 -1
  154. package/dist/sdk/securityPolicy/types.d.ts +1 -1
  155. package/dist/sdk/semanticLayer/index.d.cts +1 -1
  156. package/dist/sdk/semanticLayer/index.d.ts +1 -1
  157. package/dist/sdk/semanticLayer/types.d.cts +1 -1
  158. package/dist/sdk/semanticLayer/types.d.ts +1 -1
  159. package/dist/sdk/tag/index.d.cts +2 -2
  160. package/dist/sdk/tag/index.d.ts +2 -2
  161. package/dist/sdk/tag/types.d.cts +1 -1
  162. package/dist/sdk/tag/types.d.ts +1 -1
  163. package/dist/sdk/vault/index.d.cts +1 -1
  164. package/dist/sdk/vault/index.d.ts +1 -1
  165. package/dist/status/index.d.cts +1 -1
  166. package/dist/status/index.d.ts +1 -1
  167. package/dist/storage/index.cjs +4 -4
  168. package/dist/storage/index.d.cts +3 -3
  169. package/dist/storage/index.d.ts +3 -3
  170. package/dist/storage/index.js +2 -2
  171. package/dist/storage/types.d.cts +6 -6
  172. package/dist/storage/types.d.ts +6 -6
  173. package/dist/{storage-DEJN8sw-.js → storage-Bw-HSnPp.js} +55 -2
  174. package/dist/storage-Bw-HSnPp.js.map +1 -0
  175. package/dist/{storage-BL-TfHp8.cjs → storage-jLhVrKZh.cjs} +57 -4
  176. package/dist/storage-jLhVrKZh.cjs.map +1 -0
  177. package/dist/stream/index.d.cts +2 -2
  178. package/dist/stream/index.d.ts +2 -2
  179. package/dist/stream/types.d.cts +1 -1
  180. package/dist/stream/types.d.ts +1 -1
  181. package/dist/syncActions/index.d.cts +2 -2
  182. package/dist/syncActions/index.d.ts +2 -2
  183. package/dist/syncActions/types.d.cts +1 -1
  184. package/dist/syncActions/types.d.ts +1 -1
  185. package/dist/telemetry/index.d.cts +2 -2
  186. package/dist/telemetry/index.d.ts +2 -2
  187. package/dist/telemetry/types.d.cts +1 -1
  188. package/dist/telemetry/types.d.ts +1 -1
  189. package/dist/{types-B6f6LpZ_.d.cts → types--mz2z0Zm.d.cts} +2 -2
  190. package/dist/{types-Bwvss_gW.d.cts → types-2CMPwArl.d.ts} +2 -2
  191. package/dist/{types-CRC4lbPw.d.cts → types-3ZE32k8V.d.cts} +2 -2
  192. package/dist/{types-Do3__S4Q.d.cts → types-6oLbURTK.d.cts} +2 -2
  193. package/dist/{types-B4Vwz45w.d.cts → types-B452bFfS.d.ts} +2 -2
  194. package/dist/{types-zlYUn0oi.d.ts → types-B5FgsIiY.d.ts} +3 -3
  195. package/dist/{types-DMhgKHCP.d.cts → types-B6OG1lLf.d.cts} +2 -2
  196. package/dist/{types-DNwIMEuB.d.cts → types-BDGkMVWf.d.cts} +2 -2
  197. package/dist/{types-CQYyULrw.d.ts → types-BEEGI4aq.d.ts} +2 -2
  198. package/dist/{types-Bv2Ds1hL.d.cts → types-BJRRAQ9R.d.cts} +2 -2
  199. package/dist/{types-D5bxXqEU.d.ts → types-B_yv00AL.d.ts} +2 -2
  200. package/dist/{types-DoSZQ1Bi.d.ts → types-BhGr9OQ4.d.ts} +2 -2
  201. package/dist/{types-D-ufoskb.d.cts → types-BmcZyKgM.d.cts} +17 -2
  202. package/dist/{types-dU3EA8gk.d.ts → types-BnkHyxdp.d.ts} +2 -2
  203. package/dist/{types-B4ezB18r.d.cts → types-BqJycQNM.d.cts} +2 -2
  204. package/dist/{types-p_lWvuQJ.d.ts → types-ByKSM08P.d.ts} +2 -2
  205. package/dist/{types-Y4e8GGa3.d.cts → types-C3Kf_ggm.d.cts} +2 -2
  206. package/dist/{types-CIlBSV99.d.cts → types-CF5ZROX5.d.cts} +2 -2
  207. package/dist/{types-ChOJ-Az7.d.cts → types-CFuT8zr3.d.cts} +2 -2
  208. package/dist/{types-BXKL0wTI.d.cts → types-CNDemlfn.d.cts} +3 -3
  209. package/dist/{types-Rrcx-8LM.d.ts → types-CUovU--e.d.ts} +2 -2
  210. package/dist/{types-DU8aPTFW.d.cts → types-C_JO7FI9.d.cts} +2 -2
  211. package/dist/{types-BVJmcoqA.d.cts → types-CbPO9cGq.d.cts} +2 -2
  212. package/dist/{types-Dsf7CYmm.d.ts → types-Cg_66Toy.d.ts} +2 -2
  213. package/dist/{types-J_dgwMjP.d.ts → types-CjqFLXVx.d.cts} +2 -2
  214. package/dist/{types-CSE8bHiq.d.cts → types-Cm1iOHE5.d.cts} +3 -3
  215. package/dist/{types-BD0B1KQ6.d.ts → types-CnKiVVb8.d.ts} +2 -2
  216. package/dist/{types-D2hhEGem.d.cts → types-CrXoqs8E.d.cts} +2 -2
  217. package/dist/{types-DCARsJWs.d.cts → types-CuYaiy4R.d.cts} +4 -4
  218. package/dist/{types-DjSjUKUl.d.ts → types-Cvbcjdgf.d.ts} +2 -2
  219. package/dist/{types-DKKHKj19.d.cts → types-D0BOES7q.d.cts} +2 -2
  220. package/dist/{types-kGZQQcIK.d.ts → types-D0Gqu-Xz.d.cts} +2 -2
  221. package/dist/{types-d5Bt8Mr3.d.ts → types-D2J3SaoY.d.ts} +2 -2
  222. package/dist/{types-Bp8G9yta.d.ts → types-D4knWlwr.d.ts} +2 -2
  223. package/dist/{types-BDgOF2WN.d.ts → types-D6Fbf_y3.d.ts} +4 -4
  224. package/dist/{types-Tg3euEN_.d.ts → types-DMEl2iet.d.ts} +2 -2
  225. package/dist/{types-CTYTMXXj.d.ts → types-DPFG6AAA.d.ts} +2 -2
  226. package/dist/{types-BynQKst1.d.cts → types-DQguGTlM.d.cts} +2 -2
  227. package/dist/{types-DbthI3r-.d.ts → types-DaRxZt3v.d.ts} +2 -2
  228. package/dist/{types-DX1Dz0xK.d.ts → types-DgAMVyiT.d.ts} +2 -2
  229. package/dist/{types-Cr6WA6CN.d.ts → types-DhE7iY90.d.ts} +17 -2
  230. package/dist/{types-B6JcEPEu.d.ts → types-DiXeO0yB.d.ts} +2 -2
  231. package/dist/{types-CKdNf_2k.d.cts → types-DslO1S5E.d.cts} +3 -3
  232. package/dist/{types-Cf0WE6qK.d.cts → types-DtS7qAdz.d.cts} +2 -2
  233. package/dist/{types-C5B3Pfob.d.cts → types-DykEfF2N.d.cts} +2 -2
  234. package/dist/{types-DSWIIMdv.d.ts → types-EdL0Eb0B.d.ts} +3 -3
  235. package/dist/{types-DK1bSUNr.d.ts → types-Foy0RnqF.d.ts} +3 -3
  236. package/dist/{types-BEw98Dd2.d.cts → types-LOf_GCej.d.cts} +2 -2
  237. package/dist/{types-OHt0D_f2.d.ts → types-lZRyNwOH.d.ts} +2 -2
  238. package/dist/{types-CepTvkfm.d.ts → types-p6UYqJo_.d.ts} +2 -2
  239. package/dist/vault/index.d.cts +1 -1
  240. package/dist/vault/index.d.ts +1 -1
  241. package/dist/vault/types.d.cts +1 -1
  242. package/dist/vault/types.d.ts +1 -1
  243. package/package.json +1 -1
  244. package/surface/storage.md +5 -0
  245. package/dist/authClient-BM4L8XEN.js.map +0 -1
  246. package/dist/authClient-DspK50e7.cjs.map +0 -1
  247. package/dist/storage-BL-TfHp8.cjs.map +0 -1
  248. package/dist/storage-DEJN8sw-.js.map +0 -1
  249. package/dist/validateConnectionStatus-DV00sDmu.js +0 -34
  250. package/dist/validateConnectionStatus-DV00sDmu.js.map +0 -1
  251. package/dist/validateConnectionStatus-ckaHcRx8.cjs +0 -51
  252. package/dist/validateConnectionStatus-ckaHcRx8.cjs.map +0 -1
@@ -1,4 +1,4 @@
1
- import { c as OpenapiQueryType, l as OpenapiReturnType, r as OpenapiBodyType, s as OpenapiPathType } from "./index-FrsEkDvX.cjs";
1
+ import { c as OpenapiQueryType, l as OpenapiReturnType, r as OpenapiBodyType, s as OpenapiPathType } from "./index-DcKc3_Y1.cjs";
2
2
  /**
3
3
  * This file was auto-generated by openapi-typescript.
4
4
  * Do not make direct changes to the file.
@@ -398,4 +398,4 @@ type SubscriptionId = OpenapiPathType<paths['/project-subscriptions/{subscriptio
398
398
  type SubscriptionRecipient = CreateSubscriptionBody['recipient'];
399
399
  type SubscriptionFilter = NonNullable<CreateSubscriptionBody['filters']>[number];
400
400
  export { SubscriptionId as a, SubscriptionFilter as i, ListSubscriptionsQuery as n, SubscriptionRecipient as o, ProjectSubscription as r, components as s, CreateSubscriptionBody as t };
401
- //# sourceMappingURL=types-BynQKst1.d.cts.map
401
+ //# sourceMappingURL=types-DQguGTlM.d.cts.map
@@ -1,4 +1,4 @@
1
- import { a as OpenapiFormDataType } from "./index-FrsEkDvX.js";
1
+ import { a as OpenapiFormDataType } from "./index-DcKc3_Y1.js";
2
2
  /**
3
3
  * This file was auto-generated by openapi-typescript.
4
4
  * Do not make direct changes to the file.
@@ -456,4 +456,4 @@ type WriteTableInput = Omit<WriteTableFormData, 'data'> & {
456
456
  file: File;
457
457
  };
458
458
  export { WriteTableInput as n, UploadFileInput as t };
459
- //# sourceMappingURL=types-DbthI3r-.d.ts.map
459
+ //# sourceMappingURL=types-DaRxZt3v.d.ts.map
@@ -1,4 +1,4 @@
1
- import { c as OpenapiQueryType, l as OpenapiReturnType, r as OpenapiBodyType, s as OpenapiPathType } from "./index-FrsEkDvX.js";
1
+ import { c as OpenapiQueryType, l as OpenapiReturnType, r as OpenapiBodyType, s as OpenapiPathType } from "./index-DcKc3_Y1.js";
2
2
  /**
3
3
  * This file was auto-generated by openapi-typescript.
4
4
  * Do not make direct changes to the file.
@@ -4455,4 +4455,4 @@ type GetArtifactPath = OpenapiPathType<paths['/api/artifacts/{id}']['get']>;
4455
4455
  type ArtifactResponse = OpenapiReturnType<paths['/api/artifacts/{id}']['get']>;
4456
4456
  type ArtifactListResponse = OpenapiReturnType<paths['/api/artifacts']['get']>;
4457
4457
  export { ChatWithMessages as a, GetChatPath as c, PrepareChatRequest as d, UsageResponse as f, ChatRequest as i, GetHistoryQuery as l, ArtifactListResponse as n, GetArtifactPath as o, VoteRequest as p, ArtifactResponse as r, GetArtifactsQuery as s, ApprovalBody as t, GetVotesQuery as u };
4458
- //# sourceMappingURL=types-DX1Dz0xK.d.ts.map
4458
+ //# sourceMappingURL=types-DgAMVyiT.d.ts.map
@@ -1,4 +1,4 @@
1
- import { c as OpenapiQueryType } from "./index-FrsEkDvX.js";
1
+ import { c as OpenapiQueryType } from "./index-DcKc3_Y1.js";
2
2
  import { t as Backend } from "./backends-BHotIdL0.js";
3
3
  /**
4
4
  * This file was auto-generated by openapi-typescript.
@@ -270,6 +270,19 @@ type components = {
270
270
  /** Status */
271
271
  status: string;
272
272
  };
273
+ /**
274
+ * TableDefinition
275
+ * @description The part of the native Storage table definition that the lineage nodes carry.
276
+ */
277
+ TableDefinition: {
278
+ /**
279
+ * Description
280
+ * @description The native table description, the value the Keboola UI shows.
281
+ */
282
+ description?: string | null;
283
+ } & {
284
+ [key: string]: unknown;
285
+ };
273
286
  /** TableLineageApiResp */
274
287
  TableLineageApiResp: {
275
288
  graph: components['schemas']['TableLineageGraph'];
@@ -360,6 +373,8 @@ type components = {
360
373
  columnMetadata?: {
361
374
  [key: string]: components['schemas']['Metadata'][];
362
375
  } | null;
376
+ /** @description Carries the native table `description`; it replaces the `KBC.description` metadata entry, which is no longer served. */
377
+ definition?: components['schemas']['TableDefinition'] | null;
363
378
  /** @description Set when this table is an alias of another table. */
364
379
  sourceTable?: components['schemas']['SourceTableRef'] | null;
365
380
  /** Rowscount */
@@ -607,4 +622,4 @@ type LineageTable = components['schemas']['TableNode'] & {
607
622
  dataSizeBytes?: number | null;
608
623
  };
609
624
  export { LineageMetadata as a, LineageTable as c, ProjectsLineageResponse as d, TableLineageRelation as f, components as h, LineageConfiguration as i, ProjectLineageRelation as l, TablesLineageResponse as m, GetTablesLineageQuery as n, LineageProject as o, TablesLineage as p, LineageBucket as r, LineageSource as s, GetProjectsLineageQuery as t, ProjectsLineage as u };
610
- //# sourceMappingURL=types-Cr6WA6CN.d.ts.map
625
+ //# sourceMappingURL=types-DhE7iY90.d.ts.map
@@ -1,4 +1,4 @@
1
- import { c as OpenapiQueryType, l as OpenapiReturnType, r as OpenapiBodyType, s as OpenapiPathType } from "./index-FrsEkDvX.js";
1
+ import { c as OpenapiQueryType, l as OpenapiReturnType, r as OpenapiBodyType, s as OpenapiPathType } from "./index-DcKc3_Y1.js";
2
2
  /**
3
3
  * This file was auto-generated by openapi-typescript.
4
4
  * Do not make direct changes to the file.
@@ -1404,4 +1404,4 @@ type PostSqlSessionLoadBody = OpenapiBodyType<paths['/sql/sessions/{id}/load']['
1404
1404
  type PostSqlSessionUnloadPath = OpenapiPathType<paths['/sql/sessions/{id}/unload']['post']>;
1405
1405
  type PostSqlSessionUnloadBody = OpenapiBodyType<paths['/sql/sessions/{id}/unload']['post']>;
1406
1406
  export { components as C, SqlSession as S, SessionSchema as _, GetSqlSessionTableDdlPath as a, SessionSchemaDatabase as b, PostSqlRunQueryBody as c, PostSqlSessionLoadPath as d, PostSqlSessionUnloadBody as f, Session as g, PostSqlTablePreviewPath as h, GetSqlSessionSchemaQuery as i, PostSqlRunQueryPath as l, PostSqlTablePreviewBody as m, GetSqlSessionPath as n, GetSqlSessionTableDdlQuery as o, PostSqlSessionUnloadPath as p, GetSqlSessionSchemaPath as r, GetSqlSessionsQuery as s, CreateSqlSessionBody as t, PostSqlSessionLoadBody as u, SessionSchemaBucket as v, SessionSchemaTable as x, SessionSchemaColumn as y };
1407
- //# sourceMappingURL=types-B6JcEPEu.d.ts.map
1407
+ //# sourceMappingURL=types-DiXeO0yB.d.ts.map
@@ -1,5 +1,5 @@
1
- import { S as MetaObject, i as CreateMetaObjectInput } from "./types-CIlBSV99.cjs";
2
- import { n as createMetastoreClient } from "./index-CNJBmCHM.cjs";
1
+ import { S as MetaObject, i as CreateMetaObjectInput } from "./types-CF5ZROX5.cjs";
2
+ import { n as createMetastoreClient } from "./index-DXNRd61K.cjs";
3
3
  type MetastoreClient = ReturnType<typeof createMetastoreClient>;
4
4
  type TagData = {
5
5
  name: string;
@@ -27,4 +27,4 @@ type UpdateMetaObjectMetaDataInput = {
27
27
  name?: string;
28
28
  };
29
29
  export { TagWithBindings as a, TagData as i, MetastoreClient as n, UpdateMetaObjectMetaDataInput as o, TagBindingData as r, CreateMetaObjectMetaDataInput as t };
30
- //# sourceMappingURL=types-CKdNf_2k.d.cts.map
30
+ //# sourceMappingURL=types-DslO1S5E.d.cts.map
@@ -1,4 +1,4 @@
1
- import { c as OpenapiQueryType, l as OpenapiReturnType, n as ArrayElement, r as OpenapiBodyType } from "./index-FrsEkDvX.cjs";
1
+ import { c as OpenapiQueryType, l as OpenapiReturnType, n as ArrayElement, r as OpenapiBodyType } from "./index-DcKc3_Y1.cjs";
2
2
  /**
3
3
  * This file was auto-generated by openapi-typescript.
4
4
  * Do not make direct changes to the file.
@@ -3007,4 +3007,4 @@ type LoginResult = OpenapiReturnType<paths['/auth/login']['post']>;
3007
3007
  type RefreshTokensResult = OpenapiReturnType<paths['/auth/token']['get']>;
3008
3008
  type MfaSetupResult = OpenapiReturnType<paths['/auth/mfa']['post']>;
3009
3009
  export { ResetPasswordConfirmInput as A, UserRequest as B, MfaConfirmInput as C, Profile as D, PaginationQuery as E, UpdateAppAsAdminInput as F, paths as G, VendorListItem as H, UpdateAppInput as I, UpdateVendorAsAdminInput as L, ServiceIndex as M, SignUpInput as N, RefreshTokensResult as O, Stack as P, UpdateVendorInput as R, LoginSuccess as S, MfaSetupResult as T, Version as U, Vendor as V, components as W, GetVendorUsersQuery as _, AppRepository as a, LoginInput as b, ConfirmAccountInput as c, CreateVendorAsAdminInput as d, CreateVendorInput as f, GetChangesQuery as g, GetAppsQuery as h, AppChange as i, ServiceAccount as j, RejectAppInput as k, CreateAppInput as l, DeveloperPortalError as m, AdminVendor as n, AppVendor as o, DeprecateAppInput as p, App as r, ApproveVendorInput as s, AdminPaginationQuery as t, CreateServiceAccountInput as u, IconUploadLink as v, MfaSetupInput as w, LoginResult as x, LoginChallenge as y, User as z };
3010
- //# sourceMappingURL=types-Cf0WE6qK.d.cts.map
3010
+ //# sourceMappingURL=types-DtS7qAdz.d.cts.map
@@ -1,4 +1,4 @@
1
- import { c as OpenapiQueryType, l as OpenapiReturnType, r as OpenapiBodyType, s as OpenapiPathType } from "./index-FrsEkDvX.cjs";
1
+ import { c as OpenapiQueryType, l as OpenapiReturnType, r as OpenapiBodyType, s as OpenapiPathType } from "./index-DcKc3_Y1.cjs";
2
2
  /**
3
3
  * This file was auto-generated by openapi-typescript.
4
4
  * Do not make direct changes to the file.
@@ -3856,4 +3856,4 @@ type RemoveWebauthnPath = OpenapiPathType<paths['/v1/auth/webauthn/{id}']['delet
3856
3856
  type RemoveWebauthnQuery = NonNullable<OpenapiQueryType<paths['/v1/auth/webauthn/{id}']['delete']>>;
3857
3857
  type RemoveWebauthnInput = RemoveWebauthnPath & RemoveWebauthnQuery;
3858
3858
  export { CreateDeviceAuthorizationBody as $, PatScopeInput as A, GetMeMaintainersResult as B, GetPkceTokenResult as C, ExchangePatBodyRaw as D, CreatePatResult as E, TotpVerifyResult as F, MeMaintainer as G, GetMeOrganizationsResult as H, VerifyMfaBody as I, MeResult as J, MeOrganization as K, VerifyMfaResult as L, DisableTotpPath as M, RegenerateRecoveryCodesResult as N, ExchangePatInput as O, TotpSetupResult as P, ApproveDeviceAuthorizationResult as Q, VerifyMfaType as R, GetPkceTokenBody as S, CreatePatInput as T, GetMeProjectsQuery as U, GetMeOrganizationsQuery as V, GetMeProjectsResult as W, LoginBody as X, MeUser as Y, ApproveDeviceAuthorizationBody as Z, RevokeSessionPath as _, RemoveWebauthnInput as a, InitiateSamlBody as b, IntrospectTokenResult as c, RefreshTokenResult as d, CreateDeviceAuthorizationResult as et, RevokeTokenBody as f, SudoResult as g, SudoChallengeResult as h, RegisterWebauthnResult as i, paths as it, RevokePatPath as j, ListPatsResult as k, RefreshTokenBody as l, SudoBodyRaw as m, RegisterWebauthnInput as n, GetDeviceAuthorizationTokenResult as nt, RemoveWebauthnPath as o, SudoBody as p, MeProject as q, RegisterWebauthnOptionsResult as r, components as rt, RemoveWebauthnQuery as s, ListWebauthnCredentialsResult as t, GetDeviceAuthorizationTokenBody as tt, RefreshTokenPartialBody as u, AssertSamlBody as v, CreatePatBodyRaw as w, InitiateSamlResult as x, AssertSamlResult as y, GetMeMaintainersQuery as z };
3859
- //# sourceMappingURL=types-C5B3Pfob.d.cts.map
3859
+ //# sourceMappingURL=types-DykEfF2N.d.cts.map
@@ -1,5 +1,5 @@
1
- import { S as MetaObject, i as CreateMetaObjectInput } from "./types-Bp8G9yta.js";
2
- import { n as createMetastoreClient } from "./index-BVe4S2CK.js";
1
+ import { S as MetaObject, i as CreateMetaObjectInput } from "./types-D4knWlwr.js";
2
+ import { n as createMetastoreClient } from "./index-B2YNTI4p.js";
3
3
  type MetastoreClient = ReturnType<typeof createMetastoreClient>;
4
4
  type TagData = {
5
5
  name: string;
@@ -27,4 +27,4 @@ type UpdateMetaObjectMetaDataInput = {
27
27
  name?: string;
28
28
  };
29
29
  export { TagWithBindings as a, TagData as i, MetastoreClient as n, UpdateMetaObjectMetaDataInput as o, TagBindingData as r, CreateMetaObjectMetaDataInput as t };
30
- //# sourceMappingURL=types-DSWIIMdv.d.ts.map
30
+ //# sourceMappingURL=types-EdL0Eb0B.d.ts.map
@@ -1,5 +1,5 @@
1
- import { n as createMetastoreClient } from "./index-BVe4S2CK.js";
2
- import { t as MetastoreObject } from "./metaObject-ClvW342q.js";
1
+ import { n as createMetastoreClient } from "./index-B2YNTI4p.js";
2
+ import { t as MetastoreObject } from "./metaObject-qWyZAD-5.js";
3
3
  /**
4
4
  * The metastore's row- and column-level security vocabulary, schema version 1.2.0.
5
5
  *
@@ -82,4 +82,4 @@ type SecurityPolicyReadData = {
82
82
  };
83
83
  type SecurityPolicy = MetastoreObject<SecurityPolicyReadData>;
84
84
  export { RLS_COMPARISON_OPS as _, PolicySelector as a, SECURITY_POLICY_TYPES as b, RlsIdentityGroups as c, RlsRule as d, SecurityPolicy as f, POLICY_SQL_DIALECTS as g, SecurityPolicyType as h, PolicyDialect as i, RlsLiteral as l, SecurityPolicyReadData as m, ClsRule as n, RlsCondition as o, SecurityPolicyDataMap as p, MetastoreClient as r, RlsIdentityEmail as s, ClsPolicyData as t, RlsPolicyData as u, RLS_LIST_OPS as v, RLS_NULL_OPS as y };
85
- //# sourceMappingURL=types-DK1bSUNr.d.ts.map
85
+ //# sourceMappingURL=types-Foy0RnqF.d.ts.map
@@ -1,4 +1,4 @@
1
- import { a as OpenapiFormDataType } from "./index-FrsEkDvX.cjs";
1
+ import { a as OpenapiFormDataType } from "./index-DcKc3_Y1.cjs";
2
2
  /**
3
3
  * This file was auto-generated by openapi-typescript.
4
4
  * Do not make direct changes to the file.
@@ -456,4 +456,4 @@ type WriteTableInput = Omit<WriteTableFormData, 'data'> & {
456
456
  file: File;
457
457
  };
458
458
  export { WriteTableInput as n, UploadFileInput as t };
459
- //# sourceMappingURL=types-BEw98Dd2.d.cts.map
459
+ //# sourceMappingURL=types-LOf_GCej.d.cts.map
@@ -1,4 +1,4 @@
1
- import { c as OpenapiQueryType, l as OpenapiReturnType, r as OpenapiBodyType, s as OpenapiPathType } from "./index-FrsEkDvX.js";
1
+ import { c as OpenapiQueryType, l as OpenapiReturnType, r as OpenapiBodyType, s as OpenapiPathType } from "./index-DcKc3_Y1.js";
2
2
  import { z } from "zod";
3
3
  /**
4
4
  * This file was auto-generated by openapi-typescript.
@@ -1627,4 +1627,4 @@ type ToolPermissionValue = components['schemas']['ToolPermissionValue'];
1627
1627
  type ToolInfo = components['schemas']['ToolInfo'];
1628
1628
  type ToolsListResponse = components['schemas']['ToolsListResponse'];
1629
1629
  export { components as A, UserAgentSettings as C, VotesResponse as D, VoteRequest as E, approvalGoneReasonSchema as O, UsageResponse as S, Vote as T, ToolInfo as _, ChatMessage as a, UpdateAgentSettingsRequest as b, ChatWithMessages as c, GetVotesQuery as d, HistoryResponse as f, TextPart as g, ProjectToolPolicyValue as h, Chat as i, askUserQuestionAnswersSchema as k, GetChatPath as l, ProjectToolPolicy as m, ApprovalGoneReason as n, ChatRequest as o, MessageStatus as p, AskUserQuestionAnswers as r, ChatWithMessage as s, AgentSettings as t, GetHistoryQuery as u, ToolPermissionValue as v, UserMessage as w, UpdateUserAgentSettingsRequest as x, ToolsListResponse as y };
1630
- //# sourceMappingURL=types-OHt0D_f2.d.ts.map
1630
+ //# sourceMappingURL=types-lZRyNwOH.d.ts.map
@@ -1,4 +1,4 @@
1
- import { l as OpenapiReturnType, r as OpenapiBodyType } from "./index-FrsEkDvX.js";
1
+ import { l as OpenapiReturnType, r as OpenapiBodyType } from "./index-DcKc3_Y1.js";
2
2
  /**
3
3
  * This file was auto-generated by openapi-typescript.
4
4
  * Do not make direct changes to the file.
@@ -282,4 +282,4 @@ type components = {
282
282
  type GetProvisioningTokenBody = NonNullable<OpenapiBodyType<paths['/token']['post']>>;
283
283
  type ProvisioningToken = OpenapiReturnType<paths['/token']['post']>;
284
284
  export { ProvisioningToken as n, GetProvisioningTokenBody as t };
285
- //# sourceMappingURL=types-CepTvkfm.d.ts.map
285
+ //# sourceMappingURL=types-p6UYqJo_.d.ts.map
@@ -1,2 +1,2 @@
1
- import { t as createVaultClient } from "../index-iFCann29.cjs";
1
+ import { t as createVaultClient } from "../index-RHYdFrfn.cjs";
2
2
  export { createVaultClient };
@@ -1,2 +1,2 @@
1
- import { t as createVaultClient } from "../index-CEDjFidH.js";
1
+ import { t as createVaultClient } from "../index-B30dBBBH.js";
2
2
  export { createVaultClient };
@@ -1,2 +1,2 @@
1
- import { a as GetVariablesQuery, i as GetVariablesByBranchId, n as CreateVariableBody, o as VariableWithHash, r as DeleteVariablePath, t as AnyVariable } from "../types-B6f6LpZ_.cjs";
1
+ import { a as GetVariablesQuery, i as GetVariablesByBranchId, n as CreateVariableBody, o as VariableWithHash, r as DeleteVariablePath, t as AnyVariable } from "../types--mz2z0Zm.cjs";
2
2
  export { AnyVariable, CreateVariableBody, DeleteVariablePath, GetVariablesByBranchId, GetVariablesQuery, VariableWithHash };
@@ -1,2 +1,2 @@
1
- import { a as GetVariablesQuery, i as GetVariablesByBranchId, n as CreateVariableBody, o as VariableWithHash, r as DeleteVariablePath, t as AnyVariable } from "../types-CTYTMXXj.js";
1
+ import { a as GetVariablesQuery, i as GetVariablesByBranchId, n as CreateVariableBody, o as VariableWithHash, r as DeleteVariablePath, t as AnyVariable } from "../types-DPFG6AAA.js";
2
2
  export { AnyVariable, CreateVariableBody, DeleteVariablePath, GetVariablesByBranchId, GetVariablesQuery, VariableWithHash };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@keboola/api-client",
3
- "version": "55.0.0",
3
+ "version": "56.0.0",
4
4
  "description": "TypeScript SDK for Keboola APIs",
5
5
  "license": "MIT",
6
6
  "type": "module",
@@ -202,6 +202,11 @@ Part of the [`@keboola/api-client` surface index](../API-SURFACE.md).
202
202
 
203
203
  - `api.storage.stats.getRunIdStats(query: { runId: string; }, signal?: AbortSignal | undefined): Promise<{ tables: { import: { totalCount: number; tables: { id: string; count: number; durationTotalSeconds: number; }[]; }; export: { totalCount: number; tables: { id: string; count: number; durationTotalSeconds: number; }[]; }; }; files: { total: { count: number; dataSizeBytes: { total: number; mean: number | null; max: number | null; min: number | null; }; }; tags: { other: number; tags: { tag: string; count: number; dataSizeBytes: { total: number; mean: number | null; max: number | null; min: number | null; }; }[]; }; }; }>`
204
204
 
205
+ ### `api.storage.tableList`
206
+
207
+ - `api.storage.tableList.getAllTables<const I extends readonly TableListInclude[] = []>(input: GetAllTableListInput<I>, signal?: AbortSignal | undefined): Promise<TableListWith<I>[]>`
208
+ - `api.storage.tableList.getTables<const I extends readonly TableListInclude[] = []>({ branchId, include, filter, limit, after }: GetTableListInput<I>, signal?: AbortSignal | undefined): Promise<TableListPage<I>>`
209
+
205
210
  ### `api.storage.tables`
206
211
 
207
212
  - `api.storage.tables.createAliasTable({ branchId, bucketId, ...body }: CreateAliasTableInput, signal?: AbortSignal | undefined): Promise<Table | CreateAliasJob>`
@@ -1 +0,0 @@
1
- {"version":3,"file":"authClient-BM4L8XEN.js","names":["z","z","z","z"],"sources":["../src/clients/auth/device/device.ts","../src/clients/auth/login/schemas.ts","../src/clients/auth/login/login.ts","../src/clients/auth/manageTokens/manageTokens.ts","../src/utils/async/collectByCursor.ts","../src/clients/auth/me/me.ts","../src/clients/auth/mfa/schemas.ts","../src/clients/auth/mfa/mfa.ts","../src/clients/auth/password/schemas.ts","../src/clients/auth/password/password.ts","../src/clients/auth/pat/pat.ts","../src/clients/auth/pkce/pkce.ts","../src/clients/auth/saml/saml.ts","../src/clients/auth/session/session.ts","../src/clients/auth/sudo/sudo.ts","../src/clients/auth/token/schemas.ts","../src/clients/auth/token/token.ts","../src/clients/auth/webauthn/webauthn.ts","../src/clients/auth/authClient.ts"],"sourcesContent":["import type { AuthOpenApiFetchClient } from '../authClient';\n\nimport type {\n ApproveDeviceAuthorizationBody,\n CreateDeviceAuthorizationBody,\n GetDeviceAuthorizationTokenBody,\n} from './types';\n\nexport const createDevice = (client: AuthOpenApiFetchClient) => {\n const create = async (body: CreateDeviceAuthorizationBody, signal?: AbortSignal) => {\n const { data } = await client.post('/v1/auth/device', { body }, { signal });\n return data;\n };\n\n const approve = async (body: ApproveDeviceAuthorizationBody, signal?: AbortSignal) => {\n const { data } = await client.post('/v1/auth/device/approve', { body }, { signal });\n return data;\n };\n\n const getToken = async (body: GetDeviceAuthorizationTokenBody, signal?: AbortSignal) => {\n const { data } = await client.post('/v1/auth/device/token', { body }, { signal });\n return data;\n };\n\n return { create, approve, getToken };\n};\n","import * as z from 'zod';\n\nconst loginInputSchema = z.object({\n /** Also mints a session cookie; `Origin` must be the stack app URL, else 403. */\n browserMode: z.boolean().default(false),\n});\n\nexport const passwordInputSchema = loginInputSchema.extend({\n email: z.email(),\n password: z.string().min(1, 'Required'),\n});\n\nexport const oidcInputSchema = loginInputSchema.extend({\n grantType: z.enum(['google', 'microsoft']),\n idToken: z.string().min(1, 'Required'),\n});\n\n// No `browserMode`: as `boolean` it would widen the result; the method signature keeps the literal.\nexport type PasswordInput = Omit<z.input<typeof passwordInputSchema>, 'browserMode'>;\nexport type OidcInput = Omit<z.input<typeof oidcInputSchema>, 'browserMode'>;\n\nconst userSchema = z.object({\n id: z.number(),\n email: z.string(),\n name: z.string(),\n});\n\n// The backend omits `mfaRequired` on success; the `false` default makes it the union discriminant.\nconst loginSuccessBaseSchema = z.object({\n mfaRequired: z.literal(false).default(false),\n accessToken: z.string(),\n tokenType: z.string(),\n expiresIn: z.number(),\n user: userSchema,\n sessionId: z.string(),\n});\n\nexport const apiLoginSuccessSchema = loginSuccessBaseSchema.extend({\n refreshToken: z.string(),\n});\n\nexport const browserLoginSuccessSchema = loginSuccessBaseSchema.extend({\n refreshToken: z.null().optional(),\n});\n\n/**\n * MFA-challenge shape.\n *\n * - `mfaType` / `allowedMethods` stay `string` so a new method still parses.\n * - `webauthn` is `PublicKeyCredentialRequestOptionsJSON`: present, `null` or absent (TOTP).\n * - `unknown`: a stricter shape failing would block every MFA sign-in; the ceremony validates.\n */\nexport const mfaChallengeSchema = z.object({\n mfaRequired: z.literal(true),\n mfaType: z.string(),\n mfaToken: z.string(),\n expiresIn: z.number(),\n allowedMethods: z.array(z.string()),\n // zod 4 `z.unknown()` is not implicitly optional; TOTP challenges omit the key.\n webauthn: z.unknown().optional(),\n});\n\nexport const apiLoginResultSchema = z.union([apiLoginSuccessSchema, mfaChallengeSchema]);\nexport const browserLoginResultSchema = z.union([browserLoginSuccessSchema, mfaChallengeSchema]);\n\nexport type LoginUser = z.infer<typeof userSchema>;\nexport type MfaChallenge = z.infer<typeof mfaChallengeSchema>;\nexport type ApiLoginSuccess = z.infer<typeof apiLoginSuccessSchema>;\nexport type BrowserLoginSuccess = z.infer<typeof browserLoginSuccessSchema>;\nexport type ApiLoginResult = z.infer<typeof apiLoginResultSchema>;\nexport type BrowserLoginResult = z.infer<typeof browserLoginResultSchema>;\n\nexport type LoginResultFor<Browser extends boolean> = Browser extends true\n ? BrowserLoginResult\n : ApiLoginResult;\n","import type { AuthOpenApiFetchClient } from '../authClient';\n\nimport type { LoginResultFor, OidcInput, PasswordInput } from './schemas';\nimport {\n apiLoginResultSchema,\n browserLoginResultSchema,\n oidcInputSchema,\n passwordInputSchema,\n} from './schemas';\nimport type { LoginBody } from './types';\n\nexport const createLogin = (client: AuthOpenApiFetchClient) => {\n const _login = async (body: LoginBody, signal?: AbortSignal) => {\n const { data } = await client.post('/v1/auth/login', { body }, { signal });\n return data;\n };\n\n /**\n * Grants parse with our own schemas — the generated response type is unreliable.\n *\n * - `browserMode` picks the schema: only API mode carries a refresh token.\n * - `const Browser` keeps the literal; a `boolean` flag widens the result to the union.\n */\n const withPassword = async <const Browser extends boolean = false>(\n input: Omit<PasswordInput, 'browserMode'> & { browserMode?: Browser },\n signal?: AbortSignal,\n ) => {\n const { email, password, browserMode } = passwordInputSchema.parse(input);\n // Cast: omit fields outside the grant — the backend rejects null.\n const data = await _login(\n { grantType: 'password', email, password, browserMode } as LoginBody,\n signal,\n );\n const schema = browserMode ? browserLoginResultSchema : apiLoginResultSchema;\n return schema.parse(data) as LoginResultFor<Browser>;\n };\n\n const withOidc = async <const Browser extends boolean = false>(\n input: Omit<OidcInput, 'browserMode'> & { browserMode?: Browser },\n signal?: AbortSignal,\n ) => {\n const { grantType, idToken, browserMode } = oidcInputSchema.parse(input);\n // Cast: omit fields outside the grant — the backend rejects null.\n const data = await _login({ grantType, idToken, browserMode } as LoginBody, signal);\n const schema = browserMode ? browserLoginResultSchema : apiLoginResultSchema;\n return schema.parse(data) as LoginResultFor<Browser>;\n };\n\n // Unauthenticated. Carries the public OAuth client ids `withOidc` callers mint an id token with.\n const methods = async (signal?: AbortSignal) => {\n const { data } = await client.get('/v1/auth/methods', {}, { signal });\n return data;\n };\n\n return { withPassword, withOidc, methods };\n};\n","import type { AuthOpenApiFetchClient } from '../authClient';\n\nimport type { CreateManageTokenInput, RevokeManageTokenPath } from './types';\n\nexport const createManageTokens = (client: AuthOpenApiFetchClient) => {\n /**\n * Every Manage API token the caller owns, in two lists.\n *\n * - `tokens` — the ones the caller created by hand, newest first.\n * - `sessionTokens` — the ones a browser sign-in minted, newest first.\n * - A token carries `scopes: []` when it merely inherits the caller's own permissions.\n */\n const getAll = async (signal?: AbortSignal) => {\n const { data } = await client.get('/v1/auth/manage-tokens', {}, { signal });\n return data;\n };\n\n /**\n * Mint a token and read its secret.\n *\n * - `token` in the response is returned this once and is unreadable afterwards.\n * - `manageToken` is the same row the list endpoint returns.\n * - Needs an active sudo window; without one the endpoint answers `403`.\n * - Rate-limited per caller, answering `429` with `Retry-After`.\n */\n const create = async (input: CreateManageTokenInput, signal?: AbortSignal) => {\n const { data } = await client.post('/v1/auth/manage-tokens', { body: input }, { signal });\n return data;\n };\n\n /** Deleting an id that is already gone answers `404` — the call is not idempotent. */\n const revoke = async (id: RevokeManageTokenPath['id'], signal?: AbortSignal) => {\n await client.delete('/v1/auth/manage-tokens/{id}', { path: { id } }, { signal });\n };\n\n return { getAll, create, revoke };\n};\n","import { createAbortError } from '../createAbortError';\n\n/** One page of a cursor-paginated collection (`data` / `meta` / `links` envelope). */\nexport type CursorPage<T> = { data: T[]; links: { next: string | null } };\n\nexport type CollectByCursorOptions<T> = {\n fetchFrom: (\n after: string | undefined,\n pageSize?: number,\n signal?: AbortSignal,\n ) => Promise<CursorPage<T>>;\n pageSize?: number;\n limit?: number;\n signal?: AbortSignal;\n};\n\n/**\n * The `page[after]` cursor `links.next` carries; `undefined` on the last page.\n *\n * - Read from the link, not rebuilt from the last row, so the encoding stays the server's.\n * - Only the query is parsed, so a relative link works too.\n */\nexport const nextCursorOf = (next: string | null): string | undefined => {\n if (next === null) return undefined;\n const queryStart = next.indexOf('?');\n if (queryStart === -1) return undefined;\n const query = next.slice(queryStart + 1).split('#')[0];\n return new URLSearchParams(query).get('page[after]') ?? undefined;\n};\n\n/**\n * Collects items from a cursor-paginated endpoint — up to `limit`, or all when it is omitted.\n *\n * - Calls `fetchFrom` sequentially with the cursor each `links.next` carries, and hands it `pageSize`.\n * - Ends on a `null` `links.next`, or on a link without a `page[after]`.\n * - A cursor seen before means the server is looping; the walk throws rather than spin.\n */\nexport const collectByCursor = async <T>({\n fetchFrom,\n pageSize,\n limit,\n signal,\n}: CollectByCursorOptions<T>): Promise<T[]> => {\n if (signal?.aborted) throw createAbortError(signal.reason);\n if (limit !== undefined && limit < 0) throw new Error('Invalid collectByCursor limit');\n if (pageSize !== undefined && pageSize < 1) throw new Error('Invalid collectByCursor pageSize');\n\n const items: T[] = [];\n\n if (limit === 0) return items;\n\n let after: string | undefined;\n const seen = new Set<string>();\n\n do {\n const page = await fetchFrom(after, pageSize, signal);\n\n items.push(...page.data);\n\n if (limit !== undefined && items.length >= limit) return items.slice(0, limit);\n\n after = nextCursorOf(page.links.next);\n if (after !== undefined) {\n if (seen.has(after)) {\n throw new Error(`collectByCursor: links.next repeats the cursor ${after}`);\n }\n seen.add(after);\n }\n } while (after !== undefined);\n\n return items;\n};\n","import { collectByCursor } from '../../../utils';\nimport type { AuthOpenApiFetchClient } from '../authClient';\n\nimport type { GetMeMaintainersQuery, GetMeOrganizationsQuery, GetMeProjectsQuery } from './types';\n\n// Connection's `app.auth.me.page.max_limit` (`config/packages/auth_me.yaml`); above it the request is a 400.\nconst PAGE_LIMIT = 200;\n\n/**\n * The signed-in user and the organizations, maintainers and projects they reach.\n *\n * - Session-only: a PAT bearer answers `403`.\n * - `404` while the stack's `programmatic-auth` feature is off.\n */\nexport const createMe = (client: AuthOpenApiFetchClient) => {\n /** Each collection is a counted preview — its first page; the rest is behind the paged methods. */\n const get = async (signal?: AbortSignal) => {\n const { data } = await client.get('/v1/auth/me', {}, { signal });\n return data;\n };\n\n const getOrganizations = async (query?: GetMeOrganizationsQuery, signal?: AbortSignal) => {\n const { data } = await client.get('/v1/auth/me/organizations', { query }, { signal });\n return data;\n };\n\n const getMaintainers = async (query?: GetMeMaintainersQuery, signal?: AbortSignal) => {\n const { data } = await client.get('/v1/auth/me/maintainers', { query }, { signal });\n return data;\n };\n\n const getProjects = async (query?: GetMeProjectsQuery, signal?: AbortSignal) => {\n const { data } = await client.get('/v1/auth/me/projects', { query }, { signal });\n return data;\n };\n\n /** Every organization the caller reaches, across all pages. */\n const getAllOrganizations = (signal?: AbortSignal) =>\n collectByCursor({\n pageSize: PAGE_LIMIT,\n signal,\n fetchFrom: (after, limit, pageSignal) =>\n getOrganizations({ page: { limit, after } }, pageSignal),\n });\n\n /** Every project the caller can open, across all pages. */\n const getAllProjects = (signal?: AbortSignal) =>\n collectByCursor({\n pageSize: PAGE_LIMIT,\n signal,\n fetchFrom: (after, limit, pageSignal) => getProjects({ page: { limit, after } }, pageSignal),\n });\n\n return {\n get,\n getOrganizations,\n getMaintainers,\n getProjects,\n getAllOrganizations,\n getAllProjects,\n };\n};\n","import * as z from 'zod';\n\nimport type { VerifyMfaType } from './types';\n\n/**\n * Methods `POST /v1/auth/mfa` accepts, also reported in a challenge's `mfaType` / `allowedMethods`.\n *\n * - `satisfies` fails the build if the generated spec renames or drops one.\n * - A challenge may name a method not listed here, so the wire fields stay `string`.\n */\nexport const MFA_METHOD = {\n totp: 'totp',\n webauthn: 'webauthn',\n recoveryCode: 'recovery_code',\n} as const satisfies Record<string, VerifyMfaType>;\n\nexport type MfaMethod = (typeof MFA_METHOD)[keyof typeof MFA_METHOD];\n\nexport const mfaCodeInputSchema = z.object({\n mfaToken: z.string(),\n type: z.enum([MFA_METHOD.totp, MFA_METHOD.recoveryCode]),\n code: z.string().min(1, 'Required'),\n});\n\nexport const mfaWebauthnInputSchema = z.object({\n mfaToken: z.string(),\n assertion: z.string(),\n});\n\nexport const totpVerifyInputSchema = z.object({\n code: z.string().min(1, 'Required'),\n // Mirrors the backend default; the generated type wrongly marks it required.\n revokeOtherSessions: z.boolean().default(false),\n});\n\nexport type MfaCodeInput = z.infer<typeof mfaCodeInputSchema>;\nexport type MfaWebauthnInput = z.infer<typeof mfaWebauthnInputSchema>;\nexport type TotpVerifyInput = z.input<typeof totpVerifyInputSchema>;\n","import type { AuthOpenApiFetchClient } from '../authClient';\n\nimport type { MfaCodeInput, MfaWebauthnInput, TotpVerifyInput } from './schemas';\nimport {\n MFA_METHOD,\n mfaCodeInputSchema,\n mfaWebauthnInputSchema,\n totpVerifyInputSchema,\n} from './schemas';\nimport type { DisableTotpPath, VerifyMfaBody } from './types';\n\nexport const createMfa = (client: AuthOpenApiFetchClient) => {\n const _verify = async (body: VerifyMfaBody, signal?: AbortSignal) => {\n const { data } = await client.post('/v1/auth/mfa', { body }, { signal });\n return data;\n };\n\n const verifyWithCode = async (input: MfaCodeInput, signal?: AbortSignal) => {\n const { mfaToken, type, code } = mfaCodeInputSchema.parse(input);\n // Cast: omit fields outside the type — the backend rejects null.\n return _verify({ mfaToken, type, code } as VerifyMfaBody, signal);\n };\n\n const verifyWithWebauthn = async (input: MfaWebauthnInput, signal?: AbortSignal) => {\n const { mfaToken, assertion } = mfaWebauthnInputSchema.parse(input);\n // Cast: omit fields outside the type — the backend rejects null.\n return _verify({ mfaToken, type: MFA_METHOD.webauthn, assertion } as VerifyMfaBody, signal);\n };\n\n const regenerateRecoveryCodes = async (signal?: AbortSignal) => {\n const { data } = await client.post('/v1/auth/mfa/recovery-codes', {}, { signal });\n return data;\n };\n\n // TOTP enrollment for the signed-in user (account MFA management). `setup` returns the shared\n // secret + `otpauthUri` to render as a QR; `verify` confirms the first code and hands back the\n // one-time recovery codes plus the new factor `id`; `disable` removes a factor by that `id`.\n const totp = {\n setup: async (signal?: AbortSignal) => {\n const { data } = await client.post('/v1/auth/mfa/totp', {}, { signal });\n return data;\n },\n verify: async (input: TotpVerifyInput, signal?: AbortSignal) => {\n const body = totpVerifyInputSchema.parse(input);\n const { data } = await client.post('/v1/auth/mfa/totp/verify', { body }, { signal });\n return data;\n },\n disable: async (id: DisableTotpPath['id'], signal?: AbortSignal) => {\n await client.delete('/v1/auth/mfa/totp/{id}', { path: { id } }, { signal });\n },\n };\n\n return { verifyWithCode, verifyWithWebauthn, regenerateRecoveryCodes, totp };\n};\n","import * as z from 'zod';\n\nexport const resetRequestInputSchema = z.object({\n email: z.email(),\n});\n\nexport const resetInputSchema = z.object({\n // The single-use reset token (`kbc_pr_…`) delivered by e-mail.\n token: z.string().min(1, 'Required'),\n newPassword: z.string().min(1, 'Required'),\n // Defaults to true, matching the backend. Password policy is backend-enforced.\n revokeSessions: z.boolean().default(true),\n});\n\nexport const changeInputSchema = z.object({\n currentPassword: z.string().min(1, 'Required'),\n newPassword: z.string().min(1, 'Required'),\n // Defaults to true on parse, so the SDK always sends it (matches the backend default).\n revokeOtherSessions: z.boolean().default(true),\n});\n\nexport type ResetRequestInput = z.infer<typeof resetRequestInputSchema>;\n// `z.input`, not `z.infer`: callers may omit `revokeSessions`.\nexport type ResetInput = z.input<typeof resetInputSchema>;\n// `z.input`: callers may omit `revokeOtherSessions`.\nexport type ChangePasswordInput = z.input<typeof changeInputSchema>;\n","import type { AuthOpenApiFetchClient } from '../authClient';\n\nimport type { ChangePasswordInput, ResetInput, ResetRequestInput } from './schemas';\nimport { changeInputSchema, resetInputSchema, resetRequestInputSchema } from './schemas';\n\nexport const createPassword = (client: AuthOpenApiFetchClient) => {\n // Fire-and-forget from the caller's view: the backend always answers 202 and reveals nothing about\n // whether the account exists. Resolves on 202; rejects on 429 (rate limited) or 400.\n const resetRequest = async (input: ResetRequestInput, signal?: AbortSignal) => {\n const body = resetRequestInputSchema.parse(input);\n await client.post('/v1/auth/password/reset-request', { body }, { signal });\n };\n\n // Applies the new password for the given reset token. Resolves on 204; rejects on 400 (invalid or\n // expired token, or a password that violates the policy).\n const reset = async (input: ResetInput, signal?: AbortSignal) => {\n // `revokeSessions` is defaulted by the schema, so the parsed body always carries all three\n // fields the endpoint requires — no field omission, no type assertion.\n const body = resetInputSchema.parse(input);\n await client.post('/v1/auth/password/reset', { body }, { signal });\n };\n\n // Changes the password for the signed-in user (bearer session). Resolves on 204; rejects on 400\n // (wrong current password, or a new password that violates the policy). Password policy is\n // backend-enforced.\n const change = async (input: ChangePasswordInput, signal?: AbortSignal) => {\n const body = changeInputSchema.parse(input);\n await client.post('/v1/auth/password/change', { body }, { signal });\n };\n\n return { resetRequest, reset, change };\n};\n","import type { AuthOpenApiFetchClient } from '../authClient';\n\nimport type {\n CreatePatBodyRaw,\n CreatePatInput,\n ExchangePatBodyRaw,\n ExchangePatInput,\n PatScopeInput,\n RevokePatPath,\n} from './types';\n\n/**\n * Drop the keys whose value is `null` or `undefined`, and only those — an empty array or string is\n * a value the caller meant.\n *\n * The spec documents each optional PAT field as \"Omit (do not send `null`)\". Callers hold nullables\n * either way — an empty expiry picker, an untouched switch — so the rule lives here rather than at\n * every call site, where one of them would forget it.\n */\nconst withoutNullish = (entries: Record<string, unknown>): Record<string, unknown> =>\n Object.fromEntries(Object.entries(entries).filter(([, value]) => value != null));\n\n/** `undefined` for a scope that narrows nothing — which is what an absent `scope` already asks for. */\nconst toScope = (scope: PatScopeInput | null | undefined): Record<string, unknown> | undefined => {\n if (scope == null) return undefined;\n\n const payload = withoutNullish({ projects: scope.projects, readOnly: scope.readOnly });\n return Object.keys(payload).length > 0 ? payload : undefined;\n};\n\n// `as unknown as` at these two boundaries: `CreatePatBodyRaw` and `ExchangePatBodyRaw` both demand\n// the keys the endpoint documents as omittable, so the honest body is not expressible in either.\nconst toCreateBody = ({ name, expiresIn, scope }: CreatePatInput): CreatePatBodyRaw =>\n ({\n name,\n ...withoutNullish({ expiresIn, scope: toScope(scope) }),\n }) as unknown as CreatePatBodyRaw;\n\nconst toExchangeBody = ({ expiresIn, scope }: ExchangePatInput): ExchangePatBodyRaw =>\n withoutNullish({ expiresIn, scope: toScope(scope) }) as unknown as ExchangePatBodyRaw;\n\nexport const createPat = (client: AuthOpenApiFetchClient) => {\n const getAll = async (signal?: AbortSignal) => {\n const { data } = await client.get('/v1/auth/pat', {}, { signal });\n return data;\n };\n\n const create = async (input: CreatePatInput, signal?: AbortSignal) => {\n const { data } = await client.post('/v1/auth/pat', { body: toCreateBody(input) }, { signal });\n return data;\n };\n\n /**\n * Issue a child token from the one this request is authorized with.\n *\n * A child only ever attenuates its parent, so an empty input is a full-inheritance copy.\n */\n const exchange = async (input: ExchangePatInput = {}, signal?: AbortSignal) => {\n const { data } = await client.post(\n '/v1/auth/pat/exchange',\n { body: toExchangeBody(input) },\n { signal },\n );\n return data;\n };\n\n const revoke = async (id: RevokePatPath['id'], signal?: AbortSignal) => {\n await client.delete('/v1/auth/pat/{id}', { path: { id } }, { signal });\n };\n\n return { create, exchange, revoke, getAll };\n};\n","import type { AuthOpenApiFetchClient } from '../authClient';\n\nimport type { GetPkceTokenBody } from './types';\n\nexport const createPkce = (client: AuthOpenApiFetchClient) => {\n const getToken = async (body: GetPkceTokenBody, signal?: AbortSignal) => {\n const { data } = await client.post('/v1/auth/pkce/token', { body }, { signal });\n return data;\n };\n\n return { getToken };\n};\n","import type { AuthOpenApiFetchClient } from '../authClient';\n\nimport type { AssertSamlBody, InitiateSamlBody } from './types';\n\nexport const createSaml = (client: AuthOpenApiFetchClient) => {\n const assert = async (body: AssertSamlBody, signal?: AbortSignal) => {\n const { data } = await client.post('/v1/auth/saml/assert', { body }, { signal });\n return data;\n };\n\n const initiate = async (body?: InitiateSamlBody, signal?: AbortSignal) => {\n const { data } = await client.post('/v1/auth/saml/initiate', { body }, { signal });\n return data;\n };\n\n return { assert, initiate };\n};\n","import type { AuthOpenApiFetchClient } from '../authClient';\n\nimport type { RevokeSessionPath } from './types';\n\nexport const createSession = (client: AuthOpenApiFetchClient) => {\n const getAll = async (signal?: AbortSignal) => {\n const { data } = await client.get('/v1/auth/sessions', {}, { signal });\n return data;\n };\n\n const revoke = async (sessionId: RevokeSessionPath['sessionId'], signal?: AbortSignal) => {\n await client.delete('/v1/auth/sessions/{sessionId}', { path: { sessionId } }, { signal });\n };\n\n const revokeAll = async (signal?: AbortSignal) => {\n await client.delete('/v1/auth/sessions', {}, { signal });\n };\n\n return { getAll, revoke, revokeAll };\n};\n","import type { AuthOpenApiFetchClient } from '../authClient';\n\nimport type { SudoBody, SudoBodyRaw } from './types';\n\nexport const createSudo = (client: AuthOpenApiFetchClient) => {\n const verify = async (body: SudoBody, signal?: AbortSignal) => {\n // The generated request body (`SudoBodyRaw`) describes a payload the endpoint rejects — see the\n // `SudoBody` docs. Assert at this one boundary rather than making every caller send the invalid\n // shape; the real fix is the `#[OA\\Schema]`-vs-object mismatch on the backend, upstream of the\n // generated schema. Same pattern as `syncActionsClient`'s `PostActionsBodyRaw`.\n const { data } = await client.post(\n '/v1/auth/sudo',\n { body: body as unknown as SudoBodyRaw },\n { signal },\n );\n return data;\n };\n\n const challenge = async (signal?: AbortSignal) => {\n const { data } = await client.post('/v1/auth/sudo/challenge', {}, { signal });\n return data;\n };\n\n return { verify, challenge };\n};\n","import * as z from 'zod';\n\nexport const refreshTokenInputSchema = z.object({\n refreshToken: z.string().min(1, 'Required'),\n});\n\nexport const refreshSessionInputSchema = z.object({\n // The session id the login response carried. The refresh token itself stays in a server-side\n // channel bound to the session cookie, so the client never holds it.\n sessionId: z.string().min(1, 'Required'),\n});\n\nexport type RefreshTokenInput = z.infer<typeof refreshTokenInputSchema>;\nexport type RefreshSessionInput = z.infer<typeof refreshSessionInputSchema>;\n","import { HttpHeader } from '../../../fetchClient';\nimport { KeboolaHttpHeader } from '../../../internal';\nimport type { AuthOpenApiFetchClient } from '../authClient';\n\nimport type { RefreshSessionInput, RefreshTokenInput } from './schemas';\nimport { refreshSessionInputSchema, refreshTokenInputSchema } from './schemas';\nimport type { RefreshTokenBody, RefreshTokenPartialBody, RevokeTokenBody } from './types';\n\nexport const createToken = (client: AuthOpenApiFetchClient) => {\n const _refresh = async (\n body: RefreshTokenPartialBody,\n { signal, headers }: { signal?: AbortSignal; headers?: Record<string, string> } = {},\n ) => {\n const { data } = await client.post(\n '/v1/auth/token/refresh',\n { body: body as RefreshTokenBody },\n { signal, headers },\n );\n\n return data;\n };\n\n /** API mode: rotates the pair. The response carries the next refresh token. */\n const refreshWithToken = async (input: RefreshTokenInput, signal?: AbortSignal) => {\n const { refreshToken } = refreshTokenInputSchema.parse(input);\n return _refresh({ refreshToken }, { signal });\n };\n\n /**\n * Browser/cookie mode: renews the access token off the session cookie.\n *\n * - The `X-KBC-CSRF` header opts in; without it the request is API mode.\n * - Its value is a constant: its presence is the CSRF proof (custom headers need a preflight).\n * - No refresh token in the response; it stays server-side, bound to the cookie.\n * - Works only from the stack's own origin (fetch's default `same-origin` credentials).\n * - An `Authorization` header rejects the request — use a client with no auth middleware.\n */\n const refreshWithSession = async (input: RefreshSessionInput, signal?: AbortSignal) => {\n const { sessionId } = refreshSessionInputSchema.parse(input);\n return _refresh({ sessionId }, { signal, headers: { [KeboolaHttpHeader.CSRF]: '1' } });\n };\n\n /**\n * Introspects an authenticated session token.\n *\n * @param token - Optional token to introspect (`Authorization: Bearer`); a middleware-set header wins.\n */\n const introspect = async (token?: string, signal?: AbortSignal) => {\n const { data } = await client.get(\n '/v1/auth/token/introspect',\n {},\n { signal, headers: token ? { [HttpHeader.AUTHORIZATION]: `Bearer ${token}` } : undefined },\n );\n return data;\n };\n\n const revoke = async (body: RevokeTokenBody, signal?: AbortSignal) => {\n await client.post('/v1/auth/token/revoke', { body }, { signal });\n };\n\n return { refreshWithToken, refreshWithSession, introspect, revoke };\n};\n","import type { AuthOpenApiFetchClient } from '../authClient';\n\nimport type {\n RegisterWebauthnInput,\n RegisterWebauthnOptionsResult,\n RemoveWebauthnInput,\n} from './types';\n\nexport const createWebauthn = (client: AuthOpenApiFetchClient) => {\n const getAll = async (signal?: AbortSignal) => {\n const { data } = await client.get('/v1/auth/webauthn', {}, { signal });\n return data;\n };\n\n const registerOptions = async (signal?: AbortSignal) => {\n const { data } = await client.post('/v1/auth/webauthn/register/options', {}, { signal });\n // Cast: the spec types the free-form `options` object as `Record<string, never>`.\n return data as RegisterWebauthnOptionsResult;\n };\n\n const register = async (\n { credential, deviceName = null, revokeOtherSessions = false }: RegisterWebauthnInput,\n signal?: AbortSignal,\n ) => {\n const { data } = await client.post(\n '/v1/auth/webauthn/register',\n { body: { credential, deviceName, revokeOtherSessions } },\n { signal },\n );\n return data;\n };\n\n // `revokeOtherSessions` signs every other session out along with the credential — the calling\n // session and personal access tokens survive. Omitted means the backend's own `false`.\n const remove = async ({ id, ...query }: RemoveWebauthnInput, signal?: AbortSignal) => {\n await client.delete('/v1/auth/webauthn/{id}', { path: { id }, query }, { signal });\n };\n\n return { getAll, registerOptions, register, remove };\n};\n","import { createGenericFetchClient, createOpenapiFetchClient } from '../../fetchClient';\nimport type { ClientInitOptions } from '../types';\nimport { validateConnectionStatus } from '../validateConnectionStatus';\n\nimport type { paths } from './__generated__/schema';\nimport { createDevice } from './device';\nimport { createLogin } from './login';\nimport { createManageTokens } from './manageTokens';\nimport { createMe } from './me';\nimport { createMfa } from './mfa';\nimport { createPassword } from './password';\nimport { createPat } from './pat';\nimport { createPkce } from './pkce';\nimport { createSaml } from './saml';\nimport { createSession } from './session';\nimport { createSudo } from './sudo';\nimport { createToken } from './token';\nimport { createWebauthn } from './webauthn';\n\nexport type AuthClientInitOptions = Omit<ClientInitOptions, 'auth'>;\n\nexport type AuthOpenApiFetchClient = ReturnType<typeof createOpenapiFetchClient<paths>>;\n\nexport const createAuthClient = ({ baseUrl, middlewares }: AuthClientInitOptions) => {\n const client = createOpenapiFetchClient<paths>({\n baseUrl,\n middlewares,\n validateStatus: validateConnectionStatus,\n });\n const genericClient = createGenericFetchClient({\n baseUrl,\n middlewares,\n validateStatus: validateConnectionStatus,\n });\n\n // Host-level: Connection serves the storage, management and auth APIs off one baseUrl, so this\n // probes the host, not this API's prefix — `/v2/storage/health-check`, `/manage/health-check`\n // and `/v1/auth/health-check` all 404.\n const healthCheck = async (signal?: AbortSignal) => {\n const { data } = await genericClient.get('/health-check', {}, { signal });\n\n return data;\n };\n\n return {\n healthCheck,\n login: createLogin(client),\n mfa: createMfa(client),\n password: createPassword(client),\n saml: createSaml(client),\n pat: createPat(client),\n manageTokens: createManageTokens(client),\n me: createMe(client),\n device: createDevice(client),\n sudo: createSudo(client),\n pkce: createPkce(client),\n session: createSession(client),\n token: createToken(client),\n webauthn: createWebauthn(client),\n };\n};\n"],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"authClient-DspK50e7.cjs","names":["z","createAbortError","z","z","z","KeboolaHttpHeader","HttpHeader","createOpenapiFetchClient","validateConnectionStatus","createGenericFetchClient"],"sources":["../src/clients/auth/device/device.ts","../src/clients/auth/login/schemas.ts","../src/clients/auth/login/login.ts","../src/clients/auth/manageTokens/manageTokens.ts","../src/utils/async/collectByCursor.ts","../src/clients/auth/me/me.ts","../src/clients/auth/mfa/schemas.ts","../src/clients/auth/mfa/mfa.ts","../src/clients/auth/password/schemas.ts","../src/clients/auth/password/password.ts","../src/clients/auth/pat/pat.ts","../src/clients/auth/pkce/pkce.ts","../src/clients/auth/saml/saml.ts","../src/clients/auth/session/session.ts","../src/clients/auth/sudo/sudo.ts","../src/clients/auth/token/schemas.ts","../src/clients/auth/token/token.ts","../src/clients/auth/webauthn/webauthn.ts","../src/clients/auth/authClient.ts"],"sourcesContent":["import type { AuthOpenApiFetchClient } from '../authClient';\n\nimport type {\n ApproveDeviceAuthorizationBody,\n CreateDeviceAuthorizationBody,\n GetDeviceAuthorizationTokenBody,\n} from './types';\n\nexport const createDevice = (client: AuthOpenApiFetchClient) => {\n const create = async (body: CreateDeviceAuthorizationBody, signal?: AbortSignal) => {\n const { data } = await client.post('/v1/auth/device', { body }, { signal });\n return data;\n };\n\n const approve = async (body: ApproveDeviceAuthorizationBody, signal?: AbortSignal) => {\n const { data } = await client.post('/v1/auth/device/approve', { body }, { signal });\n return data;\n };\n\n const getToken = async (body: GetDeviceAuthorizationTokenBody, signal?: AbortSignal) => {\n const { data } = await client.post('/v1/auth/device/token', { body }, { signal });\n return data;\n };\n\n return { create, approve, getToken };\n};\n","import * as z from 'zod';\n\nconst loginInputSchema = z.object({\n /** Also mints a session cookie; `Origin` must be the stack app URL, else 403. */\n browserMode: z.boolean().default(false),\n});\n\nexport const passwordInputSchema = loginInputSchema.extend({\n email: z.email(),\n password: z.string().min(1, 'Required'),\n});\n\nexport const oidcInputSchema = loginInputSchema.extend({\n grantType: z.enum(['google', 'microsoft']),\n idToken: z.string().min(1, 'Required'),\n});\n\n// No `browserMode`: as `boolean` it would widen the result; the method signature keeps the literal.\nexport type PasswordInput = Omit<z.input<typeof passwordInputSchema>, 'browserMode'>;\nexport type OidcInput = Omit<z.input<typeof oidcInputSchema>, 'browserMode'>;\n\nconst userSchema = z.object({\n id: z.number(),\n email: z.string(),\n name: z.string(),\n});\n\n// The backend omits `mfaRequired` on success; the `false` default makes it the union discriminant.\nconst loginSuccessBaseSchema = z.object({\n mfaRequired: z.literal(false).default(false),\n accessToken: z.string(),\n tokenType: z.string(),\n expiresIn: z.number(),\n user: userSchema,\n sessionId: z.string(),\n});\n\nexport const apiLoginSuccessSchema = loginSuccessBaseSchema.extend({\n refreshToken: z.string(),\n});\n\nexport const browserLoginSuccessSchema = loginSuccessBaseSchema.extend({\n refreshToken: z.null().optional(),\n});\n\n/**\n * MFA-challenge shape.\n *\n * - `mfaType` / `allowedMethods` stay `string` so a new method still parses.\n * - `webauthn` is `PublicKeyCredentialRequestOptionsJSON`: present, `null` or absent (TOTP).\n * - `unknown`: a stricter shape failing would block every MFA sign-in; the ceremony validates.\n */\nexport const mfaChallengeSchema = z.object({\n mfaRequired: z.literal(true),\n mfaType: z.string(),\n mfaToken: z.string(),\n expiresIn: z.number(),\n allowedMethods: z.array(z.string()),\n // zod 4 `z.unknown()` is not implicitly optional; TOTP challenges omit the key.\n webauthn: z.unknown().optional(),\n});\n\nexport const apiLoginResultSchema = z.union([apiLoginSuccessSchema, mfaChallengeSchema]);\nexport const browserLoginResultSchema = z.union([browserLoginSuccessSchema, mfaChallengeSchema]);\n\nexport type LoginUser = z.infer<typeof userSchema>;\nexport type MfaChallenge = z.infer<typeof mfaChallengeSchema>;\nexport type ApiLoginSuccess = z.infer<typeof apiLoginSuccessSchema>;\nexport type BrowserLoginSuccess = z.infer<typeof browserLoginSuccessSchema>;\nexport type ApiLoginResult = z.infer<typeof apiLoginResultSchema>;\nexport type BrowserLoginResult = z.infer<typeof browserLoginResultSchema>;\n\nexport type LoginResultFor<Browser extends boolean> = Browser extends true\n ? BrowserLoginResult\n : ApiLoginResult;\n","import type { AuthOpenApiFetchClient } from '../authClient';\n\nimport type { LoginResultFor, OidcInput, PasswordInput } from './schemas';\nimport {\n apiLoginResultSchema,\n browserLoginResultSchema,\n oidcInputSchema,\n passwordInputSchema,\n} from './schemas';\nimport type { LoginBody } from './types';\n\nexport const createLogin = (client: AuthOpenApiFetchClient) => {\n const _login = async (body: LoginBody, signal?: AbortSignal) => {\n const { data } = await client.post('/v1/auth/login', { body }, { signal });\n return data;\n };\n\n /**\n * Grants parse with our own schemas — the generated response type is unreliable.\n *\n * - `browserMode` picks the schema: only API mode carries a refresh token.\n * - `const Browser` keeps the literal; a `boolean` flag widens the result to the union.\n */\n const withPassword = async <const Browser extends boolean = false>(\n input: Omit<PasswordInput, 'browserMode'> & { browserMode?: Browser },\n signal?: AbortSignal,\n ) => {\n const { email, password, browserMode } = passwordInputSchema.parse(input);\n // Cast: omit fields outside the grant — the backend rejects null.\n const data = await _login(\n { grantType: 'password', email, password, browserMode } as LoginBody,\n signal,\n );\n const schema = browserMode ? browserLoginResultSchema : apiLoginResultSchema;\n return schema.parse(data) as LoginResultFor<Browser>;\n };\n\n const withOidc = async <const Browser extends boolean = false>(\n input: Omit<OidcInput, 'browserMode'> & { browserMode?: Browser },\n signal?: AbortSignal,\n ) => {\n const { grantType, idToken, browserMode } = oidcInputSchema.parse(input);\n // Cast: omit fields outside the grant — the backend rejects null.\n const data = await _login({ grantType, idToken, browserMode } as LoginBody, signal);\n const schema = browserMode ? browserLoginResultSchema : apiLoginResultSchema;\n return schema.parse(data) as LoginResultFor<Browser>;\n };\n\n // Unauthenticated. Carries the public OAuth client ids `withOidc` callers mint an id token with.\n const methods = async (signal?: AbortSignal) => {\n const { data } = await client.get('/v1/auth/methods', {}, { signal });\n return data;\n };\n\n return { withPassword, withOidc, methods };\n};\n","import type { AuthOpenApiFetchClient } from '../authClient';\n\nimport type { CreateManageTokenInput, RevokeManageTokenPath } from './types';\n\nexport const createManageTokens = (client: AuthOpenApiFetchClient) => {\n /**\n * Every Manage API token the caller owns, in two lists.\n *\n * - `tokens` — the ones the caller created by hand, newest first.\n * - `sessionTokens` — the ones a browser sign-in minted, newest first.\n * - A token carries `scopes: []` when it merely inherits the caller's own permissions.\n */\n const getAll = async (signal?: AbortSignal) => {\n const { data } = await client.get('/v1/auth/manage-tokens', {}, { signal });\n return data;\n };\n\n /**\n * Mint a token and read its secret.\n *\n * - `token` in the response is returned this once and is unreadable afterwards.\n * - `manageToken` is the same row the list endpoint returns.\n * - Needs an active sudo window; without one the endpoint answers `403`.\n * - Rate-limited per caller, answering `429` with `Retry-After`.\n */\n const create = async (input: CreateManageTokenInput, signal?: AbortSignal) => {\n const { data } = await client.post('/v1/auth/manage-tokens', { body: input }, { signal });\n return data;\n };\n\n /** Deleting an id that is already gone answers `404` — the call is not idempotent. */\n const revoke = async (id: RevokeManageTokenPath['id'], signal?: AbortSignal) => {\n await client.delete('/v1/auth/manage-tokens/{id}', { path: { id } }, { signal });\n };\n\n return { getAll, create, revoke };\n};\n","import { createAbortError } from '../createAbortError';\n\n/** One page of a cursor-paginated collection (`data` / `meta` / `links` envelope). */\nexport type CursorPage<T> = { data: T[]; links: { next: string | null } };\n\nexport type CollectByCursorOptions<T> = {\n fetchFrom: (\n after: string | undefined,\n pageSize?: number,\n signal?: AbortSignal,\n ) => Promise<CursorPage<T>>;\n pageSize?: number;\n limit?: number;\n signal?: AbortSignal;\n};\n\n/**\n * The `page[after]` cursor `links.next` carries; `undefined` on the last page.\n *\n * - Read from the link, not rebuilt from the last row, so the encoding stays the server's.\n * - Only the query is parsed, so a relative link works too.\n */\nexport const nextCursorOf = (next: string | null): string | undefined => {\n if (next === null) return undefined;\n const queryStart = next.indexOf('?');\n if (queryStart === -1) return undefined;\n const query = next.slice(queryStart + 1).split('#')[0];\n return new URLSearchParams(query).get('page[after]') ?? undefined;\n};\n\n/**\n * Collects items from a cursor-paginated endpoint — up to `limit`, or all when it is omitted.\n *\n * - Calls `fetchFrom` sequentially with the cursor each `links.next` carries, and hands it `pageSize`.\n * - Ends on a `null` `links.next`, or on a link without a `page[after]`.\n * - A cursor seen before means the server is looping; the walk throws rather than spin.\n */\nexport const collectByCursor = async <T>({\n fetchFrom,\n pageSize,\n limit,\n signal,\n}: CollectByCursorOptions<T>): Promise<T[]> => {\n if (signal?.aborted) throw createAbortError(signal.reason);\n if (limit !== undefined && limit < 0) throw new Error('Invalid collectByCursor limit');\n if (pageSize !== undefined && pageSize < 1) throw new Error('Invalid collectByCursor pageSize');\n\n const items: T[] = [];\n\n if (limit === 0) return items;\n\n let after: string | undefined;\n const seen = new Set<string>();\n\n do {\n const page = await fetchFrom(after, pageSize, signal);\n\n items.push(...page.data);\n\n if (limit !== undefined && items.length >= limit) return items.slice(0, limit);\n\n after = nextCursorOf(page.links.next);\n if (after !== undefined) {\n if (seen.has(after)) {\n throw new Error(`collectByCursor: links.next repeats the cursor ${after}`);\n }\n seen.add(after);\n }\n } while (after !== undefined);\n\n return items;\n};\n","import { collectByCursor } from '../../../utils';\nimport type { AuthOpenApiFetchClient } from '../authClient';\n\nimport type { GetMeMaintainersQuery, GetMeOrganizationsQuery, GetMeProjectsQuery } from './types';\n\n// Connection's `app.auth.me.page.max_limit` (`config/packages/auth_me.yaml`); above it the request is a 400.\nconst PAGE_LIMIT = 200;\n\n/**\n * The signed-in user and the organizations, maintainers and projects they reach.\n *\n * - Session-only: a PAT bearer answers `403`.\n * - `404` while the stack's `programmatic-auth` feature is off.\n */\nexport const createMe = (client: AuthOpenApiFetchClient) => {\n /** Each collection is a counted preview — its first page; the rest is behind the paged methods. */\n const get = async (signal?: AbortSignal) => {\n const { data } = await client.get('/v1/auth/me', {}, { signal });\n return data;\n };\n\n const getOrganizations = async (query?: GetMeOrganizationsQuery, signal?: AbortSignal) => {\n const { data } = await client.get('/v1/auth/me/organizations', { query }, { signal });\n return data;\n };\n\n const getMaintainers = async (query?: GetMeMaintainersQuery, signal?: AbortSignal) => {\n const { data } = await client.get('/v1/auth/me/maintainers', { query }, { signal });\n return data;\n };\n\n const getProjects = async (query?: GetMeProjectsQuery, signal?: AbortSignal) => {\n const { data } = await client.get('/v1/auth/me/projects', { query }, { signal });\n return data;\n };\n\n /** Every organization the caller reaches, across all pages. */\n const getAllOrganizations = (signal?: AbortSignal) =>\n collectByCursor({\n pageSize: PAGE_LIMIT,\n signal,\n fetchFrom: (after, limit, pageSignal) =>\n getOrganizations({ page: { limit, after } }, pageSignal),\n });\n\n /** Every project the caller can open, across all pages. */\n const getAllProjects = (signal?: AbortSignal) =>\n collectByCursor({\n pageSize: PAGE_LIMIT,\n signal,\n fetchFrom: (after, limit, pageSignal) => getProjects({ page: { limit, after } }, pageSignal),\n });\n\n return {\n get,\n getOrganizations,\n getMaintainers,\n getProjects,\n getAllOrganizations,\n getAllProjects,\n };\n};\n","import * as z from 'zod';\n\nimport type { VerifyMfaType } from './types';\n\n/**\n * Methods `POST /v1/auth/mfa` accepts, also reported in a challenge's `mfaType` / `allowedMethods`.\n *\n * - `satisfies` fails the build if the generated spec renames or drops one.\n * - A challenge may name a method not listed here, so the wire fields stay `string`.\n */\nexport const MFA_METHOD = {\n totp: 'totp',\n webauthn: 'webauthn',\n recoveryCode: 'recovery_code',\n} as const satisfies Record<string, VerifyMfaType>;\n\nexport type MfaMethod = (typeof MFA_METHOD)[keyof typeof MFA_METHOD];\n\nexport const mfaCodeInputSchema = z.object({\n mfaToken: z.string(),\n type: z.enum([MFA_METHOD.totp, MFA_METHOD.recoveryCode]),\n code: z.string().min(1, 'Required'),\n});\n\nexport const mfaWebauthnInputSchema = z.object({\n mfaToken: z.string(),\n assertion: z.string(),\n});\n\nexport const totpVerifyInputSchema = z.object({\n code: z.string().min(1, 'Required'),\n // Mirrors the backend default; the generated type wrongly marks it required.\n revokeOtherSessions: z.boolean().default(false),\n});\n\nexport type MfaCodeInput = z.infer<typeof mfaCodeInputSchema>;\nexport type MfaWebauthnInput = z.infer<typeof mfaWebauthnInputSchema>;\nexport type TotpVerifyInput = z.input<typeof totpVerifyInputSchema>;\n","import type { AuthOpenApiFetchClient } from '../authClient';\n\nimport type { MfaCodeInput, MfaWebauthnInput, TotpVerifyInput } from './schemas';\nimport {\n MFA_METHOD,\n mfaCodeInputSchema,\n mfaWebauthnInputSchema,\n totpVerifyInputSchema,\n} from './schemas';\nimport type { DisableTotpPath, VerifyMfaBody } from './types';\n\nexport const createMfa = (client: AuthOpenApiFetchClient) => {\n const _verify = async (body: VerifyMfaBody, signal?: AbortSignal) => {\n const { data } = await client.post('/v1/auth/mfa', { body }, { signal });\n return data;\n };\n\n const verifyWithCode = async (input: MfaCodeInput, signal?: AbortSignal) => {\n const { mfaToken, type, code } = mfaCodeInputSchema.parse(input);\n // Cast: omit fields outside the type — the backend rejects null.\n return _verify({ mfaToken, type, code } as VerifyMfaBody, signal);\n };\n\n const verifyWithWebauthn = async (input: MfaWebauthnInput, signal?: AbortSignal) => {\n const { mfaToken, assertion } = mfaWebauthnInputSchema.parse(input);\n // Cast: omit fields outside the type — the backend rejects null.\n return _verify({ mfaToken, type: MFA_METHOD.webauthn, assertion } as VerifyMfaBody, signal);\n };\n\n const regenerateRecoveryCodes = async (signal?: AbortSignal) => {\n const { data } = await client.post('/v1/auth/mfa/recovery-codes', {}, { signal });\n return data;\n };\n\n // TOTP enrollment for the signed-in user (account MFA management). `setup` returns the shared\n // secret + `otpauthUri` to render as a QR; `verify` confirms the first code and hands back the\n // one-time recovery codes plus the new factor `id`; `disable` removes a factor by that `id`.\n const totp = {\n setup: async (signal?: AbortSignal) => {\n const { data } = await client.post('/v1/auth/mfa/totp', {}, { signal });\n return data;\n },\n verify: async (input: TotpVerifyInput, signal?: AbortSignal) => {\n const body = totpVerifyInputSchema.parse(input);\n const { data } = await client.post('/v1/auth/mfa/totp/verify', { body }, { signal });\n return data;\n },\n disable: async (id: DisableTotpPath['id'], signal?: AbortSignal) => {\n await client.delete('/v1/auth/mfa/totp/{id}', { path: { id } }, { signal });\n },\n };\n\n return { verifyWithCode, verifyWithWebauthn, regenerateRecoveryCodes, totp };\n};\n","import * as z from 'zod';\n\nexport const resetRequestInputSchema = z.object({\n email: z.email(),\n});\n\nexport const resetInputSchema = z.object({\n // The single-use reset token (`kbc_pr_…`) delivered by e-mail.\n token: z.string().min(1, 'Required'),\n newPassword: z.string().min(1, 'Required'),\n // Defaults to true, matching the backend. Password policy is backend-enforced.\n revokeSessions: z.boolean().default(true),\n});\n\nexport const changeInputSchema = z.object({\n currentPassword: z.string().min(1, 'Required'),\n newPassword: z.string().min(1, 'Required'),\n // Defaults to true on parse, so the SDK always sends it (matches the backend default).\n revokeOtherSessions: z.boolean().default(true),\n});\n\nexport type ResetRequestInput = z.infer<typeof resetRequestInputSchema>;\n// `z.input`, not `z.infer`: callers may omit `revokeSessions`.\nexport type ResetInput = z.input<typeof resetInputSchema>;\n// `z.input`: callers may omit `revokeOtherSessions`.\nexport type ChangePasswordInput = z.input<typeof changeInputSchema>;\n","import type { AuthOpenApiFetchClient } from '../authClient';\n\nimport type { ChangePasswordInput, ResetInput, ResetRequestInput } from './schemas';\nimport { changeInputSchema, resetInputSchema, resetRequestInputSchema } from './schemas';\n\nexport const createPassword = (client: AuthOpenApiFetchClient) => {\n // Fire-and-forget from the caller's view: the backend always answers 202 and reveals nothing about\n // whether the account exists. Resolves on 202; rejects on 429 (rate limited) or 400.\n const resetRequest = async (input: ResetRequestInput, signal?: AbortSignal) => {\n const body = resetRequestInputSchema.parse(input);\n await client.post('/v1/auth/password/reset-request', { body }, { signal });\n };\n\n // Applies the new password for the given reset token. Resolves on 204; rejects on 400 (invalid or\n // expired token, or a password that violates the policy).\n const reset = async (input: ResetInput, signal?: AbortSignal) => {\n // `revokeSessions` is defaulted by the schema, so the parsed body always carries all three\n // fields the endpoint requires — no field omission, no type assertion.\n const body = resetInputSchema.parse(input);\n await client.post('/v1/auth/password/reset', { body }, { signal });\n };\n\n // Changes the password for the signed-in user (bearer session). Resolves on 204; rejects on 400\n // (wrong current password, or a new password that violates the policy). Password policy is\n // backend-enforced.\n const change = async (input: ChangePasswordInput, signal?: AbortSignal) => {\n const body = changeInputSchema.parse(input);\n await client.post('/v1/auth/password/change', { body }, { signal });\n };\n\n return { resetRequest, reset, change };\n};\n","import type { AuthOpenApiFetchClient } from '../authClient';\n\nimport type {\n CreatePatBodyRaw,\n CreatePatInput,\n ExchangePatBodyRaw,\n ExchangePatInput,\n PatScopeInput,\n RevokePatPath,\n} from './types';\n\n/**\n * Drop the keys whose value is `null` or `undefined`, and only those — an empty array or string is\n * a value the caller meant.\n *\n * The spec documents each optional PAT field as \"Omit (do not send `null`)\". Callers hold nullables\n * either way — an empty expiry picker, an untouched switch — so the rule lives here rather than at\n * every call site, where one of them would forget it.\n */\nconst withoutNullish = (entries: Record<string, unknown>): Record<string, unknown> =>\n Object.fromEntries(Object.entries(entries).filter(([, value]) => value != null));\n\n/** `undefined` for a scope that narrows nothing — which is what an absent `scope` already asks for. */\nconst toScope = (scope: PatScopeInput | null | undefined): Record<string, unknown> | undefined => {\n if (scope == null) return undefined;\n\n const payload = withoutNullish({ projects: scope.projects, readOnly: scope.readOnly });\n return Object.keys(payload).length > 0 ? payload : undefined;\n};\n\n// `as unknown as` at these two boundaries: `CreatePatBodyRaw` and `ExchangePatBodyRaw` both demand\n// the keys the endpoint documents as omittable, so the honest body is not expressible in either.\nconst toCreateBody = ({ name, expiresIn, scope }: CreatePatInput): CreatePatBodyRaw =>\n ({\n name,\n ...withoutNullish({ expiresIn, scope: toScope(scope) }),\n }) as unknown as CreatePatBodyRaw;\n\nconst toExchangeBody = ({ expiresIn, scope }: ExchangePatInput): ExchangePatBodyRaw =>\n withoutNullish({ expiresIn, scope: toScope(scope) }) as unknown as ExchangePatBodyRaw;\n\nexport const createPat = (client: AuthOpenApiFetchClient) => {\n const getAll = async (signal?: AbortSignal) => {\n const { data } = await client.get('/v1/auth/pat', {}, { signal });\n return data;\n };\n\n const create = async (input: CreatePatInput, signal?: AbortSignal) => {\n const { data } = await client.post('/v1/auth/pat', { body: toCreateBody(input) }, { signal });\n return data;\n };\n\n /**\n * Issue a child token from the one this request is authorized with.\n *\n * A child only ever attenuates its parent, so an empty input is a full-inheritance copy.\n */\n const exchange = async (input: ExchangePatInput = {}, signal?: AbortSignal) => {\n const { data } = await client.post(\n '/v1/auth/pat/exchange',\n { body: toExchangeBody(input) },\n { signal },\n );\n return data;\n };\n\n const revoke = async (id: RevokePatPath['id'], signal?: AbortSignal) => {\n await client.delete('/v1/auth/pat/{id}', { path: { id } }, { signal });\n };\n\n return { create, exchange, revoke, getAll };\n};\n","import type { AuthOpenApiFetchClient } from '../authClient';\n\nimport type { GetPkceTokenBody } from './types';\n\nexport const createPkce = (client: AuthOpenApiFetchClient) => {\n const getToken = async (body: GetPkceTokenBody, signal?: AbortSignal) => {\n const { data } = await client.post('/v1/auth/pkce/token', { body }, { signal });\n return data;\n };\n\n return { getToken };\n};\n","import type { AuthOpenApiFetchClient } from '../authClient';\n\nimport type { AssertSamlBody, InitiateSamlBody } from './types';\n\nexport const createSaml = (client: AuthOpenApiFetchClient) => {\n const assert = async (body: AssertSamlBody, signal?: AbortSignal) => {\n const { data } = await client.post('/v1/auth/saml/assert', { body }, { signal });\n return data;\n };\n\n const initiate = async (body?: InitiateSamlBody, signal?: AbortSignal) => {\n const { data } = await client.post('/v1/auth/saml/initiate', { body }, { signal });\n return data;\n };\n\n return { assert, initiate };\n};\n","import type { AuthOpenApiFetchClient } from '../authClient';\n\nimport type { RevokeSessionPath } from './types';\n\nexport const createSession = (client: AuthOpenApiFetchClient) => {\n const getAll = async (signal?: AbortSignal) => {\n const { data } = await client.get('/v1/auth/sessions', {}, { signal });\n return data;\n };\n\n const revoke = async (sessionId: RevokeSessionPath['sessionId'], signal?: AbortSignal) => {\n await client.delete('/v1/auth/sessions/{sessionId}', { path: { sessionId } }, { signal });\n };\n\n const revokeAll = async (signal?: AbortSignal) => {\n await client.delete('/v1/auth/sessions', {}, { signal });\n };\n\n return { getAll, revoke, revokeAll };\n};\n","import type { AuthOpenApiFetchClient } from '../authClient';\n\nimport type { SudoBody, SudoBodyRaw } from './types';\n\nexport const createSudo = (client: AuthOpenApiFetchClient) => {\n const verify = async (body: SudoBody, signal?: AbortSignal) => {\n // The generated request body (`SudoBodyRaw`) describes a payload the endpoint rejects — see the\n // `SudoBody` docs. Assert at this one boundary rather than making every caller send the invalid\n // shape; the real fix is the `#[OA\\Schema]`-vs-object mismatch on the backend, upstream of the\n // generated schema. Same pattern as `syncActionsClient`'s `PostActionsBodyRaw`.\n const { data } = await client.post(\n '/v1/auth/sudo',\n { body: body as unknown as SudoBodyRaw },\n { signal },\n );\n return data;\n };\n\n const challenge = async (signal?: AbortSignal) => {\n const { data } = await client.post('/v1/auth/sudo/challenge', {}, { signal });\n return data;\n };\n\n return { verify, challenge };\n};\n","import * as z from 'zod';\n\nexport const refreshTokenInputSchema = z.object({\n refreshToken: z.string().min(1, 'Required'),\n});\n\nexport const refreshSessionInputSchema = z.object({\n // The session id the login response carried. The refresh token itself stays in a server-side\n // channel bound to the session cookie, so the client never holds it.\n sessionId: z.string().min(1, 'Required'),\n});\n\nexport type RefreshTokenInput = z.infer<typeof refreshTokenInputSchema>;\nexport type RefreshSessionInput = z.infer<typeof refreshSessionInputSchema>;\n","import { HttpHeader } from '../../../fetchClient';\nimport { KeboolaHttpHeader } from '../../../internal';\nimport type { AuthOpenApiFetchClient } from '../authClient';\n\nimport type { RefreshSessionInput, RefreshTokenInput } from './schemas';\nimport { refreshSessionInputSchema, refreshTokenInputSchema } from './schemas';\nimport type { RefreshTokenBody, RefreshTokenPartialBody, RevokeTokenBody } from './types';\n\nexport const createToken = (client: AuthOpenApiFetchClient) => {\n const _refresh = async (\n body: RefreshTokenPartialBody,\n { signal, headers }: { signal?: AbortSignal; headers?: Record<string, string> } = {},\n ) => {\n const { data } = await client.post(\n '/v1/auth/token/refresh',\n { body: body as RefreshTokenBody },\n { signal, headers },\n );\n\n return data;\n };\n\n /** API mode: rotates the pair. The response carries the next refresh token. */\n const refreshWithToken = async (input: RefreshTokenInput, signal?: AbortSignal) => {\n const { refreshToken } = refreshTokenInputSchema.parse(input);\n return _refresh({ refreshToken }, { signal });\n };\n\n /**\n * Browser/cookie mode: renews the access token off the session cookie.\n *\n * - The `X-KBC-CSRF` header opts in; without it the request is API mode.\n * - Its value is a constant: its presence is the CSRF proof (custom headers need a preflight).\n * - No refresh token in the response; it stays server-side, bound to the cookie.\n * - Works only from the stack's own origin (fetch's default `same-origin` credentials).\n * - An `Authorization` header rejects the request — use a client with no auth middleware.\n */\n const refreshWithSession = async (input: RefreshSessionInput, signal?: AbortSignal) => {\n const { sessionId } = refreshSessionInputSchema.parse(input);\n return _refresh({ sessionId }, { signal, headers: { [KeboolaHttpHeader.CSRF]: '1' } });\n };\n\n /**\n * Introspects an authenticated session token.\n *\n * @param token - Optional token to introspect (`Authorization: Bearer`); a middleware-set header wins.\n */\n const introspect = async (token?: string, signal?: AbortSignal) => {\n const { data } = await client.get(\n '/v1/auth/token/introspect',\n {},\n { signal, headers: token ? { [HttpHeader.AUTHORIZATION]: `Bearer ${token}` } : undefined },\n );\n return data;\n };\n\n const revoke = async (body: RevokeTokenBody, signal?: AbortSignal) => {\n await client.post('/v1/auth/token/revoke', { body }, { signal });\n };\n\n return { refreshWithToken, refreshWithSession, introspect, revoke };\n};\n","import type { AuthOpenApiFetchClient } from '../authClient';\n\nimport type {\n RegisterWebauthnInput,\n RegisterWebauthnOptionsResult,\n RemoveWebauthnInput,\n} from './types';\n\nexport const createWebauthn = (client: AuthOpenApiFetchClient) => {\n const getAll = async (signal?: AbortSignal) => {\n const { data } = await client.get('/v1/auth/webauthn', {}, { signal });\n return data;\n };\n\n const registerOptions = async (signal?: AbortSignal) => {\n const { data } = await client.post('/v1/auth/webauthn/register/options', {}, { signal });\n // Cast: the spec types the free-form `options` object as `Record<string, never>`.\n return data as RegisterWebauthnOptionsResult;\n };\n\n const register = async (\n { credential, deviceName = null, revokeOtherSessions = false }: RegisterWebauthnInput,\n signal?: AbortSignal,\n ) => {\n const { data } = await client.post(\n '/v1/auth/webauthn/register',\n { body: { credential, deviceName, revokeOtherSessions } },\n { signal },\n );\n return data;\n };\n\n // `revokeOtherSessions` signs every other session out along with the credential — the calling\n // session and personal access tokens survive. Omitted means the backend's own `false`.\n const remove = async ({ id, ...query }: RemoveWebauthnInput, signal?: AbortSignal) => {\n await client.delete('/v1/auth/webauthn/{id}', { path: { id }, query }, { signal });\n };\n\n return { getAll, registerOptions, register, remove };\n};\n","import { createGenericFetchClient, createOpenapiFetchClient } from '../../fetchClient';\nimport type { ClientInitOptions } from '../types';\nimport { validateConnectionStatus } from '../validateConnectionStatus';\n\nimport type { paths } from './__generated__/schema';\nimport { createDevice } from './device';\nimport { createLogin } from './login';\nimport { createManageTokens } from './manageTokens';\nimport { createMe } from './me';\nimport { createMfa } from './mfa';\nimport { createPassword } from './password';\nimport { createPat } from './pat';\nimport { createPkce } from './pkce';\nimport { createSaml } from './saml';\nimport { createSession } from './session';\nimport { createSudo } from './sudo';\nimport { createToken } from './token';\nimport { createWebauthn } from './webauthn';\n\nexport type AuthClientInitOptions = Omit<ClientInitOptions, 'auth'>;\n\nexport type AuthOpenApiFetchClient = ReturnType<typeof createOpenapiFetchClient<paths>>;\n\nexport const createAuthClient = ({ baseUrl, middlewares }: AuthClientInitOptions) => {\n const client = createOpenapiFetchClient<paths>({\n baseUrl,\n middlewares,\n validateStatus: validateConnectionStatus,\n });\n const genericClient = createGenericFetchClient({\n baseUrl,\n middlewares,\n validateStatus: validateConnectionStatus,\n });\n\n // Host-level: Connection serves the storage, management and auth APIs off one baseUrl, so this\n // probes the host, not this API's prefix — `/v2/storage/health-check`, `/manage/health-check`\n // and `/v1/auth/health-check` all 404.\n const healthCheck = async (signal?: AbortSignal) => {\n const { data } = await genericClient.get('/health-check', {}, { signal });\n\n return data;\n };\n\n return {\n healthCheck,\n login: createLogin(client),\n mfa: createMfa(client),\n password: createPassword(client),\n saml: createSaml(client),\n pat: createPat(client),\n manageTokens: createManageTokens(client),\n me: createMe(client),\n device: createDevice(client),\n sudo: createSudo(client),\n pkce: createPkce(client),\n session: createSession(client),\n token: createToken(client),\n webauthn: createWebauthn(client),\n };\n};\n"],"mappings":"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"}