e621 2.2.6 → 3.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (386) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +14 -41
  3. package/dist/lib/Debug.d.ts +1 -0
  4. package/dist/lib/Debug.js +16 -0
  5. package/dist/lib/errors.d.ts +8 -0
  6. package/dist/lib/errors.js +37 -0
  7. package/dist/lib/generated/client/client.d.ts +2 -0
  8. package/dist/lib/generated/client/client.js +236 -0
  9. package/dist/lib/generated/client/index.d.ts +8 -0
  10. package/dist/lib/generated/client/index.js +7 -0
  11. package/dist/lib/generated/client/types.d.ts +117 -0
  12. package/dist/lib/generated/client/types.js +3 -0
  13. package/dist/lib/generated/client/utils.d.ts +33 -0
  14. package/dist/lib/generated/client/utils.js +229 -0
  15. package/dist/lib/generated/client.d.ts +12 -0
  16. package/dist/lib/generated/client.js +4 -0
  17. package/dist/lib/generated/core/auth.d.ts +18 -0
  18. package/dist/lib/generated/core/auth.js +15 -0
  19. package/dist/lib/generated/core/bodySerializer.d.ts +25 -0
  20. package/dist/lib/generated/core/bodySerializer.js +58 -0
  21. package/dist/lib/generated/core/params.d.ts +43 -0
  22. package/dist/lib/generated/core/params.js +101 -0
  23. package/dist/lib/generated/core/pathSerializer.d.ts +33 -0
  24. package/dist/lib/generated/core/pathSerializer.js +107 -0
  25. package/dist/lib/generated/core/queryKeySerializer.d.ts +18 -0
  26. package/dist/lib/generated/core/queryKeySerializer.js +93 -0
  27. package/dist/lib/generated/core/serverSentEvents.d.ts +71 -0
  28. package/dist/lib/generated/core/serverSentEvents.js +134 -0
  29. package/dist/lib/generated/core/types.d.ts +78 -0
  30. package/dist/lib/generated/core/types.js +3 -0
  31. package/dist/lib/generated/core/utils.d.ts +19 -0
  32. package/dist/lib/generated/core/utils.js +88 -0
  33. package/dist/lib/generated/schemas.d.ts +2908 -0
  34. package/dist/lib/generated/schemas.js +3911 -0
  35. package/dist/lib/generated/sdk.d.ts +1373 -0
  36. package/dist/lib/generated/sdk.js +2557 -0
  37. package/dist/lib/generated/source.json +19299 -0
  38. package/dist/lib/generated/types.d.ts +9663 -0
  39. package/dist/lib/generated/types.js +3 -0
  40. package/dist/lib/generated.d.ts +4 -0
  41. package/dist/lib/generated.js +5 -0
  42. package/dist/lib/index.d.ts +58 -0
  43. package/dist/lib/index.js +74 -0
  44. package/dist/lib/models/ApiKey.d.ts +14 -0
  45. package/dist/lib/models/ApiKey.js +17 -0
  46. package/dist/lib/models/Artist.d.ts +61 -0
  47. package/dist/lib/models/Artist.js +86 -0
  48. package/dist/lib/models/ArtistUrl.d.ts +14 -0
  49. package/dist/lib/models/ArtistUrl.js +17 -0
  50. package/dist/lib/models/ArtistVersion.d.ts +14 -0
  51. package/dist/lib/models/ArtistVersion.js +17 -0
  52. package/dist/lib/models/AvoidPosting.d.ts +63 -0
  53. package/dist/lib/models/AvoidPosting.js +97 -0
  54. package/dist/lib/models/AvoidPostingVersion.d.ts +14 -0
  55. package/dist/lib/models/AvoidPostingVersion.js +17 -0
  56. package/dist/lib/models/Ban.d.ts +14 -0
  57. package/dist/lib/models/Ban.js +17 -0
  58. package/dist/lib/models/Base.d.ts +11 -0
  59. package/dist/lib/models/Base.js +39 -0
  60. package/dist/lib/models/Blip.d.ts +79 -0
  61. package/dist/lib/models/Blip.js +120 -0
  62. package/dist/lib/models/BulkUpdateRequest.d.ts +49 -0
  63. package/dist/lib/models/BulkUpdateRequest.js +75 -0
  64. package/dist/lib/models/Comment.d.ts +100 -0
  65. package/dist/lib/models/Comment.js +157 -0
  66. package/dist/lib/models/CurrentUser.d.ts +14 -0
  67. package/dist/lib/models/CurrentUser.js +17 -0
  68. package/dist/lib/models/DMail.d.ts +46 -0
  69. package/dist/lib/models/DMail.js +73 -0
  70. package/dist/lib/models/EditHistory.d.ts +14 -0
  71. package/dist/lib/models/EditHistory.js +17 -0
  72. package/dist/lib/models/EmailBlacklist.d.ts +26 -0
  73. package/dist/lib/models/EmailBlacklist.js +37 -0
  74. package/dist/lib/models/ForumPost.d.ts +97 -0
  75. package/dist/lib/models/ForumPost.js +154 -0
  76. package/dist/lib/models/ForumPostVote.d.ts +24 -0
  77. package/dist/lib/models/ForumPostVote.js +35 -0
  78. package/dist/lib/models/ForumTopic.d.ts +81 -0
  79. package/dist/lib/models/ForumTopic.js +131 -0
  80. package/dist/lib/models/FullCurrentUser.d.ts +14 -0
  81. package/dist/lib/models/FullCurrentUser.js +17 -0
  82. package/dist/lib/models/FullUser.d.ts +14 -0
  83. package/dist/lib/models/FullUser.js +17 -0
  84. package/dist/lib/models/Help.d.ts +39 -0
  85. package/dist/lib/models/Help.js +57 -0
  86. package/dist/lib/models/IpBan.d.ts +28 -0
  87. package/dist/lib/models/IpBan.js +39 -0
  88. package/dist/lib/models/IqdbPost.d.ts +14 -0
  89. package/dist/lib/models/IqdbPost.js +17 -0
  90. package/dist/lib/models/Mascot.d.ts +39 -0
  91. package/dist/lib/models/Mascot.js +57 -0
  92. package/dist/lib/models/ModAction.d.ts +14 -0
  93. package/dist/lib/models/ModAction.js +17 -0
  94. package/dist/lib/models/NewsUpdate.d.ts +39 -0
  95. package/dist/lib/models/NewsUpdate.js +57 -0
  96. package/dist/lib/models/Note.d.ts +45 -0
  97. package/dist/lib/models/Note.js +71 -0
  98. package/dist/lib/models/NoteVersion.d.ts +24 -0
  99. package/dist/lib/models/NoteVersion.js +35 -0
  100. package/dist/lib/models/Pool.d.ts +67 -0
  101. package/dist/lib/models/Pool.js +109 -0
  102. package/dist/lib/models/PoolVersion.d.ts +24 -0
  103. package/dist/lib/models/PoolVersion.js +35 -0
  104. package/dist/lib/models/Post.d.ts +174 -0
  105. package/dist/lib/models/Post.js +287 -0
  106. package/dist/lib/models/PostApproval.d.ts +26 -0
  107. package/dist/lib/models/PostApproval.js +37 -0
  108. package/dist/lib/models/PostDisapproval.d.ts +14 -0
  109. package/dist/lib/models/PostDisapproval.js +17 -0
  110. package/dist/lib/models/PostEvent.d.ts +14 -0
  111. package/dist/lib/models/PostEvent.js +17 -0
  112. package/dist/lib/models/PostFlag.d.ts +38 -0
  113. package/dist/lib/models/PostFlag.js +57 -0
  114. package/dist/lib/models/PostReplacement.d.ts +75 -0
  115. package/dist/lib/models/PostReplacement.js +117 -0
  116. package/dist/lib/models/PostSet.d.ts +75 -0
  117. package/dist/lib/models/PostSet.js +117 -0
  118. package/dist/lib/models/PostVersion.d.ts +58 -0
  119. package/dist/lib/models/PostVersion.js +93 -0
  120. package/dist/lib/models/StaffNote.d.ts +53 -0
  121. package/dist/lib/models/StaffNote.js +79 -0
  122. package/dist/lib/models/Tag.d.ts +59 -0
  123. package/dist/lib/models/Tag.js +91 -0
  124. package/dist/lib/models/TagAlias.d.ts +51 -0
  125. package/dist/lib/models/TagAlias.js +77 -0
  126. package/dist/lib/models/TagCorrection.d.ts +15 -0
  127. package/dist/lib/models/TagCorrection.js +20 -0
  128. package/dist/lib/models/TagImplication.d.ts +51 -0
  129. package/dist/lib/models/TagImplication.js +77 -0
  130. package/dist/lib/models/TagPreview.d.ts +14 -0
  131. package/dist/lib/models/TagPreview.js +17 -0
  132. package/dist/lib/models/TagTypeVersion.d.ts +14 -0
  133. package/dist/lib/models/TagTypeVersion.js +17 -0
  134. package/dist/lib/models/Takedown.d.ts +87 -0
  135. package/dist/lib/models/Takedown.js +137 -0
  136. package/dist/lib/models/Ticket.d.ts +51 -0
  137. package/dist/lib/models/Ticket.js +77 -0
  138. package/dist/lib/models/Upload.d.ts +14 -0
  139. package/dist/lib/models/Upload.js +17 -0
  140. package/dist/lib/models/UploadWhitelist.d.ts +37 -0
  141. package/dist/lib/models/UploadWhitelist.js +55 -0
  142. package/dist/lib/models/User.d.ts +97 -0
  143. package/dist/lib/models/User.js +160 -0
  144. package/dist/lib/models/UserFeedback.d.ts +63 -0
  145. package/dist/lib/models/UserFeedback.js +97 -0
  146. package/dist/lib/models/UserNameChangeRequest.d.ts +26 -0
  147. package/dist/lib/models/UserNameChangeRequest.js +37 -0
  148. package/dist/lib/models/WikiPage.d.ts +49 -0
  149. package/dist/lib/models/WikiPage.js +75 -0
  150. package/dist/lib/models/WikiPageVersion.d.ts +24 -0
  151. package/dist/lib/models/WikiPageVersion.js +35 -0
  152. package/dist/lib/models/index.d.ts +53 -0
  153. package/dist/lib/models/index.js +54 -0
  154. package/dist/lib/modules/ArtistUrls.d.ts +18 -0
  155. package/dist/lib/modules/ArtistUrls.js +28 -0
  156. package/dist/lib/modules/ArtistVersions.d.ts +18 -0
  157. package/dist/lib/modules/ArtistVersions.js +28 -0
  158. package/dist/lib/modules/Artists.d.ts +90 -0
  159. package/dist/lib/modules/Artists.js +151 -0
  160. package/dist/lib/modules/AvoidPostingVersions.d.ts +18 -0
  161. package/dist/lib/modules/AvoidPostingVersions.js +28 -0
  162. package/dist/lib/modules/AvoidPostings.d.ts +112 -0
  163. package/dist/lib/modules/AvoidPostings.js +181 -0
  164. package/dist/lib/modules/Bans.d.ts +26 -0
  165. package/dist/lib/modules/Bans.js +47 -0
  166. package/dist/lib/modules/Base.d.ts +20 -0
  167. package/dist/lib/modules/Base.js +39 -0
  168. package/dist/lib/modules/Blips.d.ts +105 -0
  169. package/dist/lib/modules/Blips.js +188 -0
  170. package/dist/lib/modules/BulkUpdateRequests.d.ts +76 -0
  171. package/dist/lib/modules/BulkUpdateRequests.js +136 -0
  172. package/dist/lib/modules/CommentVotes.d.ts +30 -0
  173. package/dist/lib/modules/CommentVotes.js +56 -0
  174. package/dist/lib/modules/Comments.d.ts +112 -0
  175. package/dist/lib/modules/Comments.js +195 -0
  176. package/dist/lib/modules/DMails.d.ts +70 -0
  177. package/dist/lib/modules/DMails.js +134 -0
  178. package/dist/lib/modules/DText.d.ts +18 -0
  179. package/dist/lib/modules/DText.js +32 -0
  180. package/dist/lib/modules/EditHistories.d.ts +34 -0
  181. package/dist/lib/modules/EditHistories.js +56 -0
  182. package/dist/lib/modules/EmailBlacklists.d.ts +45 -0
  183. package/dist/lib/modules/EmailBlacklists.js +74 -0
  184. package/dist/lib/modules/Favorites.d.ts +38 -0
  185. package/dist/lib/modules/Favorites.js +73 -0
  186. package/dist/lib/modules/ForumPosts.d.ts +107 -0
  187. package/dist/lib/modules/ForumPosts.js +190 -0
  188. package/dist/lib/modules/ForumTopics.d.ts +125 -0
  189. package/dist/lib/modules/ForumTopics.js +237 -0
  190. package/dist/lib/modules/HelpPages.d.ts +67 -0
  191. package/dist/lib/modules/HelpPages.js +118 -0
  192. package/dist/lib/modules/IpBans.d.ts +47 -0
  193. package/dist/lib/modules/IpBans.js +76 -0
  194. package/dist/lib/modules/IqdbQueries.d.ts +36 -0
  195. package/dist/lib/modules/IqdbQueries.js +63 -0
  196. package/dist/lib/modules/Mascots.d.ts +60 -0
  197. package/dist/lib/modules/Mascots.js +98 -0
  198. package/dist/lib/modules/ModActions.d.ts +34 -0
  199. package/dist/lib/modules/ModActions.js +55 -0
  200. package/dist/lib/modules/NewsUpdates.d.ts +60 -0
  201. package/dist/lib/modules/NewsUpdates.js +98 -0
  202. package/dist/lib/modules/NoteVersions.d.ts +18 -0
  203. package/dist/lib/modules/NoteVersions.js +28 -0
  204. package/dist/lib/modules/Notes.d.ts +72 -0
  205. package/dist/lib/modules/Notes.js +133 -0
  206. package/dist/lib/modules/PoolVersions.d.ts +18 -0
  207. package/dist/lib/modules/PoolVersions.js +28 -0
  208. package/dist/lib/modules/Pools.d.ts +104 -0
  209. package/dist/lib/modules/Pools.js +197 -0
  210. package/dist/lib/modules/Popular.d.ts +18 -0
  211. package/dist/lib/modules/Popular.js +31 -0
  212. package/dist/lib/modules/PostApprovals.d.ts +42 -0
  213. package/dist/lib/modules/PostApprovals.js +77 -0
  214. package/dist/lib/modules/PostDisapprovals.d.ts +37 -0
  215. package/dist/lib/modules/PostDisapprovals.js +55 -0
  216. package/dist/lib/modules/PostEvents.d.ts +20 -0
  217. package/dist/lib/modules/PostEvents.js +30 -0
  218. package/dist/lib/modules/PostFlags.d.ts +53 -0
  219. package/dist/lib/modules/PostFlags.js +93 -0
  220. package/dist/lib/modules/PostReplacements.d.ts +94 -0
  221. package/dist/lib/modules/PostReplacements.js +167 -0
  222. package/dist/lib/modules/PostSets.d.ts +116 -0
  223. package/dist/lib/modules/PostSets.js +211 -0
  224. package/dist/lib/modules/PostVersions.d.ts +51 -0
  225. package/dist/lib/modules/PostVersions.js +94 -0
  226. package/dist/lib/modules/PostVotes.d.ts +28 -0
  227. package/dist/lib/modules/PostVotes.js +54 -0
  228. package/dist/lib/modules/Posts.d.ts +193 -0
  229. package/dist/lib/modules/Posts.js +395 -0
  230. package/dist/lib/modules/RelatedTags.d.ts +19 -0
  231. package/dist/lib/modules/RelatedTags.js +29 -0
  232. package/dist/lib/modules/StaffNotes.d.ts +80 -0
  233. package/dist/lib/modules/StaffNotes.js +140 -0
  234. package/dist/lib/modules/TagAliases.d.ts +80 -0
  235. package/dist/lib/modules/TagAliases.js +140 -0
  236. package/dist/lib/modules/TagCorrections.d.ts +25 -0
  237. package/dist/lib/modules/TagCorrections.js +52 -0
  238. package/dist/lib/modules/TagImplications.d.ts +80 -0
  239. package/dist/lib/modules/TagImplications.js +140 -0
  240. package/dist/lib/modules/TagTypeVersions.d.ts +18 -0
  241. package/dist/lib/modules/TagTypeVersions.js +28 -0
  242. package/dist/lib/modules/Tags.d.ts +64 -0
  243. package/dist/lib/modules/Tags.js +116 -0
  244. package/dist/lib/modules/Takedowns.d.ts +114 -0
  245. package/dist/lib/modules/Takedowns.js +211 -0
  246. package/dist/lib/modules/Tickets.d.ts +71 -0
  247. package/dist/lib/modules/Tickets.js +123 -0
  248. package/dist/lib/modules/UploadWhitelists.d.ts +68 -0
  249. package/dist/lib/modules/UploadWhitelists.js +117 -0
  250. package/dist/lib/modules/Uploads.d.ts +42 -0
  251. package/dist/lib/modules/Uploads.js +78 -0
  252. package/dist/lib/modules/UserFeedbacks.d.ts +94 -0
  253. package/dist/lib/modules/UserFeedbacks.js +165 -0
  254. package/dist/lib/modules/UserNameChangeRequests.d.ts +59 -0
  255. package/dist/lib/modules/UserNameChangeRequests.js +99 -0
  256. package/dist/lib/modules/Users.d.ts +132 -0
  257. package/dist/lib/modules/Users.js +263 -0
  258. package/dist/lib/modules/WikiPageVersions.d.ts +26 -0
  259. package/dist/lib/modules/WikiPageVersions.js +47 -0
  260. package/dist/lib/modules/WikiPages.d.ts +76 -0
  261. package/dist/lib/modules/WikiPages.js +137 -0
  262. package/dist/lib/modules/admin/Users.d.ts +45 -0
  263. package/dist/lib/modules/admin/Users.js +77 -0
  264. package/dist/lib/modules/comments/Votes.d.ts +26 -0
  265. package/dist/lib/modules/comments/Votes.js +51 -0
  266. package/dist/lib/modules/forum_posts/Votes.d.ts +26 -0
  267. package/dist/lib/modules/forum_posts/Votes.js +51 -0
  268. package/dist/lib/modules/index.d.ts +172 -0
  269. package/dist/lib/modules/index.js +114 -0
  270. package/dist/lib/modules/posts/Flag.d.ts +16 -0
  271. package/dist/lib/modules/posts/Flag.js +31 -0
  272. package/dist/lib/modules/posts/Votes.d.ts +26 -0
  273. package/dist/lib/modules/posts/Votes.js +51 -0
  274. package/dist/lib/modules/users/DMails.d.ts +29 -0
  275. package/dist/lib/modules/users/DMails.js +55 -0
  276. package/dist/lib/util.d.ts +48 -0
  277. package/dist/lib/util.js +49 -0
  278. package/dist/package.json +73 -0
  279. package/package.json +46 -20
  280. package/tsconfig.json +54 -0
  281. package/.mocharc.json +0 -6
  282. package/.ncurc.json +0 -3
  283. package/.node-version +0 -1
  284. package/Features/Artists.md +0 -39
  285. package/Features/Blips.md +0 -33
  286. package/Features/E621SearchInconsistencies.md +0 -54
  287. package/Features/FuturePlans.md +0 -50
  288. package/Features/Notes.md +0 -34
  289. package/Features/Pools.md +0 -38
  290. package/Features/PostFlags.md +0 -31
  291. package/Features/PostSets.md +0 -36
  292. package/Features/Posts.md +0 -46
  293. package/Features/README.md +0 -15
  294. package/Features/Tags.md +0 -34
  295. package/Features/Takedowns.md +0 -32
  296. package/Features/UserFeedback.md +0 -32
  297. package/Features/Users.md +0 -36
  298. package/Features/WikiPages.md +0 -36
  299. package/build/package.json +0 -45
  300. package/build/src/index.d.ts +0 -68
  301. package/build/src/index.js +0 -194
  302. package/build/src/modules/Artists.d.ts +0 -128
  303. package/build/src/modules/Artists.js +0 -295
  304. package/build/src/modules/Blips.d.ts +0 -79
  305. package/build/src/modules/Blips.js +0 -157
  306. package/build/src/modules/Notes.d.ts +0 -88
  307. package/build/src/modules/Notes.js +0 -189
  308. package/build/src/modules/Pools.d.ts +0 -130
  309. package/build/src/modules/Pools.js +0 -261
  310. package/build/src/modules/PostFlags.d.ts +0 -55
  311. package/build/src/modules/PostFlags.js +0 -126
  312. package/build/src/modules/PostSets.d.ts +0 -102
  313. package/build/src/modules/PostSets.js +0 -208
  314. package/build/src/modules/Posts.d.ts +0 -154
  315. package/build/src/modules/Posts.js +0 -390
  316. package/build/src/modules/Tags.d.ts +0 -78
  317. package/build/src/modules/Tags.js +0 -174
  318. package/build/src/modules/Takedowns.d.ts +0 -81
  319. package/build/src/modules/Takedowns.js +0 -195
  320. package/build/src/modules/UserFeedback.d.ts +0 -66
  321. package/build/src/modules/UserFeedback.js +0 -136
  322. package/build/src/modules/Users.d.ts +0 -117
  323. package/build/src/modules/Users.js +0 -261
  324. package/build/src/modules/WikiPages.d.ts +0 -107
  325. package/build/src/modules/WikiPages.js +0 -220
  326. package/build/src/structures/Artist.d.ts +0 -36
  327. package/build/src/structures/Artist.js +0 -51
  328. package/build/src/structures/ArtistHistory.d.ts +0 -39
  329. package/build/src/structures/ArtistHistory.js +0 -50
  330. package/build/src/structures/AuthenticatedUser.d.ts +0 -109
  331. package/build/src/structures/AuthenticatedUser.js +0 -128
  332. package/build/src/structures/Blip.d.ts +0 -66
  333. package/build/src/structures/Blip.js +0 -85
  334. package/build/src/structures/Note.d.ts +0 -32
  335. package/build/src/structures/Note.js +0 -41
  336. package/build/src/structures/NoteHistory.d.ts +0 -38
  337. package/build/src/structures/NoteHistory.js +0 -47
  338. package/build/src/structures/Pool.d.ts +0 -85
  339. package/build/src/structures/Pool.js +0 -112
  340. package/build/src/structures/PoolHistory.d.ts +0 -43
  341. package/build/src/structures/PoolHistory.js +0 -54
  342. package/build/src/structures/Post.d.ts +0 -157
  343. package/build/src/structures/Post.js +0 -170
  344. package/build/src/structures/PostApproval.d.ts +0 -25
  345. package/build/src/structures/PostApproval.js +0 -33
  346. package/build/src/structures/PostFlag.d.ts +0 -38
  347. package/build/src/structures/PostFlag.js +0 -47
  348. package/build/src/structures/PostHistory.d.ts +0 -52
  349. package/build/src/structures/PostHistory.js +0 -93
  350. package/build/src/structures/PostSet.d.ts +0 -71
  351. package/build/src/structures/PostSet.js +0 -93
  352. package/build/src/structures/Tag.d.ts +0 -61
  353. package/build/src/structures/Tag.js +0 -87
  354. package/build/src/structures/TagHistory.d.ts +0 -28
  355. package/build/src/structures/TagHistory.js +0 -36
  356. package/build/src/structures/Takedown.d.ts +0 -49
  357. package/build/src/structures/Takedown.js +0 -64
  358. package/build/src/structures/User.d.ts +0 -62
  359. package/build/src/structures/User.js +0 -80
  360. package/build/src/structures/WikiPage.d.ts +0 -17
  361. package/build/src/structures/WikiPage.js +0 -27
  362. package/build/src/structures/WikiPageHistory.d.ts +0 -38
  363. package/build/src/structures/WikiPageHistory.js +0 -49
  364. package/build/src/types/artists.d.ts +0 -82
  365. package/build/src/types/blips.d.ts +0 -37
  366. package/build/src/types/index.d.ts +0 -96
  367. package/build/src/types/notes.d.ts +0 -64
  368. package/build/src/types/pools.d.ts +0 -62
  369. package/build/src/types/post_flags.d.ts +0 -36
  370. package/build/src/types/post_sets.d.ts +0 -33
  371. package/build/src/types/posts.d.ts +0 -181
  372. package/build/src/types/tags.d.ts +0 -56
  373. package/build/src/types/takedowns.d.ts +0 -62
  374. package/build/src/types/user_feedback.d.ts +0 -27
  375. package/build/src/types/users.d.ts +0 -277
  376. package/build/src/types/wiki_pages.d.ts +0 -66
  377. package/build/src/util/Debug.d.ts +0 -1
  378. package/build/src/util/Debug.js +0 -16
  379. package/build/src/util/FormHelper.d.ts +0 -9
  380. package/build/src/util/FormHelper.js +0 -15
  381. package/build/src/util/MultipartData.d.ts +0 -7
  382. package/build/src/util/MultipartData.js +0 -39
  383. package/build/src/util/RequestHandler.d.ts +0 -38
  384. package/build/src/util/RequestHandler.js +0 -343
  385. package/build/src/util/Timer.d.ts +0 -6
  386. package/build/src/util/Timer.js +0 -74
@@ -1,261 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- const Pool_1 = __importDefault(require("../structures/Pool"));
7
- const PoolHistory_1 = __importDefault(require("../structures/PoolHistory"));
8
- const FormHelper_1 = __importDefault(require("../util/FormHelper"));
9
- const RequestHandler_1 = require("../util/RequestHandler");
10
- class Pools {
11
- auth;
12
- main;
13
- constructor(main) {
14
- Object.defineProperties(this, {
15
- auth: {
16
- get() {
17
- return !this.main.options.authUser || !this.main.options.authKey ? null : `Basic ${Buffer.from(`${this.main.options.authUser}:${this.main.options.authKey}`).toString("base64")}`;
18
- },
19
- configurable: false,
20
- enumerable: false
21
- },
22
- main: {
23
- value: main,
24
- configurable: false,
25
- enumerable: false,
26
- writable: false
27
- }
28
- });
29
- }
30
- /**
31
- * Get a pool by its id
32
- *
33
- * @param {number} id - The id of the pool to get
34
- * @returns {Promise<(Pool | null)>}
35
- */
36
- async get(id) {
37
- const res = await this.main.request.get(`/pools/${id}.json`).catch(err => {
38
- if (err instanceof RequestHandler_1.APIError && err.statusCode === 404)
39
- return null;
40
- throw err;
41
- });
42
- return res === null ? null : new Pool_1.default(this.main, res);
43
- }
44
- /**
45
- * Get a pool by its name
46
- *
47
- * @param {string} name - The name of the pool to get
48
- * @returns {Promise<(Pool | null)>}
49
- */
50
- async getByName(name) {
51
- return this.search({
52
- name,
53
- limit: 1
54
- }).then(r => r.length === 0 ? null : r[0]);
55
- }
56
- /**
57
- * Search for pools
58
- *
59
- * @param {object} [options]
60
- * @param {string} [options.name] - narrow the results by the name of the pool
61
- * @param {string} [options.description] - narrow the results by the description of the pool
62
- * @param {string} [options.creator] - narrow the results by the (name of the) creator of the pool
63
- * @param {boolean} [options.active] - narrow the results by the pool being active or not
64
- * @param {PoolCategory} [options.category] - narrow the results by the category of the pool
65
- * @param {SearchPoolsOrder} [options.order] - the order of the results
66
- * @param {number} [options.page] - page of results to get
67
- * @param {number} [options.limit] - limit the maximum amount of results returned
68
- * @returns {Promise<Array<Pool>>}
69
- */
70
- async search(options) {
71
- options = options ?? {};
72
- const qs = new FormHelper_1.default();
73
- if (typeof options.name === "string")
74
- qs.add("search[name_matches]", options.name);
75
- if (typeof options.description === "string")
76
- qs.add("search[description_matches]", options.description);
77
- if (typeof options.creator === "string")
78
- qs.add("search[creator_name]", options.creator);
79
- if (typeof options.active === "boolean")
80
- qs.add("search[is_active]", options.active);
81
- if (typeof options.category === "string")
82
- qs.add("search[category]", options.category);
83
- if (typeof options.order === "string")
84
- qs.add("search[order]", options.order);
85
- if (typeof options.page === "number")
86
- qs.add("page", options.page);
87
- if (typeof options.limit === "number")
88
- qs.add("limit", options.limit);
89
- const res = await this.main.request.get(`/pools.json?${qs.build()}`);
90
- return res.map(info => new Pool_1.default(this.main, info));
91
- }
92
- /**
93
- * Create a pool
94
- *
95
- * * Requires Authentication
96
- *
97
- * @param {object} options
98
- * @param {string} options.name - the name of the pool
99
- * @param {string} [options.description] - the description of the pool
100
- * @param {Array<number>} [options.posts] - the posts to add to the pool
101
- * @param {PoolCategory} options.category - the category of the pool
102
- * @param {boolean} [options.active] - if the pool is active
103
- * @returns {Promise<Pool>}
104
- */
105
- async create(options) {
106
- this.main.request.authCheck.call(this, "Pools#create");
107
- if (!options)
108
- throw new Error("options is required in Pools#create");
109
- const qs = new FormHelper_1.default()
110
- .add("pool[name]", options.name)
111
- .add("pool[category]", options.category);
112
- if (typeof options.description === "string")
113
- qs.add("pool[description]", options.description);
114
- if (typeof options.active === "boolean")
115
- qs.add("pool[is_active]", options.active);
116
- if (Array.isArray(options.posts) && options.posts.length > 0)
117
- qs.add("pool[post_ids_string]", options.posts.join(" "));
118
- const res = await this.main.request.post("/pools.json", qs.build());
119
- return new Pool_1.default(this.main, res);
120
- }
121
- /**
122
- * modify a pool
123
- *
124
- * * Requires Authentication
125
- *
126
- * @param {number} id - the id of the pool to edit
127
- * @param {object} options
128
- * @param {string} [options.name] - the name of the pool
129
- * @param {string} [options.description] - the description of the pool
130
- * @param {Array<number>} [options.posts] - the posts to include in the pool (this will override all currently included posts)
131
- * @param {boolean} [options.category] - the category of the pool
132
- * @param {boolean} [options.active] - if the pool is active
133
- * @returns {Promise<Pool>}
134
- */
135
- async modify(id, options) {
136
- this.main.request.authCheck.call(this, "Pools#modify");
137
- if (!options)
138
- throw new Error("options is required in Pools#modify");
139
- const qs = new FormHelper_1.default();
140
- if (typeof options.name === "string")
141
- qs.add("pool[name]", options.name);
142
- if (typeof options.description === "string")
143
- qs.add("pool[description]", options.description);
144
- if (typeof options.category === "string")
145
- qs.add("pool[category]", options.category);
146
- if (typeof options.active === "boolean")
147
- qs.add("pool[is_active]", options.active);
148
- if (Array.isArray(options.posts) && options.posts.length > 0)
149
- qs.add("pool[post_ids]", options.posts.join(" "));
150
- const res = await this.main.request.put(`/pools/${id}.json`, qs.build());
151
- return new Pool_1.default(this.main, res);
152
- }
153
- /**
154
- * Delete a pool
155
- *
156
- * * Requires Authentication
157
- *
158
- * * Requires Janitor
159
- *
160
- * @param {number} id - the id of the pool to delete
161
- * @returns {Promise<null>}
162
- */
163
- async delete(id) {
164
- this.main.request.authCheck.call(this, "Pools#delete");
165
- return this.main.request.delete(`/pools/${id}.json`);
166
- }
167
- /**
168
- * Revert a pool to a previous version
169
- *
170
- * * Requires Authentication
171
- *
172
- * @param {number} id - the id of the pool to revert
173
- * @param {number} versionID - the version id to revert to (see history)
174
- */
175
- async revert(id, versionID) {
176
- this.main.request.authCheck.call(this, "Pools#revert");
177
- const qs = new FormHelper_1.default()
178
- .add("version_id", versionID);
179
- return this.main.request.put(`/pools/${id}/revert.json`, qs.build());
180
- }
181
- /**
182
- * Get a specific pools history
183
- *
184
- * @param {number} id - the id of the history to get
185
- * @returns {Promise<PoolHistory | null>}
186
- */
187
- async getHistory(id) { return this.searchHistory({ id }).then(r => r.length === 0 ? null : r[0]); }
188
- /**
189
- * Search the pool history
190
- *
191
- * * Requires Authentication
192
- *
193
- * @param {object} [options]
194
- * @param {number} [options.id] - get a specific pools history entry
195
- * @param {number} [options.pool] - narrow the results by the pool id
196
- * @param {(number |`${"" | "a" | "b"}${number}`)} [options.page] - page of results to get
197
- * @param {number} [options.limit] - limit the maximum amount of results returned
198
- * @param
199
- * @returns {Promise<Array<PoolHistory>>}
200
- */
201
- async searchHistory(options) {
202
- options = options ?? {};
203
- const qs = new FormHelper_1.default();
204
- if (typeof options.id === "number")
205
- qs.add("search[id]", options.id);
206
- if (typeof options.pool === "number")
207
- qs.add("search[pool_id]", options.pool);
208
- if (typeof options.page !== "undefined")
209
- qs.add("page", options.page);
210
- if (typeof options.limit === "number")
211
- qs.add("limit", options.limit);
212
- const res = await this.main.request.get(`/pool_versions.json?${qs.build()}`);
213
- if (res && !Array.isArray(res) && "pool_archives" in res)
214
- return [];
215
- return res.map(info => new PoolHistory_1.default(this.main, info));
216
- }
217
- /**
218
- * Add a post to a pool
219
- *
220
- * * Requires Authentication
221
- *
222
- * @param {number} id - the id of the pool to add to
223
- * @param {(Array<number> | number)} posts - the post id (or multiple) to add to the pool
224
- * @returns {Promise<Pool>}
225
- */
226
- async addPost(id, posts) {
227
- this.main.request.authCheck.call(this, "Pools#addPost");
228
- const old = await this.get(id);
229
- if (old === null)
230
- throw new Error("invalid pool id given to Pools#addPost");
231
- if (!Array.isArray(posts))
232
- posts = [posts];
233
- return this.modify(id, {
234
- posts: [...old.post_ids, ...posts]
235
- });
236
- }
237
- get addPosts() { return this.addPost.bind(this); }
238
- /**
239
- * Remove a post from a pool
240
- *
241
- * * Requires Authentication
242
- *
243
- * @param {number} id - the id of the pool to remove from
244
- * @param {(Array<number> | number)} posts - the post id (or multiple) to remove from the pool
245
- * @returns {Promise<Pool>}
246
- */
247
- async removePost(id, posts) {
248
- this.main.request.authCheck.call(this, "Pools#removePost");
249
- const old = await this.get(id);
250
- if (old === null)
251
- throw new Error("invalid pool id given to Pools#addPost");
252
- if (!Array.isArray(posts))
253
- posts = [posts];
254
- return this.modify(id, {
255
- posts: old.post_ids.filter(p => !posts.includes(p))
256
- });
257
- }
258
- get removePosts() { return this.removePost.bind(this); }
259
- }
260
- exports.default = Pools;
261
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUG9vbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbW9kdWxlcy9Qb29scy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUNBLDhEQUFzQztBQUN0Qyw0RUFBb0Q7QUFXcEQsb0VBQTRDO0FBQzVDLDJEQUFrRDtBQUVsRCxNQUFxQixLQUFLO0lBQ1IsSUFBSSxDQUFnQjtJQUNwQixJQUFJLENBQU87SUFDNUIsWUFBWSxJQUFVO1FBQ3JCLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLEVBQUU7WUFDN0IsSUFBSSxFQUFFO2dCQUNMLEdBQUc7b0JBQ0YsT0FBTyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLFFBQVEsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxTQUFTLE1BQU0sQ0FBQyxJQUFJLENBQUMsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxRQUFRLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQztnQkFDbkwsQ0FBQztnQkFDRCxZQUFZLEVBQUUsS0FBSztnQkFDbkIsVUFBVSxFQUFJLEtBQUs7YUFDbkI7WUFDRCxJQUFJLEVBQUU7Z0JBQ0wsS0FBSyxFQUFTLElBQUk7Z0JBQ2xCLFlBQVksRUFBRSxLQUFLO2dCQUNuQixVQUFVLEVBQUksS0FBSztnQkFDbkIsUUFBUSxFQUFNLEtBQUs7YUFDbkI7U0FDRCxDQUFDLENBQUM7SUFDSixDQUFDO0lBRUQ7Ozs7O09BS0c7SUFDSCxLQUFLLENBQUMsR0FBRyxDQUFDLEVBQVU7UUFDbkIsTUFBTSxHQUFHLEdBQUcsTUFBTSxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQWlCLFVBQVUsRUFBRSxPQUFP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
@@ -1,55 +0,0 @@
1
- import type E621 from "..";
2
- import type { SearchPostFlagsOptions, CreatePostFlagOptions } from "../types";
3
- import PostFlag from "../structures/PostFlag";
4
- export default class PostFlags {
5
- private readonly auth;
6
- private readonly main;
7
- constructor(main: E621);
8
- /**
9
- * Get a post flag by its id
10
- *
11
- * @param {number} id - The id of the post flag to get
12
- * @returns {Promise<(PostFlag | null)>}
13
- */
14
- get(id: number): Promise<PostFlag | null>;
15
- /**
16
- * Search for post flags
17
- *
18
- * @param {object} [options]
19
- * @param {string} [options.reason] - narrow the results by the provided reason
20
- * @param {(string | Array<string>)} [options.tags] - narrow the results by the tags of the flagged post
21
- * @param {number} [options.post_id] - narrow the results by the id of the post flag
22
- * @param {number} [options.creator] - narrow the results by the creator name of the post flag (requires janitor if not self)
23
- * @param {number} [options.creator_id] - narrow the results by the creator id of the post flag (requires janitor if not self)
24
- * @param {number} [options.ip_addres] - narrow the results by the creator ip of the post flag (requries moderator)
25
- * @param {boolean} [options.resolved] - if the flag as been marked as resolved
26
- * @param {PostFlagCategory} [options.category] - narrow the results by the category of the post flag
27
- * @param {(number |`${"" | "a" | "b"}${number}`)} [options.page] - page of results to get
28
- * @param {number} [options.limit] - limit the maximum amount of results returned
29
- * @returns {Promise<Array<PostFlag>>}
30
- */
31
- search(options?: SearchPostFlagsOptions): Promise<PostFlag[]>;
32
- /**
33
- * Create a post flag
34
- *
35
- * * Requires Authentication
36
- *
37
- * @param {object} options
38
- * @param {number} options.post_id - the id of the post to flag
39
- * @param {PostFlagReasons} options.reason_name - the reason for flagging the post
40
- * @param {number} [options.parent_id] - a post id for `previously_deleted` & `inferior`
41
- * @returns {Promise<PostFlag>}
42
- */
43
- create(options: CreatePostFlagOptions): Promise<PostFlag>;
44
- /**
45
- * Unflag a post
46
- *
47
- * * Requires Authentication
48
- *
49
- * * Requires Janitor
50
- *
51
- * @param {number} post_id - the id of post to unflag
52
- * @returns {Promise<null>}
53
- */
54
- delete(post_id: number): Promise<null>;
55
- }
@@ -1,126 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- const FormHelper_1 = __importDefault(require("../util/FormHelper"));
7
- const RequestHandler_1 = require("../util/RequestHandler");
8
- const PostFlag_1 = __importDefault(require("../structures/PostFlag"));
9
- class PostFlags {
10
- auth;
11
- main;
12
- constructor(main) {
13
- Object.defineProperties(this, {
14
- auth: {
15
- get() {
16
- return !this.main.options.authUser || !this.main.options.authKey ? null : `Basic ${Buffer.from(`${this.main.options.authUser}:${this.main.options.authKey}`).toString("base64")}`;
17
- },
18
- configurable: false,
19
- enumerable: false
20
- },
21
- main: {
22
- value: main,
23
- configurable: false,
24
- enumerable: false,
25
- writable: false
26
- }
27
- });
28
- }
29
- /**
30
- * Get a post flag by its id
31
- *
32
- * @param {number} id - The id of the post flag to get
33
- * @returns {Promise<(PostFlag | null)>}
34
- */
35
- async get(id) {
36
- const res = await this.main.request.get(`/post_flags/${id}.json`).catch(err => {
37
- if (err instanceof RequestHandler_1.APIError && err.statusCode === 404)
38
- return null;
39
- throw err;
40
- });
41
- return res === null ? null : new PostFlag_1.default(this.main, res);
42
- }
43
- /**
44
- * Search for post flags
45
- *
46
- * @param {object} [options]
47
- * @param {string} [options.reason] - narrow the results by the provided reason
48
- * @param {(string | Array<string>)} [options.tags] - narrow the results by the tags of the flagged post
49
- * @param {number} [options.post_id] - narrow the results by the id of the post flag
50
- * @param {number} [options.creator] - narrow the results by the creator name of the post flag (requires janitor if not self)
51
- * @param {number} [options.creator_id] - narrow the results by the creator id of the post flag (requires janitor if not self)
52
- * @param {number} [options.ip_addres] - narrow the results by the creator ip of the post flag (requries moderator)
53
- * @param {boolean} [options.resolved] - if the flag as been marked as resolved
54
- * @param {PostFlagCategory} [options.category] - narrow the results by the category of the post flag
55
- * @param {(number |`${"" | "a" | "b"}${number}`)} [options.page] - page of results to get
56
- * @param {number} [options.limit] - limit the maximum amount of results returned
57
- * @returns {Promise<Array<PostFlag>>}
58
- */
59
- async search(options) {
60
- options = options ?? {};
61
- const qs = new FormHelper_1.default();
62
- if (typeof options.reason === "string")
63
- qs.add("search[reason_matches]", options.reason);
64
- if (typeof options.tags === "string")
65
- qs.add("search[post_tags_match]", options.tags);
66
- if (Array.isArray(options.tags) && options.tags.length > 0)
67
- qs.add("search[post_tags_match]", options.tags.join(" "));
68
- if (typeof options.post_id === "number")
69
- qs.add("search[post_id]", options.post_id);
70
- if (typeof options.creator === "string")
71
- qs.add("search[creator_name]", options.creator);
72
- if (typeof options.creator_id === "string")
73
- qs.add("search[creator_id]", options.creator_id);
74
- if (typeof options.ip_address === "string")
75
- qs.add("search[ip_addr]", options.ip_address);
76
- if (typeof options.resolved === "boolean")
77
- qs.add("search[is_resolved]", options.resolved);
78
- if (typeof options.category === "string")
79
- qs.add("search[creator_name]", options.category);
80
- if (typeof options.page !== "undefined")
81
- qs.add("page", options.page);
82
- if (typeof options.limit === "number")
83
- qs.add("limit", options.limit);
84
- const res = await this.main.request.get(`/post_flags.json?${qs.build()}`);
85
- return res.map(info => new PostFlag_1.default(this.main, info));
86
- }
87
- /**
88
- * Create a post flag
89
- *
90
- * * Requires Authentication
91
- *
92
- * @param {object} options
93
- * @param {number} options.post_id - the id of the post to flag
94
- * @param {PostFlagReasons} options.reason_name - the reason for flagging the post
95
- * @param {number} [options.parent_id] - a post id for `previously_deleted` & `inferior`
96
- * @returns {Promise<PostFlag>}
97
- */
98
- async create(options) {
99
- this.main.request.authCheck.call(this, "PostFlag#create");
100
- if (!options)
101
- throw new Error("options is required in PostFlags#create");
102
- const qs = new FormHelper_1.default()
103
- .add("post_flag[post_id]", options.post_id)
104
- .add("post_flag[reason_name]", options.reason_name);
105
- if (typeof options.parent_id === "number")
106
- qs.add("post_flag[parent_id]", options.parent_id);
107
- const res = await this.main.request.post("/post_flags.json", qs.build());
108
- return new PostFlag_1.default(this.main, res);
109
- }
110
- /**
111
- * Unflag a post
112
- *
113
- * * Requires Authentication
114
- *
115
- * * Requires Janitor
116
- *
117
- * @param {number} post_id - the id of post to unflag
118
- * @returns {Promise<null>}
119
- */
120
- async delete(post_id) {
121
- this.main.request.authCheck.call(this, "PostFlags#delete");
122
- return this.main.request.delete(`/post_flags/${post_id}.json`);
123
- }
124
- }
125
- exports.default = PostFlags;
126
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUG9zdEZsYWdzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL21vZHVsZXMvUG9zdEZsYWdzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBUUEsb0VBQTRDO0FBQzVDLDJEQUFrRDtBQUNsRCxzRUFBOEM7QUFFOUMsTUFBcUIsU0FBUztJQUNaLElBQUksQ0FBZ0I7SUFDcEIsSUFBSSxDQUFPO0lBQzVCLFlBQVksSUFBVTtRQUNyQixNQUFNLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxFQUFFO1lBQzdCLElBQUksRUFBRTtnQkFDTCxHQUFHO29CQUNGLE9BQU8sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxRQUFRLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsU0FBUyxNQUFNLENBQUMsSUFBSSxDQUFDLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsUUFBUSxJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUM7Z0JBQ25MLENBQUM7Z0JBQ0QsWUFBWSxFQUFFLEtBQUs7Z0JBQ25CLFVBQVUsRUFBSSxLQUFLO2FBQ25CO1lBQ0QsSUFBSSxFQUFFO2dCQUNMLEtBQUssRUFBUyxJQUFJO2dCQUNsQixZQUFZLEVBQUUsS0FBSztnQkFDbkIsVUFBVSxFQUFJLEtBQUs7Z0JBQ25CLFFBQVEsRUFBTSxLQUFLO2FBQ25CO1NBQ0QsQ0FBQyxDQUFDO0lBQ0osQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0gsS0FBSyxDQUFDLEdBQUcsQ0FBQyxFQUFVO1FBQ25CLE1BQU0sR0FBRyxHQUFHLE1BQU0sSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFxQixlQUFlLEVBQUUsT0FBTyxDQUFD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
@@ -1,102 +0,0 @@
1
- import type E621 from "..";
2
- import PostSet from "../structures/PostSet";
3
- import type { SearchPostSetsOptions, CreatePostSetOptions, ModifyPostSetOptions } from "../types";
4
- export default class PostSets {
5
- private readonly auth;
6
- private readonly main;
7
- constructor(main: E621);
8
- /**
9
- * Get a post set by its id
10
- *
11
- * @param {(number | string)} id - The id of the post set to get
12
- * @returns {Promise<(PostSet | null)>}
13
- */
14
- get(id: number | string): Promise<PostSet | null>;
15
- /**
16
- * Get a post set by its name
17
- *
18
- * @param {string} name - The name of the post set to get
19
- * @returns {Promise<(PostSet | null)>}
20
- */
21
- getByName(name: string): Promise<PostSet | null>;
22
- /**
23
- * Get a post set by its short name
24
- *
25
- * @param {string} name - The short name of the post set to get
26
- * @returns {Promise<(PostSet | null)>}
27
- */
28
- getByShortName(shortname: string): Promise<PostSet | null>;
29
- /**
30
- * Search for post sets
31
- *
32
- * @param {object} [options]
33
- * @param {string} [options.name] - the name of the set
34
- * @param {string} [options.shortname] - the shortname of the set
35
- * @param {string} [options.username] - the creator of the set
36
- * @param {SearchPostSetsOrder} [options.order] - the order of the results
37
- * @param {(number |`${"" | "a" | "b"}${number}`)} [options.page] - page of results to get
38
- * @param {number} [options.limit] - limit the maximum amount of results returned
39
- * @returns {Promise<Array<PostSet>>}
40
- */
41
- search(options?: SearchPostSetsOptions): Promise<PostSet[]>;
42
- /**
43
- * Create a post set
44
- *
45
- * * Requires Authentication
46
- *
47
- * @param {object} options
48
- * @param {string} options.name - the name of the set
49
- * @param {string} options.shortname - the shortname of the set
50
- * @param {string} [options.description] - the description of the set
51
- * @param {boolean} [options.public] - if the set is public
52
- * @param {boolean} [options.transfer_on_deletion] - if deleted posts should be replaced with parents
53
- * @returns {Promise<PostSet>}
54
- */
55
- create(options: CreatePostSetOptions): Promise<PostSet>;
56
- /**
57
- * modify a set
58
- *
59
- * * Requires Authentication
60
- *
61
- * @param {number} id - the id of the set to edit
62
- * @param {object} options
63
- * @param {string} [options.name] - the name of the set
64
- * @param {string} [options.shortname] - the short name of the set
65
- * @param {string} [options.description] - the description of the set
66
- * @param {boolean} [options.active] - if the set is public
67
- * @param {boolean} [options.transfer_on_deletion] - if deleted posts should be replaced with parents
68
- * @returns {Promise<PostSet>}
69
- */
70
- modify(id: number, options: ModifyPostSetOptions): Promise<PostSet>;
71
- /**
72
- * Delete a set
73
- *
74
- * * Requires Authentication
75
- *
76
- * @param {number} id - the id of the set to delete
77
- * @returns {Promise<null>}
78
- */
79
- delete(id: number): Promise<null>;
80
- /**
81
- * Add a post (or multiple) to a set
82
- *
83
- * * Requires Authentication
84
- *
85
- * @param {number} id - the id of the set to add to
86
- * @param {(Array<number> | number)} posts - the post id (or multiple) to add to the set
87
- * @returns {Promise<PostSet>}
88
- */
89
- addPost(id: number, posts: Array<number> | number): Promise<PostSet>;
90
- get addPosts(): (id: number, posts: number | number[]) => Promise<PostSet>;
91
- /**
92
- * Remove a post (or multiple) from a set
93
- *
94
- * * Requires Authentication
95
- *
96
- * @param {number} id - the id of the set to remove from
97
- * @param {(Array<number> | number)} posts - the post id (or multiple) to remove from the set
98
- * @returns {Promise<PostSet>}
99
- */
100
- removePost(id: number, posts: Array<number> | number): Promise<PostSet>;
101
- get removePosts(): (id: number, posts: number | number[]) => Promise<PostSet>;
102
- }