seyfert 1.4.0 → 2.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 (433) hide show
  1. package/LICENSE +21 -190
  2. package/README.md +22 -14
  3. package/lib/api/Router.js +5 -3
  4. package/lib/api/Routes/applications.d.ts +23 -1
  5. package/lib/api/Routes/channels.d.ts +1 -1
  6. package/lib/api/Routes/gateway.d.ts +1 -1
  7. package/lib/api/Routes/guilds.d.ts +8 -2
  8. package/lib/api/Routes/interactions.d.ts +1 -1
  9. package/lib/api/Routes/invites.d.ts +1 -1
  10. package/lib/api/Routes/stage-instances.d.ts +1 -1
  11. package/lib/api/Routes/stickers.d.ts +2 -2
  12. package/lib/api/Routes/users.d.ts +1 -1
  13. package/lib/api/Routes/voice.d.ts +1 -1
  14. package/lib/api/Routes/webhooks.d.ts +2 -2
  15. package/lib/api/api.d.ts +2 -2
  16. package/lib/api/api.js +2 -14
  17. package/lib/api/bucket.d.ts +0 -1
  18. package/lib/api/shared.d.ts +0 -1
  19. package/lib/api/utils/constants.d.ts +2 -5
  20. package/lib/api/utils/constants.js +3 -7
  21. package/lib/api/utils/utils.d.ts +1 -2
  22. package/lib/api/utils/utils.js +2 -3
  23. package/lib/builders/ActionRow.d.ts +1 -1
  24. package/lib/builders/ActionRow.js +3 -3
  25. package/lib/builders/Attachment.d.ts +2 -3
  26. package/lib/builders/Attachment.js +12 -13
  27. package/lib/builders/Base.d.ts +2 -2
  28. package/lib/builders/Base.js +1 -1
  29. package/lib/builders/Button.d.ts +7 -7
  30. package/lib/builders/Button.js +11 -9
  31. package/lib/builders/Embed.d.ts +1 -1
  32. package/lib/builders/Modal.d.ts +1 -1
  33. package/lib/builders/Modal.js +2 -2
  34. package/lib/builders/Poll.d.ts +2 -2
  35. package/lib/builders/Poll.js +5 -6
  36. package/lib/builders/SelectMenu.d.ts +1 -1
  37. package/lib/builders/SelectMenu.js +17 -18
  38. package/lib/builders/index.d.ts +1 -1
  39. package/lib/builders/index.js +10 -11
  40. package/lib/cache/adapters/default.d.ts +16 -9
  41. package/lib/cache/adapters/default.js +42 -31
  42. package/lib/cache/adapters/index.d.ts +0 -1
  43. package/lib/cache/adapters/index.js +0 -1
  44. package/lib/cache/adapters/limited.d.ts +17 -12
  45. package/lib/cache/adapters/limited.js +80 -36
  46. package/lib/cache/adapters/types.d.ts +6 -7
  47. package/lib/cache/adapters/workeradapter.d.ts +6 -6
  48. package/lib/cache/adapters/workeradapter.js +13 -0
  49. package/lib/cache/index.d.ts +24 -11
  50. package/lib/cache/index.js +335 -19
  51. package/lib/cache/resources/bans.d.ts +15 -0
  52. package/lib/cache/resources/bans.js +44 -0
  53. package/lib/cache/resources/channels.d.ts +6 -4
  54. package/lib/cache/resources/channels.js +13 -7
  55. package/lib/cache/resources/default/base.d.ts +7 -7
  56. package/lib/cache/resources/default/base.js +2 -2
  57. package/lib/cache/resources/default/guild-based.d.ts +6 -6
  58. package/lib/cache/resources/default/guild-based.js +6 -6
  59. package/lib/cache/resources/default/guild-related.d.ts +7 -7
  60. package/lib/cache/resources/default/guild-related.js +10 -8
  61. package/lib/cache/resources/emojis.d.ts +15 -6
  62. package/lib/cache/resources/emojis.js +13 -4
  63. package/lib/cache/resources/guilds.d.ts +9 -6
  64. package/lib/cache/resources/guilds.js +27 -6
  65. package/lib/cache/resources/members.d.ts +9 -6
  66. package/lib/cache/resources/members.js +24 -8
  67. package/lib/cache/resources/messages.d.ts +11 -7
  68. package/lib/cache/resources/messages.js +25 -11
  69. package/lib/cache/resources/overwrites.d.ts +11 -2
  70. package/lib/cache/resources/overwrites.js +9 -0
  71. package/lib/cache/resources/presence.d.ts +3 -2
  72. package/lib/cache/resources/roles.d.ts +9 -6
  73. package/lib/cache/resources/roles.js +13 -4
  74. package/lib/cache/resources/stage-instances.d.ts +2 -2
  75. package/lib/cache/resources/stickers.d.ts +9 -6
  76. package/lib/cache/resources/stickers.js +13 -4
  77. package/lib/cache/resources/threads.d.ts +9 -6
  78. package/lib/cache/resources/threads.js +13 -4
  79. package/lib/cache/resources/users.d.ts +9 -6
  80. package/lib/cache/resources/users.js +13 -4
  81. package/lib/cache/resources/voice-states.d.ts +11 -8
  82. package/lib/cache/resources/voice-states.js +15 -4
  83. package/lib/client/base.d.ts +32 -20
  84. package/lib/client/base.js +51 -30
  85. package/lib/client/client.d.ts +12 -9
  86. package/lib/client/client.js +43 -49
  87. package/lib/client/collectors.d.ts +36 -0
  88. package/lib/client/collectors.js +110 -0
  89. package/lib/client/httpclient.d.ts +8 -13
  90. package/lib/client/httpclient.js +27 -218
  91. package/lib/client/index.d.ts +1 -0
  92. package/lib/client/index.js +1 -0
  93. package/lib/client/transformers.d.ts +68 -0
  94. package/lib/client/transformers.js +99 -0
  95. package/lib/client/types.d.ts +5 -0
  96. package/lib/client/types.js +2 -0
  97. package/lib/client/workerclient.d.ts +18 -15
  98. package/lib/client/workerclient.js +148 -110
  99. package/lib/collection.d.ts +2 -2
  100. package/lib/collection.js +2 -2
  101. package/lib/commands/applications/chat.d.ts +40 -38
  102. package/lib/commands/applications/chat.js +22 -12
  103. package/lib/commands/applications/chatcontext.d.ts +17 -17
  104. package/lib/commands/applications/chatcontext.js +5 -5
  105. package/lib/commands/applications/menu.d.ts +9 -9
  106. package/lib/commands/applications/menu.js +5 -7
  107. package/lib/commands/applications/menucontext.d.ts +14 -13
  108. package/lib/commands/applications/menucontext.js +9 -9
  109. package/lib/commands/applications/options.d.ts +1 -1
  110. package/lib/commands/applications/options.js +20 -21
  111. package/lib/commands/applications/shared.d.ts +14 -0
  112. package/lib/commands/decorators.d.ts +47 -35
  113. package/lib/commands/decorators.js +19 -27
  114. package/lib/commands/handle.d.ts +64 -0
  115. package/lib/commands/handle.js +685 -0
  116. package/lib/commands/handler.d.ts +27 -18
  117. package/lib/commands/handler.js +296 -160
  118. package/lib/commands/optionresolver.d.ts +13 -13
  119. package/lib/commands/optionresolver.js +23 -28
  120. package/lib/common/bot/watcher.d.ts +4 -33
  121. package/lib/common/bot/watcher.js +0 -109
  122. package/lib/common/index.d.ts +2 -0
  123. package/lib/common/index.js +4 -1
  124. package/lib/common/it/colors.js +48 -49
  125. package/lib/common/it/formatter.d.ts +187 -0
  126. package/lib/common/it/formatter.js +226 -0
  127. package/lib/common/it/logger.d.ts +0 -1
  128. package/lib/common/it/logger.js +8 -8
  129. package/lib/common/it/utils.d.ts +15 -2
  130. package/lib/common/it/utils.js +80 -21
  131. package/lib/common/shorters/application.d.ts +56 -0
  132. package/lib/common/shorters/application.js +81 -0
  133. package/lib/common/shorters/bans.d.ts +42 -0
  134. package/lib/common/shorters/bans.js +78 -0
  135. package/lib/common/shorters/channels.d.ts +7 -6
  136. package/lib/common/shorters/channels.js +19 -15
  137. package/lib/common/shorters/emojis.d.ts +5 -6
  138. package/lib/common/shorters/emojis.js +8 -7
  139. package/lib/common/shorters/guilds.d.ts +18 -16
  140. package/lib/common/shorters/guilds.js +31 -26
  141. package/lib/common/shorters/interaction.d.ts +6 -6
  142. package/lib/common/shorters/interaction.js +12 -9
  143. package/lib/common/shorters/members.d.ts +29 -12
  144. package/lib/common/shorters/members.js +55 -16
  145. package/lib/common/shorters/messages.d.ts +7 -8
  146. package/lib/common/shorters/messages.js +10 -9
  147. package/lib/common/shorters/reactions.d.ts +3 -3
  148. package/lib/common/shorters/reactions.js +11 -11
  149. package/lib/common/shorters/roles.d.ts +9 -7
  150. package/lib/common/shorters/roles.js +26 -7
  151. package/lib/common/shorters/templates.d.ts +7 -8
  152. package/lib/common/shorters/templates.js +7 -7
  153. package/lib/common/shorters/threads.d.ts +6 -7
  154. package/lib/common/shorters/threads.js +6 -9
  155. package/lib/common/shorters/users.d.ts +4 -4
  156. package/lib/common/shorters/users.js +8 -4
  157. package/lib/common/shorters/webhook.d.ts +10 -10
  158. package/lib/common/shorters/webhook.js +12 -11
  159. package/lib/common/types/resolvables.d.ts +2 -2
  160. package/lib/common/types/util.d.ts +3 -1
  161. package/lib/common/types/write.d.ts +1 -1
  162. package/lib/components/ActionRow.d.ts +1 -1
  163. package/lib/components/BaseComponent.d.ts +1 -1
  164. package/lib/components/BaseComponent.js +1 -1
  165. package/lib/components/BaseSelectMenuComponent.d.ts +1 -1
  166. package/lib/components/ButtonComponent.d.ts +17 -7
  167. package/lib/components/ButtonComponent.js +19 -2
  168. package/lib/components/ChannelSelectMenuComponent.d.ts +3 -3
  169. package/lib/components/MentionableSelectMenuComponent.d.ts +2 -2
  170. package/lib/components/RoleSelectMenuComponent.d.ts +2 -2
  171. package/lib/components/StringSelectMenuComponent.d.ts +2 -2
  172. package/lib/components/TextInputComponent.d.ts +2 -2
  173. package/lib/components/UserSelectMenuComponent.d.ts +2 -2
  174. package/lib/components/componentcommand.d.ts +3 -2
  175. package/lib/components/componentcommand.js +4 -3
  176. package/lib/components/componentcontext.d.ts +11 -10
  177. package/lib/components/componentcontext.js +8 -8
  178. package/lib/components/handler.d.ts +16 -15
  179. package/lib/components/handler.js +101 -108
  180. package/lib/components/index.d.ts +3 -3
  181. package/lib/components/index.js +12 -10
  182. package/lib/components/modalcommand.d.ts +2 -1
  183. package/lib/components/modalcommand.js +1 -0
  184. package/lib/components/modalcontext.d.ts +13 -12
  185. package/lib/components/modalcontext.js +2 -2
  186. package/lib/deps/mixer.d.ts +8 -0
  187. package/lib/deps/mixer.js +66 -0
  188. package/lib/events/event.d.ts +4 -3
  189. package/lib/events/handler.d.ts +40 -15
  190. package/lib/events/handler.js +99 -21
  191. package/lib/events/hooks/application_command.d.ts +2 -2
  192. package/lib/events/hooks/auto_moderation.d.ts +6 -7
  193. package/lib/events/hooks/auto_moderation.js +4 -4
  194. package/lib/events/hooks/channel.d.ts +2 -2
  195. package/lib/events/hooks/channel.js +4 -7
  196. package/lib/events/hooks/custom.d.ts +3 -3
  197. package/lib/events/hooks/dispatch.d.ts +3 -4
  198. package/lib/events/hooks/dispatch.js +2 -2
  199. package/lib/events/hooks/entitlement.d.ts +5 -37
  200. package/lib/events/hooks/entitlement.js +7 -7
  201. package/lib/events/hooks/guild.d.ts +126 -181
  202. package/lib/events/hooks/guild.js +13 -15
  203. package/lib/events/hooks/integration.d.ts +71 -15
  204. package/lib/events/hooks/integration.js +3 -3
  205. package/lib/events/hooks/interactions.d.ts +2 -2
  206. package/lib/events/hooks/invite.d.ts +18 -14
  207. package/lib/events/hooks/message.d.ts +72 -52
  208. package/lib/events/hooks/message.js +4 -8
  209. package/lib/events/hooks/presence.d.ts +21 -16
  210. package/lib/events/hooks/stage.d.ts +4 -4
  211. package/lib/events/hooks/thread.d.ts +140 -60
  212. package/lib/events/hooks/thread.js +4 -4
  213. package/lib/events/hooks/typing.d.ts +28 -5
  214. package/lib/events/hooks/typing.js +2 -2
  215. package/lib/events/hooks/user.d.ts +3 -3
  216. package/lib/events/hooks/user.js +2 -2
  217. package/lib/events/hooks/voice.d.ts +28 -3
  218. package/lib/events/hooks/voice.js +8 -4
  219. package/lib/events/hooks/webhook.d.ts +1 -1
  220. package/lib/index.d.ts +6 -15
  221. package/lib/index.js +8 -12
  222. package/lib/langs/handler.d.ts +14 -10
  223. package/lib/langs/handler.js +40 -9
  224. package/lib/structures/AutoModerationRule.d.ts +4 -4
  225. package/lib/structures/AutoModerationRule.js +1 -2
  226. package/lib/structures/ClientUser.d.ts +1 -1
  227. package/lib/structures/Entitlement.d.ts +10 -0
  228. package/lib/structures/Entitlement.js +16 -0
  229. package/lib/structures/Guild.d.ts +37 -30
  230. package/lib/structures/Guild.js +7 -2
  231. package/lib/structures/GuildBan.d.ts +25 -0
  232. package/lib/structures/GuildBan.js +37 -0
  233. package/lib/structures/GuildEmoji.d.ts +4 -4
  234. package/lib/structures/GuildEmoji.js +3 -2
  235. package/lib/structures/GuildMember.d.ts +27 -19
  236. package/lib/structures/GuildMember.js +21 -11
  237. package/lib/structures/GuildPreview.d.ts +1 -1
  238. package/lib/structures/GuildRole.d.ts +5 -3
  239. package/lib/structures/GuildRole.js +8 -1
  240. package/lib/structures/GuildTemplate.d.ts +2 -2
  241. package/lib/structures/GuildTemplate.js +1 -1
  242. package/lib/structures/Interaction.d.ts +56 -38
  243. package/lib/structures/Interaction.js +134 -86
  244. package/lib/structures/Message.d.ts +80 -20
  245. package/lib/structures/Message.js +67 -26
  246. package/lib/structures/Poll.d.ts +4 -3
  247. package/lib/structures/Poll.js +6 -2
  248. package/lib/structures/Sticker.d.ts +10 -10
  249. package/lib/structures/Sticker.js +7 -7
  250. package/lib/structures/User.d.ts +6 -4
  251. package/lib/structures/User.js +6 -2
  252. package/lib/structures/VoiceState.d.ts +15 -11
  253. package/lib/structures/VoiceState.js +35 -17
  254. package/lib/structures/Webhook.d.ts +6 -7
  255. package/lib/structures/Webhook.js +6 -7
  256. package/lib/structures/channels.d.ts +14 -10
  257. package/lib/structures/channels.js +97 -62
  258. package/lib/structures/extra/BaseGuild.d.ts +1 -1
  259. package/lib/structures/extra/BaseGuild.js +3 -3
  260. package/lib/structures/extra/BitField.d.ts +1 -1
  261. package/lib/structures/extra/BitField.js +3 -2
  262. package/lib/structures/extra/DiscordBase.js +2 -2
  263. package/lib/structures/extra/Permissions.d.ts +3 -1
  264. package/lib/structures/extra/Permissions.js +8 -3
  265. package/lib/types/gateway.d.ts +1537 -0
  266. package/lib/types/gateway.js +4 -0
  267. package/lib/types/index.d.ts +9 -1
  268. package/lib/types/index.js +28 -1
  269. package/lib/types/payloads/_interactions/_applicationCommands/_chatInput/attachment.d.ts +5 -0
  270. package/lib/types/payloads/_interactions/_applicationCommands/_chatInput/attachment.js +2 -0
  271. package/lib/types/payloads/_interactions/_applicationCommands/_chatInput/base.d.ts +22 -0
  272. package/lib/types/payloads/_interactions/_applicationCommands/_chatInput/base.js +2 -0
  273. package/lib/types/payloads/_interactions/_applicationCommands/_chatInput/boolean.d.ts +4 -0
  274. package/lib/types/payloads/_interactions/_applicationCommands/_chatInput/boolean.js +2 -0
  275. package/lib/types/payloads/_interactions/_applicationCommands/_chatInput/channel.d.ts +7 -0
  276. package/lib/types/payloads/_interactions/_applicationCommands/_chatInput/channel.js +2 -0
  277. package/lib/types/payloads/_interactions/_applicationCommands/_chatInput/integer.d.ts +17 -0
  278. package/lib/types/payloads/_interactions/_applicationCommands/_chatInput/integer.js +2 -0
  279. package/lib/types/payloads/_interactions/_applicationCommands/_chatInput/mentionable.d.ts +5 -0
  280. package/lib/types/payloads/_interactions/_applicationCommands/_chatInput/mentionable.js +2 -0
  281. package/lib/types/payloads/_interactions/_applicationCommands/_chatInput/number.d.ts +17 -0
  282. package/lib/types/payloads/_interactions/_applicationCommands/_chatInput/number.js +2 -0
  283. package/lib/types/payloads/_interactions/_applicationCommands/_chatInput/role.d.ts +5 -0
  284. package/lib/types/payloads/_interactions/_applicationCommands/_chatInput/role.js +2 -0
  285. package/lib/types/payloads/_interactions/_applicationCommands/_chatInput/shared.d.ts +25 -0
  286. package/lib/types/payloads/_interactions/_applicationCommands/_chatInput/shared.js +20 -0
  287. package/lib/types/payloads/_interactions/_applicationCommands/_chatInput/string.d.ts +17 -0
  288. package/lib/types/payloads/_interactions/_applicationCommands/_chatInput/string.js +2 -0
  289. package/lib/types/payloads/_interactions/_applicationCommands/_chatInput/subcommand.d.ts +11 -0
  290. package/lib/types/payloads/_interactions/_applicationCommands/_chatInput/subcommand.js +2 -0
  291. package/lib/types/payloads/_interactions/_applicationCommands/_chatInput/subcommandGroup.d.ts +11 -0
  292. package/lib/types/payloads/_interactions/_applicationCommands/_chatInput/subcommandGroup.js +2 -0
  293. package/lib/types/payloads/_interactions/_applicationCommands/_chatInput/user.d.ts +5 -0
  294. package/lib/types/payloads/_interactions/_applicationCommands/_chatInput/user.js +2 -0
  295. package/lib/types/payloads/_interactions/_applicationCommands/chatInput.d.ts +60 -0
  296. package/lib/types/payloads/_interactions/_applicationCommands/chatInput.js +29 -0
  297. package/lib/types/payloads/_interactions/_applicationCommands/contextMenu.d.ts +65 -0
  298. package/lib/types/payloads/_interactions/_applicationCommands/contextMenu.js +2 -0
  299. package/lib/types/payloads/_interactions/_applicationCommands/internals.d.ts +8 -0
  300. package/lib/types/payloads/_interactions/_applicationCommands/internals.js +2 -0
  301. package/lib/types/payloads/_interactions/_applicationCommands/permissions.d.ts +54 -0
  302. package/lib/types/payloads/_interactions/_applicationCommands/permissions.js +20 -0
  303. package/lib/types/payloads/_interactions/applicationCommands.d.ts +153 -0
  304. package/lib/types/payloads/_interactions/applicationCommands.js +61 -0
  305. package/lib/types/payloads/_interactions/autocomplete.d.ts +10 -0
  306. package/lib/types/payloads/_interactions/autocomplete.js +2 -0
  307. package/lib/types/payloads/_interactions/base.d.ts +197 -0
  308. package/lib/types/payloads/_interactions/base.js +2 -0
  309. package/lib/types/payloads/_interactions/messageComponents.d.ts +41 -0
  310. package/lib/types/payloads/_interactions/messageComponents.js +2 -0
  311. package/lib/types/payloads/_interactions/modalSubmit.d.ts +35 -0
  312. package/lib/types/payloads/_interactions/modalSubmit.js +2 -0
  313. package/lib/types/payloads/_interactions/ping.d.ts +3 -0
  314. package/lib/types/payloads/_interactions/ping.js +2 -0
  315. package/lib/types/payloads/_interactions/responses.d.ts +112 -0
  316. package/lib/types/payloads/_interactions/responses.js +54 -0
  317. package/lib/types/payloads/application.d.ts +292 -0
  318. package/lib/types/payloads/application.js +117 -0
  319. package/lib/types/payloads/auditLog.d.ts +644 -0
  320. package/lib/types/payloads/auditLog.js +80 -0
  321. package/lib/types/payloads/autoModeration.d.ts +219 -0
  322. package/lib/types/payloads/autoModeration.js +87 -0
  323. package/lib/types/payloads/channel.d.ts +1708 -0
  324. package/lib/types/payloads/channel.js +372 -0
  325. package/lib/types/payloads/emoji.d.ts +48 -0
  326. package/lib/types/payloads/emoji.js +5 -0
  327. package/lib/types/payloads/gateway.d.ts +373 -0
  328. package/lib/types/payloads/gateway.js +82 -0
  329. package/lib/types/payloads/guild.d.ts +1060 -0
  330. package/lib/types/payloads/guild.js +324 -0
  331. package/lib/types/payloads/guildScheduledEvent.d.ts +138 -0
  332. package/lib/types/payloads/guildScheduledEvent.js +32 -0
  333. package/lib/types/payloads/index.d.ts +64 -0
  334. package/lib/types/payloads/index.js +37 -0
  335. package/lib/types/payloads/interactions.d.ts +24 -0
  336. package/lib/types/payloads/interactions.js +23 -0
  337. package/lib/types/payloads/invite.d.ts +121 -0
  338. package/lib/types/payloads/invite.js +23 -0
  339. package/lib/types/payloads/monetization.d.ts +150 -0
  340. package/lib/types/payloads/monetization.js +79 -0
  341. package/lib/types/payloads/oauth2.d.ts +131 -0
  342. package/lib/types/payloads/oauth2.js +135 -0
  343. package/lib/types/payloads/permissions.d.ts +97 -0
  344. package/lib/types/payloads/permissions.js +16 -0
  345. package/lib/types/payloads/poll.d.ts +104 -0
  346. package/lib/types/payloads/poll.js +16 -0
  347. package/lib/types/payloads/stageInstance.d.ts +77 -0
  348. package/lib/types/payloads/stageInstance.js +19 -0
  349. package/lib/types/payloads/sticker.d.ts +123 -0
  350. package/lib/types/payloads/sticker.js +30 -0
  351. package/lib/types/payloads/teams.d.ts +78 -0
  352. package/lib/types/payloads/teams.js +23 -0
  353. package/lib/types/payloads/template.d.ts +62 -0
  354. package/lib/types/payloads/template.js +5 -0
  355. package/lib/types/payloads/user.d.ts +337 -0
  356. package/lib/types/payloads/user.js +167 -0
  357. package/lib/types/payloads/voice.d.ts +89 -0
  358. package/lib/types/payloads/voice.js +5 -0
  359. package/lib/types/payloads/webhook.d.ts +76 -0
  360. package/lib/types/payloads/webhook.js +21 -0
  361. package/lib/types/rest/application.d.ts +57 -0
  362. package/lib/types/rest/application.js +2 -0
  363. package/lib/types/rest/auditLog.d.ts +30 -0
  364. package/lib/types/rest/auditLog.js +2 -0
  365. package/lib/types/rest/autoModeration.d.ts +66 -0
  366. package/lib/types/rest/autoModeration.js +2 -0
  367. package/lib/types/rest/channel.d.ts +712 -0
  368. package/lib/types/rest/channel.js +11 -0
  369. package/lib/types/rest/emoji.d.ts +54 -0
  370. package/lib/types/rest/emoji.js +2 -0
  371. package/lib/types/rest/gateway.d.ts +9 -0
  372. package/lib/types/rest/gateway.js +2 -0
  373. package/lib/types/rest/guild.d.ts +865 -0
  374. package/lib/types/rest/guild.js +2 -0
  375. package/lib/types/rest/guildScheduledEvent.d.ts +126 -0
  376. package/lib/types/rest/guildScheduledEvent.js +2 -0
  377. package/lib/types/rest/index.d.ts +296 -0
  378. package/lib/types/rest/index.js +292 -0
  379. package/lib/types/rest/interactions.d.ts +194 -0
  380. package/lib/types/rest/interactions.js +2 -0
  381. package/lib/types/rest/invite.d.ts +24 -0
  382. package/lib/types/rest/invite.js +2 -0
  383. package/lib/types/rest/monetization.d.ts +82 -0
  384. package/lib/types/rest/monetization.js +11 -0
  385. package/lib/types/rest/oauth2.d.ts +172 -0
  386. package/lib/types/rest/oauth2.js +2 -0
  387. package/lib/types/rest/poll.d.ts +44 -0
  388. package/lib/types/rest/poll.js +2 -0
  389. package/lib/types/rest/stageInstance.d.ts +58 -0
  390. package/lib/types/rest/stageInstance.js +2 -0
  391. package/lib/types/rest/sticker.d.ts +77 -0
  392. package/lib/types/rest/sticker.js +2 -0
  393. package/lib/types/rest/template.d.ts +62 -0
  394. package/lib/types/rest/template.js +2 -0
  395. package/lib/types/rest/user.d.ts +120 -0
  396. package/lib/types/rest/user.js +2 -0
  397. package/lib/types/rest/voice.d.ts +17 -0
  398. package/lib/types/rest/voice.js +2 -0
  399. package/lib/types/rest/webhook.d.ts +250 -0
  400. package/lib/types/rest/webhook.js +2 -0
  401. package/lib/types/utils/index.d.ts +797 -0
  402. package/lib/types/utils/index.js +799 -0
  403. package/lib/websocket/SharedTypes.d.ts +4 -3
  404. package/lib/websocket/SharedTypes.js +1 -1
  405. package/lib/websocket/constants/index.d.ts +0 -1
  406. package/lib/websocket/discord/basesocket.d.ts +7 -6
  407. package/lib/websocket/discord/basesocket.js +35 -6
  408. package/lib/websocket/discord/events/memberUpdate.d.ts +1 -6
  409. package/lib/websocket/discord/events/memberUpdate.js +2 -1
  410. package/lib/websocket/discord/events/presenceUpdate.d.ts +5 -18
  411. package/lib/websocket/discord/events/presenceUpdate.js +5 -6
  412. package/lib/websocket/discord/shard.d.ts +9 -8
  413. package/lib/websocket/discord/shard.js +65 -47
  414. package/lib/websocket/discord/sharder.d.ts +6 -5
  415. package/lib/websocket/discord/sharder.js +11 -10
  416. package/lib/websocket/discord/shared.d.ts +13 -5
  417. package/lib/websocket/discord/socket/custom.d.ts +52 -0
  418. package/lib/websocket/discord/socket/custom.js +283 -0
  419. package/lib/websocket/discord/worker.d.ts +5 -10
  420. package/lib/websocket/discord/workermanager.d.ts +8 -15
  421. package/lib/websocket/discord/workermanager.js +35 -39
  422. package/lib/websocket/structures/index.d.ts +0 -1
  423. package/lib/websocket/structures/index.js +1 -1
  424. package/lib/websocket/structures/timeout.d.ts +0 -1
  425. package/package.json +65 -74
  426. package/lib/cache/adapters/redis.d.ts +0 -37
  427. package/lib/cache/adapters/redis.js +0 -218
  428. package/lib/client/oninteractioncreate.d.ts +0 -4
  429. package/lib/client/oninteractioncreate.js +0 -198
  430. package/lib/client/onmessagecreate.d.ts +0 -3
  431. package/lib/client/onmessagecreate.js +0 -395
  432. package/lib/structures/extra/functions.d.ts +0 -12
  433. package/lib/structures/extra/functions.js +0 -70
@@ -2,6 +2,7 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.InteractionShorter = void 0;
4
4
  const __1 = require("../..");
5
+ const transformers_1 = require("../../client/transformers");
5
6
  const base_1 = require("./base");
6
7
  class InteractionShorter extends base_1.BaseShorter {
7
8
  async reply(id, token, body) {
@@ -9,14 +10,15 @@ class InteractionShorter extends base_1.BaseShorter {
9
10
  const { files, ...rest } = body.data ?? {};
10
11
  //@ts-expect-error
11
12
  const data = body.data instanceof __1.Modal ? body.data : rest;
13
+ const parsedFiles = files ? await (0, __1.resolveFiles)(files) : undefined;
12
14
  return this.client.proxy
13
15
  .interactions(id)(token)
14
16
  .callback.post({
15
17
  body: __1.BaseInteraction.transformBodyRequest({
16
18
  type: body.type,
17
19
  data,
18
- }, this.client),
19
- files: files ? await (0, __1.resolveFiles)(files) : undefined,
20
+ }, parsedFiles, this.client),
21
+ files: parsedFiles,
20
22
  });
21
23
  }
22
24
  fetchResponse(token, messageId) {
@@ -27,14 +29,15 @@ class InteractionShorter extends base_1.BaseShorter {
27
29
  }
28
30
  async editMessage(token, messageId, body) {
29
31
  const { files, ...data } = body;
32
+ const parsedFiles = files ? await (0, __1.resolveFiles)(files) : undefined;
30
33
  const apiMessage = await this.client.proxy
31
34
  .webhooks(this.client.applicationId)(token)
32
35
  .messages(messageId)
33
36
  .patch({
34
- body: __1.BaseInteraction.transformBody(data, this.client),
35
- files: files ? await (0, __1.resolveFiles)(files) : undefined,
37
+ body: __1.BaseInteraction.transformBody(data, parsedFiles, this.client),
38
+ files: parsedFiles,
36
39
  });
37
- return new __1.WebhookMessage(this.client, apiMessage, this.client.applicationId, token);
40
+ return transformers_1.Transformers.WebhookMessage(this.client, apiMessage, this.client.applicationId, token);
38
41
  }
39
42
  editOriginal(token, body) {
40
43
  return this.editMessage(token, '@original', body);
@@ -50,14 +53,14 @@ class InteractionShorter extends base_1.BaseShorter {
50
53
  return this.deleteResponse(interactionId, token, '@original');
51
54
  }
52
55
  async followup(token, { files, ...body }) {
53
- files = files ? await (0, __1.resolveFiles)(files) : undefined;
56
+ const parsedFiles = files ? await (0, __1.resolveFiles)(files) : undefined;
54
57
  const apiMessage = await this.client.proxy
55
58
  .webhooks(this.client.applicationId)(token)
56
59
  .post({
57
- body: __1.BaseInteraction.transformBody(body, this.client),
58
- files: files,
60
+ body: __1.BaseInteraction.transformBody(body, parsedFiles, this.client),
61
+ files: parsedFiles,
59
62
  });
60
- return new __1.WebhookMessage(this.client, apiMessage, this.client.applicationId, token);
63
+ return transformers_1.Transformers.WebhookMessage(this.client, apiMessage, this.client.applicationId, token);
61
64
  }
62
65
  }
63
66
  exports.InteractionShorter = InteractionShorter;
@@ -1,8 +1,8 @@
1
- import type { RESTGetAPIGuildMembersQuery, RESTGetAPIGuildMembersSearchQuery, RESTPatchAPIGuildMemberJSONBody, RESTPutAPIGuildBanJSONBody, RESTPutAPIGuildMemberJSONBody } from 'discord-api-types/v10';
2
- import { GuildMember } from '../../structures';
1
+ import { type APIGuildMember, type RESTGetAPIGuildMembersQuery, type RESTGetAPIGuildMembersSearchQuery, type RESTPatchAPIGuildMemberJSONBody, type RESTPutAPIGuildBanJSONBody, type RESTPutAPIGuildMemberJSONBody } from '../../types';
3
2
  import { PermissionsBitField } from '../../structures/extra/Permissions';
4
3
  import type { GuildMemberResolvable } from '../types/resolvables';
5
4
  import { BaseShorter } from './base';
5
+ import { type VoiceStateStructure } from '../../client/transformers';
6
6
  export declare class MemberShorter extends BaseShorter {
7
7
  /**
8
8
  * Resolves a member in the guild based on the provided GuildMemberResolvable.
@@ -10,14 +10,14 @@ export declare class MemberShorter extends BaseShorter {
10
10
  * @param resolve The GuildMemberResolvable to resolve.
11
11
  * @returns A Promise that resolves to the resolved member.
12
12
  */
13
- resolve(guildId: string, resolve: GuildMemberResolvable): Promise<GuildMember | undefined>;
13
+ resolve(guildId: string, resolve: GuildMemberResolvable): Promise<import("../..").GuildMember | undefined>;
14
14
  /**
15
15
  * Searches for members in the guild based on the provided query.
16
16
  * @param guildId The ID of the guild.
17
17
  * @param query The query parameters for searching members.
18
18
  * @returns A Promise that resolves to an array of matched members.
19
19
  */
20
- search(guildId: string, query?: RESTGetAPIGuildMembersSearchQuery): Promise<GuildMember[]>;
20
+ search(guildId: string, query?: RESTGetAPIGuildMembersSearchQuery): Promise<import("../..").GuildMember[]>;
21
21
  /**
22
22
  * Unbans a member from the guild.
23
23
  * @param guildId The ID of the guild.
@@ -49,7 +49,7 @@ export declare class MemberShorter extends BaseShorter {
49
49
  * @param reason The reason for editing the member.
50
50
  * @returns A Promise that resolves to the edited member.
51
51
  */
52
- edit(guildId: string, memberId: string, body: RESTPatchAPIGuildMemberJSONBody, reason?: string): Promise<GuildMember>;
52
+ edit(guildId: string, memberId: string, body: RESTPatchAPIGuildMemberJSONBody, reason?: string): Promise<import("../..").GuildMember>;
53
53
  /**
54
54
  * Adds a member to the guild.
55
55
  * @param guildId The ID of the guild.
@@ -57,7 +57,7 @@ export declare class MemberShorter extends BaseShorter {
57
57
  * @param body The request body for adding the member.
58
58
  * @returns A Promise that resolves to the added member.
59
59
  */
60
- add(guildId: string, memberId: string, body: RESTPutAPIGuildMemberJSONBody): Promise<GuildMember | undefined>;
60
+ add(guildId: string, memberId: string, body: RESTPutAPIGuildMemberJSONBody): Promise<import("../..").GuildMember | undefined>;
61
61
  /**
62
62
  * Fetches a member from the guild.
63
63
  * @param guildId The ID of the guild.
@@ -65,7 +65,8 @@ export declare class MemberShorter extends BaseShorter {
65
65
  * @param force Whether to force fetching the member from the API even if it exists in the cache.
66
66
  * @returns A Promise that resolves to the fetched member.
67
67
  */
68
- fetch(guildId: string, memberId: string, force?: boolean): Promise<GuildMember>;
68
+ fetch(guildId: string, memberId: string, force?: boolean): Promise<import("../..").GuildMember>;
69
+ raw(guildId: string, memberId: string, force?: boolean): Promise<APIGuildMember>;
69
70
  /**
70
71
  * Lists members in the guild based on the provided query.
71
72
  * @param guildId The ID of the guild.
@@ -73,7 +74,7 @@ export declare class MemberShorter extends BaseShorter {
73
74
  * @param force Whether to force listing members from the API even if they exist in the cache.
74
75
  * @returns A Promise that resolves to an array of listed members.
75
76
  */
76
- list(guildId: string, query?: RESTGetAPIGuildMembersQuery, force?: boolean): Promise<GuildMember[]>;
77
+ list(guildId: string, query?: RESTGetAPIGuildMembersQuery, force?: boolean): Promise<import("../..").GuildMember[]>;
77
78
  /**
78
79
  * Adds a role to a guild member.
79
80
  * @param guildId The ID of the guild.
@@ -88,13 +89,29 @@ export declare class MemberShorter extends BaseShorter {
88
89
  * @param id The ID of the role to remove.
89
90
  */
90
91
  removeRole(guildId: string, memberId: string, id: string): Promise<never>;
91
- listRoles(guildId: string, memberId: string, force?: boolean): Promise<import("../../structures").GuildRole[]>;
92
- sortRoles(guildId: string, memberId: string, force?: boolean): Promise<import("../../structures").GuildRole[]>;
92
+ listRoles(guildId: string, memberId: string, force?: boolean): Promise<import("../..").GuildRole[]>;
93
+ sortRoles(guildId: string, memberId: string, force?: boolean): Promise<import("../..").GuildRole[]>;
93
94
  permissions(guildId: string, memberId: string, force?: boolean): Promise<PermissionsBitField>;
94
- presence(memberId: string): import("../..").ReturnCache<(Omit<import("discord-api-types/v10").GatewayPresenceUpdate, "user"> & {
95
+ presence(memberId: string): import("../..").ReturnCache<(Omit<import("../../types").GatewayPresenceUpdate, "user"> & {
95
96
  id: string;
97
+ user_id: string;
96
98
  } & {
97
99
  guild_id: string;
98
100
  }) | undefined>;
99
- voice(guildId: string, memberId: string): import("../..").ReturnCache<import("../../structures").VoiceState | undefined>;
101
+ voice(guildId: string, memberId: '@me', force?: boolean): Promise<VoiceStateStructure>;
102
+ voice(guildId: string, memberId: string, force?: boolean): Promise<VoiceStateStructure>;
103
+ /**
104
+ * Timeouts a member from the guild.
105
+ * @param guildId The ID of the guild.
106
+ * @param memberId The ID of the member to timeout.
107
+ * @param time The time in seconds to timeout the member for.
108
+ * @param reason The reason for the timeout.
109
+ */
110
+ timeout(guildId: string, memberId: string, time: number | null, reason?: string): Promise<import("../..").GuildMember>;
111
+ /**
112
+ * Checks if a member has a timeout.
113
+ * @param member The member to check.
114
+ * @returns The time left until the timeout expires, in milliseconds, or false if the member does not have a timeout.
115
+ */
116
+ hasTimeout(member: Exclude<GuildMemberResolvable, string>): false | number;
100
117
  }
@@ -1,10 +1,10 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.MemberShorter = void 0;
4
- const globals_1 = require("discord-api-types/globals");
5
- const structures_1 = require("../../structures");
4
+ const types_1 = require("../../types");
6
5
  const Permissions_1 = require("../../structures/extra/Permissions");
7
6
  const base_1 = require("./base");
7
+ const transformers_1 = require("../../client/transformers");
8
8
  class MemberShorter extends base_1.BaseShorter {
9
9
  /**
10
10
  * Resolves a member in the guild based on the provided GuildMemberResolvable.
@@ -14,7 +14,7 @@ class MemberShorter extends base_1.BaseShorter {
14
14
  */
15
15
  async resolve(guildId, resolve) {
16
16
  if (typeof resolve === 'string') {
17
- const match = resolve.match(globals_1.FormattingPatterns.User)?.groups;
17
+ const match = resolve.match(types_1.FormattingPatterns.User)?.groups;
18
18
  if (match?.id) {
19
19
  return this.fetch(guildId, match.id);
20
20
  }
@@ -23,12 +23,12 @@ class MemberShorter extends base_1.BaseShorter {
23
23
  }
24
24
  return this.search(guildId, { query: resolve, limit: 1 }).then(x => x[0]);
25
25
  }
26
- if (resolve.id) {
27
- return this.client.members.fetch(guildId, resolve.id);
26
+ const id = 'id' in resolve ? resolve.id : resolve.user?.id;
27
+ if (id) {
28
+ return this.client.members.fetch(guildId, id);
28
29
  }
29
- return resolve.displayName
30
- ? this.search(guildId, { query: resolve.displayName, limit: 1 }).then(x => x[0])
31
- : undefined;
30
+ const displayName = 'displayName' in resolve ? resolve.displayName : resolve.nick ?? resolve.user?.username;
31
+ return displayName ? this.search(guildId, { query: displayName, limit: 1 }).then(x => x[0]) : undefined;
32
32
  }
33
33
  /**
34
34
  * Searches for members in the guild based on the provided query.
@@ -41,7 +41,7 @@ class MemberShorter extends base_1.BaseShorter {
41
41
  query,
42
42
  });
43
43
  await this.client.cache.members?.set(members.map(x => [x.user.id, x]), guildId);
44
- return members.map(m => new structures_1.GuildMember(this.client, m, m.user, guildId));
44
+ return members.map(m => transformers_1.Transformers.GuildMember(this.client, m, m.user, guildId));
45
45
  }
46
46
  /**
47
47
  * Unbans a member from the guild.
@@ -85,7 +85,7 @@ class MemberShorter extends base_1.BaseShorter {
85
85
  async edit(guildId, memberId, body, reason) {
86
86
  const member = await this.client.proxy.guilds(guildId).members(memberId).patch({ body, reason });
87
87
  await this.client.cache.members?.setIfNI('GuildMembers', memberId, guildId, member);
88
- return new structures_1.GuildMember(this.client, member, member.user, guildId);
88
+ return transformers_1.Transformers.GuildMember(this.client, member, member.user, guildId);
89
89
  }
90
90
  /**
91
91
  * Adds a member to the guild.
@@ -103,7 +103,7 @@ class MemberShorter extends base_1.BaseShorter {
103
103
  return;
104
104
  }
105
105
  await this.client.cache.members?.setIfNI('GuildMembers', member.user.id, guildId, member);
106
- return new structures_1.GuildMember(this.client, member, member.user, guildId);
106
+ return transformers_1.Transformers.GuildMember(this.client, member, member.user, guildId);
107
107
  }
108
108
  /**
109
109
  * Fetches a member from the guild.
@@ -113,15 +113,19 @@ class MemberShorter extends base_1.BaseShorter {
113
113
  * @returns A Promise that resolves to the fetched member.
114
114
  */
115
115
  async fetch(guildId, memberId, force = false) {
116
+ const member = await this.raw(guildId, memberId, force);
117
+ return transformers_1.Transformers.GuildMember(this.client, member, member.user, guildId);
118
+ }
119
+ async raw(guildId, memberId, force = false) {
116
120
  let member;
117
121
  if (!force) {
118
- member = await this.client.cache.members?.get(memberId, guildId);
122
+ member = await this.client.cache.members?.raw(memberId, guildId);
119
123
  if (member)
120
124
  return member;
121
125
  }
122
126
  member = await this.client.proxy.guilds(guildId).members(memberId).get();
123
127
  await this.client.cache.members?.set(member.user.id, guildId, member);
124
- return new structures_1.GuildMember(this.client, member, member.user, guildId);
128
+ return member;
125
129
  }
126
130
  /**
127
131
  * Lists members in the guild based on the provided query.
@@ -141,7 +145,7 @@ class MemberShorter extends base_1.BaseShorter {
141
145
  query,
142
146
  });
143
147
  await this.client.cache.members?.set(members.map(x => [x.user.id, x]), guildId);
144
- return members.map(m => new structures_1.GuildMember(this.client, m, m.user, guildId));
148
+ return members.map(m => transformers_1.Transformers.GuildMember(this.client, m, m.user, guildId));
145
149
  }
146
150
  /**
147
151
  * Adds a role to a guild member.
@@ -186,8 +190,43 @@ class MemberShorter extends base_1.BaseShorter {
186
190
  presence(memberId) {
187
191
  return this.client.cache.presences?.get(memberId);
188
192
  }
189
- voice(guildId, memberId) {
190
- return this.client.cache.voiceStates?.get(memberId, guildId);
193
+ async voice(guildId, memberId, force = false) {
194
+ if (!force) {
195
+ const state = await this.client.cache.voiceStates?.get(memberId, guildId);
196
+ if (state)
197
+ return state;
198
+ }
199
+ const state = await this.client.proxy.guilds(guildId)['voice-states'](memberId).get();
200
+ await this.client.cache.voiceStates?.set(memberId, guildId, state);
201
+ return transformers_1.Transformers.VoiceState(this.client, state);
202
+ }
203
+ /**
204
+ * Timeouts a member from the guild.
205
+ * @param guildId The ID of the guild.
206
+ * @param memberId The ID of the member to timeout.
207
+ * @param time The time in seconds to timeout the member for.
208
+ * @param reason The reason for the timeout.
209
+ */
210
+ timeout(guildId, memberId, time, reason) {
211
+ return this.edit(guildId, memberId, {
212
+ communication_disabled_until: time ? new Date(Date.now() + time * 1000).toISOString() : null,
213
+ }, reason);
214
+ }
215
+ /**
216
+ * Checks if a member has a timeout.
217
+ * @param member The member to check.
218
+ * @returns The time left until the timeout expires, in milliseconds, or false if the member does not have a timeout.
219
+ */
220
+ hasTimeout(member) {
221
+ // @ts-expect-error
222
+ const timeout = member.communication_disabled_until ?? member.communicationDisabledUntil;
223
+ if (!timeout)
224
+ return false;
225
+ const parsed = Date.parse(timeout);
226
+ const now = Date.now();
227
+ if (parsed > now)
228
+ return parsed - now;
229
+ return false;
191
230
  }
192
231
  }
193
232
  exports.MemberShorter = MemberShorter;
@@ -1,18 +1,17 @@
1
- import type { RESTPostAPIChannelMessagesThreadsJSONBody } from 'discord-api-types/v10';
2
- import { Message, User } from '../../structures';
1
+ import type { RESTPostAPIChannelMessagesThreadsJSONBody } from '../../types';
3
2
  import type { MessageCreateBodyRequest, MessageUpdateBodyRequest } from '../types/write';
4
3
  import { BaseShorter } from './base';
5
4
  import type { ValidAnswerId } from '../../api/Routes/channels';
6
5
  export declare class MessageShorter extends BaseShorter {
7
- write(channelId: string, { files, ...body }: MessageCreateBodyRequest): Promise<Message>;
8
- edit(messageId: string, channelId: string, { files, ...body }: MessageUpdateBodyRequest): Promise<Message>;
9
- crosspost(messageId: string, channelId: string, reason?: string): Promise<Message>;
6
+ write(channelId: string, { files, ...body }: MessageCreateBodyRequest): Promise<import("../../structures").Message>;
7
+ edit(messageId: string, channelId: string, { files, ...body }: MessageUpdateBodyRequest): Promise<import("../../structures").Message>;
8
+ crosspost(messageId: string, channelId: string, reason?: string): Promise<import("../../structures").Message>;
10
9
  delete(messageId: string, channelId: string, reason?: string): Promise<void>;
11
- fetch(messageId: string, channelId: string): Promise<Message>;
10
+ fetch(messageId: string, channelId: string): Promise<import("../../structures").Message>;
12
11
  purge(messages: string[], channelId: string, reason?: string): Promise<void | undefined>;
13
12
  thread(channelId: string, messageId: string, options: RESTPostAPIChannelMessagesThreadsJSONBody & {
14
13
  reason?: string;
15
14
  }): Promise<import("../../structures").ThreadChannel>;
16
- endPoll(channelId: string, messageId: string): Promise<Message>;
17
- getAnswerVoters(channelId: string, messageId: string, answerId: ValidAnswerId): Promise<User[]>;
15
+ endPoll(channelId: string, messageId: string): Promise<import("../../structures").Message>;
16
+ getAnswerVoters(channelId: string, messageId: string, answerId: ValidAnswerId): Promise<import("../../structures").User[]>;
18
17
  }
@@ -4,10 +4,11 @@ exports.MessageShorter = void 0;
4
4
  const builders_1 = require("../../builders");
5
5
  const structures_1 = require("../../structures");
6
6
  const base_1 = require("./base");
7
+ const transformers_1 = require("../../client/transformers");
7
8
  class MessageShorter extends base_1.BaseShorter {
8
9
  async write(channelId, { files, ...body }) {
9
10
  const parsedFiles = files ? await (0, builders_1.resolveFiles)(files) : [];
10
- const transformedBody = structures_1.MessagesMethods.transformMessageBody(body, this.client);
11
+ const transformedBody = structures_1.MessagesMethods.transformMessageBody(body, parsedFiles, this.client);
11
12
  return this.client.proxy
12
13
  .channels(channelId)
13
14
  .messages.post({
@@ -16,7 +17,7 @@ class MessageShorter extends base_1.BaseShorter {
16
17
  })
17
18
  .then(async (message) => {
18
19
  await this.client.cache.messages?.setIfNI('GuildMessages', message.id, message.channel_id, message);
19
- return new structures_1.Message(this.client, message);
20
+ return transformers_1.Transformers.Message(this.client, message);
20
21
  });
21
22
  }
22
23
  async edit(messageId, channelId, { files, ...body }) {
@@ -25,12 +26,12 @@ class MessageShorter extends base_1.BaseShorter {
25
26
  .channels(channelId)
26
27
  .messages(messageId)
27
28
  .patch({
28
- body: structures_1.MessagesMethods.transformMessageBody(body, this.client),
29
+ body: structures_1.MessagesMethods.transformMessageBody(body, parsedFiles, this.client),
29
30
  files: parsedFiles,
30
31
  })
31
32
  .then(async (message) => {
32
33
  await this.client.cache.messages?.setIfNI('GuildMessages', message.id, message.channel_id, message);
33
- return new structures_1.Message(this.client, message);
34
+ return transformers_1.Transformers.Message(this.client, message);
34
35
  });
35
36
  }
36
37
  crosspost(messageId, channelId, reason) {
@@ -40,7 +41,7 @@ class MessageShorter extends base_1.BaseShorter {
40
41
  .crosspost.post({ reason })
41
42
  .then(async (m) => {
42
43
  await this.client.cache.messages?.setIfNI('GuildMessages', m.id, m.channel_id, m);
43
- return new structures_1.Message(this.client, m);
44
+ return transformers_1.Transformers.Message(this.client, m);
44
45
  });
45
46
  }
46
47
  delete(messageId, channelId, reason) {
@@ -50,7 +51,7 @@ class MessageShorter extends base_1.BaseShorter {
50
51
  .delete({ reason })
51
52
  .then(async () => {
52
53
  await this.client.cache.messages?.removeIfNI('GuildMessages', messageId, channelId);
53
- void this.client.components?.onMessageDelete(messageId);
54
+ this.client.components?.onMessageDelete(messageId);
54
55
  });
55
56
  }
56
57
  fetch(messageId, channelId) {
@@ -60,7 +61,7 @@ class MessageShorter extends base_1.BaseShorter {
60
61
  .get()
61
62
  .then(async (x) => {
62
63
  await this.client.cache.messages?.set(x.id, x.channel_id, x);
63
- return new structures_1.Message(this.client, x);
64
+ return transformers_1.Transformers.Message(this.client, x);
64
65
  });
65
66
  }
66
67
  purge(messages, channelId, reason) {
@@ -77,7 +78,7 @@ class MessageShorter extends base_1.BaseShorter {
77
78
  .channels(channelId)
78
79
  .polls(messageId)
79
80
  .expire.post()
80
- .then(message => new structures_1.Message(this.client, message));
81
+ .then(message => transformers_1.Transformers.Message(this.client, message));
81
82
  }
82
83
  getAnswerVoters(channelId, messageId, answerId) {
83
84
  return this.client.proxy
@@ -85,7 +86,7 @@ class MessageShorter extends base_1.BaseShorter {
85
86
  .polls(messageId)
86
87
  .answers(answerId)
87
88
  .get()
88
- .then(data => data.users.map(user => new structures_1.User(this.client, user)));
89
+ .then(data => data.users.map(user => transformers_1.Transformers.User(this.client, user)));
89
90
  }
90
91
  }
91
92
  exports.MessageShorter = MessageShorter;
@@ -1,10 +1,10 @@
1
- import type { RESTGetAPIChannelMessageReactionUsersQuery } from 'discord-api-types/v10';
2
- import { User } from '../../structures';
1
+ import type { RESTGetAPIChannelMessageReactionUsersQuery } from '../../types';
3
2
  import type { EmojiResolvable } from '../types/resolvables';
4
3
  import { BaseShorter } from './base';
4
+ import { type UserStructure } from '../../client/transformers';
5
5
  export declare class ReactionShorter extends BaseShorter {
6
6
  add(messageId: string, channelId: string, emoji: EmojiResolvable): Promise<void>;
7
7
  delete(messageId: string, channelId: string, emoji: EmojiResolvable, userId?: string): Promise<void>;
8
- fetch(messageId: string, channelId: string, emoji: EmojiResolvable, query?: RESTGetAPIChannelMessageReactionUsersQuery): Promise<User[]>;
8
+ fetch(messageId: string, channelId: string, emoji: EmojiResolvable, query?: RESTGetAPIChannelMessageReactionUsersQuery): Promise<UserStructure[]>;
9
9
  purge(messageId: string, channelId: string, emoji?: EmojiResolvable): Promise<void>;
10
10
  }
@@ -1,45 +1,45 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.ReactionShorter = void 0;
4
- const structures_1 = require("../../structures");
5
- const functions_1 = require("../../structures/extra/functions");
4
+ const utils_1 = require("../../common/it/utils");
6
5
  const base_1 = require("./base");
6
+ const transformers_1 = require("../../client/transformers");
7
7
  class ReactionShorter extends base_1.BaseShorter {
8
8
  async add(messageId, channelId, emoji) {
9
- const rawEmoji = await (0, functions_1.resolveEmoji)(emoji, this.client.cache);
9
+ const rawEmoji = await (0, utils_1.resolveEmoji)(emoji, this.client.cache);
10
10
  if (!rawEmoji) {
11
11
  throw new Error('Emoji no resolvable');
12
12
  }
13
- return this.client.proxy.channels(channelId).messages(messageId).reactions((0, functions_1.encodeEmoji)(rawEmoji))('@me').put({});
13
+ return this.client.proxy.channels(channelId).messages(messageId).reactions((0, utils_1.encodeEmoji)(rawEmoji))('@me').put({});
14
14
  }
15
15
  async delete(messageId, channelId, emoji, userId = '@me') {
16
- const rawEmoji = await (0, functions_1.resolveEmoji)(emoji, this.client.cache);
16
+ const rawEmoji = await (0, utils_1.resolveEmoji)(emoji, this.client.cache);
17
17
  if (!rawEmoji) {
18
18
  throw new Error('Emoji no resolvable');
19
19
  }
20
- return this.client.proxy.channels(channelId).messages(messageId).reactions((0, functions_1.encodeEmoji)(rawEmoji))(userId).delete();
20
+ return this.client.proxy.channels(channelId).messages(messageId).reactions((0, utils_1.encodeEmoji)(rawEmoji))(userId).delete();
21
21
  }
22
22
  async fetch(messageId, channelId, emoji, query) {
23
- const rawEmoji = await (0, functions_1.resolveEmoji)(emoji, this.client.cache);
23
+ const rawEmoji = await (0, utils_1.resolveEmoji)(emoji, this.client.cache);
24
24
  if (!rawEmoji) {
25
25
  throw new Error('Emoji no resolvable');
26
26
  }
27
27
  return this.client.proxy
28
28
  .channels(channelId)
29
29
  .messages(messageId)
30
- .reactions((0, functions_1.encodeEmoji)(rawEmoji))
30
+ .reactions((0, utils_1.encodeEmoji)(rawEmoji))
31
31
  .get({ query })
32
- .then(u => u.map(user => new structures_1.User(this.client, user)));
32
+ .then(u => u.map(user => transformers_1.Transformers.User(this.client, user)));
33
33
  }
34
34
  async purge(messageId, channelId, emoji) {
35
35
  if (!emoji) {
36
36
  return this.client.proxy.channels(channelId).messages(messageId).reactions.delete();
37
37
  }
38
- const rawEmoji = await (0, functions_1.resolveEmoji)(emoji, this.client.cache);
38
+ const rawEmoji = await (0, utils_1.resolveEmoji)(emoji, this.client.cache);
39
39
  if (!rawEmoji) {
40
40
  throw new Error('Emoji no resolvable');
41
41
  }
42
- return this.client.proxy.channels(channelId).messages(messageId).reactions((0, functions_1.encodeEmoji)(rawEmoji)).delete();
42
+ return this.client.proxy.channels(channelId).messages(messageId).reactions((0, utils_1.encodeEmoji)(rawEmoji)).delete();
43
43
  }
44
44
  }
45
45
  exports.ReactionShorter = ReactionShorter;
@@ -1,5 +1,4 @@
1
- import type { RESTPatchAPIGuildRoleJSONBody, RESTPatchAPIGuildRolePositionsJSONBody, RESTPostAPIGuildRoleJSONBody } from 'discord-api-types/v10';
2
- import { GuildRole } from '../../structures';
1
+ import type { APIRole, RESTPatchAPIGuildRoleJSONBody, RESTPatchAPIGuildRolePositionsJSONBody, RESTPostAPIGuildRoleJSONBody } from '../../types';
3
2
  import { BaseShorter } from './base';
4
3
  export declare class RoleShorter extends BaseShorter {
5
4
  /**
@@ -9,14 +8,17 @@ export declare class RoleShorter extends BaseShorter {
9
8
  * @param reason The reason for creating the role.
10
9
  * @returns A Promise that resolves when the role is created.
11
10
  */
12
- create(guildId: string, body: RESTPostAPIGuildRoleJSONBody, reason?: string): Promise<GuildRole>;
11
+ create(guildId: string, body: RESTPostAPIGuildRoleJSONBody, reason?: string): Promise<import("../..").GuildRole>;
12
+ fetch(guildId: string, roleId: string, force?: boolean): Promise<import("../..").GuildRole>;
13
+ raw(guildId: string, roleId: string, force?: boolean): Promise<APIRole>;
13
14
  /**
14
15
  * Retrieves a list of roles in the guild.
15
16
  * @param guildId The ID of the guild.
16
17
  * @param force Whether to force fetching roles from the API even if they exist in the cache.
17
18
  * @returns A Promise that resolves to an array of roles.
18
19
  */
19
- list(guildId: string, force?: boolean): Promise<GuildRole[]>;
20
+ list(guildId: string, force?: boolean): Promise<import("../..").GuildRole[]>;
21
+ listRaw(guildId: string, force?: boolean): Promise<APIRole[]>;
20
22
  /**
21
23
  * Edits a role in the guild.
22
24
  * @param guildId The ID of the guild.
@@ -25,7 +27,7 @@ export declare class RoleShorter extends BaseShorter {
25
27
  * @param reason The reason for editing the role.
26
28
  * @returns A Promise that resolves when the role is edited.
27
29
  */
28
- edit(guildId: string, roleId: string, body: RESTPatchAPIGuildRoleJSONBody, reason?: string): Promise<GuildRole>;
30
+ edit(guildId: string, roleId: string, body: RESTPatchAPIGuildRoleJSONBody, reason?: string): Promise<import("../..").GuildRole>;
29
31
  /**
30
32
  * Deletes a role from the guild.
31
33
  * @param guildId The ID of the guild.
@@ -33,12 +35,12 @@ export declare class RoleShorter extends BaseShorter {
33
35
  * @param reason The reason for deleting the role.
34
36
  * @returns A Promise that resolves when the role is deleted.
35
37
  */
36
- delete(guildId: string, roleId: string, reason?: string): Promise<GuildRole>;
38
+ delete(guildId: string, roleId: string, reason?: string): Promise<import("../..").GuildRole>;
37
39
  /**
38
40
  * Edits the positions of roles in the guild.
39
41
  * @param guildId The ID of the guild.
40
42
  * @param body The data to update the positions of roles with.
41
43
  * @returns A Promise that resolves to an array of edited roles.
42
44
  */
43
- editPositions(guildId: string, body: RESTPatchAPIGuildRolePositionsJSONBody): Promise<GuildRole[]>;
45
+ editPositions(guildId: string, body: RESTPatchAPIGuildRolePositionsJSONBody): Promise<import("../..").GuildRole[]>;
44
46
  }
@@ -1,8 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.RoleShorter = void 0;
4
- const structures_1 = require("../../structures");
5
4
  const base_1 = require("./base");
5
+ const transformers_1 = require("../../client/transformers");
6
6
  class RoleShorter extends base_1.BaseShorter {
7
7
  /**
8
8
  * Creates a new role in the guild.
@@ -14,7 +14,22 @@ class RoleShorter extends base_1.BaseShorter {
14
14
  async create(guildId, body, reason) {
15
15
  const res = await this.client.proxy.guilds(guildId).roles.post({ body, reason });
16
16
  await this.client.cache.roles?.setIfNI('Guilds', res.id, guildId, res);
17
- return new structures_1.GuildRole(this.client, res, guildId);
17
+ return transformers_1.Transformers.GuildRole(this.client, res, guildId);
18
+ }
19
+ async fetch(guildId, roleId, force = false) {
20
+ const role = await this.raw(guildId, roleId, force);
21
+ return transformers_1.Transformers.GuildRole(this.client, role, guildId);
22
+ }
23
+ async raw(guildId, roleId, force = false) {
24
+ let role;
25
+ if (!force) {
26
+ role = await this.client.cache.roles?.raw(roleId);
27
+ if (role)
28
+ return role;
29
+ }
30
+ role = await this.client.proxy.guilds(guildId).roles(roleId).get();
31
+ await this.client.cache.roles?.set(roleId, guildId, role);
32
+ return role;
18
33
  }
19
34
  /**
20
35
  * Retrieves a list of roles in the guild.
@@ -23,16 +38,20 @@ class RoleShorter extends base_1.BaseShorter {
23
38
  * @returns A Promise that resolves to an array of roles.
24
39
  */
25
40
  async list(guildId, force = false) {
41
+ const roles = await this.listRaw(guildId, force);
42
+ return roles.map(r => transformers_1.Transformers.GuildRole(this.client, r, guildId));
43
+ }
44
+ async listRaw(guildId, force = false) {
26
45
  let roles = [];
27
46
  if (!force) {
28
- const cachedRoles = (await this.client.cache.roles?.values(guildId)) ?? [];
47
+ const cachedRoles = (await this.client.cache.roles?.valuesRaw(guildId)) ?? [];
29
48
  if (cachedRoles.length) {
30
49
  return cachedRoles;
31
50
  }
32
51
  }
33
52
  roles = await this.client.proxy.guilds(guildId).roles.get();
34
53
  await this.client.cache.roles?.set(roles.map(r => [r.id, r]), guildId);
35
- return roles.map(r => new structures_1.GuildRole(this.client, r, guildId));
54
+ return roles;
36
55
  }
37
56
  /**
38
57
  * Edits a role in the guild.
@@ -45,7 +64,7 @@ class RoleShorter extends base_1.BaseShorter {
45
64
  async edit(guildId, roleId, body, reason) {
46
65
  const res = await this.client.proxy.guilds(guildId).roles(roleId).patch({ body, reason });
47
66
  await this.client.cache.roles?.setIfNI('Guilds', roleId, guildId, res);
48
- return new structures_1.GuildRole(this.client, res, guildId);
67
+ return transformers_1.Transformers.GuildRole(this.client, res, guildId);
49
68
  }
50
69
  /**
51
70
  * Deletes a role from the guild.
@@ -57,7 +76,7 @@ class RoleShorter extends base_1.BaseShorter {
57
76
  async delete(guildId, roleId, reason) {
58
77
  const res = await this.client.proxy.guilds(guildId).roles(roleId).delete({ reason });
59
78
  this.client.cache.roles?.removeIfNI('Guilds', roleId, guildId);
60
- return new structures_1.GuildRole(this.client, res, guildId);
79
+ return transformers_1.Transformers.GuildRole(this.client, res, guildId);
61
80
  }
62
81
  /**
63
82
  * Edits the positions of roles in the guild.
@@ -72,7 +91,7 @@ class RoleShorter extends base_1.BaseShorter {
72
91
  if (!this.client.cache.hasRolesIntent) {
73
92
  await this.client.cache.roles?.set(roles.map(x => [x.id, x]), guildId);
74
93
  }
75
- return roles.map(x => new structures_1.GuildRole(this.client, x, guildId));
94
+ return roles.map(x => transformers_1.Transformers.GuildRole(this.client, x, guildId));
76
95
  }
77
96
  }
78
97
  exports.RoleShorter = RoleShorter;
@@ -1,11 +1,10 @@
1
- import type { RESTPatchAPIGuildTemplateJSONBody, RESTPostAPIGuildTemplatesJSONBody } from 'discord-api-types/v10';
1
+ import type { RESTPatchAPIGuildTemplateJSONBody, RESTPostAPIGuildTemplatesJSONBody } from '../../types';
2
2
  import { BaseShorter } from './base';
3
- import { GuildTemplate } from '../..';
4
3
  export declare class TemplateShorter extends BaseShorter {
5
- fetch(code: string): Promise<GuildTemplate>;
6
- list(guildId: string): Promise<GuildTemplate[]>;
7
- create(guildId: string, body: RESTPostAPIGuildTemplatesJSONBody): Promise<GuildTemplate>;
8
- sync(guildId: string, code: string): Promise<GuildTemplate>;
9
- edit(guildId: string, code: string, body: RESTPatchAPIGuildTemplateJSONBody): Promise<GuildTemplate>;
10
- delete(guildId: string, code: string): Promise<GuildTemplate>;
4
+ fetch(code: string): Promise<import("../..").GuildTemplate>;
5
+ list(guildId: string): Promise<import("../..").GuildTemplate[]>;
6
+ create(guildId: string, body: RESTPostAPIGuildTemplatesJSONBody): Promise<import("../..").GuildTemplate>;
7
+ sync(guildId: string, code: string): Promise<import("../..").GuildTemplate>;
8
+ edit(guildId: string, code: string, body: RESTPatchAPIGuildTemplateJSONBody): Promise<import("../..").GuildTemplate>;
9
+ delete(guildId: string, code: string): Promise<import("../..").GuildTemplate>;
11
10
  }