box-node-sdk 3.8.0 → 3.8.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (449) hide show
  1. package/README.md +89 -69
  2. package/config/package.schema.json +42 -42
  3. package/lib/api-request-manager.d.ts +0 -2
  4. package/lib/api-request-manager.js.map +1 -1
  5. package/lib/api-request.d.ts +0 -3
  6. package/lib/api-request.js.map +1 -1
  7. package/lib/box-client.d.ts +7 -7
  8. package/lib/box-client.js +6 -3
  9. package/lib/box-client.js.map +1 -1
  10. package/lib/box-node-sdk.d.ts +1 -3
  11. package/lib/box-node-sdk.js +26 -10
  12. package/lib/box-node-sdk.js.map +1 -1
  13. package/lib/chunked-uploader.d.ts +0 -5
  14. package/lib/chunked-uploader.js.map +1 -1
  15. package/lib/enterprise-event-stream.d.ts +0 -1
  16. package/lib/enterprise-event-stream.js +3 -3
  17. package/lib/enterprise-event-stream.js.map +1 -1
  18. package/lib/event-stream.d.ts +0 -2
  19. package/lib/event-stream.js.map +1 -1
  20. package/lib/managers/ai.generated.js.map +1 -1
  21. package/lib/managers/collaboration-allowlist.js.map +1 -1
  22. package/lib/managers/collaborations.d.ts +3 -3
  23. package/lib/managers/collaborations.js +23 -23
  24. package/lib/managers/collaborations.js.map +1 -1
  25. package/lib/managers/collections.js.map +1 -1
  26. package/lib/managers/comments.js.map +1 -1
  27. package/lib/managers/device-pins.js.map +1 -1
  28. package/lib/managers/enterprise.js.map +1 -1
  29. package/lib/managers/events.d.ts +0 -1
  30. package/lib/managers/events.js +3 -1
  31. package/lib/managers/events.js.map +1 -1
  32. package/lib/managers/file-requests-manager.d.ts +2 -2
  33. package/lib/managers/file-requests-manager.js +1 -1
  34. package/lib/managers/file-requests-manager.js.map +1 -1
  35. package/lib/managers/files.d.ts +1 -4
  36. package/lib/managers/files.js +6 -2
  37. package/lib/managers/files.js.map +1 -1
  38. package/lib/managers/folders.d.ts +1 -1
  39. package/lib/managers/folders.js +3 -1
  40. package/lib/managers/folders.js.map +1 -1
  41. package/lib/managers/groups.js +2 -2
  42. package/lib/managers/groups.js.map +1 -1
  43. package/lib/managers/integration-mappings.js.map +1 -1
  44. package/lib/managers/legal-hold-policies.js.map +1 -1
  45. package/lib/managers/metadata.js.map +1 -1
  46. package/lib/managers/recent-items.js.map +1 -1
  47. package/lib/managers/retention-policies.d.ts +1 -1
  48. package/lib/managers/retention-policies.js.map +1 -1
  49. package/lib/managers/search.d.ts +1 -1
  50. package/lib/managers/search.js.map +1 -1
  51. package/lib/managers/shared-items.js.map +1 -1
  52. package/lib/managers/shield-information-barrier-reports.generated.js.map +1 -1
  53. package/lib/managers/shield-information-barrier-segment-members.generated.js.map +1 -1
  54. package/lib/managers/shield-information-barrier-segment-restrictions.generated.js.map +1 -1
  55. package/lib/managers/shield-information-barrier-segments.generated.js.map +1 -1
  56. package/lib/managers/shield-information-barriers.generated.js.map +1 -1
  57. package/lib/managers/sign-requests.generated.js.map +1 -1
  58. package/lib/managers/sign-templates.generated.js.map +1 -1
  59. package/lib/managers/storage-policies.js.map +1 -1
  60. package/lib/managers/tasks.js.map +1 -1
  61. package/lib/managers/terms-of-service.js.map +1 -1
  62. package/lib/managers/trash.js.map +1 -1
  63. package/lib/managers/users.d.ts +0 -3
  64. package/lib/managers/users.js +1 -1
  65. package/lib/managers/users.js.map +1 -1
  66. package/lib/managers/web-links.js +3 -1
  67. package/lib/managers/web-links.js.map +1 -1
  68. package/lib/managers/webhooks.d.ts +11 -11
  69. package/lib/managers/webhooks.js +24 -14
  70. package/lib/managers/webhooks.js.map +1 -1
  71. package/lib/schemas/collaboration-update.d.ts +1 -1
  72. package/lib/schemas/collaboration.d.ts +3 -3
  73. package/lib/schemas/collaborations.d.ts +1 -1
  74. package/lib/schemas/file-request.d.ts +2 -2
  75. package/lib/sessions/app-auth-session.js.map +1 -1
  76. package/lib/sessions/basic-session.d.ts +0 -1
  77. package/lib/sessions/basic-session.js.map +1 -1
  78. package/lib/sessions/ccg-session.js.map +1 -1
  79. package/lib/sessions/persistent-session.js.map +1 -1
  80. package/lib/token-manager.js +4 -2
  81. package/lib/token-manager.js.map +1 -1
  82. package/lib/util/config.d.ts +0 -2
  83. package/lib/util/config.js +18 -8
  84. package/lib/util/config.js.map +1 -1
  85. package/lib/util/errors.js +17 -7
  86. package/lib/util/errors.js.map +1 -1
  87. package/lib/util/exponential-backoff.js.map +1 -1
  88. package/lib/util/paging-iterator.js +17 -7
  89. package/lib/util/paging-iterator.js.map +1 -1
  90. package/lib/util/serializable.js.map +1 -1
  91. package/lib/util/url-path.js.map +1 -1
  92. package/lib-esm/api-request-manager.d.ts +36 -0
  93. package/lib-esm/api-request-manager.js +78 -0
  94. package/lib-esm/api-request-manager.js.map +1 -0
  95. package/lib-esm/api-request.d.ts +135 -0
  96. package/lib-esm/api-request.js +282 -0
  97. package/lib-esm/api-request.js.map +1 -0
  98. package/lib-esm/box-client.d.ts +274 -0
  99. package/lib-esm/box-client.js +594 -0
  100. package/lib-esm/box-client.js.map +1 -0
  101. package/lib-esm/box-node-sdk.d.ts +227 -0
  102. package/lib-esm/box-node-sdk.js +373 -0
  103. package/lib-esm/box-node-sdk.js.map +1 -0
  104. package/lib-esm/chunked-uploader.d.ts +128 -0
  105. package/lib-esm/chunked-uploader.js +276 -0
  106. package/lib-esm/chunked-uploader.js.map +1 -0
  107. package/lib-esm/enterprise-event-stream.d.ts +82 -0
  108. package/lib-esm/enterprise-event-stream.js +205 -0
  109. package/lib-esm/enterprise-event-stream.js.map +1 -0
  110. package/lib-esm/event-stream.d.ts +91 -0
  111. package/lib-esm/event-stream.js +277 -0
  112. package/lib-esm/event-stream.js.map +1 -0
  113. package/lib-esm/managers/ai.generated.d.ts +58 -0
  114. package/lib-esm/managers/ai.generated.js +66 -0
  115. package/lib-esm/managers/ai.generated.js.map +1 -0
  116. package/lib-esm/managers/collaboration-allowlist.d.ts +133 -0
  117. package/lib-esm/managers/collaboration-allowlist.js +194 -0
  118. package/lib-esm/managers/collaboration-allowlist.js.map +1 -0
  119. package/lib-esm/managers/collaborations.d.ts +173 -0
  120. package/lib-esm/managers/collaborations.js +252 -0
  121. package/lib-esm/managers/collaborations.js.map +1 -0
  122. package/lib-esm/managers/collections.d.ts +42 -0
  123. package/lib-esm/managers/collections.js +62 -0
  124. package/lib-esm/managers/collections.js.map +1 -0
  125. package/lib-esm/managers/comments.d.ts +103 -0
  126. package/lib-esm/managers/comments.js +175 -0
  127. package/lib-esm/managers/comments.js.map +1 -0
  128. package/lib-esm/managers/device-pins.d.ts +52 -0
  129. package/lib-esm/managers/device-pins.js +91 -0
  130. package/lib-esm/managers/device-pins.js.map +1 -0
  131. package/lib-esm/managers/enterprise.d.ts +164 -0
  132. package/lib-esm/managers/enterprise.js +193 -0
  133. package/lib-esm/managers/enterprise.js.map +1 -0
  134. package/lib-esm/managers/events.d.ts +222 -0
  135. package/lib-esm/managers/events.js +295 -0
  136. package/lib-esm/managers/events.js.map +1 -0
  137. package/lib-esm/managers/file-requests-manager.d.ts +56 -0
  138. package/lib-esm/managers/file-requests-manager.js +81 -0
  139. package/lib-esm/managers/file-requests-manager.js.map +1 -0
  140. package/lib-esm/managers/files.d.ts +817 -0
  141. package/lib-esm/managers/files.js +1408 -0
  142. package/lib-esm/managers/files.js.map +1 -0
  143. package/lib-esm/managers/folders.d.ts +396 -0
  144. package/lib-esm/managers/folders.js +570 -0
  145. package/lib-esm/managers/folders.js.map +1 -0
  146. package/lib-esm/managers/groups.d.ts +213 -0
  147. package/lib-esm/managers/groups.js +289 -0
  148. package/lib-esm/managers/groups.js.map +1 -0
  149. package/lib-esm/managers/integration-mappings.d.ts +116 -0
  150. package/lib-esm/managers/integration-mappings.js +101 -0
  151. package/lib-esm/managers/integration-mappings.js.map +1 -0
  152. package/lib-esm/managers/legal-hold-policies.d.ts +190 -0
  153. package/lib-esm/managers/legal-hold-policies.js +254 -0
  154. package/lib-esm/managers/legal-hold-policies.js.map +1 -0
  155. package/lib-esm/managers/metadata.d.ts +232 -0
  156. package/lib-esm/managers/metadata.js +288 -0
  157. package/lib-esm/managers/metadata.js.map +1 -0
  158. package/lib-esm/managers/recent-items.d.ts +38 -0
  159. package/lib-esm/managers/recent-items.js +49 -0
  160. package/lib-esm/managers/recent-items.js.map +1 -0
  161. package/lib-esm/managers/retention-policies.d.ts +308 -0
  162. package/lib-esm/managers/retention-policies.js +374 -0
  163. package/lib-esm/managers/retention-policies.js.map +1 -0
  164. package/lib-esm/managers/search.d.ts +82 -0
  165. package/lib-esm/managers/search.js +90 -0
  166. package/lib-esm/managers/search.js.map +1 -0
  167. package/lib-esm/managers/shared-items.d.ts +33 -0
  168. package/lib-esm/managers/shared-items.js +74 -0
  169. package/lib-esm/managers/shared-items.js.map +1 -0
  170. package/lib-esm/managers/shield-information-barrier-reports.generated.d.ts +65 -0
  171. package/lib-esm/managers/shield-information-barrier-reports.generated.js +65 -0
  172. package/lib-esm/managers/shield-information-barrier-reports.generated.js.map +1 -0
  173. package/lib-esm/managers/shield-information-barrier-segment-members.generated.d.ts +83 -0
  174. package/lib-esm/managers/shield-information-barrier-segment-members.generated.js +83 -0
  175. package/lib-esm/managers/shield-information-barrier-segment-members.generated.js.map +1 -0
  176. package/lib-esm/managers/shield-information-barrier-segment-restrictions.generated.d.ts +84 -0
  177. package/lib-esm/managers/shield-information-barrier-segment-restrictions.generated.js +84 -0
  178. package/lib-esm/managers/shield-information-barrier-segment-restrictions.generated.js.map +1 -0
  179. package/lib-esm/managers/shield-information-barrier-segments.generated.d.ts +98 -0
  180. package/lib-esm/managers/shield-information-barrier-segments.generated.js +99 -0
  181. package/lib-esm/managers/shield-information-barrier-segments.generated.js.map +1 -0
  182. package/lib-esm/managers/shield-information-barriers.generated.d.ts +79 -0
  183. package/lib-esm/managers/shield-information-barriers.generated.js +83 -0
  184. package/lib-esm/managers/shield-information-barriers.generated.js.map +1 -0
  185. package/lib-esm/managers/sign-requests.generated.d.ts +93 -0
  186. package/lib-esm/managers/sign-requests.generated.js +97 -0
  187. package/lib-esm/managers/sign-requests.generated.js.map +1 -0
  188. package/lib-esm/managers/sign-templates.generated.d.ts +51 -0
  189. package/lib-esm/managers/sign-templates.generated.js +49 -0
  190. package/lib-esm/managers/sign-templates.generated.js.map +1 -0
  191. package/lib-esm/managers/storage-policies.d.ts +86 -0
  192. package/lib-esm/managers/storage-policies.js +174 -0
  193. package/lib-esm/managers/storage-policies.js.map +1 -0
  194. package/lib-esm/managers/tasks.d.ts +161 -0
  195. package/lib-esm/managers/tasks.js +243 -0
  196. package/lib-esm/managers/tasks.js.map +1 -0
  197. package/lib-esm/managers/terms-of-service.d.ts +161 -0
  198. package/lib-esm/managers/terms-of-service.js +283 -0
  199. package/lib-esm/managers/terms-of-service.js.map +1 -0
  200. package/lib-esm/managers/trash.d.ts +30 -0
  201. package/lib-esm/managers/trash.js +47 -0
  202. package/lib-esm/managers/trash.js.map +1 -0
  203. package/lib-esm/managers/users.d.ts +171 -0
  204. package/lib-esm/managers/users.js +230 -0
  205. package/lib-esm/managers/users.js.map +1 -0
  206. package/lib-esm/managers/web-links.d.ts +127 -0
  207. package/lib-esm/managers/web-links.js +200 -0
  208. package/lib-esm/managers/web-links.js.map +1 -0
  209. package/lib-esm/managers/webhooks.d.ts +169 -0
  210. package/lib-esm/managers/webhooks.js +398 -0
  211. package/lib-esm/managers/webhooks.js.map +1 -0
  212. package/lib-esm/schemas/ai-agent-ask.generated.d.ts +17 -0
  213. package/lib-esm/schemas/ai-agent-ask.generated.js +3 -0
  214. package/lib-esm/schemas/ai-agent-ask.generated.js.map +1 -0
  215. package/lib-esm/schemas/ai-agent-basic-gen-tool.generated.d.ts +14 -0
  216. package/lib-esm/schemas/ai-agent-basic-gen-tool.generated.js +3 -0
  217. package/lib-esm/schemas/ai-agent-basic-gen-tool.generated.js.map +1 -0
  218. package/lib-esm/schemas/ai-agent-basic-text-tool-ask.generated.d.ts +34 -0
  219. package/lib-esm/schemas/ai-agent-basic-text-tool-ask.generated.js +3 -0
  220. package/lib-esm/schemas/ai-agent-basic-text-tool-ask.generated.js.map +1 -0
  221. package/lib-esm/schemas/ai-agent-basic-text-tool-text-gen.generated.d.ts +36 -0
  222. package/lib-esm/schemas/ai-agent-basic-text-tool-text-gen.generated.js +3 -0
  223. package/lib-esm/schemas/ai-agent-basic-text-tool-text-gen.generated.js.map +1 -0
  224. package/lib-esm/schemas/ai-agent-long-text-tool.generated.d.ts +9 -0
  225. package/lib-esm/schemas/ai-agent-long-text-tool.generated.js +3 -0
  226. package/lib-esm/schemas/ai-agent-long-text-tool.generated.js.map +1 -0
  227. package/lib-esm/schemas/ai-agent-text-gen.generated.d.ts +14 -0
  228. package/lib-esm/schemas/ai-agent-text-gen.generated.js +3 -0
  229. package/lib-esm/schemas/ai-agent-text-gen.generated.js.map +1 -0
  230. package/lib-esm/schemas/ai-ask.generated.d.ts +40 -0
  231. package/lib-esm/schemas/ai-ask.generated.js +3 -0
  232. package/lib-esm/schemas/ai-ask.generated.js.map +1 -0
  233. package/lib-esm/schemas/ai-citation.generated.d.ts +27 -0
  234. package/lib-esm/schemas/ai-citation.generated.js +3 -0
  235. package/lib-esm/schemas/ai-citation.generated.js.map +1 -0
  236. package/lib-esm/schemas/ai-dialogue-history.generated.d.ts +22 -0
  237. package/lib-esm/schemas/ai-dialogue-history.generated.js +3 -0
  238. package/lib-esm/schemas/ai-dialogue-history.generated.js.map +1 -0
  239. package/lib-esm/schemas/ai-llm-endpoint-params-google.generated.d.ts +31 -0
  240. package/lib-esm/schemas/ai-llm-endpoint-params-google.generated.js +3 -0
  241. package/lib-esm/schemas/ai-llm-endpoint-params-google.generated.js.map +1 -0
  242. package/lib-esm/schemas/ai-llm-endpoint-params-open-ai.generated.d.ts +43 -0
  243. package/lib-esm/schemas/ai-llm-endpoint-params-open-ai.generated.js +3 -0
  244. package/lib-esm/schemas/ai-llm-endpoint-params-open-ai.generated.js.map +1 -0
  245. package/lib-esm/schemas/ai-response-full.generated.d.ts +12 -0
  246. package/lib-esm/schemas/ai-response-full.generated.js +3 -0
  247. package/lib-esm/schemas/ai-response-full.generated.js.map +1 -0
  248. package/lib-esm/schemas/ai-response.generated.d.ts +22 -0
  249. package/lib-esm/schemas/ai-response.generated.js +3 -0
  250. package/lib-esm/schemas/ai-response.generated.js.map +1 -0
  251. package/lib-esm/schemas/ai-text-gen.generated.d.ts +30 -0
  252. package/lib-esm/schemas/ai-text-gen.generated.js +3 -0
  253. package/lib-esm/schemas/ai-text-gen.generated.js.map +1 -0
  254. package/lib-esm/schemas/collaboration-create.d.ts +5 -0
  255. package/lib-esm/schemas/collaboration-create.js +3 -0
  256. package/lib-esm/schemas/collaboration-create.js.map +1 -0
  257. package/lib-esm/schemas/collaboration-update.d.ts +7 -0
  258. package/lib-esm/schemas/collaboration-update.js +3 -0
  259. package/lib-esm/schemas/collaboration-update.js.map +1 -0
  260. package/lib-esm/schemas/collaboration.d.ts +108 -0
  261. package/lib-esm/schemas/collaboration.js +3 -0
  262. package/lib-esm/schemas/collaboration.js.map +1 -0
  263. package/lib-esm/schemas/collaborations.d.ts +13 -0
  264. package/lib-esm/schemas/collaborations.js +3 -0
  265. package/lib-esm/schemas/collaborations.js.map +1 -0
  266. package/lib-esm/schemas/enterprise-base.generated.d.ts +18 -0
  267. package/lib-esm/schemas/enterprise-base.generated.js +3 -0
  268. package/lib-esm/schemas/enterprise-base.generated.js.map +1 -0
  269. package/lib-esm/schemas/file-base.generated.d.ts +32 -0
  270. package/lib-esm/schemas/file-base.generated.js +3 -0
  271. package/lib-esm/schemas/file-base.generated.js.map +1 -0
  272. package/lib-esm/schemas/file-mini.generated.d.ts +41 -0
  273. package/lib-esm/schemas/file-mini.generated.js +3 -0
  274. package/lib-esm/schemas/file-mini.generated.js.map +1 -0
  275. package/lib-esm/schemas/file-request.d.ts +41 -0
  276. package/lib-esm/schemas/file-request.js +3 -0
  277. package/lib-esm/schemas/file-request.js.map +1 -0
  278. package/lib-esm/schemas/file-version-base.generated.d.ts +19 -0
  279. package/lib-esm/schemas/file-version-base.generated.js +3 -0
  280. package/lib-esm/schemas/file-version-base.generated.js.map +1 -0
  281. package/lib-esm/schemas/file-version-mini.generated.d.ts +14 -0
  282. package/lib-esm/schemas/file-version-mini.generated.js +3 -0
  283. package/lib-esm/schemas/file-version-mini.generated.js.map +1 -0
  284. package/lib-esm/schemas/folder-base.generated.d.ts +32 -0
  285. package/lib-esm/schemas/folder-base.generated.js +3 -0
  286. package/lib-esm/schemas/folder-base.generated.js.map +1 -0
  287. package/lib-esm/schemas/folder-mini.generated.d.ts +31 -0
  288. package/lib-esm/schemas/folder-mini.generated.js +3 -0
  289. package/lib-esm/schemas/folder-mini.generated.js.map +1 -0
  290. package/lib-esm/schemas/index.d.ts +15 -0
  291. package/lib-esm/schemas/index.generated.d.ts +52 -0
  292. package/lib-esm/schemas/index.generated.js +69 -0
  293. package/lib-esm/schemas/index.generated.js.map +1 -0
  294. package/lib-esm/schemas/index.js +32 -0
  295. package/lib-esm/schemas/index.js.map +1 -0
  296. package/lib-esm/schemas/integration-mapping-base.d.ts +23 -0
  297. package/lib-esm/schemas/integration-mapping-base.js +3 -0
  298. package/lib-esm/schemas/integration-mapping-base.js.map +1 -0
  299. package/lib-esm/schemas/integration-mapping-box-item-slack.d.ts +17 -0
  300. package/lib-esm/schemas/integration-mapping-box-item-slack.js +3 -0
  301. package/lib-esm/schemas/integration-mapping-box-item-slack.js.map +1 -0
  302. package/lib-esm/schemas/integration-mapping-partner-item-slack.d.ts +27 -0
  303. package/lib-esm/schemas/integration-mapping-partner-item-slack.js +3 -0
  304. package/lib-esm/schemas/integration-mapping-partner-item-slack.js.map +1 -0
  305. package/lib-esm/schemas/integration-mapping-slack-create-request.d.ts +12 -0
  306. package/lib-esm/schemas/integration-mapping-slack-create-request.js +3 -0
  307. package/lib-esm/schemas/integration-mapping-slack-create-request.js.map +1 -0
  308. package/lib-esm/schemas/integration-mapping-slack-options.d.ts +16 -0
  309. package/lib-esm/schemas/integration-mapping-slack-options.js +3 -0
  310. package/lib-esm/schemas/integration-mapping-slack-options.js.map +1 -0
  311. package/lib-esm/schemas/integration-mapping.d.ts +55 -0
  312. package/lib-esm/schemas/integration-mapping.js +3 -0
  313. package/lib-esm/schemas/integration-mapping.js.map +1 -0
  314. package/lib-esm/schemas/integration-mappings.d.ts +27 -0
  315. package/lib-esm/schemas/integration-mappings.js +3 -0
  316. package/lib-esm/schemas/integration-mappings.js.map +1 -0
  317. package/lib-esm/schemas/shield-information-barrier-base.generated.d.ts +18 -0
  318. package/lib-esm/schemas/shield-information-barrier-base.generated.js +3 -0
  319. package/lib-esm/schemas/shield-information-barrier-base.generated.js.map +1 -0
  320. package/lib-esm/schemas/shield-information-barrier-reference.generated.d.ts +9 -0
  321. package/lib-esm/schemas/shield-information-barrier-reference.generated.js +3 -0
  322. package/lib-esm/schemas/shield-information-barrier-reference.generated.js.map +1 -0
  323. package/lib-esm/schemas/shield-information-barrier-report-base.generated.d.ts +18 -0
  324. package/lib-esm/schemas/shield-information-barrier-report-base.generated.js +3 -0
  325. package/lib-esm/schemas/shield-information-barrier-report-base.generated.js.map +1 -0
  326. package/lib-esm/schemas/shield-information-barrier-report-details.generated.d.ts +9 -0
  327. package/lib-esm/schemas/shield-information-barrier-report-details.generated.js +3 -0
  328. package/lib-esm/schemas/shield-information-barrier-report-details.generated.js.map +1 -0
  329. package/lib-esm/schemas/shield-information-barrier-report.generated.d.ts +32 -0
  330. package/lib-esm/schemas/shield-information-barrier-report.generated.js +3 -0
  331. package/lib-esm/schemas/shield-information-barrier-report.generated.js.map +1 -0
  332. package/lib-esm/schemas/shield-information-barrier-reports.generated.d.ts +26 -0
  333. package/lib-esm/schemas/shield-information-barrier-reports.generated.js +3 -0
  334. package/lib-esm/schemas/shield-information-barrier-reports.generated.js.map +1 -0
  335. package/lib-esm/schemas/shield-information-barrier-segment-member-base.generated.d.ts +19 -0
  336. package/lib-esm/schemas/shield-information-barrier-segment-member-base.generated.js +3 -0
  337. package/lib-esm/schemas/shield-information-barrier-segment-member-base.generated.js.map +1 -0
  338. package/lib-esm/schemas/shield-information-barrier-segment-member-mini.generated.d.ts +13 -0
  339. package/lib-esm/schemas/shield-information-barrier-segment-member-mini.generated.js +3 -0
  340. package/lib-esm/schemas/shield-information-barrier-segment-member-mini.generated.js.map +1 -0
  341. package/lib-esm/schemas/shield-information-barrier-segment-member.generated.d.ts +39 -0
  342. package/lib-esm/schemas/shield-information-barrier-segment-member.generated.js +3 -0
  343. package/lib-esm/schemas/shield-information-barrier-segment-member.generated.js.map +1 -0
  344. package/lib-esm/schemas/shield-information-barrier-segment-members.generated.d.ts +26 -0
  345. package/lib-esm/schemas/shield-information-barrier-segment-members.generated.js +3 -0
  346. package/lib-esm/schemas/shield-information-barrier-segment-members.generated.js.map +1 -0
  347. package/lib-esm/schemas/shield-information-barrier-segment-restriction-base.generated.d.ts +20 -0
  348. package/lib-esm/schemas/shield-information-barrier-segment-restriction-base.generated.js +3 -0
  349. package/lib-esm/schemas/shield-information-barrier-segment-restriction-base.generated.js.map +1 -0
  350. package/lib-esm/schemas/shield-information-barrier-segment-restriction-mini.generated.d.ts +20 -0
  351. package/lib-esm/schemas/shield-information-barrier-segment-restriction-mini.generated.js +3 -0
  352. package/lib-esm/schemas/shield-information-barrier-segment-restriction-mini.generated.js.map +1 -0
  353. package/lib-esm/schemas/shield-information-barrier-segment-restriction.generated.d.ts +33 -0
  354. package/lib-esm/schemas/shield-information-barrier-segment-restriction.generated.js +3 -0
  355. package/lib-esm/schemas/shield-information-barrier-segment-restriction.generated.js.map +1 -0
  356. package/lib-esm/schemas/shield-information-barrier-segment-restrictions.generated.d.ts +26 -0
  357. package/lib-esm/schemas/shield-information-barrier-segment-restrictions.generated.js +3 -0
  358. package/lib-esm/schemas/shield-information-barrier-segment-restrictions.generated.js.map +1 -0
  359. package/lib-esm/schemas/shield-information-barrier-segment.generated.d.ts +50 -0
  360. package/lib-esm/schemas/shield-information-barrier-segment.generated.js +3 -0
  361. package/lib-esm/schemas/shield-information-barrier-segment.generated.js.map +1 -0
  362. package/lib-esm/schemas/shield-information-barrier-segments.generated.d.ts +26 -0
  363. package/lib-esm/schemas/shield-information-barrier-segments.generated.js +3 -0
  364. package/lib-esm/schemas/shield-information-barrier-segments.generated.js.map +1 -0
  365. package/lib-esm/schemas/shield-information-barrier.generated.d.ts +56 -0
  366. package/lib-esm/schemas/shield-information-barrier.generated.js +3 -0
  367. package/lib-esm/schemas/shield-information-barrier.generated.js.map +1 -0
  368. package/lib-esm/schemas/shield-information-barriers.generated.d.ts +25 -0
  369. package/lib-esm/schemas/shield-information-barriers.generated.js +3 -0
  370. package/lib-esm/schemas/shield-information-barriers.generated.js.map +1 -0
  371. package/lib-esm/schemas/sign-request-base.generated.d.ts +78 -0
  372. package/lib-esm/schemas/sign-request-base.generated.js +3 -0
  373. package/lib-esm/schemas/sign-request-base.generated.js.map +1 -0
  374. package/lib-esm/schemas/sign-request-create-request.generated.d.ts +39 -0
  375. package/lib-esm/schemas/sign-request-create-request.generated.js +3 -0
  376. package/lib-esm/schemas/sign-request-create-request.generated.js.map +1 -0
  377. package/lib-esm/schemas/sign-request-create-signer.generated.d.ts +95 -0
  378. package/lib-esm/schemas/sign-request-create-signer.generated.js +3 -0
  379. package/lib-esm/schemas/sign-request-create-signer.generated.js.map +1 -0
  380. package/lib-esm/schemas/sign-request-prefill-tag.generated.d.ts +28 -0
  381. package/lib-esm/schemas/sign-request-prefill-tag.generated.js +3 -0
  382. package/lib-esm/schemas/sign-request-prefill-tag.generated.js.map +1 -0
  383. package/lib-esm/schemas/sign-request-signer-input.generated.d.ts +28 -0
  384. package/lib-esm/schemas/sign-request-signer-input.generated.js +3 -0
  385. package/lib-esm/schemas/sign-request-signer-input.generated.js.map +1 -0
  386. package/lib-esm/schemas/sign-request-signer.generated.d.ts +34 -0
  387. package/lib-esm/schemas/sign-request-signer.generated.js +3 -0
  388. package/lib-esm/schemas/sign-request-signer.generated.js.map +1 -0
  389. package/lib-esm/schemas/sign-request.generated.d.ts +72 -0
  390. package/lib-esm/schemas/sign-request.generated.js +3 -0
  391. package/lib-esm/schemas/sign-request.generated.js.map +1 -0
  392. package/lib-esm/schemas/sign-requests.generated.d.ts +25 -0
  393. package/lib-esm/schemas/sign-requests.generated.js +3 -0
  394. package/lib-esm/schemas/sign-requests.generated.js.map +1 -0
  395. package/lib-esm/schemas/sign-template.generated.d.ts +94 -0
  396. package/lib-esm/schemas/sign-template.generated.js +3 -0
  397. package/lib-esm/schemas/sign-template.generated.js.map +1 -0
  398. package/lib-esm/schemas/sign-templates.generated.d.ts +30 -0
  399. package/lib-esm/schemas/sign-templates.generated.js +3 -0
  400. package/lib-esm/schemas/sign-templates.generated.js.map +1 -0
  401. package/lib-esm/schemas/template-signer-input.generated.d.ts +61 -0
  402. package/lib-esm/schemas/template-signer-input.generated.js +3 -0
  403. package/lib-esm/schemas/template-signer-input.generated.js.map +1 -0
  404. package/lib-esm/schemas/template-signer.generated.d.ts +43 -0
  405. package/lib-esm/schemas/template-signer.generated.js +3 -0
  406. package/lib-esm/schemas/template-signer.generated.js.map +1 -0
  407. package/lib-esm/schemas/user-base.generated.d.ts +18 -0
  408. package/lib-esm/schemas/user-base.generated.js +3 -0
  409. package/lib-esm/schemas/user-base.generated.js.map +1 -0
  410. package/lib-esm/schemas/user-integration-mappings.d.ts +19 -0
  411. package/lib-esm/schemas/user-integration-mappings.js +3 -0
  412. package/lib-esm/schemas/user-integration-mappings.js.map +1 -0
  413. package/lib-esm/schemas/user-mini.d.ts +6 -0
  414. package/lib-esm/schemas/user-mini.js +3 -0
  415. package/lib-esm/schemas/user-mini.js.map +1 -0
  416. package/lib-esm/sessions/app-auth-session.d.ts +92 -0
  417. package/lib-esm/sessions/app-auth-session.js +176 -0
  418. package/lib-esm/sessions/app-auth-session.js.map +1 -0
  419. package/lib-esm/sessions/basic-session.d.ts +55 -0
  420. package/lib-esm/sessions/basic-session.js +62 -0
  421. package/lib-esm/sessions/basic-session.js.map +1 -0
  422. package/lib-esm/sessions/ccg-session.d.ts +72 -0
  423. package/lib-esm/sessions/ccg-session.js +111 -0
  424. package/lib-esm/sessions/ccg-session.js.map +1 -0
  425. package/lib-esm/sessions/persistent-session.d.ts +96 -0
  426. package/lib-esm/sessions/persistent-session.js +234 -0
  427. package/lib-esm/sessions/persistent-session.js.map +1 -0
  428. package/lib-esm/token-manager.d.ts +191 -0
  429. package/lib-esm/token-manager.js +453 -0
  430. package/lib-esm/token-manager.js.map +1 -0
  431. package/lib-esm/util/config.d.ts +85 -0
  432. package/lib-esm/util/config.js +212 -0
  433. package/lib-esm/util/config.js.map +1 -0
  434. package/lib-esm/util/errors.d.ts +50 -0
  435. package/lib-esm/util/errors.js +176 -0
  436. package/lib-esm/util/errors.js.map +1 -0
  437. package/lib-esm/util/exponential-backoff.d.ts +11 -0
  438. package/lib-esm/util/exponential-backoff.js +17 -0
  439. package/lib-esm/util/exponential-backoff.js.map +1 -0
  440. package/lib-esm/util/paging-iterator.d.ts +53 -0
  441. package/lib-esm/util/paging-iterator.js +247 -0
  442. package/lib-esm/util/paging-iterator.js.map +1 -0
  443. package/lib-esm/util/serializable.d.ts +10 -0
  444. package/lib-esm/util/serializable.js +17 -0
  445. package/lib-esm/util/serializable.js.map +1 -0
  446. package/lib-esm/util/url-path.d.ts +16 -0
  447. package/lib-esm/util/url-path.js +36 -0
  448. package/lib-esm/util/url-path.js.map +1 -0
  449. package/package.json +33 -28
@@ -0,0 +1,232 @@
1
+ /**
2
+ * @fileoverview Manager for the Box Metadata Resource
3
+ */
4
+ import BoxClient from '../box-client';
5
+ /**
6
+ * Valid metadata field types
7
+ * @readonly
8
+ * @enum {MetadataFieldType}
9
+ */
10
+ declare enum MetadataFieldType {
11
+ STRING = "string",
12
+ ENUM = "enum",
13
+ NUMBER = "float",
14
+ DATE = "date",
15
+ MULTI_SELECT = "multiSelect"
16
+ }
17
+ /**
18
+ * Metadata enum option
19
+ * @typedef {Object} MetadataEnumOption
20
+ * @property {string} key The option value
21
+ */
22
+ type MetadataEnumOption = {
23
+ key: string;
24
+ };
25
+ /**
26
+ * Field definition for a metadata template
27
+ * @typedef {Object} MetadataTemplateField
28
+ * @property {MetadataFieldType} type The type of the field
29
+ * @property {string} key The programmatic name of the field
30
+ * @property {string} displayName The display name of the field
31
+ * @property {boolean} hidden Whether this field is hidden in the UI for the user and can only be set through the API instead
32
+ * @property {MetadataEnumOption[]} [options] For enum fields, the options
33
+ */
34
+ type MetadataTemplateField = {
35
+ type: MetadataFieldType;
36
+ key: string;
37
+ displayName: string;
38
+ hidden: boolean;
39
+ options?: MetadataEnumOption[];
40
+ };
41
+ /**
42
+ * Simple manager for interacting with all metadata endpoints and actions.
43
+ *
44
+ * @constructor
45
+ * @param {BoxClient} client - The Box API Client that is responsible for making calls to the API
46
+ * @returns {void}
47
+ */
48
+ declare class Metadata {
49
+ client: BoxClient;
50
+ templates: Record<string, any>;
51
+ scopes: Record<string, any>;
52
+ cascadeResolution: Record<string, any>;
53
+ fieldTypes: typeof MetadataFieldType;
54
+ constructor(client: BoxClient);
55
+ /**
56
+ * Retrieve the schema definition for a metadata template
57
+ *
58
+ * API Endpoint: '/metadata_templates/:scope/:template'
59
+ * Method: GET
60
+ *
61
+ * @param {string} scope - The scope of the template, e.g. "enterprise"
62
+ * @param {string} template - The template to retrieve
63
+ * @param {Function} [callback] - Called with the template schema if successful
64
+ * @returns {Promise<Object>} A promise resolving to the template schema
65
+ */
66
+ getTemplateSchema(scope: string, template: string, callback?: Function): any;
67
+ /**
68
+ * Retrieve the schema definition for a metadata template by ID
69
+ *
70
+ * API Endpoint: '/metadata_templates/:id'
71
+ * Method: GET
72
+ *
73
+ * @param {string} templateID - The ID of the template to retrieve
74
+ * @param {Function} [callback] - Called with the template schema if successful
75
+ * @returns {Promise<Object>} A promise resolving to the template schema
76
+ */
77
+ getTemplateByID(templateID: string, callback?: Function): any;
78
+ /**
79
+ * Get all templates in a given scope
80
+ *
81
+ * API Endpoint: '/metadata_templates/:scope'
82
+ * Method: GET
83
+ *
84
+ * @param {string} scope - The scope to retrieve templates for
85
+ * @param {Function} [callback] - Called with an array of templates when successful
86
+ * @returns {Promise<Object>} A promise resolving to the collection of templates
87
+ */
88
+ getTemplates(scope: string, callback?: Function): any;
89
+ /**
90
+ * Create a new metadata template
91
+ *
92
+ * API Endpoint: '/metadata_templates/schema',
93
+ * Method: POST
94
+ *
95
+ * @param {string} templateName - The name of the metadata template
96
+ * @param {MetadataTemplateField[]} fields - A list of fields for the template
97
+ * @param {Object} [options] - Optional parameters, can be left null in many cases
98
+ * @param {string} [options.templateKey] - The programmatic key for the template
99
+ * @param {boolean} [options.hidden] - Whether the template should be hidden in the UI
100
+ * @param {string} [options.scope=enterprise] - The scope for the template, only 'enterprise' is supported for now
101
+ * @param {boolean} [options.copyInstanceOnItemCopy] - Whether to include the metadata when a file or folder is copied
102
+ * @param {Function} [callback] - Passed the template if successful, error otherwise
103
+ * @returns {Promise<Object>} A promise resolving to the created template
104
+ */
105
+ createTemplate(templateName: string, fields: MetadataTemplateField[], options?: {
106
+ templateKey?: string;
107
+ hidden?: boolean;
108
+ scope?: string;
109
+ copyInstanceOnItemCopy?: boolean;
110
+ }, callback?: Function): any;
111
+ /**
112
+ * Update a metadata template via one or more non-breaking operations. Each
113
+ * operation is a an object descrbing one change to the template or its
114
+ * fields.
115
+ *
116
+ * API Endpoint: '/metadata_templates/:scope/:template/schema'
117
+ * Method: PUT
118
+ *
119
+ * @param {string} scope - The scope of the template to modify
120
+ * @param {string} template - The template to modify
121
+ * @param {Object[]} operations - The operations to perform
122
+ * @param {Function} [callback] - Passed the updated template if successful, error otherwise
123
+ * @returns {Promise<Object>} A promise resolving to the updated template
124
+ * @see {@link https://developer.box.com/en/reference/put-metadata-templates-id-id-schema/}
125
+ */
126
+ updateTemplate(scope: string, template: string, operations: Record<string, any>[], callback?: Function): any;
127
+ /**
128
+ * Delete a metadata template from an enterprise.
129
+ *
130
+ * API Endpoint: '/metadata_templates/:scope/:template/schema'
131
+ * Method: DELETE
132
+ *
133
+ * @param {string} scope - The scope of the template to delete
134
+ * @param {string} template - The template to delete
135
+ * @param {Function} [callback] - Passed empty response body if successful, err otherwise
136
+ * @returns {Promise<void>} A promise resolving to nothing
137
+ * @see {@link https://developer.box.com/en/reference/delete-metadata-templates-id-id-schema/}
138
+ */
139
+ deleteTemplate(scope: string, template: string, callback?: Function): any;
140
+ /**
141
+ * Get the cascade policies associated with a given folder.
142
+ *
143
+ * API Endpoint: '/metadata_cascade_policies'
144
+ * Method: GET
145
+ *
146
+ * @param {string} folderID The ID of the folder to get cascade policies for
147
+ * @param {Object} [options] Optional parameters
148
+ * @param {string} [options.owner_enterprise_id] ID of the enterprise to get policies for
149
+ * @param {Function} [callback] Passed the collection of policies if successful
150
+ * @returns {Promise<Object>} Promise resolving to the collection of policies
151
+ */
152
+ getCascadePolicies(folderID: string, options?: {
153
+ owner_enterprise_id?: string;
154
+ }, callback?: Function): any;
155
+ /**
156
+ * Get a metadata cascade policy object by ID
157
+ *
158
+ * API Endpoint: '/metadata_cascade_policies/:policyID'
159
+ * Method: GET
160
+ *
161
+ * @param {string} policyID The ID of the policy to retrieve
162
+ * @param {Function} [callback] Passed the cascade policy if successful
163
+ * @returns {Promise<Object>} Promise resolving to the cascade policy
164
+ */
165
+ getCascadePolicy(policyID: string, callback?: Function): any;
166
+ /**
167
+ * Add a new cascade policy to a folder/metadata template, causing the
168
+ * metadata template to be applied to all items and subfolders inside the
169
+ * folder.
170
+ *
171
+ * API Endpoint: '/metadata_cascade_policies'
172
+ * Method: POST
173
+ *
174
+ * @param {string} scope Metadata template scope for the template to cascade
175
+ * @param {string} templateKey Metadata template key for the template to cascade
176
+ * @param {string} folderID The ID of the folder to cascade over
177
+ * @param {Function} [callback] Passed the cascade policy if successful
178
+ * @returns {Promise<Object>} Promise resolving to the cascade policy
179
+ */
180
+ createCascadePolicy(scope: string, templateKey: string, folderID: string, callback?: Function): any;
181
+ /**
182
+ * Delete the metadata cascade policy with the given ID
183
+ *
184
+ * API Endpoint: '/metadata_cascade_policies/:policyID'
185
+ * Method: DELETE
186
+ *
187
+ * @param {string} policyID The ID of the policy to delete
188
+ * @param {Function} [callback] Passed nothing if successful
189
+ * @returns {Promise<void>} Promise resolving to nothing
190
+ */
191
+ deleteCascadePolicy(policyID: string, callback?: Function): any;
192
+ /**
193
+ * If a policy already exists on a folder, this will apply that policy to all existing files and
194
+ * sub-folders within the target folder.
195
+ *
196
+ * API Endpoint: '/metadata_cascade_policies/:policyID/apply'
197
+ * Method: POST
198
+ *
199
+ * @param {string} policyID The ID of the policy to delete
200
+ * @param {string} resolutionMethod How to resolve conflicts, either "none" or "overwrite"
201
+ * @param {Function} [callback] Passed nothing if successful
202
+ * @returns {Promise<void>} Promise resolving to nothing
203
+ */
204
+ forceApplyCascadePolicy(policyID: string, resolutionMethod: string, callback?: Function): any;
205
+ /**
206
+ * Query Box items by their metadata.
207
+ *
208
+ * API Endpoint: '/metadata_queries/execute_read'
209
+ * Method: POST
210
+ *
211
+ * @param {string} from - The template used in the query. Must be in the form scope.templateKey
212
+ * @param {string} ancestorFolderId - The folder_id to which to restrain the query
213
+ * @param {Object} [options] - Optional parameters
214
+ * @param {string} [options.query] - The logical expression of the query
215
+ * @param {Object} [options.query_params] - Required if query present. The arguments for the query
216
+ * @param {Object} [options.order_by] - The field_key(s) to order on and the corresponding direction(s)
217
+ * @param {Array} [options.fields] - An array of fields to return
218
+ * @param {int} [options.limit=100] - The number of results to return for a single request
219
+ * @param {string} [options.marker] - Pagination marker
220
+ * @param {Function} [callback] - Passed a collection of items and their associated metadata
221
+ * @returns {Promise<void>} Promise resolving to a collection of items and their associated metadata
222
+ */
223
+ query(from: string, ancestorFolderId: string, options?: {
224
+ query?: string;
225
+ query_params?: Record<string, any>;
226
+ order_by?: Record<string, any>;
227
+ fields?: string[];
228
+ limit?: number;
229
+ marker?: string;
230
+ }, callback?: Function): any;
231
+ }
232
+ export = Metadata;
@@ -0,0 +1,288 @@
1
+ "use strict";
2
+ /**
3
+ * @fileoverview Manager for the Box Metadata Resource
4
+ */
5
+ var __importDefault = (this && this.__importDefault) || function (mod) {
6
+ return (mod && mod.__esModule) ? mod : { "default": mod };
7
+ };
8
+ const url_path_1 = __importDefault(require("../util/url-path"));
9
+ const merge = require('merge-options');
10
+ // -----------------------------------------------------------------------------
11
+ // Typedefs
12
+ // -----------------------------------------------------------------------------
13
+ /**
14
+ * Valid metadata field types
15
+ * @readonly
16
+ * @enum {MetadataFieldType}
17
+ */
18
+ var MetadataFieldType;
19
+ (function (MetadataFieldType) {
20
+ MetadataFieldType["STRING"] = "string";
21
+ MetadataFieldType["ENUM"] = "enum";
22
+ MetadataFieldType["NUMBER"] = "float";
23
+ MetadataFieldType["DATE"] = "date";
24
+ MetadataFieldType["MULTI_SELECT"] = "multiSelect";
25
+ })(MetadataFieldType || (MetadataFieldType = {}));
26
+ // -----------------------------------------------------------------------------
27
+ // Private
28
+ // -----------------------------------------------------------------------------
29
+ const PROPERTIES_TEMPLATE = 'properties', BASE_PATH = '/metadata_templates', SCHEMA_SUBRESOURCE = 'schema', ENTERPRISE_SCOPE = 'enterprise', GLOBAL_SCOPE = 'global', CASCADE_POLICIES_PATH = '/metadata_cascade_policies', QUERY_PATH = '/metadata_queries/execute_read';
30
+ // -----------------------------------------------------------------------------
31
+ // Public
32
+ // -----------------------------------------------------------------------------
33
+ /**
34
+ * Simple manager for interacting with all metadata endpoints and actions.
35
+ *
36
+ * @constructor
37
+ * @param {BoxClient} client - The Box API Client that is responsible for making calls to the API
38
+ * @returns {void}
39
+ */
40
+ class Metadata {
41
+ constructor(client) {
42
+ this.client = client;
43
+ }
44
+ /**
45
+ * Retrieve the schema definition for a metadata template
46
+ *
47
+ * API Endpoint: '/metadata_templates/:scope/:template'
48
+ * Method: GET
49
+ *
50
+ * @param {string} scope - The scope of the template, e.g. "enterprise"
51
+ * @param {string} template - The template to retrieve
52
+ * @param {Function} [callback] - Called with the template schema if successful
53
+ * @returns {Promise<Object>} A promise resolving to the template schema
54
+ */
55
+ getTemplateSchema(scope, template, callback) {
56
+ var apiPath = (0, url_path_1.default)(BASE_PATH, scope, template, SCHEMA_SUBRESOURCE);
57
+ return this.client.wrapWithDefaultHandler(this.client.get)(apiPath, null, callback);
58
+ }
59
+ /**
60
+ * Retrieve the schema definition for a metadata template by ID
61
+ *
62
+ * API Endpoint: '/metadata_templates/:id'
63
+ * Method: GET
64
+ *
65
+ * @param {string} templateID - The ID of the template to retrieve
66
+ * @param {Function} [callback] - Called with the template schema if successful
67
+ * @returns {Promise<Object>} A promise resolving to the template schema
68
+ */
69
+ getTemplateByID(templateID, callback) {
70
+ var apiPath = (0, url_path_1.default)(BASE_PATH, templateID);
71
+ return this.client.wrapWithDefaultHandler(this.client.get)(apiPath, null, callback);
72
+ }
73
+ /**
74
+ * Get all templates in a given scope
75
+ *
76
+ * API Endpoint: '/metadata_templates/:scope'
77
+ * Method: GET
78
+ *
79
+ * @param {string} scope - The scope to retrieve templates for
80
+ * @param {Function} [callback] - Called with an array of templates when successful
81
+ * @returns {Promise<Object>} A promise resolving to the collection of templates
82
+ */
83
+ getTemplates(scope, callback) {
84
+ var apiPath = (0, url_path_1.default)(BASE_PATH, scope);
85
+ return this.client.wrapWithDefaultHandler(this.client.get)(apiPath, null, callback);
86
+ }
87
+ /**
88
+ * Create a new metadata template
89
+ *
90
+ * API Endpoint: '/metadata_templates/schema',
91
+ * Method: POST
92
+ *
93
+ * @param {string} templateName - The name of the metadata template
94
+ * @param {MetadataTemplateField[]} fields - A list of fields for the template
95
+ * @param {Object} [options] - Optional parameters, can be left null in many cases
96
+ * @param {string} [options.templateKey] - The programmatic key for the template
97
+ * @param {boolean} [options.hidden] - Whether the template should be hidden in the UI
98
+ * @param {string} [options.scope=enterprise] - The scope for the template, only 'enterprise' is supported for now
99
+ * @param {boolean} [options.copyInstanceOnItemCopy] - Whether to include the metadata when a file or folder is copied
100
+ * @param {Function} [callback] - Passed the template if successful, error otherwise
101
+ * @returns {Promise<Object>} A promise resolving to the created template
102
+ */
103
+ createTemplate(templateName, fields, options, callback) {
104
+ var apiPath = (0, url_path_1.default)(BASE_PATH, SCHEMA_SUBRESOURCE), params = {
105
+ body: {
106
+ scope: ENTERPRISE_SCOPE,
107
+ displayName: templateName,
108
+ fields,
109
+ },
110
+ };
111
+ Object.assign(params.body, options);
112
+ return this.client.wrapWithDefaultHandler(this.client.post)(apiPath, params, callback);
113
+ }
114
+ /**
115
+ * Update a metadata template via one or more non-breaking operations. Each
116
+ * operation is a an object descrbing one change to the template or its
117
+ * fields.
118
+ *
119
+ * API Endpoint: '/metadata_templates/:scope/:template/schema'
120
+ * Method: PUT
121
+ *
122
+ * @param {string} scope - The scope of the template to modify
123
+ * @param {string} template - The template to modify
124
+ * @param {Object[]} operations - The operations to perform
125
+ * @param {Function} [callback] - Passed the updated template if successful, error otherwise
126
+ * @returns {Promise<Object>} A promise resolving to the updated template
127
+ * @see {@link https://developer.box.com/en/reference/put-metadata-templates-id-id-schema/}
128
+ */
129
+ updateTemplate(scope, template, operations, callback) {
130
+ var apiPath = (0, url_path_1.default)(BASE_PATH, scope, template, SCHEMA_SUBRESOURCE), params = {
131
+ body: operations,
132
+ };
133
+ return this.client.wrapWithDefaultHandler(this.client.put)(apiPath, params, callback);
134
+ }
135
+ /**
136
+ * Delete a metadata template from an enterprise.
137
+ *
138
+ * API Endpoint: '/metadata_templates/:scope/:template/schema'
139
+ * Method: DELETE
140
+ *
141
+ * @param {string} scope - The scope of the template to delete
142
+ * @param {string} template - The template to delete
143
+ * @param {Function} [callback] - Passed empty response body if successful, err otherwise
144
+ * @returns {Promise<void>} A promise resolving to nothing
145
+ * @see {@link https://developer.box.com/en/reference/delete-metadata-templates-id-id-schema/}
146
+ */
147
+ deleteTemplate(scope, template, callback) {
148
+ var apiPath = (0, url_path_1.default)(BASE_PATH, scope, template, SCHEMA_SUBRESOURCE);
149
+ return this.client.wrapWithDefaultHandler(this.client.del)(apiPath, null, callback);
150
+ }
151
+ /**
152
+ * Get the cascade policies associated with a given folder.
153
+ *
154
+ * API Endpoint: '/metadata_cascade_policies'
155
+ * Method: GET
156
+ *
157
+ * @param {string} folderID The ID of the folder to get cascade policies for
158
+ * @param {Object} [options] Optional parameters
159
+ * @param {string} [options.owner_enterprise_id] ID of the enterprise to get policies for
160
+ * @param {Function} [callback] Passed the collection of policies if successful
161
+ * @returns {Promise<Object>} Promise resolving to the collection of policies
162
+ */
163
+ getCascadePolicies(folderID, options, callback) {
164
+ var apiPath = (0, url_path_1.default)(CASCADE_POLICIES_PATH), params = {
165
+ qs: Object.assign({ folder_id: folderID }, options),
166
+ };
167
+ return this.client.wrapWithDefaultHandler(this.client.get)(apiPath, params, callback);
168
+ }
169
+ /**
170
+ * Get a metadata cascade policy object by ID
171
+ *
172
+ * API Endpoint: '/metadata_cascade_policies/:policyID'
173
+ * Method: GET
174
+ *
175
+ * @param {string} policyID The ID of the policy to retrieve
176
+ * @param {Function} [callback] Passed the cascade policy if successful
177
+ * @returns {Promise<Object>} Promise resolving to the cascade policy
178
+ */
179
+ getCascadePolicy(policyID, callback) {
180
+ var apiPath = (0, url_path_1.default)(CASCADE_POLICIES_PATH, policyID);
181
+ return this.client.wrapWithDefaultHandler(this.client.get)(apiPath, null, callback);
182
+ }
183
+ /**
184
+ * Add a new cascade policy to a folder/metadata template, causing the
185
+ * metadata template to be applied to all items and subfolders inside the
186
+ * folder.
187
+ *
188
+ * API Endpoint: '/metadata_cascade_policies'
189
+ * Method: POST
190
+ *
191
+ * @param {string} scope Metadata template scope for the template to cascade
192
+ * @param {string} templateKey Metadata template key for the template to cascade
193
+ * @param {string} folderID The ID of the folder to cascade over
194
+ * @param {Function} [callback] Passed the cascade policy if successful
195
+ * @returns {Promise<Object>} Promise resolving to the cascade policy
196
+ */
197
+ createCascadePolicy(scope, templateKey, folderID, callback) {
198
+ var apiPath = (0, url_path_1.default)(CASCADE_POLICIES_PATH), params = {
199
+ body: {
200
+ folder_id: folderID,
201
+ scope,
202
+ templateKey,
203
+ },
204
+ };
205
+ return this.client.wrapWithDefaultHandler(this.client.post)(apiPath, params, callback);
206
+ }
207
+ /**
208
+ * Delete the metadata cascade policy with the given ID
209
+ *
210
+ * API Endpoint: '/metadata_cascade_policies/:policyID'
211
+ * Method: DELETE
212
+ *
213
+ * @param {string} policyID The ID of the policy to delete
214
+ * @param {Function} [callback] Passed nothing if successful
215
+ * @returns {Promise<void>} Promise resolving to nothing
216
+ */
217
+ deleteCascadePolicy(policyID, callback) {
218
+ var apiPath = (0, url_path_1.default)(CASCADE_POLICIES_PATH, policyID);
219
+ return this.client.wrapWithDefaultHandler(this.client.del)(apiPath, null, callback);
220
+ }
221
+ /**
222
+ * If a policy already exists on a folder, this will apply that policy to all existing files and
223
+ * sub-folders within the target folder.
224
+ *
225
+ * API Endpoint: '/metadata_cascade_policies/:policyID/apply'
226
+ * Method: POST
227
+ *
228
+ * @param {string} policyID The ID of the policy to delete
229
+ * @param {string} resolutionMethod How to resolve conflicts, either "none" or "overwrite"
230
+ * @param {Function} [callback] Passed nothing if successful
231
+ * @returns {Promise<void>} Promise resolving to nothing
232
+ */
233
+ forceApplyCascadePolicy(policyID, resolutionMethod, callback) {
234
+ var apiPath = (0, url_path_1.default)(CASCADE_POLICIES_PATH, policyID, 'apply'), params = {
235
+ body: {
236
+ conflict_resolution: resolutionMethod,
237
+ },
238
+ };
239
+ return this.client.wrapWithDefaultHandler(this.client.post)(apiPath, params, callback);
240
+ }
241
+ /**
242
+ * Query Box items by their metadata.
243
+ *
244
+ * API Endpoint: '/metadata_queries/execute_read'
245
+ * Method: POST
246
+ *
247
+ * @param {string} from - The template used in the query. Must be in the form scope.templateKey
248
+ * @param {string} ancestorFolderId - The folder_id to which to restrain the query
249
+ * @param {Object} [options] - Optional parameters
250
+ * @param {string} [options.query] - The logical expression of the query
251
+ * @param {Object} [options.query_params] - Required if query present. The arguments for the query
252
+ * @param {Object} [options.order_by] - The field_key(s) to order on and the corresponding direction(s)
253
+ * @param {Array} [options.fields] - An array of fields to return
254
+ * @param {int} [options.limit=100] - The number of results to return for a single request
255
+ * @param {string} [options.marker] - Pagination marker
256
+ * @param {Function} [callback] - Passed a collection of items and their associated metadata
257
+ * @returns {Promise<void>} Promise resolving to a collection of items and their associated metadata
258
+ */
259
+ query(from, ancestorFolderId, options, callback) {
260
+ var body = {
261
+ from,
262
+ ancestor_folder_id: ancestorFolderId,
263
+ };
264
+ var params = {
265
+ body: merge(body, options || {}),
266
+ };
267
+ return this.client.wrapWithDefaultHandler(this.client.post)(QUERY_PATH, params, callback);
268
+ }
269
+ }
270
+ Metadata.prototype.templates = {
271
+ PROPERTIES: PROPERTIES_TEMPLATE,
272
+ };
273
+ Metadata.prototype.scopes = {
274
+ ENTERPRISE: ENTERPRISE_SCOPE,
275
+ GLOBAL: GLOBAL_SCOPE,
276
+ };
277
+ Metadata.prototype.cascadeResolution = Object.freeze({
278
+ PRESERVE_EXISTING: 'none',
279
+ OVERWRITE: 'overwrite',
280
+ });
281
+ /**
282
+ * Valid metadata field types
283
+ * @readonly
284
+ * @enum {MetadataFieldType}
285
+ */
286
+ Metadata.prototype.fieldTypes = MetadataFieldType;
287
+ module.exports = Metadata;
288
+ //# sourceMappingURL=metadata.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"metadata.js","sourceRoot":"","sources":["../../src/managers/metadata.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,38 @@
1
+ /**
2
+ * @fileoverview Manager for the Box RecentItem Resource
3
+ */
4
+ import BoxClient from '../box-client';
5
+ /**
6
+ * Simple manager for interacting with all 'RecentItem' endpoints and actions.
7
+ *
8
+ * @constructor
9
+ * @param {BoxClient} client - The Box API Client that is responsible for making calls to the API
10
+ * @returns {void}
11
+ */
12
+ declare class RecentItems {
13
+ client: BoxClient;
14
+ constructor(client: BoxClient);
15
+ /**
16
+ * Requests all items that have been accessed by a user in the last 90 days or the last 1000 items accessed.
17
+ *
18
+ * API Endpoint: '/recent_items'
19
+ * Method: GET
20
+ *
21
+ * @param {Object} [options] - Additional options for the request. Can be left null in most cases.
22
+ * @param {int} [options.limit] Maximum number of items to return
23
+ * @param {string} [options.marker] The position marker for marker-based paging
24
+ * @param {string} [options.fields] Comma-separated list of fields to include in the response
25
+ * @param {Function} [callback] - Passed the items information if they were acquired successfully
26
+ * @returns {Promise<Object>} A promise resolving to the collection of items in the collection
27
+ */
28
+ get(options?: {
29
+ limit?: number;
30
+ marker?: string;
31
+ fields?: string;
32
+ }, callback?: Function): any;
33
+ }
34
+ /**
35
+ * @module box-node-sdk/lib/managers/recent-items
36
+ * @see {@Link RecentItems}
37
+ */
38
+ export = RecentItems;
@@ -0,0 +1,49 @@
1
+ "use strict";
2
+ /**
3
+ * @fileoverview Manager for the Box RecentItem Resource
4
+ */
5
+ var __importDefault = (this && this.__importDefault) || function (mod) {
6
+ return (mod && mod.__esModule) ? mod : { "default": mod };
7
+ };
8
+ const url_path_1 = __importDefault(require("../util/url-path"));
9
+ // ------------------------------------------------------------------------------
10
+ // Private
11
+ // ------------------------------------------------------------------------------
12
+ const BASE_PATH = '/recent_items';
13
+ // ------------------------------------------------------------------------------
14
+ // Public
15
+ // ------------------------------------------------------------------------------
16
+ /**
17
+ * Simple manager for interacting with all 'RecentItem' endpoints and actions.
18
+ *
19
+ * @constructor
20
+ * @param {BoxClient} client - The Box API Client that is responsible for making calls to the API
21
+ * @returns {void}
22
+ */
23
+ class RecentItems {
24
+ constructor(client) {
25
+ this.client = client;
26
+ }
27
+ /**
28
+ * Requests all items that have been accessed by a user in the last 90 days or the last 1000 items accessed.
29
+ *
30
+ * API Endpoint: '/recent_items'
31
+ * Method: GET
32
+ *
33
+ * @param {Object} [options] - Additional options for the request. Can be left null in most cases.
34
+ * @param {int} [options.limit] Maximum number of items to return
35
+ * @param {string} [options.marker] The position marker for marker-based paging
36
+ * @param {string} [options.fields] Comma-separated list of fields to include in the response
37
+ * @param {Function} [callback] - Passed the items information if they were acquired successfully
38
+ * @returns {Promise<Object>} A promise resolving to the collection of items in the collection
39
+ */
40
+ get(options, callback) {
41
+ var params = {
42
+ qs: options,
43
+ };
44
+ var apiPath = (0, url_path_1.default)(BASE_PATH);
45
+ return this.client.wrapWithDefaultHandler(this.client.get)(apiPath, params, callback);
46
+ }
47
+ }
48
+ module.exports = RecentItems;
49
+ //# sourceMappingURL=recent-items.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"recent-items.js","sourceRoot":"","sources":["../../src/managers/recent-items.ts"],"names":[],"mappings":";AAAA;;GAEG;;;;AAOH,gEAAuC;AAEvC,iFAAiF;AACjF,UAAU;AACV,iFAAiF;AAEjF,MAAM,SAAS,GAAG,eAAe,CAAC;AAElC,iFAAiF;AACjF,SAAS;AACT,iFAAiF;AAEjF;;;;;;GAMG;AACH,MAAM,WAAW;IAGf,YAAY,MAAiB;QAC3B,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACvB,CAAC;IAED;;;;;;;;;;;;OAYG;IACH,GAAG,CACD,OAIC,EACD,QAAmB;QAEnB,IAAI,MAAM,GAAG;YACX,EAAE,EAAE,OAAO;SACZ,CAAC;QACF,IAAI,OAAO,GAAG,IAAA,kBAAO,EAAC,SAAS,CAAC,CAAC;QACjC,OAAO,IAAI,CAAC,MAAM,CAAC,sBAAsB,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CACxD,OAAO,EACP,MAAM,EACN,QAAQ,CACT,CAAC;IACJ,CAAC;CACF;AAMD,iBAAS,WAAW,CAAC"}