@backblaze-labs/b2-sdk 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (512) hide show
  1. package/CHANGELOG.md +121 -0
  2. package/LICENSE +21 -0
  3. package/README.md +664 -0
  4. package/dist/auth/account-info.d.cts +51 -0
  5. package/dist/auth/account-info.d.cts.map +1 -0
  6. package/dist/auth/account-info.d.ts +51 -0
  7. package/dist/auth/account-info.d.ts.map +1 -0
  8. package/dist/auth/file.cjs +210 -0
  9. package/dist/auth/file.cjs.map +1 -0
  10. package/dist/auth/file.d.cts +157 -0
  11. package/dist/auth/file.d.cts.map +1 -0
  12. package/dist/auth/file.d.ts +157 -0
  13. package/dist/auth/file.d.ts.map +1 -0
  14. package/dist/auth/file.js +210 -0
  15. package/dist/auth/file.js.map +1 -0
  16. package/dist/auth/in-memory.cjs +184 -0
  17. package/dist/auth/in-memory.cjs.map +1 -0
  18. package/dist/auth/in-memory.d.cts +147 -0
  19. package/dist/auth/in-memory.d.cts.map +1 -0
  20. package/dist/auth/in-memory.d.ts +147 -0
  21. package/dist/auth/in-memory.d.ts.map +1 -0
  22. package/dist/auth/in-memory.js +184 -0
  23. package/dist/auth/in-memory.js.map +1 -0
  24. package/dist/auth/index.cjs +10 -0
  25. package/dist/auth/index.cjs.map +1 -0
  26. package/dist/auth/index.d.cts +6 -0
  27. package/dist/auth/index.d.cts.map +1 -0
  28. package/dist/auth/index.d.ts +6 -0
  29. package/dist/auth/index.d.ts.map +1 -0
  30. package/dist/auth/index.js +10 -0
  31. package/dist/auth/index.js.map +1 -0
  32. package/dist/auth/realms.cjs +12 -0
  33. package/dist/auth/realms.cjs.map +1 -0
  34. package/dist/auth/realms.d.cts +12 -0
  35. package/dist/auth/realms.d.cts.map +1 -0
  36. package/dist/auth/realms.d.ts +12 -0
  37. package/dist/auth/realms.d.ts.map +1 -0
  38. package/dist/auth/realms.js +12 -0
  39. package/dist/auth/realms.js.map +1 -0
  40. package/dist/auth/upload-url-pool.cjs +52 -0
  41. package/dist/auth/upload-url-pool.cjs.map +1 -0
  42. package/dist/auth/upload-url-pool.d.cts +35 -0
  43. package/dist/auth/upload-url-pool.d.cts.map +1 -0
  44. package/dist/auth/upload-url-pool.d.ts +35 -0
  45. package/dist/auth/upload-url-pool.d.ts.map +1 -0
  46. package/dist/auth/upload-url-pool.js +52 -0
  47. package/dist/auth/upload-url-pool.js.map +1 -0
  48. package/dist/bucket.cjs +789 -0
  49. package/dist/bucket.cjs.map +1 -0
  50. package/dist/bucket.d.cts +659 -0
  51. package/dist/bucket.d.cts.map +1 -0
  52. package/dist/bucket.d.ts +659 -0
  53. package/dist/bucket.d.ts.map +1 -0
  54. package/dist/bucket.js +789 -0
  55. package/dist/bucket.js.map +1 -0
  56. package/dist/client.cjs +230 -0
  57. package/dist/client.cjs.map +1 -0
  58. package/dist/client.d.cts +222 -0
  59. package/dist/client.d.cts.map +1 -0
  60. package/dist/client.d.ts +222 -0
  61. package/dist/client.d.ts.map +1 -0
  62. package/dist/client.js +230 -0
  63. package/dist/client.js.map +1 -0
  64. package/dist/copy/large.cjs +74 -0
  65. package/dist/copy/large.cjs.map +1 -0
  66. package/dist/copy/large.d.cts +53 -0
  67. package/dist/copy/large.d.cts.map +1 -0
  68. package/dist/copy/large.d.ts +53 -0
  69. package/dist/copy/large.d.ts.map +1 -0
  70. package/dist/copy/large.js +74 -0
  71. package/dist/copy/large.js.map +1 -0
  72. package/dist/download/parallel.cjs +122 -0
  73. package/dist/download/parallel.cjs.map +1 -0
  74. package/dist/download/parallel.d.cts +42 -0
  75. package/dist/download/parallel.d.cts.map +1 -0
  76. package/dist/download/parallel.d.ts +42 -0
  77. package/dist/download/parallel.d.ts.map +1 -0
  78. package/dist/download/parallel.js +122 -0
  79. package/dist/download/parallel.js.map +1 -0
  80. package/dist/download/single.cjs +117 -0
  81. package/dist/download/single.cjs.map +1 -0
  82. package/dist/download/single.d.cts +152 -0
  83. package/dist/download/single.d.cts.map +1 -0
  84. package/dist/download/single.d.ts +152 -0
  85. package/dist/download/single.d.ts.map +1 -0
  86. package/dist/download/single.js +117 -0
  87. package/dist/download/single.js.map +1 -0
  88. package/dist/errors/index.cjs +268 -0
  89. package/dist/errors/index.cjs.map +1 -0
  90. package/dist/errors/index.d.cts +264 -0
  91. package/dist/errors/index.d.cts.map +1 -0
  92. package/dist/errors/index.d.ts +264 -0
  93. package/dist/errors/index.d.ts.map +1 -0
  94. package/dist/errors/index.js +268 -0
  95. package/dist/errors/index.js.map +1 -0
  96. package/dist/http/retry.cjs +36 -0
  97. package/dist/http/retry.cjs.map +1 -0
  98. package/dist/http/retry.d.cts +34 -0
  99. package/dist/http/retry.d.cts.map +1 -0
  100. package/dist/http/retry.d.ts +34 -0
  101. package/dist/http/retry.d.ts.map +1 -0
  102. package/dist/http/retry.js +36 -0
  103. package/dist/http/retry.js.map +1 -0
  104. package/dist/http/transport.cjs +143 -0
  105. package/dist/http/transport.cjs.map +1 -0
  106. package/dist/http/transport.d.cts +122 -0
  107. package/dist/http/transport.d.cts.map +1 -0
  108. package/dist/http/transport.d.ts +122 -0
  109. package/dist/http/transport.d.ts.map +1 -0
  110. package/dist/http/transport.js +143 -0
  111. package/dist/http/transport.js.map +1 -0
  112. package/dist/http/url-guard.cjs +97 -0
  113. package/dist/http/url-guard.cjs.map +1 -0
  114. package/dist/http/url-guard.d.cts +88 -0
  115. package/dist/http/url-guard.d.cts.map +1 -0
  116. package/dist/http/url-guard.d.ts +88 -0
  117. package/dist/http/url-guard.d.ts.map +1 -0
  118. package/dist/http/url-guard.js +97 -0
  119. package/dist/http/url-guard.js.map +1 -0
  120. package/dist/http/user-agent.cjs +51 -0
  121. package/dist/http/user-agent.cjs.map +1 -0
  122. package/dist/http/user-agent.d.cts +28 -0
  123. package/dist/http/user-agent.d.cts.map +1 -0
  124. package/dist/http/user-agent.d.ts +28 -0
  125. package/dist/http/user-agent.d.ts.map +1 -0
  126. package/dist/http/user-agent.js +51 -0
  127. package/dist/http/user-agent.js.map +1 -0
  128. package/dist/index.cjs +78 -0
  129. package/dist/index.cjs.map +1 -0
  130. package/dist/index.d.cts +39 -0
  131. package/dist/index.d.cts.map +1 -0
  132. package/dist/index.d.ts +39 -0
  133. package/dist/index.d.ts.map +1 -0
  134. package/dist/index.js +78 -0
  135. package/dist/index.js.map +1 -0
  136. package/dist/notifications/index.cjs +7 -0
  137. package/dist/notifications/index.cjs.map +1 -0
  138. package/dist/notifications/index.d.cts +3 -0
  139. package/dist/notifications/index.d.cts.map +1 -0
  140. package/dist/notifications/index.d.ts +3 -0
  141. package/dist/notifications/index.d.ts.map +1 -0
  142. package/dist/notifications/index.js +7 -0
  143. package/dist/notifications/index.js.map +1 -0
  144. package/dist/notifications/webhook.cjs +106 -0
  145. package/dist/notifications/webhook.cjs.map +1 -0
  146. package/dist/notifications/webhook.d.cts +146 -0
  147. package/dist/notifications/webhook.d.cts.map +1 -0
  148. package/dist/notifications/webhook.d.ts +146 -0
  149. package/dist/notifications/webhook.d.ts.map +1 -0
  150. package/dist/notifications/webhook.js +106 -0
  151. package/dist/notifications/webhook.js.map +1 -0
  152. package/dist/object.cjs +212 -0
  153. package/dist/object.cjs.map +1 -0
  154. package/dist/object.d.cts +263 -0
  155. package/dist/object.d.cts.map +1 -0
  156. package/dist/object.d.ts +263 -0
  157. package/dist/object.d.ts.map +1 -0
  158. package/dist/object.js +212 -0
  159. package/dist/object.js.map +1 -0
  160. package/dist/package.json.cjs +9 -0
  161. package/dist/package.json.cjs.map +1 -0
  162. package/dist/package.json.js +9 -0
  163. package/dist/package.json.js.map +1 -0
  164. package/dist/raw/encoding.cjs +47 -0
  165. package/dist/raw/encoding.cjs.map +1 -0
  166. package/dist/raw/encoding.d.cts +46 -0
  167. package/dist/raw/encoding.d.cts.map +1 -0
  168. package/dist/raw/encoding.d.ts +46 -0
  169. package/dist/raw/encoding.d.ts.map +1 -0
  170. package/dist/raw/encoding.js +47 -0
  171. package/dist/raw/encoding.js.map +1 -0
  172. package/dist/raw/index.cjs +600 -0
  173. package/dist/raw/index.cjs.map +1 -0
  174. package/dist/raw/index.d.cts +381 -0
  175. package/dist/raw/index.d.cts.map +1 -0
  176. package/dist/raw/index.d.ts +381 -0
  177. package/dist/raw/index.d.ts.map +1 -0
  178. package/dist/raw/index.js +601 -0
  179. package/dist/raw/index.js.map +1 -0
  180. package/dist/s3/index.cjs +23 -0
  181. package/dist/s3/index.cjs.map +1 -0
  182. package/dist/s3/index.d.cts +74 -0
  183. package/dist/s3/index.d.cts.map +1 -0
  184. package/dist/s3/index.d.ts +74 -0
  185. package/dist/s3/index.d.ts.map +1 -0
  186. package/dist/s3/index.js +23 -0
  187. package/dist/s3/index.js.map +1 -0
  188. package/dist/simulator/capabilities.cjs +53 -0
  189. package/dist/simulator/capabilities.cjs.map +1 -0
  190. package/dist/simulator/capabilities.d.cts +15 -0
  191. package/dist/simulator/capabilities.d.cts.map +1 -0
  192. package/dist/simulator/capabilities.d.ts +15 -0
  193. package/dist/simulator/capabilities.d.ts.map +1 -0
  194. package/dist/simulator/capabilities.js +53 -0
  195. package/dist/simulator/capabilities.js.map +1 -0
  196. package/dist/simulator/index.cjs +1559 -0
  197. package/dist/simulator/index.cjs.map +1 -0
  198. package/dist/simulator/index.d.cts +495 -0
  199. package/dist/simulator/index.d.cts.map +1 -0
  200. package/dist/simulator/index.d.ts +495 -0
  201. package/dist/simulator/index.d.ts.map +1 -0
  202. package/dist/simulator/index.js +1560 -0
  203. package/dist/simulator/index.js.map +1 -0
  204. package/dist/simulator/validation.cjs +174 -0
  205. package/dist/simulator/validation.cjs.map +1 -0
  206. package/dist/simulator/validation.d.cts +104 -0
  207. package/dist/simulator/validation.d.cts.map +1 -0
  208. package/dist/simulator/validation.d.ts +104 -0
  209. package/dist/simulator/validation.d.ts.map +1 -0
  210. package/dist/simulator/validation.js +174 -0
  211. package/dist/simulator/validation.js.map +1 -0
  212. package/dist/streams/collect.cjs +26 -0
  213. package/dist/streams/collect.cjs.map +1 -0
  214. package/dist/streams/collect.d.cts +18 -0
  215. package/dist/streams/collect.d.cts.map +1 -0
  216. package/dist/streams/collect.d.ts +18 -0
  217. package/dist/streams/collect.d.ts.map +1 -0
  218. package/dist/streams/collect.js +26 -0
  219. package/dist/streams/collect.js.map +1 -0
  220. package/dist/streams/hash.cjs +123 -0
  221. package/dist/streams/hash.cjs.map +1 -0
  222. package/dist/streams/hash.d.cts +42 -0
  223. package/dist/streams/hash.d.cts.map +1 -0
  224. package/dist/streams/hash.d.ts +42 -0
  225. package/dist/streams/hash.d.ts.map +1 -0
  226. package/dist/streams/hash.js +101 -0
  227. package/dist/streams/hash.js.map +1 -0
  228. package/dist/streams/index.cjs +13 -0
  229. package/dist/streams/index.cjs.map +1 -0
  230. package/dist/streams/index.d.cts +7 -0
  231. package/dist/streams/index.d.cts.map +1 -0
  232. package/dist/streams/index.d.ts +7 -0
  233. package/dist/streams/index.d.ts.map +1 -0
  234. package/dist/streams/index.js +13 -0
  235. package/dist/streams/index.js.map +1 -0
  236. package/dist/streams/progress.cjs +47 -0
  237. package/dist/streams/progress.cjs.map +1 -0
  238. package/dist/streams/progress.d.cts +53 -0
  239. package/dist/streams/progress.d.cts.map +1 -0
  240. package/dist/streams/progress.d.ts +53 -0
  241. package/dist/streams/progress.d.ts.map +1 -0
  242. package/dist/streams/progress.js +47 -0
  243. package/dist/streams/progress.js.map +1 -0
  244. package/dist/streams/source.cjs +155 -0
  245. package/dist/streams/source.cjs.map +1 -0
  246. package/dist/streams/source.d.cts +140 -0
  247. package/dist/streams/source.d.cts.map +1 -0
  248. package/dist/streams/source.d.ts +140 -0
  249. package/dist/streams/source.d.ts.map +1 -0
  250. package/dist/streams/source.js +155 -0
  251. package/dist/streams/source.js.map +1 -0
  252. package/dist/sync/actions/index.cjs +191 -0
  253. package/dist/sync/actions/index.cjs.map +1 -0
  254. package/dist/sync/actions/index.d.cts +167 -0
  255. package/dist/sync/actions/index.d.cts.map +1 -0
  256. package/dist/sync/actions/index.d.ts +167 -0
  257. package/dist/sync/actions/index.d.ts.map +1 -0
  258. package/dist/sync/actions/index.js +191 -0
  259. package/dist/sync/actions/index.js.map +1 -0
  260. package/dist/sync/index.cjs +23 -0
  261. package/dist/sync/index.cjs.map +1 -0
  262. package/dist/sync/index.d.cts +21 -0
  263. package/dist/sync/index.d.cts.map +1 -0
  264. package/dist/sync/index.d.ts +21 -0
  265. package/dist/sync/index.d.ts.map +1 -0
  266. package/dist/sync/index.js +23 -0
  267. package/dist/sync/index.js.map +1 -0
  268. package/dist/sync/pairing.cjs +31 -0
  269. package/dist/sync/pairing.cjs.map +1 -0
  270. package/dist/sync/pairing.d.cts +13 -0
  271. package/dist/sync/pairing.d.cts.map +1 -0
  272. package/dist/sync/pairing.d.ts +13 -0
  273. package/dist/sync/pairing.d.ts.map +1 -0
  274. package/dist/sync/pairing.js +31 -0
  275. package/dist/sync/pairing.js.map +1 -0
  276. package/dist/sync/policies/compare.cjs +14 -0
  277. package/dist/sync/policies/compare.cjs.map +1 -0
  278. package/dist/sync/policies/compare.d.cts +13 -0
  279. package/dist/sync/policies/compare.d.cts.map +1 -0
  280. package/dist/sync/policies/compare.d.ts +13 -0
  281. package/dist/sync/policies/compare.d.ts.map +1 -0
  282. package/dist/sync/policies/compare.js +14 -0
  283. package/dist/sync/policies/compare.js.map +1 -0
  284. package/dist/sync/policies/index.cjs +74 -0
  285. package/dist/sync/policies/index.cjs.map +1 -0
  286. package/dist/sync/policies/index.d.cts +42 -0
  287. package/dist/sync/policies/index.d.cts.map +1 -0
  288. package/dist/sync/policies/index.d.ts +42 -0
  289. package/dist/sync/policies/index.d.ts.map +1 -0
  290. package/dist/sync/policies/index.js +74 -0
  291. package/dist/sync/policies/index.js.map +1 -0
  292. package/dist/sync/scanners/b2.cjs +57 -0
  293. package/dist/sync/scanners/b2.cjs.map +1 -0
  294. package/dist/sync/scanners/b2.d.cts +20 -0
  295. package/dist/sync/scanners/b2.d.cts.map +1 -0
  296. package/dist/sync/scanners/b2.d.ts +20 -0
  297. package/dist/sync/scanners/b2.d.ts.map +1 -0
  298. package/dist/sync/scanners/b2.js +57 -0
  299. package/dist/sync/scanners/b2.js.map +1 -0
  300. package/dist/sync/scanners/local.cjs +58 -0
  301. package/dist/sync/scanners/local.cjs.map +1 -0
  302. package/dist/sync/scanners/local.d.cts +24 -0
  303. package/dist/sync/scanners/local.d.cts.map +1 -0
  304. package/dist/sync/scanners/local.d.ts +24 -0
  305. package/dist/sync/scanners/local.d.ts.map +1 -0
  306. package/dist/sync/scanners/local.js +58 -0
  307. package/dist/sync/scanners/local.js.map +1 -0
  308. package/dist/sync/synchronizer.cjs +203 -0
  309. package/dist/sync/synchronizer.cjs.map +1 -0
  310. package/dist/sync/synchronizer.d.cts +52 -0
  311. package/dist/sync/synchronizer.d.cts.map +1 -0
  312. package/dist/sync/synchronizer.d.ts +52 -0
  313. package/dist/sync/synchronizer.d.ts.map +1 -0
  314. package/dist/sync/synchronizer.js +181 -0
  315. package/dist/sync/synchronizer.js.map +1 -0
  316. package/dist/sync/types.d.cts +121 -0
  317. package/dist/sync/types.d.cts.map +1 -0
  318. package/dist/sync/types.d.ts +121 -0
  319. package/dist/sync/types.d.ts.map +1 -0
  320. package/dist/types/auth.cjs +58 -0
  321. package/dist/types/auth.cjs.map +1 -0
  322. package/dist/types/auth.d.cts +150 -0
  323. package/dist/types/auth.d.cts.map +1 -0
  324. package/dist/types/auth.d.ts +150 -0
  325. package/dist/types/auth.d.ts.map +1 -0
  326. package/dist/types/auth.js +58 -0
  327. package/dist/types/auth.js.map +1 -0
  328. package/dist/types/bucket.cjs +44 -0
  329. package/dist/types/bucket.cjs.map +1 -0
  330. package/dist/types/bucket.d.cts +245 -0
  331. package/dist/types/bucket.d.cts.map +1 -0
  332. package/dist/types/bucket.d.ts +245 -0
  333. package/dist/types/bucket.d.ts.map +1 -0
  334. package/dist/types/bucket.js +44 -0
  335. package/dist/types/bucket.js.map +1 -0
  336. package/dist/types/download.d.cts +110 -0
  337. package/dist/types/download.d.cts.map +1 -0
  338. package/dist/types/download.d.ts +110 -0
  339. package/dist/types/download.d.ts.map +1 -0
  340. package/dist/types/encryption.cjs +343 -0
  341. package/dist/types/encryption.cjs.map +1 -0
  342. package/dist/types/encryption.d.cts +132 -0
  343. package/dist/types/encryption.d.cts.map +1 -0
  344. package/dist/types/encryption.d.ts +132 -0
  345. package/dist/types/encryption.d.ts.map +1 -0
  346. package/dist/types/encryption.js +321 -0
  347. package/dist/types/encryption.js.map +1 -0
  348. package/dist/types/errors.d.cts +16 -0
  349. package/dist/types/errors.d.cts.map +1 -0
  350. package/dist/types/errors.d.ts +16 -0
  351. package/dist/types/errors.d.ts.map +1 -0
  352. package/dist/types/file.cjs +23 -0
  353. package/dist/types/file.cjs.map +1 -0
  354. package/dist/types/file.d.cts +220 -0
  355. package/dist/types/file.d.cts.map +1 -0
  356. package/dist/types/file.d.ts +220 -0
  357. package/dist/types/file.d.ts.map +1 -0
  358. package/dist/types/file.js +23 -0
  359. package/dist/types/file.js.map +1 -0
  360. package/dist/types/ids.cjs +27 -0
  361. package/dist/types/ids.cjs.map +1 -0
  362. package/dist/types/ids.d.cts +84 -0
  363. package/dist/types/ids.d.cts.map +1 -0
  364. package/dist/types/ids.d.ts +84 -0
  365. package/dist/types/ids.d.ts.map +1 -0
  366. package/dist/types/ids.js +27 -0
  367. package/dist/types/ids.js.map +1 -0
  368. package/dist/types/index.d.cts +25 -0
  369. package/dist/types/index.d.cts.map +1 -0
  370. package/dist/types/index.d.ts +25 -0
  371. package/dist/types/index.d.ts.map +1 -0
  372. package/dist/types/key.d.cts +84 -0
  373. package/dist/types/key.d.cts.map +1 -0
  374. package/dist/types/key.d.ts +84 -0
  375. package/dist/types/key.d.ts.map +1 -0
  376. package/dist/types/lock.cjs +17 -0
  377. package/dist/types/lock.cjs.map +1 -0
  378. package/dist/types/lock.d.cts +92 -0
  379. package/dist/types/lock.d.cts.map +1 -0
  380. package/dist/types/lock.d.ts +92 -0
  381. package/dist/types/lock.d.ts.map +1 -0
  382. package/dist/types/lock.js +17 -0
  383. package/dist/types/lock.js.map +1 -0
  384. package/dist/types/notifications.cjs +24 -0
  385. package/dist/types/notifications.cjs.map +1 -0
  386. package/dist/types/notifications.d.cts +97 -0
  387. package/dist/types/notifications.d.cts.map +1 -0
  388. package/dist/types/notifications.d.ts +97 -0
  389. package/dist/types/notifications.d.ts.map +1 -0
  390. package/dist/types/notifications.js +24 -0
  391. package/dist/types/notifications.js.map +1 -0
  392. package/dist/types/replication.d.cts +42 -0
  393. package/dist/types/replication.d.cts.map +1 -0
  394. package/dist/types/replication.d.ts +42 -0
  395. package/dist/types/replication.d.ts.map +1 -0
  396. package/dist/types/upload.d.cts +219 -0
  397. package/dist/types/upload.d.cts.map +1 -0
  398. package/dist/types/upload.d.ts +219 -0
  399. package/dist/types/upload.d.ts.map +1 -0
  400. package/dist/upload/cancel.cjs +10 -0
  401. package/dist/upload/cancel.cjs.map +1 -0
  402. package/dist/upload/cancel.d.cts +23 -0
  403. package/dist/upload/cancel.d.cts.map +1 -0
  404. package/dist/upload/cancel.d.ts +23 -0
  405. package/dist/upload/cancel.d.ts.map +1 -0
  406. package/dist/upload/cancel.js +10 -0
  407. package/dist/upload/cancel.js.map +1 -0
  408. package/dist/upload/concurrency.cjs +54 -0
  409. package/dist/upload/concurrency.cjs.map +1 -0
  410. package/dist/upload/concurrency.d.cts +46 -0
  411. package/dist/upload/concurrency.d.cts.map +1 -0
  412. package/dist/upload/concurrency.d.ts +46 -0
  413. package/dist/upload/concurrency.d.ts.map +1 -0
  414. package/dist/upload/concurrency.js +54 -0
  415. package/dist/upload/concurrency.js.map +1 -0
  416. package/dist/upload/large.cjs +222 -0
  417. package/dist/upload/large.cjs.map +1 -0
  418. package/dist/upload/large.d.cts +71 -0
  419. package/dist/upload/large.d.cts.map +1 -0
  420. package/dist/upload/large.d.ts +71 -0
  421. package/dist/upload/large.d.ts.map +1 -0
  422. package/dist/upload/large.js +222 -0
  423. package/dist/upload/large.js.map +1 -0
  424. package/dist/upload/resume.cjs +34 -0
  425. package/dist/upload/resume.cjs.map +1 -0
  426. package/dist/upload/resume.d.cts +33 -0
  427. package/dist/upload/resume.d.cts.map +1 -0
  428. package/dist/upload/resume.d.ts +33 -0
  429. package/dist/upload/resume.d.ts.map +1 -0
  430. package/dist/upload/resume.js +34 -0
  431. package/dist/upload/resume.js.map +1 -0
  432. package/dist/upload/single.cjs +47 -0
  433. package/dist/upload/single.cjs.map +1 -0
  434. package/dist/upload/single.d.cts +51 -0
  435. package/dist/upload/single.d.cts.map +1 -0
  436. package/dist/upload/single.d.ts +51 -0
  437. package/dist/upload/single.d.ts.map +1 -0
  438. package/dist/upload/single.js +47 -0
  439. package/dist/upload/single.js.map +1 -0
  440. package/dist/upload/stream.cjs +198 -0
  441. package/dist/upload/stream.cjs.map +1 -0
  442. package/dist/upload/stream.d.cts +61 -0
  443. package/dist/upload/stream.d.cts.map +1 -0
  444. package/dist/upload/stream.d.ts +61 -0
  445. package/dist/upload/stream.d.ts.map +1 -0
  446. package/dist/upload/stream.js +198 -0
  447. package/dist/upload/stream.js.map +1 -0
  448. package/dist/util/best-effort.cjs +10 -0
  449. package/dist/util/best-effort.cjs.map +1 -0
  450. package/dist/util/best-effort.d.cts +31 -0
  451. package/dist/util/best-effort.d.cts.map +1 -0
  452. package/dist/util/best-effort.d.ts +31 -0
  453. package/dist/util/best-effort.d.ts.map +1 -0
  454. package/dist/util/best-effort.js +10 -0
  455. package/dist/util/best-effort.js.map +1 -0
  456. package/dist/util/defaults.cjs +11 -0
  457. package/dist/util/defaults.cjs.map +1 -0
  458. package/dist/util/defaults.d.cts +54 -0
  459. package/dist/util/defaults.d.cts.map +1 -0
  460. package/dist/util/defaults.d.ts +54 -0
  461. package/dist/util/defaults.d.ts.map +1 -0
  462. package/dist/util/defaults.js +11 -0
  463. package/dist/util/defaults.js.map +1 -0
  464. package/dist/util/normalize.cjs +16 -0
  465. package/dist/util/normalize.cjs.map +1 -0
  466. package/dist/util/normalize.d.cts +62 -0
  467. package/dist/util/normalize.d.cts.map +1 -0
  468. package/dist/util/normalize.d.ts +62 -0
  469. package/dist/util/normalize.d.ts.map +1 -0
  470. package/dist/util/normalize.js +16 -0
  471. package/dist/util/normalize.js.map +1 -0
  472. package/dist/util/paginator.cjs +20 -0
  473. package/dist/util/paginator.cjs.map +1 -0
  474. package/dist/util/paginator.d.cts +120 -0
  475. package/dist/util/paginator.d.cts.map +1 -0
  476. package/dist/util/paginator.d.ts +120 -0
  477. package/dist/util/paginator.d.ts.map +1 -0
  478. package/dist/util/paginator.js +20 -0
  479. package/dist/util/paginator.js.map +1 -0
  480. package/dist/util/plan-ranges.cjs +28 -0
  481. package/dist/util/plan-ranges.cjs.map +1 -0
  482. package/dist/util/plan-ranges.d.cts +56 -0
  483. package/dist/util/plan-ranges.d.cts.map +1 -0
  484. package/dist/util/plan-ranges.d.ts +56 -0
  485. package/dist/util/plan-ranges.d.ts.map +1 -0
  486. package/dist/util/plan-ranges.js +28 -0
  487. package/dist/util/plan-ranges.js.map +1 -0
  488. package/dist/util/text-codec.cjs +7 -0
  489. package/dist/util/text-codec.cjs.map +1 -0
  490. package/dist/util/text-codec.d.cts +26 -0
  491. package/dist/util/text-codec.d.cts.map +1 -0
  492. package/dist/util/text-codec.d.ts +26 -0
  493. package/dist/util/text-codec.d.ts.map +1 -0
  494. package/dist/util/text-codec.js +7 -0
  495. package/dist/util/text-codec.js.map +1 -0
  496. package/dist/util/to-error.cjs +7 -0
  497. package/dist/util/to-error.cjs.map +1 -0
  498. package/dist/util/to-error.d.cts +15 -0
  499. package/dist/util/to-error.d.cts.map +1 -0
  500. package/dist/util/to-error.d.ts +15 -0
  501. package/dist/util/to-error.d.ts.map +1 -0
  502. package/dist/util/to-error.js +7 -0
  503. package/dist/util/to-error.js.map +1 -0
  504. package/dist/version.cjs +6 -0
  505. package/dist/version.cjs.map +1 -0
  506. package/dist/version.d.cts +14 -0
  507. package/dist/version.d.cts.map +1 -0
  508. package/dist/version.d.ts +14 -0
  509. package/dist/version.d.ts.map +1 -0
  510. package/dist/version.js +6 -0
  511. package/dist/version.js.map +1 -0
  512. package/package.json +198 -0
@@ -0,0 +1,659 @@
1
+ import { B2Client } from './client.js';
2
+ import { DownloadResult, HeadResult } from './download/single.js';
3
+ import { B2Object, DownloadCallOptions, HeadCallOptions } from './object.js';
4
+ import { ProgressListener } from './streams/progress.js';
5
+ import { ContentSource } from './streams/source.js';
6
+ import { BucketInfo, BucketRetentionPolicy, BucketType, CorsRule, LifecycleRule } from './types/bucket.js';
7
+ import { DownloadAuthorizationResponse } from './types/download.js';
8
+ import { EncryptionSetting } from './types/encryption.js';
9
+ import { FileVersion, ListFileNamesResponse, ListFileVersionsResponse, MetadataDirective } from './types/file.js';
10
+ import { ApplicationKeyId, BucketId, FileId, LargeFileId } from './types/ids.js';
11
+ import { FileRetentionValue, LegalHoldValue } from './types/lock.js';
12
+ import { EventNotificationRule, GetBucketNotificationRulesResponse } from './types/notifications.js';
13
+ import { ReplicationConfiguration, ReplicationRule } from './types/replication.js';
14
+ import { CancelLargeFileResponse, PartInfo, UnfinishedLargeFile } from './types/upload.js';
15
+ import { PaginatorOptions } from './util/paginator.js';
16
+ /** A target for bulk deletion: a file name and its specific version ID. */
17
+ export interface DeleteTarget {
18
+ /** File name (path) of the version to delete. */
19
+ readonly fileName: string;
20
+ /** Unique identifier of the file version. */
21
+ readonly fileId: FileId;
22
+ }
23
+ /** Per-target error encountered during bulk deletion. */
24
+ export interface DeleteError {
25
+ /** The target that failed. */
26
+ readonly target: DeleteTarget;
27
+ /** The error thrown by the underlying `deleteFileVersion` call. */
28
+ readonly error: Error;
29
+ }
30
+ /** Aggregate result of a {@link Bucket.deleteMany} run. */
31
+ export interface DeleteManyResult {
32
+ /** Number of file versions successfully deleted. */
33
+ readonly deleted: number;
34
+ /** Per-target failures. Empty on full success. */
35
+ readonly errors: readonly DeleteError[];
36
+ }
37
+ /** Emitted by {@link Bucket.deleteAll} once a file version has been successfully deleted. */
38
+ export interface DeleteAllDeleteEvent {
39
+ /** Discriminant identifying a successful delete. */
40
+ readonly type: 'delete';
41
+ /** File name of the deleted version. */
42
+ readonly fileName: string;
43
+ /** Unique identifier of the deleted version. */
44
+ readonly fileId: FileId;
45
+ }
46
+ /** Emitted by {@link Bucket.deleteAll} when a single delete call fails (other versions keep streaming). */
47
+ export interface DeleteAllErrorEvent {
48
+ /** Discriminant identifying a per-version delete failure. */
49
+ readonly type: 'error';
50
+ /** File name of the version that failed to delete. */
51
+ readonly fileName: string;
52
+ /** Unique identifier of the version that failed to delete. */
53
+ readonly fileId: FileId;
54
+ /** Human-readable failure reason taken from the underlying error. */
55
+ readonly message: string;
56
+ }
57
+ /** Emitted by {@link Bucket.deleteAll} in `dryRun` mode for every version that would have been deleted. */
58
+ export interface DeleteAllSkipEvent {
59
+ /** Discriminant identifying a dry-run skip. */
60
+ readonly type: 'skip';
61
+ /** File name of the version that would have been deleted. */
62
+ readonly fileName: string;
63
+ /** Unique identifier of the version that would have been deleted. */
64
+ readonly fileId: FileId;
65
+ }
66
+ /** Event yielded by {@link Bucket.deleteAll} as it streams through file versions. */
67
+ export type DeleteAllEvent = DeleteAllDeleteEvent | DeleteAllErrorEvent | DeleteAllSkipEvent;
68
+ /**
69
+ * Handle to a B2 bucket providing upload, download, listing, and management operations.
70
+ *
71
+ * Obtained via {@link B2Client.createBucket}, {@link B2Client.listBuckets}, or {@link B2Client.getBucket}.
72
+ *
73
+ * @example
74
+ * ```ts
75
+ * const bucket = await client.getBucket('my-bucket')
76
+ * await bucket.upload({ fileName: 'hello.txt', source: new BufferSource(data) })
77
+ * ```
78
+ */
79
+ export declare class Bucket {
80
+ /** Unique identifier for this bucket. */
81
+ readonly id: BucketId;
82
+ /** Human-readable bucket name. */
83
+ readonly name: string;
84
+ /** Full bucket metadata as returned by the B2 API. */
85
+ readonly info: BucketInfo;
86
+ private readonly client;
87
+ /**
88
+ * @param client - The parent B2Client instance.
89
+ * @param info - The bucket metadata from the API.
90
+ *
91
+ * @internal
92
+ */
93
+ constructor(client: B2Client, info: BucketInfo);
94
+ /**
95
+ * Returns a {@link B2Object} handle for a specific file name in this bucket.
96
+ * @param fileName - The file path within the bucket.
97
+ *
98
+ * @returns A B2Object handle bound to this bucket and file name.
99
+ */
100
+ file(fileName: string): B2Object;
101
+ /**
102
+ * Uploads a file to this bucket. Automatically uses multipart upload for files
103
+ * larger than the recommended part size.
104
+ * @param options - Upload configuration including file name, source data, and optional settings.
105
+ *
106
+ * @returns Metadata for the uploaded file version.
107
+ */
108
+ upload(options: {
109
+ /** Destination file name (path) in the bucket. */
110
+ fileName: string;
111
+ /** Data source to upload. Use {@link BufferSource}, {@link BlobSource}, or {@link StreamSource}. */
112
+ source: ContentSource;
113
+ /** MIME type. Defaults to `"b2/x-auto"` (auto-detected by B2). */
114
+ contentType?: string;
115
+ /** Custom key-value metadata stored with the file. */
116
+ fileInfo?: Record<string, string>;
117
+ /** Server-side encryption settings. */
118
+ serverSideEncryption?: EncryptionSetting;
119
+ /** File retention policy (requires file lock on the bucket). */
120
+ fileRetention?: FileRetentionValue;
121
+ /** Legal hold status for the file. */
122
+ legalHold?: LegalHoldValue;
123
+ /** Last-modified timestamp in milliseconds since epoch. */
124
+ lastModifiedMillis?: number;
125
+ /** Part size override for multipart uploads, in bytes. */
126
+ partSize?: number;
127
+ /** Number of concurrent part uploads for large files. */
128
+ concurrency?: number;
129
+ /** Callback invoked with upload progress events. */
130
+ onProgress?: ProgressListener;
131
+ /** Abort signal for cancelling the upload. */
132
+ signal?: AbortSignal;
133
+ /**
134
+ * Resume an unfinished multipart upload for this file name when one
135
+ * exists. Only consulted on the large-file path (source size
136
+ * greater than `recommendedPartSize`). On the small-file path this
137
+ * option is silently ignored. Sliceable sources only — `StreamSource`
138
+ * rejects resume because it can't replay parts.
139
+ */
140
+ resume?: boolean;
141
+ /**
142
+ * Resume into a specific large-file ID. Overrides the `resume`
143
+ * discovery path. The local `partSize` must match the server-side
144
+ * plan.
145
+ */
146
+ resumeFileId?: LargeFileId;
147
+ }): Promise<FileVersion>;
148
+ /**
149
+ * Downloads a file from this bucket by name. Pass `method: 'HEAD'` in
150
+ * `options` to fetch only the response headers (file metadata) without
151
+ * streaming the body.
152
+ * @param fileName - The file name (path) to download.
153
+ * @param options - Optional method, range, SSE-C decryption, response-header overrides, and abort signal.
154
+ *
155
+ * @returns The download result containing response headers and a readable body stream.
156
+ */
157
+ download(fileName: string, options?: DownloadCallOptions): Promise<DownloadResult>;
158
+ /**
159
+ * Fetches the response headers (file metadata) for a file via HTTP
160
+ * HEAD. Returns a body-less result so callers never have to drain
161
+ * the (logically empty) HEAD body themselves.
162
+ *
163
+ * Use this for metadata-only checks like "does this file exist", "what
164
+ * is its current SHA-1", "what is its Content-Length". For full file
165
+ * retrieval use {@link Bucket.download}.
166
+ *
167
+ * @param fileName - The file name (path) to inspect.
168
+ * @param options - Optional range, SSE-C decryption, response-header
169
+ * overrides, and abort signal. Same shape as {@link Bucket.download}'s
170
+ * options minus `method` (always HEAD) and `onProgress` (no body).
171
+ *
172
+ * @returns Parsed download headers (content type, SHA-1, file info, etc.).
173
+ *
174
+ * @example
175
+ * ```ts
176
+ * const { headers } = await bucket.head('photos/2026/sunset.jpg')
177
+ * console.log(headers.contentLength, headers.contentSha1)
178
+ * ```
179
+ */
180
+ head(fileName: string, options?: HeadCallOptions): Promise<HeadResult>;
181
+ /**
182
+ * Lists file names in this bucket (most recent versions only).
183
+ * @param options - Optional filtering and pagination settings.
184
+ *
185
+ * @returns A page of file versions with an optional continuation token.
186
+ */
187
+ listFileNames(options?: {
188
+ /** Start listing after this file name (for pagination). */
189
+ startFileName?: string;
190
+ /**
191
+ * Maximum number of files to return per request (1-10000).
192
+ * Forwarded to the raw API's `maxFileCount` parameter.
193
+ */
194
+ pageSize?: number;
195
+ /** Only list files with names starting with this prefix. */
196
+ prefix?: string;
197
+ /** Delimiter for virtual directory grouping (typically `"/"`). */
198
+ delimiter?: string;
199
+ }): Promise<ListFileNamesResponse>;
200
+ /**
201
+ * Lists all file versions in this bucket, including hidden files.
202
+ * @param options - Optional filtering and pagination settings.
203
+ *
204
+ * @returns A page of file versions with an optional continuation token.
205
+ */
206
+ listFileVersions(options?: {
207
+ /** Start listing after this file name (for pagination). */
208
+ startFileName?: string;
209
+ /** Start listing after this file ID (for pagination within a file name). */
210
+ startFileId?: FileId;
211
+ /**
212
+ * Maximum number of file versions to return per request (1-10000).
213
+ * Forwarded to the raw API's `maxFileCount` parameter.
214
+ */
215
+ pageSize?: number;
216
+ /** Only list files with names starting with this prefix. */
217
+ prefix?: string;
218
+ /** Delimiter for virtual directory grouping. */
219
+ delimiter?: string;
220
+ }): Promise<ListFileVersionsResponse>;
221
+ /**
222
+ * Async iterator that yields the latest visible version of every file in
223
+ * the bucket, automatically handling pagination via `listFileNames`.
224
+ *
225
+ * Hidden files (those whose latest version is a hide marker) are NOT
226
+ * yielded by this iterator. Use {@link paginateFileVersions} when you
227
+ * need full version history.
228
+ *
229
+ * @param options - Filter + pagination + abort options. `pageSize` is
230
+ * forwarded to `b2_list_file_names`'s `maxFileCount` (default 1000,
231
+ * B2-capped at 10000).
232
+ *
233
+ * @returns An async iterable of {@link FileVersion} entries.
234
+ *
235
+ * @example
236
+ * ```ts
237
+ * for await (const file of bucket.paginateFileNames({ prefix: 'photos/' })) {
238
+ * console.log(file.fileName, file.contentLength)
239
+ * }
240
+ * ```
241
+ */
242
+ paginateFileNames(options?: {
243
+ /** Only yield files whose names start with this prefix. */
244
+ prefix?: string;
245
+ /** Delimiter for virtual directory grouping (typically `'/'`). */
246
+ delimiter?: string;
247
+ } & PaginatorOptions): AsyncIterableIterator<FileVersion>;
248
+ /**
249
+ * Async iterator that yields every version of every file in the bucket,
250
+ * including hidden files and historical versions, automatically handling
251
+ * pagination via `listFileVersions`.
252
+ *
253
+ * The two-cursor `(nextFileName, nextFileId)` continuation that the raw
254
+ * endpoint exposes is threaded internally; callers iterate flat.
255
+ *
256
+ * @param options - Filter + pagination + abort options.
257
+ *
258
+ * @returns An async iterable of {@link FileVersion} entries.
259
+ */
260
+ paginateFileVersions(options?: {
261
+ /** Only yield versions whose names start with this prefix. */
262
+ prefix?: string;
263
+ /** Delimiter for virtual directory grouping. */
264
+ delimiter?: string;
265
+ } & PaginatorOptions): AsyncIterableIterator<FileVersion>;
266
+ /**
267
+ * Async iterator that yields every unfinished large file in the bucket,
268
+ * automatically handling pagination via `listUnfinishedLargeFiles`.
269
+ *
270
+ * Useful for janitorial scripts that want to inspect or cancel abandoned
271
+ * multipart uploads (typically followed by {@link cancelLargeFile} on
272
+ * the underlying raw client).
273
+ *
274
+ * @param options - Filter + pagination + abort options. `pageSize` is
275
+ * B2-capped at 100 for this endpoint.
276
+ *
277
+ * @returns An async iterable of unfinished-large-file metadata entries.
278
+ */
279
+ paginateUnfinishedLargeFiles(options?: {
280
+ /** Only yield large files whose names start with this prefix. */
281
+ namePrefix?: string;
282
+ } & PaginatorOptions): AsyncIterableIterator<UnfinishedLargeFile>;
283
+ /**
284
+ * Async iterator that yields every uploaded part for a specific large
285
+ * file, automatically handling pagination via `listParts`.
286
+ *
287
+ * @param largeFileId - The unfinished large file to enumerate parts of.
288
+ * @param options - Pagination + abort options. `pageSize` is B2-capped
289
+ * at 1000 for this endpoint; the default is 1000.
290
+ *
291
+ * @returns An async iterable of {@link PartInfo} entries.
292
+ */
293
+ paginateParts(largeFileId: LargeFileId, options?: PaginatorOptions): AsyncIterableIterator<PartInfo>;
294
+ /**
295
+ * Looks up the latest visible version of a file by name.
296
+ * Uses `listFileNames` under the hood; returns `null` when the file does not
297
+ * exist or its latest version is a hide marker.
298
+ * @param fileName - The exact file path to look up.
299
+ *
300
+ * @returns The latest {@link FileVersion}, or `null` if not found.
301
+ */
302
+ getFileInfoByName(fileName: string): Promise<FileVersion | null>;
303
+ /**
304
+ * Removes the latest hide marker for a file, restoring visibility of the
305
+ * previous upload. Returns the deleted hide marker, or `null` if there was
306
+ * no hide marker to remove (file is already visible or does not exist).
307
+ * @param fileName - The file path to unhide.
308
+ *
309
+ * @returns The deleted hide marker version, or `null` if nothing was hidden.
310
+ */
311
+ unhideFile(fileName: string): Promise<FileVersion | null>;
312
+ /**
313
+ * Hides a file by creating a hide marker. The file remains in version history but is no longer visible in `listFileNames`.
314
+ * @param fileName - The file path to hide.
315
+ *
316
+ * @returns Metadata for the newly created hide marker.
317
+ */
318
+ hideFile(fileName: string): Promise<FileVersion>;
319
+ /**
320
+ * Permanently deletes a specific file version. Both file name and file ID are required.
321
+ *
322
+ * If the file is under Object Lock retention, B2 will reject the
323
+ * delete: compliance-mode files cannot be deleted until the retention
324
+ * expires; governance-mode files require `bypassGovernance: true`
325
+ * AND a calling key with the `bypassGovernance` capability. Files on
326
+ * legal hold cannot be deleted by anyone until the hold is removed.
327
+ *
328
+ * @param fileName - The file path of the version to delete.
329
+ * @param fileId - The unique identifier of the file version to delete.
330
+ * @param options - Optional flag for bypassing governance retention.
331
+ */
332
+ deleteFileVersion(fileName: string, fileId: FileId, options?: {
333
+ bypassGovernance?: boolean;
334
+ }): Promise<void>;
335
+ /**
336
+ * Cancels an in-progress large file upload so the partial parts are not
337
+ * retained or billed. The most common reason to call this is to clean up
338
+ * abandoned multipart uploads surfaced by {@link listUnfinishedLargeFiles}.
339
+ * @param fileId - The unique identifier of the unfinished large file to cancel.
340
+ *
341
+ * @returns Metadata about the cancelled large file.
342
+ */
343
+ cancelLargeFile(fileId: LargeFileId): Promise<CancelLargeFileResponse>;
344
+ /**
345
+ * Lists large files in this bucket that were started but never finished or
346
+ * cancelled. Wraps `b2_list_unfinished_large_files`.
347
+ * @param options - Optional pagination filters.
348
+ *
349
+ * @returns The page of unfinished large files plus a continuation token.
350
+ */
351
+ listUnfinishedLargeFiles(options?: {
352
+ /** Restrict results to files whose name starts with this prefix. */
353
+ namePrefix?: string;
354
+ /** Start listing after this file ID (for pagination). */
355
+ startFileId?: LargeFileId;
356
+ /**
357
+ * Maximum number of files to return per request (1-100). Forwarded
358
+ * to the raw API's `maxFileCount` parameter.
359
+ */
360
+ pageSize?: number;
361
+ }): Promise<import('./index.js').ListUnfinishedLargeFilesResponse>;
362
+ /**
363
+ * Deletes many file versions with bounded concurrency. Errors from individual
364
+ * deletes are collected and returned rather than thrown, so partial success
365
+ * does not abort the run.
366
+ *
367
+ * When `options.signal` is supplied and aborted, in-flight deletes
368
+ * complete (they're already on the wire), but no new deletes start
369
+ * after the abort fires. Subsequent targets are short-circuited to an
370
+ * error entry so the result tally reflects what actually happened.
371
+ * @param targets - File versions to delete.
372
+ * @param options - Optional concurrency override and abort signal.
373
+ * Concurrency defaults to the SDK-wide bulk-metadata setting
374
+ * (currently 10, higher than transfer concurrency because each
375
+ * task is a single tiny API round-trip).
376
+ *
377
+ * @returns A summary of successes and per-target errors.
378
+ */
379
+ deleteMany(targets: readonly DeleteTarget[], options?: {
380
+ concurrency?: number;
381
+ signal?: AbortSignal;
382
+ }): Promise<DeleteManyResult>;
383
+ /**
384
+ * Async generator that streams every file version in the bucket (optionally
385
+ * filtered by prefix) and deletes each one. Yields a {@link DeleteAllEvent}
386
+ * per file version. With `dryRun: true`, no deletes are performed but `skip`
387
+ * events are still emitted.
388
+ * @param options - Optional prefix filter, page size, and dry-run flag.
389
+ *
390
+ * @returns An async generator of per-file events.
391
+ */
392
+ deleteAll(options?: {
393
+ /** Only delete file versions whose names start with this prefix. */
394
+ prefix?: string;
395
+ /** Number of file versions fetched per API page (default 1000). */
396
+ pageSize?: number;
397
+ /** If true, yield `skip` events without actually deleting anything. */
398
+ dryRun?: boolean;
399
+ }): AsyncGenerator<DeleteAllEvent>;
400
+ /**
401
+ * Creates a server-side copy of a file within or across buckets.
402
+ * @param options - Copy configuration including source file ID and destination name.
403
+ *
404
+ * @returns Metadata for the newly created file version.
405
+ */
406
+ copyFile(options: {
407
+ /** File ID of the source file to copy. */
408
+ sourceFileId: FileId;
409
+ /** Destination file name in the target bucket. */
410
+ fileName: string;
411
+ /** Target bucket ID. Defaults to this bucket if omitted. */
412
+ destinationBucketId?: BucketId;
413
+ /** Whether to copy or replace file metadata. */
414
+ metadataDirective?: MetadataDirective;
415
+ /** Override content type (only with `REPLACE` metadata directive). */
416
+ contentType?: string;
417
+ /** Override file info (only with `REPLACE` metadata directive). */
418
+ fileInfo?: Record<string, string>;
419
+ /** Server-side encryption for the destination file. */
420
+ serverSideEncryption?: EncryptionSetting;
421
+ }): Promise<FileVersion>;
422
+ /**
423
+ * Copies a file via the server-side multipart protocol. Each part is copied
424
+ * by reference through `b2_copy_part`; data never traverses the client. Falls
425
+ * back to a single `copyFile` call when the source fits within a single part.
426
+ * @param options - Copy parameters including source file ID, destination name, part size, and concurrency.
427
+ *
428
+ * @returns Metadata for the newly created destination file version.
429
+ */
430
+ copyLargeFile(options: {
431
+ /** File ID of the source file to copy. */
432
+ sourceFileId: FileId;
433
+ /** Destination file name in the target bucket. */
434
+ fileName: string;
435
+ /** Target bucket ID. Defaults to this bucket if omitted. */
436
+ destinationBucketId?: BucketId;
437
+ /** Override content type for the destination. */
438
+ contentType?: string;
439
+ /** Custom file info for the destination. */
440
+ fileInfo?: Record<string, string>;
441
+ /** Server-side encryption for the destination file. */
442
+ destinationServerSideEncryption?: EncryptionSetting;
443
+ /** SSE-C settings for the source if it was uploaded with SSE-C. */
444
+ sourceServerSideEncryption?: EncryptionSetting;
445
+ /** Part size in bytes. Defaults to the account's recommended part size. */
446
+ partSize?: number;
447
+ /**
448
+ * Maximum number of parts copied in parallel. Defaults to the
449
+ * SDK-wide transfer concurrency.
450
+ */
451
+ concurrency?: number;
452
+ /**
453
+ * Optional abort signal. Aborting cancels any remaining parts and
454
+ * triggers a best-effort `cancelLargeFile` on the unfinished upload.
455
+ */
456
+ signal?: AbortSignal;
457
+ }): Promise<FileVersion>;
458
+ /**
459
+ * Updates bucket settings such as type, CORS, lifecycle rules, and encryption.
460
+ * @param options - Fields to update. Omitted fields are left unchanged.
461
+ *
462
+ * @returns Updated bucket metadata.
463
+ */
464
+ update(options: {
465
+ /** Change the bucket access level. */
466
+ bucketType?: BucketType;
467
+ /** Replace custom bucket metadata. */
468
+ bucketInfo?: Record<string, string>;
469
+ /** Replace CORS rules. */
470
+ corsRules?: CorsRule[];
471
+ /** Change default server-side encryption. */
472
+ defaultServerSideEncryption?: EncryptionSetting;
473
+ /** Change default file retention policy. */
474
+ defaultRetention?: BucketRetentionPolicy;
475
+ /** Replace lifecycle rules. */
476
+ lifecycleRules?: LifecycleRule[];
477
+ /** Update replication configuration. */
478
+ replicationConfiguration?: ReplicationConfiguration;
479
+ /** Optimistic locking: only update if the bucket revision matches. */
480
+ ifRevisionIs?: number;
481
+ }): Promise<BucketInfo>;
482
+ /**
483
+ * Permanently deletes this bucket. The bucket must be empty (no file versions).
484
+ *
485
+ * @returns The deleted bucket metadata.
486
+ */
487
+ delete(): Promise<BucketInfo>;
488
+ /**
489
+ * Gets a download authorization token scoped to a file name prefix in this bucket.
490
+ * @param fileNamePrefix - Only authorize downloads of files starting with this prefix.
491
+ * @param validDurationInSeconds - How long the authorization is valid (1-604800 seconds).
492
+ *
493
+ * @returns The download authorization response containing a time-limited token.
494
+ */
495
+ getDownloadAuthorization(fileNamePrefix: string, validDurationInSeconds: number): Promise<DownloadAuthorizationResponse>;
496
+ /**
497
+ * Gets the event notification rules configured for this bucket.
498
+ *
499
+ * @returns The current notification rules for this bucket.
500
+ */
501
+ getNotificationRules(): Promise<GetBucketNotificationRulesResponse>;
502
+ /**
503
+ * Replaces the event notification rules for this bucket.
504
+ * @param rules - The new set of notification rules to apply.
505
+ *
506
+ * @returns The updated notification rules for this bucket.
507
+ */
508
+ setNotificationRules(rules: EventNotificationRule[]): Promise<GetBucketNotificationRulesResponse>;
509
+ /**
510
+ * Updates the file retention policy for a specific file version. Requires file lock on the bucket.
511
+ * @param fileName - The file path of the version to update.
512
+ * @param fileId - The unique identifier of the file version.
513
+ * @param retention - The new retention policy to apply.
514
+ * @param options - Optional flags. Set `bypassGovernance: true` to shorten governance-mode retention.
515
+ *
516
+ * @returns The updated file retention metadata.
517
+ */
518
+ updateFileRetention(fileName: string, fileId: FileId, retention: FileRetentionValue, options?: {
519
+ bypassGovernance?: boolean;
520
+ }): Promise<import('./index.js').UpdateFileRetentionResponse>;
521
+ /**
522
+ * Updates the legal hold status for a specific file version. Requires file lock on the bucket.
523
+ * @param fileName - The file path of the version to update.
524
+ * @param fileId - The unique identifier of the file version.
525
+ * @param legalHold - The new legal hold status to apply.
526
+ *
527
+ * @returns The updated legal hold metadata.
528
+ */
529
+ updateFileLegalHold(fileName: string, fileId: FileId, legalHold: LegalHoldValue): Promise<import('./index.js').UpdateFileLegalHoldResponse>;
530
+ /**
531
+ * Refetches this bucket's metadata from B2 so callers operating on
532
+ * replication / lifecycle / retention configuration always start from the
533
+ * server-of-record state.
534
+ *
535
+ * Bucket configuration is monotonically revisioned by B2: B2 increments
536
+ * `revision` on every accepted update. The local {@link info} snapshot
537
+ * captured at construction time goes stale as soon as anyone else (or any
538
+ * prior `update()` call) mutates the bucket, so the ergonomic
539
+ * add/remove helpers below always refresh before composing the next
540
+ * `setX()` call. The result is that each helper is safe to call without
541
+ * the caller having to thread BucketInfo through their code.
542
+ *
543
+ * @returns Fresh {@link BucketInfo} for this bucket.
544
+ *
545
+ * @throws If the bucket no longer exists.
546
+ */
547
+ private refresh;
548
+ /**
549
+ * Returns the current cross-region replication configuration, refetched
550
+ * from B2.
551
+ *
552
+ * Use this when you need to read replication state without composing a
553
+ * write. For add/remove flows the helper methods below handle the
554
+ * refresh-then-set sequence for you.
555
+ *
556
+ * @returns The current {@link ReplicationConfiguration}.
557
+ */
558
+ getReplication(): Promise<ReplicationConfiguration>;
559
+ /**
560
+ * Replaces this bucket's complete replication configuration.
561
+ * @param replication - The new configuration. Pass an empty source/destination
562
+ * pair (`{ asReplicationSource: null, asReplicationDestination: null }`)
563
+ * to clear replication entirely.
564
+ *
565
+ * @returns The updated bucket metadata.
566
+ */
567
+ setReplication(replication: ReplicationConfiguration): Promise<BucketInfo>;
568
+ /**
569
+ * Adds (or replaces by `replicationRuleName`) a single replication rule
570
+ * on this bucket while leaving any other rules, the source key, and the
571
+ * destination key mapping untouched.
572
+ *
573
+ * When this is the very first source-side rule, `sourceApplicationKeyId`
574
+ * must be supplied to seed `asReplicationSource.sourceApplicationKeyId`;
575
+ * for subsequent calls the existing source key is reused unless the
576
+ * caller explicitly overrides it.
577
+ *
578
+ * @param rule - The replication rule to add or replace.
579
+ * @param options - Optional source application key ID override (or seed
580
+ * when no source side exists yet).
581
+ *
582
+ * @returns The updated bucket metadata.
583
+ *
584
+ * @throws If no source-side replication exists yet and the caller did
585
+ * not supply `sourceApplicationKeyId`.
586
+ */
587
+ addReplicationRule(rule: ReplicationRule, options?: {
588
+ sourceApplicationKeyId?: ApplicationKeyId;
589
+ }): Promise<BucketInfo>;
590
+ /**
591
+ * Removes a single replication rule by name. No-ops cleanly when the rule
592
+ * is not present (returns the unchanged-but-revision-bumped bucket info).
593
+ *
594
+ * @param replicationRuleName - Name of the rule to remove.
595
+ *
596
+ * @returns The updated bucket metadata.
597
+ */
598
+ removeReplicationRule(replicationRuleName: string): Promise<BucketInfo>;
599
+ /**
600
+ * Returns the current lifecycle rules for this bucket, refetched from B2.
601
+ *
602
+ * @returns The current array of {@link LifecycleRule}s.
603
+ */
604
+ getLifecycleRules(): Promise<readonly LifecycleRule[]>;
605
+ /**
606
+ * Replaces this bucket's lifecycle rules in their entirety.
607
+ * @param rules - The new rule set. Pass `[]` to remove all lifecycle
608
+ * automation.
609
+ *
610
+ * @returns The updated bucket metadata.
611
+ */
612
+ setLifecycleRules(rules: readonly LifecycleRule[]): Promise<BucketInfo>;
613
+ /**
614
+ * Adds (or replaces, matched by `fileNamePrefix`) a single lifecycle rule
615
+ * while leaving any other rules untouched.
616
+ *
617
+ * Matching on prefix mirrors B2's own data model: each unique prefix can
618
+ * have at most one rule, and a `b2_update_bucket` call that contains two
619
+ * rules with the same prefix is rejected. The helper enforces this for
620
+ * the caller.
621
+ *
622
+ * @param rule - The lifecycle rule to add or replace.
623
+ *
624
+ * @returns The updated bucket metadata.
625
+ */
626
+ addLifecycleRule(rule: LifecycleRule): Promise<BucketInfo>;
627
+ /**
628
+ * Removes a single lifecycle rule by prefix. No-ops cleanly when the rule
629
+ * is not present.
630
+ *
631
+ * @param fileNamePrefix - The prefix of the rule to remove.
632
+ *
633
+ * @returns The updated bucket metadata.
634
+ */
635
+ removeLifecycleRule(fileNamePrefix: string): Promise<BucketInfo>;
636
+ /**
637
+ * Returns the current default Object Lock retention policy for new
638
+ * uploads to this bucket, refetched from B2.
639
+ *
640
+ * @returns The default {@link BucketRetentionPolicy} (which may be
641
+ * `{ mode: 'none', period: null }` when Object Lock is enabled on the
642
+ * bucket but no default is set).
643
+ */
644
+ getDefaultRetention(): Promise<BucketRetentionPolicy>;
645
+ /**
646
+ * Sets (or clears, by passing `{ mode: 'none', period: null }`) the
647
+ * default Object Lock retention policy applied to new uploads.
648
+ *
649
+ * Object Lock must already be enabled on the bucket. Buckets created
650
+ * without `fileLockEnabled: true` cannot accept a default retention
651
+ * policy and B2 will reject this call.
652
+ *
653
+ * @param policy - The new default retention policy.
654
+ *
655
+ * @returns The updated bucket metadata.
656
+ */
657
+ setDefaultRetention(policy: BucketRetentionPolicy): Promise<BucketInfo>;
658
+ }
659
+ //# sourceMappingURL=bucket.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bucket.d.ts","sourceRoot":"","sources":["../src/bucket.js"],"names":[],"mappings":"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"}