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
@@ -1,15 +1,10 @@
1
1
  import { DiscordBase } from './extra/DiscordBase';
2
- export type GuildMemberData = APIGuildMember | GatewayGuildMemberUpdateDispatchData | GatewayGuildMemberAddDispatchData | APIInteractionDataResolvedGuildMember;
3
- import type { APIGuildMember, APIInteractionDataResolvedGuildMember, APIUser, GatewayGuildMemberAddDispatchData, GatewayGuildMemberUpdateDispatchData, RESTGetAPIGuildMembersQuery, RESTGetAPIGuildMembersSearchQuery, RESTPatchAPIGuildMemberJSONBody, RESTPutAPIGuildBanJSONBody, RESTPutAPIGuildMemberJSONBody } from 'discord-api-types/v10';
2
+ export type GuildMemberData = APIGuildMember | Omit<APIGuildMember, 'user'> | GatewayGuildMemberUpdateDispatchData | GatewayGuildMemberAddDispatchData | APIInteractionDataResolvedGuildMember;
3
+ import type { APIGuildMember, GatewayGuildMemberUpdateDispatchData, GatewayGuildMemberAddDispatchData, APIInteractionDataResolvedGuildMember, RESTPutAPIGuildBanJSONBody, RESTPatchAPIGuildMemberJSONBody, RESTGetAPIGuildMembersSearchQuery, RESTPutAPIGuildMemberJSONBody, RESTGetAPIGuildMembersQuery, APIUser } from '../types';
4
4
  import type { UsingClient } from '../commands';
5
- import type { MakeRequired, MessageCreateBodyRequest, ObjectToLower, ToClass } from '../common';
6
- import type { ImageOptions, MethodContext } from '../common/types/options';
7
- import type { GuildMemberResolvable } from '../common/types/resolvables';
8
- import { User } from './User';
9
5
  import { PermissionsBitField } from './extra/Permissions';
10
- export type GatewayGuildMemberAddDispatchDataFixed<Pending extends boolean> = Pending extends true ? Omit<GatewayGuildMemberAddDispatchData, 'user'> & {
11
- id: string;
12
- } : MakeRequired<GatewayGuildMemberAddDispatchData, 'user'>;
6
+ import { type MessageCreateBodyRequest, type ObjectToLower, type ToClass, type ImageOptions, type MethodContext, type GuildMemberResolvable } from '../common';
7
+ import { type UserStructure } from '../client/transformers';
13
8
  export interface BaseGuildMember extends DiscordBase, ObjectToLower<Omit<APIGuildMember, 'user' | 'roles'>> {
14
9
  }
15
10
  export declare class BaseGuildMember extends DiscordBase {
@@ -21,18 +16,21 @@ export declare class BaseGuildMember extends DiscordBase {
21
16
  constructor(client: UsingClient, data: GuildMemberData, id: string,
22
17
  /** the choosen guild id */
23
18
  guildId: string);
24
- guild(force?: boolean): Promise<import("./Guild").Guild<"cached"> | import("./Guild").Guild<"api">>;
19
+ guild(force?: boolean): Promise<import("./Guild").Guild<"api">>;
25
20
  fetch(force?: boolean): Promise<GuildMember>;
26
21
  ban(body?: RESTPutAPIGuildBanJSONBody, reason?: string): Promise<void>;
27
22
  kick(reason?: string): Promise<void>;
28
23
  edit(body: RESTPatchAPIGuildMemberJSONBody, reason?: string): Promise<GuildMember>;
29
- presence(): import("..").ReturnCache<(Omit<import("discord-api-types/v10").GatewayPresenceUpdate, "user"> & {
24
+ presence(): import("..").ReturnCache<(Omit<import("../types").GatewayPresenceUpdate, "user"> & {
30
25
  id: string;
26
+ user_id: string;
31
27
  } & {
32
28
  guild_id: string;
33
29
  }) | undefined>;
34
- voice(): import("..").ReturnCache<import("./VoiceState").VoiceState | undefined>;
35
- toString(): string;
30
+ voice(force?: boolean): Promise<import("./VoiceState").VoiceState>;
31
+ toString(): `<@${string}>`;
32
+ timeout(time: null | number, reason?: string): Promise<GuildMember>;
33
+ get hasTimeout(): false | number;
36
34
  private patch;
37
35
  get roles(): {
38
36
  keys: string[];
@@ -66,9 +64,9 @@ export interface GuildMember extends ObjectToLower<Omit<APIGuildMember, 'user' |
66
64
  export declare class GuildMember extends BaseGuildMember {
67
65
  /** the choosen guild id */
68
66
  readonly guildId: string;
69
- user: User;
67
+ user: UserStructure;
70
68
  private __me?;
71
- constructor(client: UsingClient, data: GuildMemberData, user: APIUser | User,
69
+ constructor(client: UsingClient, data: GuildMemberData, user: APIUser,
72
70
  /** the choosen guild id */
73
71
  guildId: string);
74
72
  get tag(): string;
@@ -80,9 +78,19 @@ export declare class GuildMember extends BaseGuildMember {
80
78
  get displayName(): string;
81
79
  dm(force?: boolean): Promise<import("./channels").DMChannel>;
82
80
  write(body: MessageCreateBodyRequest): Promise<import("./Message").Message>;
83
- avatarURL(options?: ImageOptions): string;
84
- dynamicAvatarURL(options?: ImageOptions): string;
85
- bannerURL(options?: ImageOptions): string | undefined;
81
+ defaultAvatarURL(): string;
82
+ avatarURL(options: ImageOptions & {
83
+ exclude: true;
84
+ }): string | null;
85
+ avatarURL(options?: ImageOptions & {
86
+ exclude?: false;
87
+ }): string;
88
+ bannerURL(options: ImageOptions & {
89
+ exclude: true;
90
+ }): string | undefined | null;
91
+ bannerURL(options?: ImageOptions & {
92
+ exclude?: false;
93
+ }): string | undefined;
86
94
  fetchPermissions(force?: boolean): Promise<PermissionsBitField>;
87
95
  manageable(force?: boolean): Promise<boolean>;
88
96
  bannable(force?: boolean): Promise<boolean>;
@@ -103,7 +111,7 @@ declare const InteractionGuildMember_base: ToClass<Omit<GuildMember, "deaf" | "m
103
111
  */
104
112
  export declare class InteractionGuildMember extends InteractionGuildMember_base {
105
113
  permissions: PermissionsBitField;
106
- constructor(client: UsingClient, data: APIInteractionDataResolvedGuildMember, user: APIUser | User,
114
+ constructor(client: UsingClient, data: APIInteractionDataResolvedGuildMember, user: APIUser,
107
115
  /** the choosen guild id */
108
116
  guildId: string);
109
117
  }
@@ -2,8 +2,9 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.InteractionGuildMember = exports.UnavailableMember = exports.GuildMember = exports.BaseGuildMember = void 0;
4
4
  const DiscordBase_1 = require("./extra/DiscordBase");
5
- const User_1 = require("./User");
6
5
  const Permissions_1 = require("./extra/Permissions");
6
+ const common_1 = require("../common");
7
+ const transformers_1 = require("../client/transformers");
7
8
  class BaseGuildMember extends DiscordBase_1.DiscordBase {
8
9
  guildId;
9
10
  _roles;
@@ -19,7 +20,7 @@ class BaseGuildMember extends DiscordBase_1.DiscordBase {
19
20
  this.patch(data);
20
21
  }
21
22
  guild(force = false) {
22
- return this.client.guilds.fetch(this.id, force);
23
+ return this.client.guilds.fetch(this.guildId, force);
23
24
  }
24
25
  fetch(force = false) {
25
26
  return this.client.members.fetch(this.guildId, this.id, force);
@@ -36,11 +37,17 @@ class BaseGuildMember extends DiscordBase_1.DiscordBase {
36
37
  presence() {
37
38
  return this.client.members.presence(this.id);
38
39
  }
39
- voice() {
40
- return this.client.members.voice(this.guildId, this.id);
40
+ voice(force = false) {
41
+ return this.client.members.voice(this.guildId, this.id, force);
41
42
  }
42
43
  toString() {
43
- return `<@${this.id}>`;
44
+ return common_1.Formatter.userMention(this.id);
45
+ }
46
+ timeout(time, reason) {
47
+ return this.client.members.timeout(this.guildId, this.id, time, reason);
48
+ }
49
+ get hasTimeout() {
50
+ return this.client.members.hasTimeout(this);
44
51
  }
45
52
  patch(data) {
46
53
  if ('joined_at' in data && data.joined_at) {
@@ -93,7 +100,7 @@ class GuildMember extends BaseGuildMember {
93
100
  guildId) {
94
101
  super(client, data, user.id, guildId);
95
102
  this.guildId = guildId;
96
- this.user = user instanceof User_1.User ? user : new User_1.User(client, user);
103
+ this.user = transformers_1.Transformers.User(client, user);
97
104
  }
98
105
  get tag() {
99
106
  return this.user.tag;
@@ -120,17 +127,20 @@ class GuildMember extends BaseGuildMember {
120
127
  write(body) {
121
128
  return this.user.write(body);
122
129
  }
123
- avatarURL(options) {
124
- return this.user.avatarURL(options);
130
+ defaultAvatarURL() {
131
+ return this.user.defaultAvatarURL();
125
132
  }
126
- dynamicAvatarURL(options) {
133
+ avatarURL(options) {
127
134
  if (!this.avatar) {
128
- return this.user.avatarURL(options);
135
+ return options?.exclude ? null : this.user.avatarURL(options);
129
136
  }
130
137
  return this.rest.cdn.guilds(this.guildId).users(this.id).avatars(this.avatar).get(options);
131
138
  }
132
139
  bannerURL(options) {
133
- return this.user.bannerURL(options);
140
+ if (!this.banner) {
141
+ return options?.exclude ? null : this.user.bannerURL(options);
142
+ }
143
+ return this.rest.cdn.guilds(this.guildId).users(this.id).banners(this.banner).get(options);
134
144
  }
135
145
  async fetchPermissions(force = false) {
136
146
  if ('permissions' in this)
@@ -1,5 +1,5 @@
1
- import type { APIGuildPreview } from 'discord-api-types/v10';
2
1
  import type { UsingClient } from '../commands';
2
+ import type { APIGuildPreview } from '../types';
3
3
  import { AnonymousGuild } from './AnonymousGuild';
4
4
  /**
5
5
  * Represent Discord Guild Preview Object
@@ -1,6 +1,6 @@
1
- import type { APIRole, RESTPatchAPIGuildRoleJSONBody, RESTPatchAPIGuildRolePositionsJSONBody, RESTPostAPIGuildRoleJSONBody } from 'discord-api-types/v10';
1
+ import type { APIRole, RESTPatchAPIGuildRoleJSONBody, RESTPatchAPIGuildRolePositionsJSONBody, RESTPostAPIGuildRoleJSONBody } from '../types';
2
2
  import type { UsingClient } from '../commands';
3
- import type { MethodContext, ObjectToLower } from '../common';
3
+ import { type MethodContext, type ObjectToLower } from '../common';
4
4
  import { DiscordBase } from './extra/DiscordBase';
5
5
  import { PermissionsBitField } from './extra/Permissions';
6
6
  export interface GuildRole extends DiscordBase, ObjectToLower<Omit<APIRole, 'permissions'>> {
@@ -9,9 +9,11 @@ export declare class GuildRole extends DiscordBase {
9
9
  readonly guildId: string;
10
10
  permissions: PermissionsBitField;
11
11
  constructor(client: UsingClient, data: APIRole, guildId: string);
12
- guild(force?: boolean): Promise<import("./Guild").Guild<"cached"> | import("./Guild").Guild<"api">> | undefined;
12
+ guild(force?: boolean): Promise<import("./Guild").Guild<"api"> | undefined>;
13
+ fetch(force?: boolean): Promise<GuildRole>;
13
14
  edit(body: RESTPatchAPIGuildRoleJSONBody, reason?: string): Promise<GuildRole>;
14
15
  delete(reason?: string): Promise<GuildRole>;
16
+ toString(): `<@&${string}>`;
15
17
  static methods(ctx: MethodContext<{
16
18
  guildId: string;
17
19
  }>): {
@@ -1,6 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.GuildRole = void 0;
4
+ const common_1 = require("../common");
4
5
  const DiscordBase_1 = require("./extra/DiscordBase");
5
6
  const Permissions_1 = require("./extra/Permissions");
6
7
  class GuildRole extends DiscordBase_1.DiscordBase {
@@ -11,17 +12,23 @@ class GuildRole extends DiscordBase_1.DiscordBase {
11
12
  this.guildId = guildId;
12
13
  this.permissions = new Permissions_1.PermissionsBitField(BigInt(data.permissions));
13
14
  }
14
- guild(force = false) {
15
+ async guild(force = false) {
15
16
  if (!this.guildId)
16
17
  return;
17
18
  return this.client.guilds.fetch(this.guildId, force);
18
19
  }
20
+ fetch(force = false) {
21
+ return this.client.roles.fetch(this.guildId, this.id, force);
22
+ }
19
23
  edit(body, reason) {
20
24
  return this.client.roles.create(this.guildId, body, reason);
21
25
  }
22
26
  delete(reason) {
23
27
  return this.client.roles.delete(this.guildId, this.id, reason);
24
28
  }
29
+ toString() {
30
+ return common_1.Formatter.roleMention(this.id);
31
+ }
25
32
  static methods(ctx) {
26
33
  return {
27
34
  create: (body) => ctx.client.roles.create(ctx.guildId, body),
@@ -1,4 +1,4 @@
1
- import type { APITemplate, RESTPatchAPIGuildTemplateJSONBody, RESTPostAPIGuildTemplatesJSONBody } from 'discord-api-types/v10';
1
+ import type { APITemplate, RESTPatchAPIGuildTemplateJSONBody, RESTPostAPIGuildTemplatesJSONBody } from '../types';
2
2
  import type { UsingClient } from '../commands';
3
3
  import type { MethodContext, ObjectToLower } from '../common';
4
4
  import { Base } from './extra/Base';
@@ -6,7 +6,7 @@ export interface GuildTemplate extends Base, ObjectToLower<APITemplate> {
6
6
  }
7
7
  export declare class GuildTemplate extends Base {
8
8
  constructor(client: UsingClient, data: APITemplate);
9
- guild(force?: boolean): Promise<import("./Guild").Guild<"cached"> | import("./Guild").Guild<"api">>;
9
+ guild(force?: boolean): Promise<import("./Guild").Guild<"api">>;
10
10
  fetch(): Promise<GuildTemplate>;
11
11
  sync(): Promise<GuildTemplate>;
12
12
  edit(body: RESTPatchAPIGuildTemplateJSONBody): Promise<GuildTemplate>;
@@ -10,7 +10,7 @@ class GuildTemplate extends Base_1.Base {
10
10
  guild(force = false) {
11
11
  return this.client.guilds.fetch(this.sourceGuildId, force);
12
12
  }
13
- async fetch() {
13
+ fetch() {
14
14
  return this.client.templates.fetch(this.sourceGuildId);
15
15
  }
16
16
  sync() {
@@ -1,13 +1,11 @@
1
- import { type APIApplicationCommandAutocompleteInteraction, type APIApplicationCommandInteraction, type APIBaseInteraction, type APIChatInputApplicationCommandInteraction, type APIChatInputApplicationCommandInteractionData, type APICommandAutocompleteInteractionResponseCallbackData, type APIInteraction, type APIInteractionResponse, type APIInteractionResponseChannelMessageWithSource, type APIInteractionResponseDeferredChannelMessageWithSource, type APIInteractionResponseDeferredMessageUpdate, type APIInteractionResponsePong, type APIInteractionResponseUpdateMessage, type APIMessageApplicationCommandInteraction, type APIMessageApplicationCommandInteractionData, type APIMessageButtonInteractionData, type APIMessageComponentInteraction, type APIMessageComponentSelectMenuInteraction, type APIMessageStringSelectInteractionData, type APIModalSubmission, type APIModalSubmitInteraction, type APIUserApplicationCommandInteraction, type APIUserApplicationCommandInteractionData, ApplicationCommandType, ComponentType, type GatewayInteractionCreateDispatchData, InteractionResponseType, InteractionType, type MessageFlags, type RESTPostAPIInteractionCallbackJSONBody } from 'discord-api-types/v10';
2
- import { OptionResolver, type UsingClient } from '../commands';
3
- import type { ObjectToLower, OmitInsert, ToClass, When } from '../common';
4
- import type { ComponentInteractionMessageUpdate, InteractionCreateBodyRequest, InteractionMessageUpdateBodyRequest, MessageCreateBodyRequest, MessageUpdateBodyRequest, MessageWebhookCreateBodyRequest, ModalCreateBodyRequest } from '../common/types/write';
5
- import { InteractionGuildMember, type AllChannels } from './';
6
- import { GuildRole } from './GuildRole';
7
- import { Message, type WebhookMessage } from './Message';
8
- import { User } from './User';
1
+ import { type APIApplicationCommandAutocompleteInteraction, type APIApplicationCommandInteraction, type APIBaseInteraction, type APIChatInputApplicationCommandInteraction, type APIChatInputApplicationCommandInteractionData, type APICommandAutocompleteInteractionResponseCallbackData, type APIInteraction, type APIInteractionResponse, type APIInteractionResponseChannelMessageWithSource, type APIInteractionResponseDeferredChannelMessageWithSource, type APIInteractionResponseDeferredMessageUpdate, type APIInteractionResponsePong, type APIInteractionResponseUpdateMessage, type APIMessageApplicationCommandInteraction, type APIMessageApplicationCommandInteractionData, type APIMessageButtonInteractionData, type APIMessageComponentInteraction, type APIMessageComponentSelectMenuInteraction, type APIMessageStringSelectInteractionData, type APIModalSubmission, type APIModalSubmitInteraction, type APIUserApplicationCommandInteraction, type APIUserApplicationCommandInteractionData, ApplicationCommandType, ComponentType, type GatewayInteractionCreateDispatchData, InteractionResponseType, InteractionType, type MessageFlags, type RESTPostAPIInteractionCallbackJSONBody } from '../types';
2
+ import type { RawFile } from '../api';
3
+ import type { UsingClient } from '../commands';
4
+ import type { ObjectToLower, OmitInsert, ToClass, When, ComponentInteractionMessageUpdate, InteractionCreateBodyRequest, InteractionMessageUpdateBodyRequest, MessageCreateBodyRequest, MessageUpdateBodyRequest, MessageWebhookCreateBodyRequest, ModalCreateBodyRequest } from '../common';
5
+ import { type AllChannels } from './';
9
6
  import { DiscordBase } from './extra/DiscordBase';
10
7
  import { PermissionsBitField } from './extra/Permissions';
8
+ import { type GuildRoleStructure, type InteractionGuildMemberStructure, type MessageStructure, type UserStructure, type WebhookMessageStructure, type OptionResolverStructure } from '../client/transformers';
11
9
  export type ReplyInteractionBody = {
12
10
  type: InteractionResponseType.Modal;
13
11
  data: ModalCreateBodyRequest;
@@ -15,25 +13,40 @@ export type ReplyInteractionBody = {
15
13
  type: InteractionResponseType.ChannelMessageWithSource | InteractionResponseType.UpdateMessage;
16
14
  data: InteractionCreateBodyRequest | InteractionMessageUpdateBodyRequest | ComponentInteractionMessageUpdate;
17
15
  } | Exclude<RESTPostAPIInteractionCallbackJSONBody, APIInteractionResponsePong>;
16
+ export type __InternalReplyFunction = (_: {
17
+ body: APIInteractionResponse;
18
+ files?: RawFile[];
19
+ }) => Promise<any>;
18
20
  export interface BaseInteraction extends ObjectToLower<Omit<APIBaseInteraction<InteractionType, any>, 'user' | 'member' | 'message' | 'channel' | 'type' | 'app_permissions'>> {
19
21
  }
20
22
  export declare class BaseInteraction<FromGuild extends boolean = boolean, Type extends APIInteraction = APIInteraction> extends DiscordBase<Type> {
21
23
  readonly client: UsingClient;
22
24
  protected __reply?: __InternalReplyFunction | undefined;
23
- user: User;
24
- member: When<FromGuild, InteractionGuildMember, undefined>;
25
+ user: UserStructure;
26
+ member: When<FromGuild, InteractionGuildMemberStructure, undefined>;
25
27
  channel?: AllChannels;
26
- message?: Message;
28
+ message?: MessageStructure;
27
29
  replied?: Promise<boolean> | boolean;
28
30
  appPermissions?: PermissionsBitField;
29
31
  constructor(client: UsingClient, interaction: Type, __reply?: __InternalReplyFunction | undefined);
30
- static transformBodyRequest(body: ReplyInteractionBody, self: UsingClient): APIInteractionResponse;
31
- static transformBody<T>(body: InteractionMessageUpdateBodyRequest | MessageUpdateBodyRequest | MessageCreateBodyRequest | MessageWebhookCreateBodyRequest, self: UsingClient): T;
32
+ static transformBodyRequest(body: ReplyInteractionBody, files: RawFile[] | undefined, self: UsingClient): APIInteractionResponse;
33
+ static transformBody<T>(body: InteractionMessageUpdateBodyRequest | MessageUpdateBodyRequest | MessageCreateBodyRequest | MessageWebhookCreateBodyRequest, files: RawFile[] | undefined, self: UsingClient): T;
32
34
  private matchReplied;
33
35
  reply(body: ReplyInteractionBody): Promise<void>;
34
36
  deferReply(flags?: MessageFlags): Promise<void>;
35
- static from(client: UsingClient, gateway: GatewayInteractionCreateDispatchData, __reply?: __InternalReplyFunction): RoleSelectMenuInteraction | UserSelectMenuInteraction | MentionableSelectMenuInteraction | ChannelSelectMenuInteraction | StringSelectMenuInteraction<string[]> | AutocompleteInteraction<boolean> | ChatInputCommandInteraction<boolean> | UserCommandInteraction<boolean> | MessageCommandInteraction<boolean> | ButtonInteraction | ModalSubmitInteraction<boolean> | BaseInteraction<boolean, import("discord-api-types/v10").APIPingInteraction>;
36
- fetchGuild(force?: boolean): Promise<import("./Guild").Guild<"cached"> | import("./Guild").Guild<"api">> | undefined;
37
+ isButton(): this is ButtonInteraction;
38
+ isChannelSelectMenu(): this is ChannelSelectMenuInteraction;
39
+ isRoleSelectMenu(): this is RoleSelectMenuInteraction;
40
+ isMentionableSelectMenu(): this is MentionableSelectMenuInteraction;
41
+ isUserSelectMenu(): this is UserSelectMenuInteraction;
42
+ isStringSelectMenu(): this is StringSelectMenuInteraction;
43
+ isChatInput(): this is ChatInputCommandInteraction;
44
+ isUser(): this is UserCommandInteraction;
45
+ isMessage(): this is MessageCommandInteraction;
46
+ isAutocomplete(): this is AutocompleteInteraction;
47
+ isModal(): this is ModalSubmitInteraction;
48
+ static from(client: UsingClient, gateway: GatewayInteractionCreateDispatchData, __reply?: __InternalReplyFunction): RoleSelectMenuInteraction | UserSelectMenuInteraction | MentionableSelectMenuInteraction | ChannelSelectMenuInteraction | StringSelectMenuInteraction<string[]> | AutocompleteInteraction<boolean> | ChatInputCommandInteraction<boolean> | UserCommandInteraction<boolean> | MessageCommandInteraction<boolean> | ButtonInteraction | ModalSubmitInteraction<boolean> | BaseInteraction<boolean, import("../types").APIPingInteraction>;
49
+ fetchGuild(force?: boolean): Promise<import("./Guild").Guild<"api">> | undefined;
37
50
  }
38
51
  export type AllInteractions = AutocompleteInteraction | ChatInputCommandInteraction | UserCommandInteraction | MessageCommandInteraction | ComponentInteraction | SelectMenuInteraction | ModalSubmitInteraction | BaseInteraction;
39
52
  export interface AutocompleteInteraction extends ObjectToLower<Omit<APIApplicationCommandAutocompleteInteraction, 'user' | 'member' | 'type' | 'data' | 'message' | 'channel' | 'app_permissions'>> {
@@ -42,24 +55,25 @@ export declare class AutocompleteInteraction<FromGuild extends boolean = boolean
42
55
  protected __reply?: __InternalReplyFunction | undefined;
43
56
  type: InteractionType.ApplicationCommandAutocomplete;
44
57
  data: ObjectToLower<APIApplicationCommandAutocompleteInteraction['data']>;
45
- options: OptionResolver;
46
- constructor(client: UsingClient, interaction: APIApplicationCommandAutocompleteInteraction, resolver?: OptionResolver, __reply?: __InternalReplyFunction | undefined);
58
+ options: OptionResolverStructure;
59
+ constructor(client: UsingClient, interaction: APIApplicationCommandAutocompleteInteraction, resolver?: OptionResolverStructure, __reply?: __InternalReplyFunction | undefined);
47
60
  getInput(): string;
48
61
  respond(choices: APICommandAutocompleteInteractionResponseCallbackData['choices']): Promise<void>;
62
+ isAutocomplete(): this is AutocompleteInteraction;
49
63
  /** @intenal */
50
64
  reply(..._args: unknown[]): Promise<void>;
51
65
  }
52
66
  export declare class Interaction<FromGuild extends boolean = boolean, Type extends APIInteraction = APIInteraction> extends BaseInteraction<FromGuild, Type> {
53
- fetchMessage(messageId: string): Promise<WebhookMessage | undefined>;
54
- fetchResponse(): Promise<WebhookMessage | undefined>;
55
- write<FR extends boolean = false>(body: InteractionCreateBodyRequest, fetchReply?: FR): Promise<When<FR, WebhookMessage, void>>;
67
+ fetchMessage(messageId: string): Promise<import("./Message").WebhookMessage | undefined>;
68
+ fetchResponse(): Promise<import("./Message").WebhookMessage | undefined>;
69
+ write<FR extends boolean = false>(body: InteractionCreateBodyRequest, fetchReply?: FR): Promise<When<FR, WebhookMessageStructure, void>>;
56
70
  modal(body: ModalCreateBodyRequest): Promise<void>;
57
- editOrReply<FR extends boolean = false>(body: InteractionCreateBodyRequest, fetchReply?: FR): Promise<When<FR, WebhookMessage, void>>;
58
- editMessage(messageId: string, body: InteractionMessageUpdateBodyRequest): Promise<WebhookMessage>;
59
- editResponse(body: InteractionMessageUpdateBodyRequest): Promise<WebhookMessage>;
71
+ editOrReply<FR extends boolean = false>(body: InteractionCreateBodyRequest, fetchReply?: FR): Promise<When<FR, WebhookMessageStructure, void>>;
72
+ editMessage(messageId: string, body: InteractionMessageUpdateBodyRequest): Promise<import("./Message").WebhookMessage>;
73
+ editResponse(body: InteractionMessageUpdateBodyRequest): Promise<import("./Message").WebhookMessage>;
60
74
  deleteResponse(): Promise<void | undefined>;
61
75
  deleteMessage(messageId: string): Promise<void | undefined>;
62
- followup(body: MessageWebhookCreateBodyRequest): Promise<WebhookMessage>;
76
+ followup(body: MessageWebhookCreateBodyRequest): Promise<import("./Message").WebhookMessage>;
63
77
  }
64
78
  export declare class ApplicationCommandInteraction<FromGuild extends boolean = boolean, Type extends APIApplicationCommandInteraction = APIApplicationCommandInteraction> extends Interaction<FromGuild, Type> {
65
79
  type: ApplicationCommandType;
@@ -72,20 +86,15 @@ export declare class ComponentInteraction<FromGuild extends boolean = boolean, T
72
86
  channelId: string;
73
87
  channel: AllChannels;
74
88
  type: InteractionType.MessageComponent;
75
- message: Message;
89
+ message: MessageStructure;
76
90
  update(data: ComponentInteractionMessageUpdate): Promise<void>;
77
91
  deferUpdate(): Promise<void>;
78
92
  get customId(): string;
79
93
  get componentType(): ComponentType.Button | ComponentType.StringSelect | ComponentType.UserSelect | ComponentType.RoleSelect | ComponentType.MentionableSelect | ComponentType.ChannelSelect;
80
- isButton(): this is ButtonInteraction;
81
- isChannelSelectMenu(): this is ChannelSelectMenuInteraction;
82
- isRoleSelectMenu(): this is RoleSelectMenuInteraction;
83
- isMentionableSelectMenu(): this is MentionableSelectMenuInteraction;
84
- isUserSelectMenu(): this is UserSelectMenuInteraction;
85
- isStringSelectMenu(): this is StringSelectMenuInteraction;
86
94
  }
87
95
  export declare class ButtonInteraction extends ComponentInteraction {
88
96
  data: ObjectToLower<APIMessageButtonInteractionData>;
97
+ isButton(): this is ButtonInteraction;
89
98
  }
90
99
  export declare class SelectMenuInteraction extends ComponentInteraction {
91
100
  protected __reply?: __InternalReplyFunction | undefined;
@@ -93,46 +102,54 @@ export declare class SelectMenuInteraction extends ComponentInteraction {
93
102
  constructor(client: UsingClient, interaction: APIMessageComponentSelectMenuInteraction, __reply?: __InternalReplyFunction | undefined);
94
103
  get values(): string[];
95
104
  }
96
- declare const StringSelectMenuInteraction_base: ToClass<Omit<SelectMenuInteraction, "data">, StringSelectMenuInteraction<string[]>>;
105
+ declare const StringSelectMenuInteraction_base: ToClass<Omit<SelectMenuInteraction, "data" | "isStringSelectMenu">, StringSelectMenuInteraction<string[]>>;
97
106
  export declare class StringSelectMenuInteraction<T extends any[] = string[]> extends StringSelectMenuInteraction_base {
98
107
  data: OmitInsert<ObjectToLower<APIMessageStringSelectInteractionData>, 'values', {
99
108
  values: T;
100
109
  }>;
101
110
  values: T;
111
+ isStringSelectMenu(): this is StringSelectMenuInteraction;
102
112
  }
103
113
  export declare class ChannelSelectMenuInteraction extends SelectMenuInteraction {
104
114
  protected __reply?: __InternalReplyFunction | undefined;
105
115
  channels: AllChannels[];
106
116
  constructor(client: UsingClient, interaction: APIMessageComponentSelectMenuInteraction, __reply?: __InternalReplyFunction | undefined);
117
+ isChannelSelectMenu(): this is ChannelSelectMenuInteraction;
107
118
  }
108
119
  export declare class MentionableSelectMenuInteraction extends SelectMenuInteraction {
109
120
  protected __reply?: __InternalReplyFunction | undefined;
110
- roles: GuildRole[];
111
- members: InteractionGuildMember[];
112
- users: User[];
121
+ roles: GuildRoleStructure[];
122
+ members: InteractionGuildMemberStructure[];
123
+ users: UserStructure[];
113
124
  constructor(client: UsingClient, interaction: APIMessageComponentSelectMenuInteraction, __reply?: __InternalReplyFunction | undefined);
125
+ isMentionableSelectMenu(): this is MentionableSelectMenuInteraction;
114
126
  }
115
127
  export declare class RoleSelectMenuInteraction extends SelectMenuInteraction {
116
128
  protected __reply?: __InternalReplyFunction | undefined;
117
- roles: GuildRole[];
129
+ roles: GuildRoleStructure[];
118
130
  constructor(client: UsingClient, interaction: APIMessageComponentSelectMenuInteraction, __reply?: __InternalReplyFunction | undefined);
131
+ isRoleSelectMenu(): this is RoleSelectMenuInteraction;
119
132
  }
120
133
  export declare class UserSelectMenuInteraction extends SelectMenuInteraction {
121
134
  protected __reply?: __InternalReplyFunction | undefined;
122
- members: InteractionGuildMember[];
123
- users: User[];
135
+ members: InteractionGuildMemberStructure[];
136
+ users: UserStructure[];
124
137
  constructor(client: UsingClient, interaction: APIMessageComponentSelectMenuInteraction, __reply?: __InternalReplyFunction | undefined);
138
+ isUserSelectMenu(): this is UserSelectMenuInteraction;
125
139
  }
126
140
  export declare class ChatInputCommandInteraction<FromGuild extends boolean = boolean> extends ApplicationCommandInteraction<FromGuild, APIChatInputApplicationCommandInteraction> {
127
141
  data: ObjectToLower<APIChatInputApplicationCommandInteractionData>;
142
+ isChatInput(): this is ChatInputCommandInteraction;
128
143
  }
129
144
  export declare class UserCommandInteraction<FromGuild extends boolean = boolean> extends ApplicationCommandInteraction<FromGuild, APIUserApplicationCommandInteraction> {
130
145
  type: ApplicationCommandType.User;
131
146
  data: ObjectToLower<APIUserApplicationCommandInteractionData>;
147
+ isUser(): this is UserCommandInteraction;
132
148
  }
133
149
  export declare class MessageCommandInteraction<FromGuild extends boolean = boolean> extends ApplicationCommandInteraction<FromGuild, APIMessageApplicationCommandInteraction> {
134
150
  type: ApplicationCommandType.Message;
135
151
  data: ObjectToLower<APIMessageApplicationCommandInteractionData>;
152
+ isMessage(): this is MessageCommandInteraction;
136
153
  }
137
154
  export interface ModalSubmitInteraction<FromGuild extends boolean = boolean> extends Omit<Interaction<FromGuild, APIModalSubmitInteraction>, 'modal'> {
138
155
  }
@@ -149,5 +166,6 @@ export declare class ModalSubmitInteraction<FromGuild extends boolean = boolean>
149
166
  }[];
150
167
  getInputValue(customId: string, required: true): string;
151
168
  getInputValue(customId: string, required?: false): string | undefined;
169
+ isModal(): this is ModalSubmitInteraction;
152
170
  }
153
171
  export {};