spotted-ts 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 (750) hide show
  1. package/CHANGELOG.md +47 -0
  2. package/LICENSE +201 -0
  3. package/README.md +354 -0
  4. package/api-promise.d.mts +2 -0
  5. package/api-promise.d.mts.map +1 -0
  6. package/api-promise.d.ts +2 -0
  7. package/api-promise.d.ts.map +1 -0
  8. package/api-promise.js +6 -0
  9. package/api-promise.js.map +1 -0
  10. package/api-promise.mjs +2 -0
  11. package/api-promise.mjs.map +1 -0
  12. package/client.d.mts +261 -0
  13. package/client.d.mts.map +1 -0
  14. package/client.d.ts +261 -0
  15. package/client.d.ts.map +1 -0
  16. package/client.js +553 -0
  17. package/client.js.map +1 -0
  18. package/client.mjs +549 -0
  19. package/client.mjs.map +1 -0
  20. package/core/api-promise.d.mts +46 -0
  21. package/core/api-promise.d.mts.map +1 -0
  22. package/core/api-promise.d.ts +46 -0
  23. package/core/api-promise.d.ts.map +1 -0
  24. package/core/api-promise.js +74 -0
  25. package/core/api-promise.js.map +1 -0
  26. package/core/api-promise.mjs +70 -0
  27. package/core/api-promise.mjs.map +1 -0
  28. package/core/error.d.mts +46 -0
  29. package/core/error.d.mts.map +1 -0
  30. package/core/error.d.ts +46 -0
  31. package/core/error.d.ts.map +1 -0
  32. package/core/error.js +113 -0
  33. package/core/error.js.map +1 -0
  34. package/core/error.mjs +97 -0
  35. package/core/error.mjs.map +1 -0
  36. package/core/pagination.d.mts +50 -0
  37. package/core/pagination.d.mts.map +1 -0
  38. package/core/pagination.d.ts +50 -0
  39. package/core/pagination.d.ts.map +1 -0
  40. package/core/pagination.js +104 -0
  41. package/core/pagination.js.map +1 -0
  42. package/core/pagination.mjs +98 -0
  43. package/core/pagination.mjs.map +1 -0
  44. package/core/resource.d.mts +6 -0
  45. package/core/resource.d.mts.map +1 -0
  46. package/core/resource.d.ts +6 -0
  47. package/core/resource.d.ts.map +1 -0
  48. package/core/resource.js +11 -0
  49. package/core/resource.js.map +1 -0
  50. package/core/resource.mjs +7 -0
  51. package/core/resource.mjs.map +1 -0
  52. package/core/uploads.d.mts +3 -0
  53. package/core/uploads.d.mts.map +1 -0
  54. package/core/uploads.d.ts +3 -0
  55. package/core/uploads.d.ts.map +1 -0
  56. package/core/uploads.js +6 -0
  57. package/core/uploads.js.map +1 -0
  58. package/core/uploads.mjs +2 -0
  59. package/core/uploads.mjs.map +1 -0
  60. package/error.d.mts +2 -0
  61. package/error.d.mts.map +1 -0
  62. package/error.d.ts +2 -0
  63. package/error.d.ts.map +1 -0
  64. package/error.js +6 -0
  65. package/error.js.map +1 -0
  66. package/error.mjs +2 -0
  67. package/error.mjs.map +1 -0
  68. package/index.d.mts +7 -0
  69. package/index.d.mts.map +1 -0
  70. package/index.d.ts +7 -0
  71. package/index.d.ts.map +1 -0
  72. package/index.js +32 -0
  73. package/index.js.map +1 -0
  74. package/index.mjs +8 -0
  75. package/index.mjs.map +1 -0
  76. package/internal/builtin-types.d.mts +73 -0
  77. package/internal/builtin-types.d.mts.map +1 -0
  78. package/internal/builtin-types.d.ts +73 -0
  79. package/internal/builtin-types.d.ts.map +1 -0
  80. package/internal/builtin-types.js +4 -0
  81. package/internal/builtin-types.js.map +1 -0
  82. package/internal/builtin-types.mjs +3 -0
  83. package/internal/builtin-types.mjs.map +1 -0
  84. package/internal/detect-platform.d.mts +15 -0
  85. package/internal/detect-platform.d.mts.map +1 -0
  86. package/internal/detect-platform.d.ts +15 -0
  87. package/internal/detect-platform.d.ts.map +1 -0
  88. package/internal/detect-platform.js +162 -0
  89. package/internal/detect-platform.js.map +1 -0
  90. package/internal/detect-platform.mjs +157 -0
  91. package/internal/detect-platform.mjs.map +1 -0
  92. package/internal/errors.d.mts +3 -0
  93. package/internal/errors.d.mts.map +1 -0
  94. package/internal/errors.d.ts +3 -0
  95. package/internal/errors.d.ts.map +1 -0
  96. package/internal/errors.js +41 -0
  97. package/internal/errors.js.map +1 -0
  98. package/internal/errors.mjs +36 -0
  99. package/internal/errors.mjs.map +1 -0
  100. package/internal/headers.d.mts +20 -0
  101. package/internal/headers.d.mts.map +1 -0
  102. package/internal/headers.d.ts +20 -0
  103. package/internal/headers.d.ts.map +1 -0
  104. package/internal/headers.js +79 -0
  105. package/internal/headers.js.map +1 -0
  106. package/internal/headers.mjs +74 -0
  107. package/internal/headers.mjs.map +1 -0
  108. package/internal/parse.d.mts +12 -0
  109. package/internal/parse.d.mts.map +1 -0
  110. package/internal/parse.d.ts +12 -0
  111. package/internal/parse.d.ts.map +1 -0
  112. package/internal/parse.js +35 -0
  113. package/internal/parse.js.map +1 -0
  114. package/internal/parse.mjs +32 -0
  115. package/internal/parse.mjs.map +1 -0
  116. package/internal/qs/formats.d.mts +7 -0
  117. package/internal/qs/formats.d.mts.map +1 -0
  118. package/internal/qs/formats.d.ts +7 -0
  119. package/internal/qs/formats.d.ts.map +1 -0
  120. package/internal/qs/formats.js +13 -0
  121. package/internal/qs/formats.js.map +1 -0
  122. package/internal/qs/formats.mjs +9 -0
  123. package/internal/qs/formats.mjs.map +1 -0
  124. package/internal/qs/index.d.mts +10 -0
  125. package/internal/qs/index.d.mts.map +1 -0
  126. package/internal/qs/index.d.ts +10 -0
  127. package/internal/qs/index.d.ts.map +1 -0
  128. package/internal/qs/index.js +14 -0
  129. package/internal/qs/index.js.map +1 -0
  130. package/internal/qs/index.mjs +10 -0
  131. package/internal/qs/index.mjs.map +1 -0
  132. package/internal/qs/stringify.d.mts +3 -0
  133. package/internal/qs/stringify.d.mts.map +1 -0
  134. package/internal/qs/stringify.d.ts +3 -0
  135. package/internal/qs/stringify.d.ts.map +1 -0
  136. package/internal/qs/stringify.js +277 -0
  137. package/internal/qs/stringify.js.map +1 -0
  138. package/internal/qs/stringify.mjs +274 -0
  139. package/internal/qs/stringify.mjs.map +1 -0
  140. package/internal/qs/types.d.mts +57 -0
  141. package/internal/qs/types.d.mts.map +1 -0
  142. package/internal/qs/types.d.ts +57 -0
  143. package/internal/qs/types.d.ts.map +1 -0
  144. package/internal/qs/types.js +3 -0
  145. package/internal/qs/types.js.map +1 -0
  146. package/internal/qs/types.mjs +2 -0
  147. package/internal/qs/types.mjs.map +1 -0
  148. package/internal/qs/utils.d.mts +15 -0
  149. package/internal/qs/utils.d.mts.map +1 -0
  150. package/internal/qs/utils.d.ts +15 -0
  151. package/internal/qs/utils.d.ts.map +1 -0
  152. package/internal/qs/utils.js +230 -0
  153. package/internal/qs/utils.js.map +1 -0
  154. package/internal/qs/utils.mjs +217 -0
  155. package/internal/qs/utils.mjs.map +1 -0
  156. package/internal/request-options.d.mts +75 -0
  157. package/internal/request-options.d.mts.map +1 -0
  158. package/internal/request-options.d.ts +75 -0
  159. package/internal/request-options.d.ts.map +1 -0
  160. package/internal/request-options.js +14 -0
  161. package/internal/request-options.js.map +1 -0
  162. package/internal/request-options.mjs +10 -0
  163. package/internal/request-options.mjs.map +1 -0
  164. package/internal/shim-types.d.mts +17 -0
  165. package/internal/shim-types.d.mts.map +1 -0
  166. package/internal/shim-types.d.ts +17 -0
  167. package/internal/shim-types.d.ts.map +1 -0
  168. package/internal/shim-types.js +4 -0
  169. package/internal/shim-types.js.map +1 -0
  170. package/internal/shim-types.mjs +3 -0
  171. package/internal/shim-types.mjs.map +1 -0
  172. package/internal/shims.d.mts +20 -0
  173. package/internal/shims.d.mts.map +1 -0
  174. package/internal/shims.d.ts +20 -0
  175. package/internal/shims.d.ts.map +1 -0
  176. package/internal/shims.js +92 -0
  177. package/internal/shims.js.map +1 -0
  178. package/internal/shims.mjs +85 -0
  179. package/internal/shims.mjs.map +1 -0
  180. package/internal/to-file.d.mts +45 -0
  181. package/internal/to-file.d.mts.map +1 -0
  182. package/internal/to-file.d.ts +45 -0
  183. package/internal/to-file.d.ts.map +1 -0
  184. package/internal/to-file.js +91 -0
  185. package/internal/to-file.js.map +1 -0
  186. package/internal/to-file.mjs +88 -0
  187. package/internal/to-file.mjs.map +1 -0
  188. package/internal/tslib.js +81 -0
  189. package/internal/tslib.mjs +17 -0
  190. package/internal/types.d.mts +69 -0
  191. package/internal/types.d.mts.map +1 -0
  192. package/internal/types.d.ts +69 -0
  193. package/internal/types.d.ts.map +1 -0
  194. package/internal/types.js +4 -0
  195. package/internal/types.js.map +1 -0
  196. package/internal/types.mjs +3 -0
  197. package/internal/types.mjs.map +1 -0
  198. package/internal/uploads.d.mts +42 -0
  199. package/internal/uploads.d.mts.map +1 -0
  200. package/internal/uploads.d.ts +42 -0
  201. package/internal/uploads.d.ts.map +1 -0
  202. package/internal/uploads.js +141 -0
  203. package/internal/uploads.js.map +1 -0
  204. package/internal/uploads.mjs +131 -0
  205. package/internal/uploads.mjs.map +1 -0
  206. package/internal/utils/base64.d.mts +3 -0
  207. package/internal/utils/base64.d.mts.map +1 -0
  208. package/internal/utils/base64.d.ts +3 -0
  209. package/internal/utils/base64.d.ts.map +1 -0
  210. package/internal/utils/base64.js +38 -0
  211. package/internal/utils/base64.js.map +1 -0
  212. package/internal/utils/base64.mjs +33 -0
  213. package/internal/utils/base64.mjs.map +1 -0
  214. package/internal/utils/bytes.d.mts +4 -0
  215. package/internal/utils/bytes.d.mts.map +1 -0
  216. package/internal/utils/bytes.d.ts +4 -0
  217. package/internal/utils/bytes.d.ts.map +1 -0
  218. package/internal/utils/bytes.js +31 -0
  219. package/internal/utils/bytes.js.map +1 -0
  220. package/internal/utils/bytes.mjs +26 -0
  221. package/internal/utils/bytes.mjs.map +1 -0
  222. package/internal/utils/env.d.mts +9 -0
  223. package/internal/utils/env.d.mts.map +1 -0
  224. package/internal/utils/env.d.ts +9 -0
  225. package/internal/utils/env.d.ts.map +1 -0
  226. package/internal/utils/env.js +22 -0
  227. package/internal/utils/env.js.map +1 -0
  228. package/internal/utils/env.mjs +18 -0
  229. package/internal/utils/env.mjs.map +1 -0
  230. package/internal/utils/log.d.mts +37 -0
  231. package/internal/utils/log.d.mts.map +1 -0
  232. package/internal/utils/log.d.ts +37 -0
  233. package/internal/utils/log.d.ts.map +1 -0
  234. package/internal/utils/log.js +85 -0
  235. package/internal/utils/log.js.map +1 -0
  236. package/internal/utils/log.mjs +79 -0
  237. package/internal/utils/log.mjs.map +1 -0
  238. package/internal/utils/path.d.mts +15 -0
  239. package/internal/utils/path.d.mts.map +1 -0
  240. package/internal/utils/path.d.ts +15 -0
  241. package/internal/utils/path.d.ts.map +1 -0
  242. package/internal/utils/path.js +79 -0
  243. package/internal/utils/path.js.map +1 -0
  244. package/internal/utils/path.mjs +74 -0
  245. package/internal/utils/path.mjs.map +1 -0
  246. package/internal/utils/sleep.d.mts +2 -0
  247. package/internal/utils/sleep.d.mts.map +1 -0
  248. package/internal/utils/sleep.d.ts +2 -0
  249. package/internal/utils/sleep.d.ts.map +1 -0
  250. package/internal/utils/sleep.js +7 -0
  251. package/internal/utils/sleep.js.map +1 -0
  252. package/internal/utils/sleep.mjs +3 -0
  253. package/internal/utils/sleep.mjs.map +1 -0
  254. package/internal/utils/uuid.d.mts +5 -0
  255. package/internal/utils/uuid.d.mts.map +1 -0
  256. package/internal/utils/uuid.d.ts +5 -0
  257. package/internal/utils/uuid.d.ts.map +1 -0
  258. package/internal/utils/uuid.js +19 -0
  259. package/internal/utils/uuid.js.map +1 -0
  260. package/internal/utils/uuid.mjs +15 -0
  261. package/internal/utils/uuid.mjs.map +1 -0
  262. package/internal/utils/values.d.mts +18 -0
  263. package/internal/utils/values.d.mts.map +1 -0
  264. package/internal/utils/values.d.ts +18 -0
  265. package/internal/utils/values.d.ts.map +1 -0
  266. package/internal/utils/values.js +112 -0
  267. package/internal/utils/values.js.map +1 -0
  268. package/internal/utils/values.mjs +94 -0
  269. package/internal/utils/values.mjs.map +1 -0
  270. package/internal/utils.d.mts +7 -0
  271. package/internal/utils.d.mts.map +1 -0
  272. package/internal/utils.d.ts +7 -0
  273. package/internal/utils.d.ts.map +1 -0
  274. package/internal/utils.js +11 -0
  275. package/internal/utils.js.map +1 -0
  276. package/internal/utils.mjs +8 -0
  277. package/internal/utils.mjs.map +1 -0
  278. package/package.json +148 -0
  279. package/pagination.d.mts +2 -0
  280. package/pagination.d.mts.map +1 -0
  281. package/pagination.d.ts +2 -0
  282. package/pagination.d.ts.map +1 -0
  283. package/pagination.js +6 -0
  284. package/pagination.js.map +1 -0
  285. package/pagination.mjs +2 -0
  286. package/pagination.mjs.map +1 -0
  287. package/resource.d.mts +2 -0
  288. package/resource.d.mts.map +1 -0
  289. package/resource.d.ts +2 -0
  290. package/resource.d.ts.map +1 -0
  291. package/resource.js +6 -0
  292. package/resource.js.map +1 -0
  293. package/resource.mjs +2 -0
  294. package/resource.mjs.map +1 -0
  295. package/resources/albums.d.mts +333 -0
  296. package/resources/albums.d.mts.map +1 -0
  297. package/resources/albums.d.ts +333 -0
  298. package/resources/albums.d.ts.map +1 -0
  299. package/resources/albums.js +34 -0
  300. package/resources/albums.js.map +1 -0
  301. package/resources/albums.mjs +30 -0
  302. package/resources/albums.mjs.map +1 -0
  303. package/resources/artists.d.mts +166 -0
  304. package/resources/artists.d.mts.map +1 -0
  305. package/resources/artists.d.ts +166 -0
  306. package/resources/artists.d.ts.map +1 -0
  307. package/resources/artists.js +48 -0
  308. package/resources/artists.js.map +1 -0
  309. package/resources/artists.mjs +44 -0
  310. package/resources/artists.mjs.map +1 -0
  311. package/resources/audio-analysis.d.mts +365 -0
  312. package/resources/audio-analysis.d.mts.map +1 -0
  313. package/resources/audio-analysis.d.ts +365 -0
  314. package/resources/audio-analysis.d.ts.map +1 -0
  315. package/resources/audio-analysis.js +20 -0
  316. package/resources/audio-analysis.js.map +1 -0
  317. package/resources/audio-analysis.mjs +16 -0
  318. package/resources/audio-analysis.mjs.map +1 -0
  319. package/resources/audio-features.d.mts +253 -0
  320. package/resources/audio-features.d.mts.map +1 -0
  321. package/resources/audio-features.d.ts +253 -0
  322. package/resources/audio-features.d.ts.map +1 -0
  323. package/resources/audio-features.js +27 -0
  324. package/resources/audio-features.js.map +1 -0
  325. package/resources/audio-features.mjs +23 -0
  326. package/resources/audio-features.mjs.map +1 -0
  327. package/resources/audiobooks.d.mts +259 -0
  328. package/resources/audiobooks.d.mts.map +1 -0
  329. package/resources/audiobooks.d.ts +259 -0
  330. package/resources/audiobooks.d.ts.map +1 -0
  331. package/resources/audiobooks.js +37 -0
  332. package/resources/audiobooks.js.map +1 -0
  333. package/resources/audiobooks.mjs +33 -0
  334. package/resources/audiobooks.mjs.map +1 -0
  335. package/resources/browse/browse.d.mts +165 -0
  336. package/resources/browse/browse.d.mts.map +1 -0
  337. package/resources/browse/browse.d.ts +165 -0
  338. package/resources/browse/browse.d.ts.map +1 -0
  339. package/resources/browse/browse.js +33 -0
  340. package/resources/browse/browse.js.map +1 -0
  341. package/resources/browse/browse.mjs +28 -0
  342. package/resources/browse/browse.mjs.map +1 -0
  343. package/resources/browse/categories.d.mts +151 -0
  344. package/resources/browse/categories.d.mts.map +1 -0
  345. package/resources/browse/categories.d.ts +151 -0
  346. package/resources/browse/categories.d.ts.map +1 -0
  347. package/resources/browse/categories.js +32 -0
  348. package/resources/browse/categories.js.map +1 -0
  349. package/resources/browse/categories.mjs +28 -0
  350. package/resources/browse/categories.mjs.map +1 -0
  351. package/resources/browse/index.d.mts +3 -0
  352. package/resources/browse/index.d.mts.map +1 -0
  353. package/resources/browse/index.d.ts +3 -0
  354. package/resources/browse/index.d.ts.map +1 -0
  355. package/resources/browse/index.js +9 -0
  356. package/resources/browse/index.js.map +1 -0
  357. package/resources/browse/index.mjs +4 -0
  358. package/resources/browse/index.mjs.map +1 -0
  359. package/resources/browse.d.mts +2 -0
  360. package/resources/browse.d.mts.map +1 -0
  361. package/resources/browse.d.ts +2 -0
  362. package/resources/browse.d.ts.map +1 -0
  363. package/resources/browse.js +6 -0
  364. package/resources/browse.js.map +1 -0
  365. package/resources/browse.mjs +3 -0
  366. package/resources/browse.mjs.map +1 -0
  367. package/resources/chapters.d.mts +251 -0
  368. package/resources/chapters.d.mts.map +1 -0
  369. package/resources/chapters.d.ts +251 -0
  370. package/resources/chapters.d.ts.map +1 -0
  371. package/resources/chapters.js +26 -0
  372. package/resources/chapters.js.map +1 -0
  373. package/resources/chapters.mjs +22 -0
  374. package/resources/chapters.mjs.map +1 -0
  375. package/resources/episodes.d.mts +56 -0
  376. package/resources/episodes.d.mts.map +1 -0
  377. package/resources/episodes.d.ts +56 -0
  378. package/resources/episodes.d.ts.map +1 -0
  379. package/resources/episodes.js +23 -0
  380. package/resources/episodes.js.map +1 -0
  381. package/resources/episodes.mjs +19 -0
  382. package/resources/episodes.mjs.map +1 -0
  383. package/resources/index.d.mts +18 -0
  384. package/resources/index.d.mts.map +1 -0
  385. package/resources/index.d.ts +18 -0
  386. package/resources/index.d.ts.map +1 -0
  387. package/resources/index.js +39 -0
  388. package/resources/index.js.map +1 -0
  389. package/resources/index.mjs +19 -0
  390. package/resources/index.mjs.map +1 -0
  391. package/resources/markets.d.mts +16 -0
  392. package/resources/markets.d.mts.map +1 -0
  393. package/resources/markets.d.ts +16 -0
  394. package/resources/markets.d.ts.map +1 -0
  395. package/resources/markets.js +15 -0
  396. package/resources/markets.js.map +1 -0
  397. package/resources/markets.mjs +11 -0
  398. package/resources/markets.mjs.map +1 -0
  399. package/resources/me/albums.d.mts +250 -0
  400. package/resources/me/albums.d.mts.map +1 -0
  401. package/resources/me/albums.d.ts +250 -0
  402. package/resources/me/albums.d.ts.map +1 -0
  403. package/resources/me/albums.js +70 -0
  404. package/resources/me/albums.js.map +1 -0
  405. package/resources/me/albums.mjs +66 -0
  406. package/resources/me/albums.mjs.map +1 -0
  407. package/resources/me/audiobooks.d.mts +153 -0
  408. package/resources/me/audiobooks.d.mts.map +1 -0
  409. package/resources/me/audiobooks.d.ts +153 -0
  410. package/resources/me/audiobooks.d.ts.map +1 -0
  411. package/resources/me/audiobooks.js +79 -0
  412. package/resources/me/audiobooks.js.map +1 -0
  413. package/resources/me/audiobooks.mjs +75 -0
  414. package/resources/me/audiobooks.mjs.map +1 -0
  415. package/resources/me/episodes.d.mts +132 -0
  416. package/resources/me/episodes.d.mts.map +1 -0
  417. package/resources/me/episodes.d.ts +132 -0
  418. package/resources/me/episodes.d.ts.map +1 -0
  419. package/resources/me/episodes.js +81 -0
  420. package/resources/me/episodes.js.map +1 -0
  421. package/resources/me/episodes.mjs +77 -0
  422. package/resources/me/episodes.mjs.map +1 -0
  423. package/resources/me/following.d.mts +147 -0
  424. package/resources/me/following.d.mts.map +1 -0
  425. package/resources/me/following.d.ts +147 -0
  426. package/resources/me/following.d.ts.map +1 -0
  427. package/resources/me/following.js +70 -0
  428. package/resources/me/following.js.map +1 -0
  429. package/resources/me/following.mjs +66 -0
  430. package/resources/me/following.mjs.map +1 -0
  431. package/resources/me/index.d.mts +11 -0
  432. package/resources/me/index.d.mts.map +1 -0
  433. package/resources/me/index.d.ts +11 -0
  434. package/resources/me/index.d.ts.map +1 -0
  435. package/resources/me/index.js +25 -0
  436. package/resources/me/index.js.map +1 -0
  437. package/resources/me/index.mjs +12 -0
  438. package/resources/me/index.mjs.map +1 -0
  439. package/resources/me/me.d.mts +143 -0
  440. package/resources/me/me.d.mts.map +1 -0
  441. package/resources/me/me.d.ts +143 -0
  442. package/resources/me/me.d.ts.map +1 -0
  443. package/resources/me/me.js +61 -0
  444. package/resources/me/me.js.map +1 -0
  445. package/resources/me/me.mjs +56 -0
  446. package/resources/me/me.mjs.map +1 -0
  447. package/resources/me/player/index.d.mts +3 -0
  448. package/resources/me/player/index.d.mts.map +1 -0
  449. package/resources/me/player/index.d.ts +3 -0
  450. package/resources/me/player/index.d.ts.map +1 -0
  451. package/resources/me/player/index.js +9 -0
  452. package/resources/me/player/index.js.map +1 -0
  453. package/resources/me/player/index.mjs +4 -0
  454. package/resources/me/player/index.mjs.map +1 -0
  455. package/resources/me/player/player.d.mts +595 -0
  456. package/resources/me/player/player.d.mts.map +1 -0
  457. package/resources/me/player/player.d.ts +595 -0
  458. package/resources/me/player/player.d.ts.map +1 -0
  459. package/resources/me/player/player.js +236 -0
  460. package/resources/me/player/player.js.map +1 -0
  461. package/resources/me/player/player.mjs +231 -0
  462. package/resources/me/player/player.mjs.map +1 -0
  463. package/resources/me/player/queue.d.mts +53 -0
  464. package/resources/me/player/queue.d.mts.map +1 -0
  465. package/resources/me/player/queue.d.ts +53 -0
  466. package/resources/me/player/queue.d.ts.map +1 -0
  467. package/resources/me/player/queue.js +41 -0
  468. package/resources/me/player/queue.js.map +1 -0
  469. package/resources/me/player/queue.mjs +37 -0
  470. package/resources/me/player/queue.mjs.map +1 -0
  471. package/resources/me/player.d.mts +2 -0
  472. package/resources/me/player.d.mts.map +1 -0
  473. package/resources/me/player.d.ts +2 -0
  474. package/resources/me/player.d.ts.map +1 -0
  475. package/resources/me/player.js +6 -0
  476. package/resources/me/player.js.map +1 -0
  477. package/resources/me/player.mjs +3 -0
  478. package/resources/me/player.mjs.map +1 -0
  479. package/resources/me/playlists.d.mts +35 -0
  480. package/resources/me/playlists.d.mts.map +1 -0
  481. package/resources/me/playlists.d.ts +35 -0
  482. package/resources/me/playlists.d.ts.map +1 -0
  483. package/resources/me/playlists.js +27 -0
  484. package/resources/me/playlists.js.map +1 -0
  485. package/resources/me/playlists.mjs +23 -0
  486. package/resources/me/playlists.mjs.map +1 -0
  487. package/resources/me/shows.d.mts +109 -0
  488. package/resources/me/shows.d.mts.map +1 -0
  489. package/resources/me/shows.d.ts +109 -0
  490. package/resources/me/shows.d.ts.map +1 -0
  491. package/resources/me/shows.js +70 -0
  492. package/resources/me/shows.js.map +1 -0
  493. package/resources/me/shows.mjs +66 -0
  494. package/resources/me/shows.mjs.map +1 -0
  495. package/resources/me/top.d.mts +72 -0
  496. package/resources/me/top.d.mts.map +1 -0
  497. package/resources/me/top.d.ts +72 -0
  498. package/resources/me/top.d.ts.map +1 -0
  499. package/resources/me/top.js +44 -0
  500. package/resources/me/top.js.map +1 -0
  501. package/resources/me/top.mjs +40 -0
  502. package/resources/me/top.mjs.map +1 -0
  503. package/resources/me/tracks.d.mts +151 -0
  504. package/resources/me/tracks.d.mts.map +1 -0
  505. package/resources/me/tracks.d.ts +151 -0
  506. package/resources/me/tracks.d.ts.map +1 -0
  507. package/resources/me/tracks.js +70 -0
  508. package/resources/me/tracks.js.map +1 -0
  509. package/resources/me/tracks.mjs +66 -0
  510. package/resources/me/tracks.mjs.map +1 -0
  511. package/resources/me.d.mts +2 -0
  512. package/resources/me.d.mts.map +1 -0
  513. package/resources/me.d.ts +2 -0
  514. package/resources/me.d.ts.map +1 -0
  515. package/resources/me.js +6 -0
  516. package/resources/me.js.map +1 -0
  517. package/resources/me.mjs +3 -0
  518. package/resources/me.mjs.map +1 -0
  519. package/resources/playlists/followers.d.mts +61 -0
  520. package/resources/playlists/followers.d.mts.map +1 -0
  521. package/resources/playlists/followers.d.ts +61 -0
  522. package/resources/playlists/followers.d.ts.map +1 -0
  523. package/resources/playlists/followers.js +57 -0
  524. package/resources/playlists/followers.js.map +1 -0
  525. package/resources/playlists/followers.mjs +53 -0
  526. package/resources/playlists/followers.mjs.map +1 -0
  527. package/resources/playlists/images.d.mts +42 -0
  528. package/resources/playlists/images.d.mts.map +1 -0
  529. package/resources/playlists/images.d.ts +42 -0
  530. package/resources/playlists/images.d.ts.map +1 -0
  531. package/resources/playlists/images.js +45 -0
  532. package/resources/playlists/images.js.map +1 -0
  533. package/resources/playlists/images.mjs +41 -0
  534. package/resources/playlists/images.mjs.map +1 -0
  535. package/resources/playlists/index.d.mts +5 -0
  536. package/resources/playlists/index.d.mts.map +1 -0
  537. package/resources/playlists/index.d.ts +5 -0
  538. package/resources/playlists/index.d.ts.map +1 -0
  539. package/resources/playlists/index.js +13 -0
  540. package/resources/playlists/index.js.map +1 -0
  541. package/resources/playlists/index.mjs +6 -0
  542. package/resources/playlists/index.mjs.map +1 -0
  543. package/resources/playlists/playlists.d.mts +215 -0
  544. package/resources/playlists/playlists.d.mts.map +1 -0
  545. package/resources/playlists/playlists.d.ts +215 -0
  546. package/resources/playlists/playlists.d.ts.map +1 -0
  547. package/resources/playlists/playlists.js +56 -0
  548. package/resources/playlists/playlists.js.map +1 -0
  549. package/resources/playlists/playlists.mjs +51 -0
  550. package/resources/playlists/playlists.mjs.map +1 -0
  551. package/resources/playlists/tracks.d.mts +197 -0
  552. package/resources/playlists/tracks.d.mts.map +1 -0
  553. package/resources/playlists/tracks.d.ts +197 -0
  554. package/resources/playlists/tracks.d.ts.map +1 -0
  555. package/resources/playlists/tracks.js +75 -0
  556. package/resources/playlists/tracks.js.map +1 -0
  557. package/resources/playlists/tracks.mjs +71 -0
  558. package/resources/playlists/tracks.mjs.map +1 -0
  559. package/resources/playlists.d.mts +2 -0
  560. package/resources/playlists.d.mts.map +1 -0
  561. package/resources/playlists.d.ts +2 -0
  562. package/resources/playlists.d.ts.map +1 -0
  563. package/resources/playlists.js +6 -0
  564. package/resources/playlists.js.map +1 -0
  565. package/resources/playlists.mjs +3 -0
  566. package/resources/playlists.mjs.map +1 -0
  567. package/resources/recommendations.d.mts +420 -0
  568. package/resources/recommendations.d.mts.map +1 -0
  569. package/resources/recommendations.d.ts +420 -0
  570. package/resources/recommendations.d.ts.map +1 -0
  571. package/resources/recommendations.js +32 -0
  572. package/resources/recommendations.js.map +1 -0
  573. package/resources/recommendations.mjs +28 -0
  574. package/resources/recommendations.mjs.map +1 -0
  575. package/resources/search.d.mts +309 -0
  576. package/resources/search.d.mts.map +1 -0
  577. package/resources/search.d.ts +309 -0
  578. package/resources/search.d.ts.map +1 -0
  579. package/resources/search.js +17 -0
  580. package/resources/search.js.map +1 -0
  581. package/resources/search.mjs +13 -0
  582. package/resources/search.mjs.map +1 -0
  583. package/resources/shared.d.mts +1010 -0
  584. package/resources/shared.d.mts.map +1 -0
  585. package/resources/shared.d.ts +1010 -0
  586. package/resources/shared.d.ts.map +1 -0
  587. package/resources/shared.js +4 -0
  588. package/resources/shared.js.map +1 -0
  589. package/resources/shared.mjs +3 -0
  590. package/resources/shared.mjs.map +1 -0
  591. package/resources/shows.d.mts +125 -0
  592. package/resources/shows.d.mts.map +1 -0
  593. package/resources/shows.d.ts +125 -0
  594. package/resources/shows.d.ts.map +1 -0
  595. package/resources/shows.js +31 -0
  596. package/resources/shows.js.map +1 -0
  597. package/resources/shows.mjs +27 -0
  598. package/resources/shows.mjs.map +1 -0
  599. package/resources/tracks.d.mts +56 -0
  600. package/resources/tracks.d.mts.map +1 -0
  601. package/resources/tracks.d.ts +56 -0
  602. package/resources/tracks.d.ts.map +1 -0
  603. package/resources/tracks.js +23 -0
  604. package/resources/tracks.js.map +1 -0
  605. package/resources/tracks.mjs +19 -0
  606. package/resources/tracks.mjs.map +1 -0
  607. package/resources/users/index.d.mts +3 -0
  608. package/resources/users/index.d.mts.map +1 -0
  609. package/resources/users/index.d.ts +3 -0
  610. package/resources/users/index.d.ts.map +1 -0
  611. package/resources/users/index.js +9 -0
  612. package/resources/users/index.js.map +1 -0
  613. package/resources/users/index.mjs +4 -0
  614. package/resources/users/index.mjs.map +1 -0
  615. package/resources/users/playlists.d.mts +194 -0
  616. package/resources/users/playlists.d.mts.map +1 -0
  617. package/resources/users/playlists.d.ts +194 -0
  618. package/resources/users/playlists.d.ts.map +1 -0
  619. package/resources/users/playlists.js +43 -0
  620. package/resources/users/playlists.js.map +1 -0
  621. package/resources/users/playlists.mjs +39 -0
  622. package/resources/users/playlists.mjs.map +1 -0
  623. package/resources/users/users.d.mts +61 -0
  624. package/resources/users/users.d.mts.map +1 -0
  625. package/resources/users/users.d.ts +61 -0
  626. package/resources/users/users.d.ts.map +1 -0
  627. package/resources/users/users.js +31 -0
  628. package/resources/users/users.js.map +1 -0
  629. package/resources/users/users.mjs +26 -0
  630. package/resources/users/users.mjs.map +1 -0
  631. package/resources/users.d.mts +2 -0
  632. package/resources/users.d.mts.map +1 -0
  633. package/resources/users.d.ts +2 -0
  634. package/resources/users.d.ts.map +1 -0
  635. package/resources/users.js +6 -0
  636. package/resources/users.js.map +1 -0
  637. package/resources/users.mjs +3 -0
  638. package/resources/users.mjs.map +1 -0
  639. package/resources.d.mts +2 -0
  640. package/resources.d.mts.map +1 -0
  641. package/resources.d.ts +2 -0
  642. package/resources.d.ts.map +1 -0
  643. package/resources.js +5 -0
  644. package/resources.js.map +1 -0
  645. package/resources.mjs +2 -0
  646. package/resources.mjs.map +1 -0
  647. package/src/api-promise.ts +2 -0
  648. package/src/client.ts +1070 -0
  649. package/src/core/README.md +3 -0
  650. package/src/core/api-promise.ts +92 -0
  651. package/src/core/error.ts +130 -0
  652. package/src/core/pagination.ts +155 -0
  653. package/src/core/resource.ts +11 -0
  654. package/src/core/uploads.ts +2 -0
  655. package/src/error.ts +2 -0
  656. package/src/index.ts +23 -0
  657. package/src/internal/README.md +3 -0
  658. package/src/internal/builtin-types.ts +93 -0
  659. package/src/internal/detect-platform.ts +196 -0
  660. package/src/internal/errors.ts +33 -0
  661. package/src/internal/headers.ts +97 -0
  662. package/src/internal/parse.ts +50 -0
  663. package/src/internal/qs/LICENSE.md +13 -0
  664. package/src/internal/qs/README.md +3 -0
  665. package/src/internal/qs/formats.ts +10 -0
  666. package/src/internal/qs/index.ts +13 -0
  667. package/src/internal/qs/stringify.ts +385 -0
  668. package/src/internal/qs/types.ts +71 -0
  669. package/src/internal/qs/utils.ts +265 -0
  670. package/src/internal/request-options.ts +91 -0
  671. package/src/internal/shim-types.ts +26 -0
  672. package/src/internal/shims.ts +107 -0
  673. package/src/internal/to-file.ts +154 -0
  674. package/src/internal/types.ts +95 -0
  675. package/src/internal/uploads.ts +187 -0
  676. package/src/internal/utils/base64.ts +40 -0
  677. package/src/internal/utils/bytes.ts +32 -0
  678. package/src/internal/utils/env.ts +18 -0
  679. package/src/internal/utils/log.ts +126 -0
  680. package/src/internal/utils/path.ts +88 -0
  681. package/src/internal/utils/sleep.ts +3 -0
  682. package/src/internal/utils/uuid.ts +17 -0
  683. package/src/internal/utils/values.ts +105 -0
  684. package/src/internal/utils.ts +8 -0
  685. package/src/lib/.keep +4 -0
  686. package/src/pagination.ts +2 -0
  687. package/src/resource.ts +2 -0
  688. package/src/resources/albums.ts +427 -0
  689. package/src/resources/artists.ts +229 -0
  690. package/src/resources/audio-analysis.ts +438 -0
  691. package/src/resources/audio-features.ts +304 -0
  692. package/src/resources/audiobooks.ts +334 -0
  693. package/src/resources/browse/browse.ts +233 -0
  694. package/src/resources/browse/categories.ts +205 -0
  695. package/src/resources/browse/index.ts +18 -0
  696. package/src/resources/browse.ts +3 -0
  697. package/src/resources/chapters.ts +315 -0
  698. package/src/resources/episodes.ts +77 -0
  699. package/src/resources/index.ts +84 -0
  700. package/src/resources/markets.ts +22 -0
  701. package/src/resources/me/albums.ts +323 -0
  702. package/src/resources/me/audiobooks.ts +209 -0
  703. package/src/resources/me/episodes.ts +178 -0
  704. package/src/resources/me/following.ts +199 -0
  705. package/src/resources/me/index.ts +86 -0
  706. package/src/resources/me/me.ts +334 -0
  707. package/src/resources/me/player/index.ts +25 -0
  708. package/src/resources/me/player/player.ts +807 -0
  709. package/src/resources/me/player/queue.ts +71 -0
  710. package/src/resources/me/player.ts +3 -0
  711. package/src/resources/me/playlists.ts +49 -0
  712. package/src/resources/me/shows.ts +152 -0
  713. package/src/resources/me/top.ts +102 -0
  714. package/src/resources/me/tracks.ts +200 -0
  715. package/src/resources/me.ts +3 -0
  716. package/src/resources/playlists/followers.ts +97 -0
  717. package/src/resources/playlists/images.ts +59 -0
  718. package/src/resources/playlists/index.ts +25 -0
  719. package/src/resources/playlists/playlists.ts +306 -0
  720. package/src/resources/playlists/tracks.ts +261 -0
  721. package/src/resources/playlists.ts +3 -0
  722. package/src/resources/recommendations.ts +493 -0
  723. package/src/resources/search.ts +386 -0
  724. package/src/resources/shared.ts +1217 -0
  725. package/src/resources/shows.ts +171 -0
  726. package/src/resources/tracks.ts +77 -0
  727. package/src/resources/users/index.ts +9 -0
  728. package/src/resources/users/playlists.ts +249 -0
  729. package/src/resources/users/users.ts +84 -0
  730. package/src/resources/users.ts +3 -0
  731. package/src/resources.ts +1 -0
  732. package/src/tsconfig.json +11 -0
  733. package/src/uploads.ts +2 -0
  734. package/src/version.ts +1 -0
  735. package/uploads.d.mts +2 -0
  736. package/uploads.d.mts.map +1 -0
  737. package/uploads.d.ts +2 -0
  738. package/uploads.d.ts.map +1 -0
  739. package/uploads.js +6 -0
  740. package/uploads.js.map +1 -0
  741. package/uploads.mjs +2 -0
  742. package/uploads.mjs.map +1 -0
  743. package/version.d.mts +2 -0
  744. package/version.d.mts.map +1 -0
  745. package/version.d.ts +2 -0
  746. package/version.d.ts.map +1 -0
  747. package/version.js +5 -0
  748. package/version.js.map +1 -0
  749. package/version.mjs +2 -0
  750. package/version.mjs.map +1 -0
@@ -0,0 +1,323 @@
1
+ // File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ import { APIResource } from '../../core/resource';
4
+ import * as Shared from '../shared';
5
+ import { APIPromise } from '../../core/api-promise';
6
+ import { CursorURLPage, PagePromise } from '../../core/pagination';
7
+ import { buildHeaders } from '../../internal/headers';
8
+ import { RequestOptions } from '../../internal/request-options';
9
+
10
+ export class Albums extends APIResource {
11
+ /**
12
+ * Get a list of the albums saved in the current Spotify user's 'Your Music'
13
+ * library.
14
+ *
15
+ * @example
16
+ * ```ts
17
+ * // Automatically fetches more pages as needed.
18
+ * for await (const albumListResponse of client.me.albums.list()) {
19
+ * // ...
20
+ * }
21
+ * ```
22
+ */
23
+ list(
24
+ query: AlbumListParams | null | undefined = {},
25
+ options?: RequestOptions,
26
+ ): PagePromise<AlbumListResponsesCursorURLPage, AlbumListResponse> {
27
+ return this._client.getAPIList('/me/albums', CursorURLPage<AlbumListResponse>, { query, ...options });
28
+ }
29
+
30
+ /**
31
+ * Check if one or more albums is already saved in the current Spotify user's 'Your
32
+ * Music' library.
33
+ *
34
+ * @example
35
+ * ```ts
36
+ * const response = await client.me.albums.check({
37
+ * ids: '382ObEPsp2rxGrnsizN5TX,1A2GTWGtFfWp7KSQTwWOyo,2noRn2Aes5aoNVsU6iWThc',
38
+ * });
39
+ * ```
40
+ */
41
+ check(query: AlbumCheckParams, options?: RequestOptions): APIPromise<AlbumCheckResponse> {
42
+ return this._client.get('/me/albums/contains', { query, ...options });
43
+ }
44
+
45
+ /**
46
+ * Remove one or more albums from the current user's 'Your Music' library.
47
+ *
48
+ * @example
49
+ * ```ts
50
+ * await client.me.albums.remove();
51
+ * ```
52
+ */
53
+ remove(body: AlbumRemoveParams | null | undefined = {}, options?: RequestOptions): APIPromise<void> {
54
+ return this._client.delete('/me/albums', {
55
+ body,
56
+ ...options,
57
+ headers: buildHeaders([{ Accept: '*/*' }, options?.headers]),
58
+ });
59
+ }
60
+
61
+ /**
62
+ * Save one or more albums to the current user's 'Your Music' library.
63
+ *
64
+ * @example
65
+ * ```ts
66
+ * await client.me.albums.save();
67
+ * ```
68
+ */
69
+ save(body: AlbumSaveParams | null | undefined = {}, options?: RequestOptions): APIPromise<void> {
70
+ return this._client.put('/me/albums', {
71
+ body,
72
+ ...options,
73
+ headers: buildHeaders([{ Accept: '*/*' }, options?.headers]),
74
+ });
75
+ }
76
+ }
77
+
78
+ export type AlbumListResponsesCursorURLPage = CursorURLPage<AlbumListResponse>;
79
+
80
+ export interface AlbumListResponse {
81
+ /**
82
+ * The date and time the album was saved Timestamps are returned in ISO 8601 format
83
+ * as Coordinated Universal Time (UTC) with a zero offset: YYYY-MM-DDTHH:MM:SSZ. If
84
+ * the time is imprecise (for example, the date/time of an album release), an
85
+ * additional field indicates the precision; see for example, release_date in an
86
+ * album object.
87
+ */
88
+ added_at?: string;
89
+
90
+ /**
91
+ * Information about the album.
92
+ */
93
+ album?: AlbumListResponse.Album;
94
+ }
95
+
96
+ export namespace AlbumListResponse {
97
+ /**
98
+ * Information about the album.
99
+ */
100
+ export interface Album {
101
+ /**
102
+ * The [Spotify ID](/documentation/web-api/concepts/spotify-uris-ids) for the
103
+ * album.
104
+ */
105
+ id: string;
106
+
107
+ /**
108
+ * The type of the album.
109
+ */
110
+ album_type: 'album' | 'single' | 'compilation';
111
+
112
+ /**
113
+ * The markets in which the album is available:
114
+ * [ISO 3166-1 alpha-2 country codes](http://en.wikipedia.org/wiki/ISO_3166-1_alpha-2).
115
+ * _**NOTE**: an album is considered available in a market when at least 1 of its
116
+ * tracks is available in that market._
117
+ */
118
+ available_markets: Array<string>;
119
+
120
+ /**
121
+ * Known external URLs for this album.
122
+ */
123
+ external_urls: Shared.ExternalURLObject;
124
+
125
+ /**
126
+ * A link to the Web API endpoint providing full details of the album.
127
+ */
128
+ href: string;
129
+
130
+ /**
131
+ * The cover art for the album in various sizes, widest first.
132
+ */
133
+ images: Array<Shared.ImageObject>;
134
+
135
+ /**
136
+ * The name of the album. In case of an album takedown, the value may be an empty
137
+ * string.
138
+ */
139
+ name: string;
140
+
141
+ /**
142
+ * The date the album was first released.
143
+ */
144
+ release_date: string;
145
+
146
+ /**
147
+ * The precision with which `release_date` value is known.
148
+ */
149
+ release_date_precision: 'year' | 'month' | 'day';
150
+
151
+ /**
152
+ * The number of tracks in the album.
153
+ */
154
+ total_tracks: number;
155
+
156
+ /**
157
+ * The object type.
158
+ */
159
+ type: 'album';
160
+
161
+ /**
162
+ * The [Spotify URI](/documentation/web-api/concepts/spotify-uris-ids) for the
163
+ * album.
164
+ */
165
+ uri: string;
166
+
167
+ /**
168
+ * The artists of the album. Each artist object includes a link in `href` to more
169
+ * detailed information about the artist.
170
+ */
171
+ artists?: Array<Shared.SimplifiedArtistObject>;
172
+
173
+ /**
174
+ * The copyright statements of the album.
175
+ */
176
+ copyrights?: Array<Shared.CopyrightObject>;
177
+
178
+ /**
179
+ * Known external IDs for the album.
180
+ */
181
+ external_ids?: Shared.ExternalIDObject;
182
+
183
+ /**
184
+ * @deprecated **Deprecated** The array is always empty.
185
+ */
186
+ genres?: Array<string>;
187
+
188
+ /**
189
+ * The label associated with the album.
190
+ */
191
+ label?: string;
192
+
193
+ /**
194
+ * The popularity of the album. The value will be between 0 and 100, with 100 being
195
+ * the most popular.
196
+ */
197
+ popularity?: number;
198
+
199
+ /**
200
+ * Included in the response when a content restriction is applied.
201
+ */
202
+ restrictions?: Shared.AlbumRestrictionObject;
203
+
204
+ /**
205
+ * The tracks of the album.
206
+ */
207
+ tracks?: Album.Tracks;
208
+ }
209
+
210
+ export namespace Album {
211
+ /**
212
+ * The tracks of the album.
213
+ */
214
+ export interface Tracks {
215
+ /**
216
+ * A link to the Web API endpoint returning the full result of the request
217
+ */
218
+ href: string;
219
+
220
+ items: Array<Shared.SimplifiedTrackObject>;
221
+
222
+ /**
223
+ * The maximum number of items in the response (as set in the query or by default).
224
+ */
225
+ limit: number;
226
+
227
+ /**
228
+ * URL to the next page of items. ( `null` if none)
229
+ */
230
+ next: string | null;
231
+
232
+ /**
233
+ * The offset of the items returned (as set in the query or by default)
234
+ */
235
+ offset: number;
236
+
237
+ /**
238
+ * URL to the previous page of items. ( `null` if none)
239
+ */
240
+ previous: string | null;
241
+
242
+ /**
243
+ * The total number of items available to return.
244
+ */
245
+ total: number;
246
+ }
247
+ }
248
+ }
249
+
250
+ export type AlbumCheckResponse = Array<boolean>;
251
+
252
+ export interface AlbumListParams {
253
+ /**
254
+ * The maximum number of items to return. Default: 20. Minimum: 1. Maximum: 50.
255
+ */
256
+ limit?: number;
257
+
258
+ /**
259
+ * An
260
+ * [ISO 3166-1 alpha-2 country code](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2).
261
+ * If a country code is specified, only content that is available in that market
262
+ * will be returned.<br/> If a valid user access token is specified in the request
263
+ * header, the country associated with the user account will take priority over
264
+ * this parameter.<br/> _**Note**: If neither market or user country are provided,
265
+ * the content is considered unavailable for the client._<br/> Users can view the
266
+ * country that is associated with their account in the
267
+ * [account settings](https://www.spotify.com/account/overview/).
268
+ */
269
+ market?: string;
270
+
271
+ /**
272
+ * The index of the first item to return. Default: 0 (the first item). Use with
273
+ * limit to get the next set of items.
274
+ */
275
+ offset?: number;
276
+ }
277
+
278
+ export interface AlbumCheckParams {
279
+ /**
280
+ * A comma-separated list of the
281
+ * [Spotify IDs](/documentation/web-api/concepts/spotify-uris-ids) for the albums.
282
+ * Maximum: 20 IDs.
283
+ */
284
+ ids: string;
285
+ }
286
+
287
+ export interface AlbumRemoveParams {
288
+ /**
289
+ * A JSON array of the
290
+ * [Spotify IDs](/documentation/web-api/concepts/spotify-uris-ids). For example:
291
+ * `["4iV5W9uYEdYUVa79Axb7Rh", "1301WleyT98MSxVHPZCA6M"]`<br/>A maximum of 50 items
292
+ * can be specified in one request. _**Note**: if the `ids` parameter is present in
293
+ * the query string, any IDs listed here in the body will be ignored._
294
+ */
295
+ ids?: Array<string>;
296
+
297
+ [k: string]: unknown;
298
+ }
299
+
300
+ export interface AlbumSaveParams {
301
+ /**
302
+ * A JSON array of the
303
+ * [Spotify IDs](/documentation/web-api/concepts/spotify-uris-ids). For example:
304
+ * `["4iV5W9uYEdYUVa79Axb7Rh", "1301WleyT98MSxVHPZCA6M"]`<br/>A maximum of 50 items
305
+ * can be specified in one request. _**Note**: if the `ids` parameter is present in
306
+ * the query string, any IDs listed here in the body will be ignored._
307
+ */
308
+ ids?: Array<string>;
309
+
310
+ [k: string]: unknown;
311
+ }
312
+
313
+ export declare namespace Albums {
314
+ export {
315
+ type AlbumListResponse as AlbumListResponse,
316
+ type AlbumCheckResponse as AlbumCheckResponse,
317
+ type AlbumListResponsesCursorURLPage as AlbumListResponsesCursorURLPage,
318
+ type AlbumListParams as AlbumListParams,
319
+ type AlbumCheckParams as AlbumCheckParams,
320
+ type AlbumRemoveParams as AlbumRemoveParams,
321
+ type AlbumSaveParams as AlbumSaveParams,
322
+ };
323
+ }
@@ -0,0 +1,209 @@
1
+ // File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ import { APIResource } from '../../core/resource';
4
+ import * as AudiobooksAPI from '../audiobooks';
5
+ import * as Shared from '../shared';
6
+ import { APIPromise } from '../../core/api-promise';
7
+ import { CursorURLPage, PagePromise } from '../../core/pagination';
8
+ import { buildHeaders } from '../../internal/headers';
9
+ import { RequestOptions } from '../../internal/request-options';
10
+
11
+ export class Audiobooks extends APIResource {
12
+ /**
13
+ * Get a list of the audiobooks saved in the current Spotify user's 'Your Music'
14
+ * library.
15
+ *
16
+ * @example
17
+ * ```ts
18
+ * // Automatically fetches more pages as needed.
19
+ * for await (const audiobookListResponse of client.me.audiobooks.list()) {
20
+ * // ...
21
+ * }
22
+ * ```
23
+ */
24
+ list(
25
+ query: AudiobookListParams | null | undefined = {},
26
+ options?: RequestOptions,
27
+ ): PagePromise<AudiobookListResponsesCursorURLPage, AudiobookListResponse> {
28
+ return this._client.getAPIList('/me/audiobooks', CursorURLPage<AudiobookListResponse>, {
29
+ query,
30
+ ...options,
31
+ });
32
+ }
33
+
34
+ /**
35
+ * Check if one or more audiobooks are already saved in the current Spotify user's
36
+ * library.
37
+ *
38
+ * @example
39
+ * ```ts
40
+ * const response = await client.me.audiobooks.check({
41
+ * ids: '18yVqkdbdRvS24c0Ilj2ci,1HGw3J3NxZO1TP1BTtVhpZ,7iHfbu1YPACw6oZPAFJtqe',
42
+ * });
43
+ * ```
44
+ */
45
+ check(query: AudiobookCheckParams, options?: RequestOptions): APIPromise<AudiobookCheckResponse> {
46
+ return this._client.get('/me/audiobooks/contains', { query, ...options });
47
+ }
48
+
49
+ /**
50
+ * Remove one or more audiobooks from the Spotify user's library.
51
+ *
52
+ * @example
53
+ * ```ts
54
+ * await client.me.audiobooks.remove({
55
+ * ids: '18yVqkdbdRvS24c0Ilj2ci,1HGw3J3NxZO1TP1BTtVhpZ,7iHfbu1YPACw6oZPAFJtqe',
56
+ * });
57
+ * ```
58
+ */
59
+ remove(params: AudiobookRemoveParams, options?: RequestOptions): APIPromise<void> {
60
+ const { ids } = params;
61
+ return this._client.delete('/me/audiobooks', {
62
+ query: { ids },
63
+ ...options,
64
+ headers: buildHeaders([{ Accept: '*/*' }, options?.headers]),
65
+ });
66
+ }
67
+
68
+ /**
69
+ * Save one or more audiobooks to the current Spotify user's library.
70
+ *
71
+ * @example
72
+ * ```ts
73
+ * await client.me.audiobooks.save({
74
+ * ids: '18yVqkdbdRvS24c0Ilj2ci,1HGw3J3NxZO1TP1BTtVhpZ,7iHfbu1YPACw6oZPAFJtqe',
75
+ * });
76
+ * ```
77
+ */
78
+ save(params: AudiobookSaveParams, options?: RequestOptions): APIPromise<void> {
79
+ const { ids } = params;
80
+ return this._client.put('/me/audiobooks', {
81
+ query: { ids },
82
+ ...options,
83
+ headers: buildHeaders([{ Accept: '*/*' }, options?.headers]),
84
+ });
85
+ }
86
+ }
87
+
88
+ export type AudiobookListResponsesCursorURLPage = CursorURLPage<AudiobookListResponse>;
89
+
90
+ export interface AudiobookListResponse {
91
+ /**
92
+ * The date and time the audiobook was saved Timestamps are returned in ISO 8601
93
+ * format as Coordinated Universal Time (UTC) with a zero offset:
94
+ * YYYY-MM-DDTHH:MM:SSZ. If the time is imprecise (for example, the date/time of an
95
+ * album release), an additional field indicates the precision; see for example,
96
+ * release_date in an album object.
97
+ */
98
+ added_at?: string;
99
+
100
+ /**
101
+ * Information about the audiobook.
102
+ */
103
+ audiobook?: AudiobookListResponse.Audiobook;
104
+ }
105
+
106
+ export namespace AudiobookListResponse {
107
+ /**
108
+ * Information about the audiobook.
109
+ */
110
+ export interface Audiobook extends Shared.AudiobookBase {
111
+ /**
112
+ * The chapters of the audiobook.
113
+ */
114
+ chapters: Audiobook.Chapters;
115
+ }
116
+
117
+ export namespace Audiobook {
118
+ /**
119
+ * The chapters of the audiobook.
120
+ */
121
+ export interface Chapters {
122
+ /**
123
+ * A link to the Web API endpoint returning the full result of the request
124
+ */
125
+ href: string;
126
+
127
+ items: Array<AudiobooksAPI.SimplifiedChapterObject>;
128
+
129
+ /**
130
+ * The maximum number of items in the response (as set in the query or by default).
131
+ */
132
+ limit: number;
133
+
134
+ /**
135
+ * URL to the next page of items. ( `null` if none)
136
+ */
137
+ next: string | null;
138
+
139
+ /**
140
+ * The offset of the items returned (as set in the query or by default)
141
+ */
142
+ offset: number;
143
+
144
+ /**
145
+ * URL to the previous page of items. ( `null` if none)
146
+ */
147
+ previous: string | null;
148
+
149
+ /**
150
+ * The total number of items available to return.
151
+ */
152
+ total: number;
153
+ }
154
+ }
155
+ }
156
+
157
+ export type AudiobookCheckResponse = Array<boolean>;
158
+
159
+ export interface AudiobookListParams {
160
+ /**
161
+ * The maximum number of items to return. Default: 20. Minimum: 1. Maximum: 50.
162
+ */
163
+ limit?: number;
164
+
165
+ /**
166
+ * The index of the first item to return. Default: 0 (the first item). Use with
167
+ * limit to get the next set of items.
168
+ */
169
+ offset?: number;
170
+ }
171
+
172
+ export interface AudiobookCheckParams {
173
+ /**
174
+ * A comma-separated list of the
175
+ * [Spotify IDs](/documentation/web-api/concepts/spotify-uris-ids). For example:
176
+ * `ids=18yVqkdbdRvS24c0Ilj2ci,1HGw3J3NxZO1TP1BTtVhpZ`. Maximum: 50 IDs.
177
+ */
178
+ ids: string;
179
+ }
180
+
181
+ export interface AudiobookRemoveParams {
182
+ /**
183
+ * A comma-separated list of the
184
+ * [Spotify IDs](/documentation/web-api/concepts/spotify-uris-ids). For example:
185
+ * `ids=18yVqkdbdRvS24c0Ilj2ci,1HGw3J3NxZO1TP1BTtVhpZ`. Maximum: 50 IDs.
186
+ */
187
+ ids: string;
188
+ }
189
+
190
+ export interface AudiobookSaveParams {
191
+ /**
192
+ * A comma-separated list of the
193
+ * [Spotify IDs](/documentation/web-api/concepts/spotify-uris-ids). For example:
194
+ * `ids=18yVqkdbdRvS24c0Ilj2ci,1HGw3J3NxZO1TP1BTtVhpZ`. Maximum: 50 IDs.
195
+ */
196
+ ids: string;
197
+ }
198
+
199
+ export declare namespace Audiobooks {
200
+ export {
201
+ type AudiobookListResponse as AudiobookListResponse,
202
+ type AudiobookCheckResponse as AudiobookCheckResponse,
203
+ type AudiobookListResponsesCursorURLPage as AudiobookListResponsesCursorURLPage,
204
+ type AudiobookListParams as AudiobookListParams,
205
+ type AudiobookCheckParams as AudiobookCheckParams,
206
+ type AudiobookRemoveParams as AudiobookRemoveParams,
207
+ type AudiobookSaveParams as AudiobookSaveParams,
208
+ };
209
+ }
@@ -0,0 +1,178 @@
1
+ // File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ import { APIResource } from '../../core/resource';
4
+ import * as Shared from '../shared';
5
+ import { APIPromise } from '../../core/api-promise';
6
+ import { CursorURLPage, PagePromise } from '../../core/pagination';
7
+ import { buildHeaders } from '../../internal/headers';
8
+ import { RequestOptions } from '../../internal/request-options';
9
+
10
+ export class Episodes extends APIResource {
11
+ /**
12
+ * Get a list of the episodes saved in the current Spotify user's library.<br/>
13
+ * This API endpoint is in **beta** and could change without warning. Please share
14
+ * any feedback that you have, or issues that you discover, in our
15
+ * [developer community forum](https://community.spotify.com/t5/Spotify-for-Developers/bd-p/Spotify_Developer).
16
+ *
17
+ * @example
18
+ * ```ts
19
+ * // Automatically fetches more pages as needed.
20
+ * for await (const episodeListResponse of client.me.episodes.list()) {
21
+ * // ...
22
+ * }
23
+ * ```
24
+ */
25
+ list(
26
+ query: EpisodeListParams | null | undefined = {},
27
+ options?: RequestOptions,
28
+ ): PagePromise<EpisodeListResponsesCursorURLPage, EpisodeListResponse> {
29
+ return this._client.getAPIList('/me/episodes', CursorURLPage<EpisodeListResponse>, { query, ...options });
30
+ }
31
+
32
+ /**
33
+ * Check if one or more episodes is already saved in the current Spotify user's
34
+ * 'Your Episodes' library.<br/> This API endpoint is in **beta** and could change
35
+ * without warning. Please share any feedback that you have, or issues that you
36
+ * discover, in our
37
+ * [developer community forum](https://community.spotify.com/t5/Spotify-for-Developers/bd-p/Spotify_Developer)..
38
+ *
39
+ * @example
40
+ * ```ts
41
+ * const response = await client.me.episodes.check({
42
+ * ids: '77o6BIVlYM3msb4MMIL1jH,0Q86acNRm6V9GYx55SXKwf',
43
+ * });
44
+ * ```
45
+ */
46
+ check(query: EpisodeCheckParams, options?: RequestOptions): APIPromise<EpisodeCheckResponse> {
47
+ return this._client.get('/me/episodes/contains', { query, ...options });
48
+ }
49
+
50
+ /**
51
+ * Remove one or more episodes from the current user's library.<br/> This API
52
+ * endpoint is in **beta** and could change without warning. Please share any
53
+ * feedback that you have, or issues that you discover, in our
54
+ * [developer community forum](https://community.spotify.com/t5/Spotify-for-Developers/bd-p/Spotify_Developer).
55
+ *
56
+ * @example
57
+ * ```ts
58
+ * await client.me.episodes.remove();
59
+ * ```
60
+ */
61
+ remove(body: EpisodeRemoveParams | null | undefined = {}, options?: RequestOptions): APIPromise<void> {
62
+ return this._client.delete('/me/episodes', {
63
+ body,
64
+ ...options,
65
+ headers: buildHeaders([{ Accept: '*/*' }, options?.headers]),
66
+ });
67
+ }
68
+
69
+ /**
70
+ * Save one or more episodes to the current user's library.<br/> This API endpoint
71
+ * is in **beta** and could change without warning. Please share any feedback that
72
+ * you have, or issues that you discover, in our
73
+ * [developer community forum](https://community.spotify.com/t5/Spotify-for-Developers/bd-p/Spotify_Developer).
74
+ *
75
+ * @example
76
+ * ```ts
77
+ * await client.me.episodes.save({ ids: ['string'] });
78
+ * ```
79
+ */
80
+ save(body: EpisodeSaveParams, options?: RequestOptions): APIPromise<void> {
81
+ return this._client.put('/me/episodes', {
82
+ body,
83
+ ...options,
84
+ headers: buildHeaders([{ Accept: '*/*' }, options?.headers]),
85
+ });
86
+ }
87
+ }
88
+
89
+ export type EpisodeListResponsesCursorURLPage = CursorURLPage<EpisodeListResponse>;
90
+
91
+ export interface EpisodeListResponse {
92
+ /**
93
+ * The date and time the episode was saved. Timestamps are returned in ISO 8601
94
+ * format as Coordinated Universal Time (UTC) with a zero offset:
95
+ * YYYY-MM-DDTHH:MM:SSZ.
96
+ */
97
+ added_at?: string;
98
+
99
+ /**
100
+ * Information about the episode.
101
+ */
102
+ episode?: Shared.EpisodeObject;
103
+ }
104
+
105
+ export type EpisodeCheckResponse = Array<boolean>;
106
+
107
+ export interface EpisodeListParams {
108
+ /**
109
+ * The maximum number of items to return. Default: 20. Minimum: 1. Maximum: 50.
110
+ */
111
+ limit?: number;
112
+
113
+ /**
114
+ * An
115
+ * [ISO 3166-1 alpha-2 country code](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2).
116
+ * If a country code is specified, only content that is available in that market
117
+ * will be returned.<br/> If a valid user access token is specified in the request
118
+ * header, the country associated with the user account will take priority over
119
+ * this parameter.<br/> _**Note**: If neither market or user country are provided,
120
+ * the content is considered unavailable for the client._<br/> Users can view the
121
+ * country that is associated with their account in the
122
+ * [account settings](https://www.spotify.com/account/overview/).
123
+ */
124
+ market?: string;
125
+
126
+ /**
127
+ * The index of the first item to return. Default: 0 (the first item). Use with
128
+ * limit to get the next set of items.
129
+ */
130
+ offset?: number;
131
+ }
132
+
133
+ export interface EpisodeCheckParams {
134
+ /**
135
+ * A comma-separated list of the
136
+ * [Spotify IDs](/documentation/web-api/concepts/spotify-uris-ids) for the
137
+ * episodes. Maximum: 50 IDs.
138
+ */
139
+ ids: string;
140
+ }
141
+
142
+ export interface EpisodeRemoveParams {
143
+ /**
144
+ * A JSON array of the
145
+ * [Spotify IDs](/documentation/web-api/concepts/spotify-uris-ids). <br/>A maximum
146
+ * of 50 items can be specified in one request. _**Note**: if the `ids` parameter
147
+ * is present in the query string, any IDs listed here in the body will be
148
+ * ignored._
149
+ */
150
+ ids?: Array<string>;
151
+
152
+ [k: string]: unknown;
153
+ }
154
+
155
+ export interface EpisodeSaveParams {
156
+ /**
157
+ * A JSON array of the
158
+ * [Spotify IDs](/documentation/web-api/concepts/spotify-uris-ids). <br/>A maximum
159
+ * of 50 items can be specified in one request. _**Note**: if the `ids` parameter
160
+ * is present in the query string, any IDs listed here in the body will be
161
+ * ignored._
162
+ */
163
+ ids: Array<string>;
164
+
165
+ [k: string]: unknown;
166
+ }
167
+
168
+ export declare namespace Episodes {
169
+ export {
170
+ type EpisodeListResponse as EpisodeListResponse,
171
+ type EpisodeCheckResponse as EpisodeCheckResponse,
172
+ type EpisodeListResponsesCursorURLPage as EpisodeListResponsesCursorURLPage,
173
+ type EpisodeListParams as EpisodeListParams,
174
+ type EpisodeCheckParams as EpisodeCheckParams,
175
+ type EpisodeRemoveParams as EpisodeRemoveParams,
176
+ type EpisodeSaveParams as EpisodeSaveParams,
177
+ };
178
+ }