seyfert 1.5.0 → 2.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (439) hide show
  1. package/LICENSE +21 -190
  2. package/README.md +18 -10
  3. package/lib/api/Router.js +2 -2
  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 +5 -2
  8. package/lib/api/Routes/interactions.d.ts +8 -2
  9. package/lib/api/Routes/invites.d.ts +1 -1
  10. package/lib/api/Routes/skus.d.ts +11 -0
  11. package/lib/api/Routes/skus.js +2 -0
  12. package/lib/api/Routes/stage-instances.d.ts +1 -1
  13. package/lib/api/Routes/stickers.d.ts +2 -2
  14. package/lib/api/Routes/users.d.ts +1 -1
  15. package/lib/api/Routes/voice.d.ts +1 -1
  16. package/lib/api/Routes/webhooks.d.ts +2 -2
  17. package/lib/api/api.d.ts +3 -3
  18. package/lib/api/api.js +15 -25
  19. package/lib/api/bucket.d.ts +0 -1
  20. package/lib/api/shared.d.ts +1 -2
  21. package/lib/api/utils/constants.d.ts +2 -5
  22. package/lib/api/utils/constants.js +3 -7
  23. package/lib/api/utils/utils.d.ts +1 -2
  24. package/lib/api/utils/utils.js +2 -3
  25. package/lib/builders/ActionRow.d.ts +1 -1
  26. package/lib/builders/ActionRow.js +3 -3
  27. package/lib/builders/Attachment.d.ts +3 -4
  28. package/lib/builders/Attachment.js +24 -25
  29. package/lib/builders/Base.d.ts +2 -2
  30. package/lib/builders/Base.js +1 -1
  31. package/lib/builders/Button.d.ts +7 -7
  32. package/lib/builders/Button.js +11 -9
  33. package/lib/builders/Embed.d.ts +1 -1
  34. package/lib/builders/Modal.d.ts +1 -1
  35. package/lib/builders/Modal.js +2 -2
  36. package/lib/builders/Poll.d.ts +2 -2
  37. package/lib/builders/Poll.js +5 -6
  38. package/lib/builders/SelectMenu.d.ts +1 -1
  39. package/lib/builders/SelectMenu.js +17 -18
  40. package/lib/builders/index.d.ts +1 -1
  41. package/lib/builders/index.js +10 -11
  42. package/lib/cache/adapters/default.d.ts +16 -9
  43. package/lib/cache/adapters/default.js +42 -31
  44. package/lib/cache/adapters/index.d.ts +0 -1
  45. package/lib/cache/adapters/index.js +0 -1
  46. package/lib/cache/adapters/limited.d.ts +17 -12
  47. package/lib/cache/adapters/limited.js +80 -36
  48. package/lib/cache/adapters/types.d.ts +6 -7
  49. package/lib/cache/adapters/workeradapter.d.ts +6 -6
  50. package/lib/cache/adapters/workeradapter.js +13 -0
  51. package/lib/cache/index.d.ts +20 -8
  52. package/lib/cache/index.js +328 -22
  53. package/lib/cache/resources/bans.d.ts +9 -6
  54. package/lib/cache/resources/bans.js +13 -4
  55. package/lib/cache/resources/channels.d.ts +6 -4
  56. package/lib/cache/resources/channels.js +13 -7
  57. package/lib/cache/resources/default/base.d.ts +7 -7
  58. package/lib/cache/resources/default/base.js +2 -2
  59. package/lib/cache/resources/default/guild-based.d.ts +6 -6
  60. package/lib/cache/resources/default/guild-based.js +6 -6
  61. package/lib/cache/resources/default/guild-related.d.ts +7 -7
  62. package/lib/cache/resources/default/guild-related.js +10 -8
  63. package/lib/cache/resources/emojis.d.ts +15 -6
  64. package/lib/cache/resources/emojis.js +13 -4
  65. package/lib/cache/resources/guilds.d.ts +9 -6
  66. package/lib/cache/resources/guilds.js +27 -6
  67. package/lib/cache/resources/members.d.ts +9 -6
  68. package/lib/cache/resources/members.js +22 -6
  69. package/lib/cache/resources/messages.d.ts +11 -7
  70. package/lib/cache/resources/messages.js +19 -7
  71. package/lib/cache/resources/overwrites.d.ts +11 -2
  72. package/lib/cache/resources/overwrites.js +9 -0
  73. package/lib/cache/resources/presence.d.ts +3 -2
  74. package/lib/cache/resources/roles.d.ts +9 -6
  75. package/lib/cache/resources/roles.js +13 -4
  76. package/lib/cache/resources/stage-instances.d.ts +2 -2
  77. package/lib/cache/resources/stickers.d.ts +9 -6
  78. package/lib/cache/resources/stickers.js +13 -4
  79. package/lib/cache/resources/threads.d.ts +9 -6
  80. package/lib/cache/resources/threads.js +13 -4
  81. package/lib/cache/resources/users.d.ts +9 -6
  82. package/lib/cache/resources/users.js +13 -4
  83. package/lib/cache/resources/voice-states.d.ts +11 -8
  84. package/lib/cache/resources/voice-states.js +15 -4
  85. package/lib/client/base.d.ts +29 -21
  86. package/lib/client/base.js +64 -57
  87. package/lib/client/client.d.ts +11 -16
  88. package/lib/client/client.js +51 -37
  89. package/lib/client/collectors.d.ts +10 -10
  90. package/lib/client/collectors.js +26 -1
  91. package/lib/client/httpclient.d.ts +8 -13
  92. package/lib/client/httpclient.js +27 -218
  93. package/lib/client/index.d.ts +1 -0
  94. package/lib/client/index.js +1 -0
  95. package/lib/client/transformers.d.ts +68 -0
  96. package/lib/client/transformers.js +99 -0
  97. package/lib/client/types.d.ts +5 -0
  98. package/lib/client/types.js +2 -0
  99. package/lib/client/workerclient.d.ts +16 -15
  100. package/lib/client/workerclient.js +130 -72
  101. package/lib/commands/applications/chat.d.ts +35 -34
  102. package/lib/commands/applications/chat.js +5 -9
  103. package/lib/commands/applications/chatcontext.d.ts +17 -17
  104. package/lib/commands/applications/chatcontext.js +5 -5
  105. package/lib/commands/applications/entryPoint.d.ts +46 -0
  106. package/lib/commands/applications/entryPoint.js +56 -0
  107. package/lib/commands/applications/entrycontext.d.ts +40 -0
  108. package/lib/commands/applications/entrycontext.js +85 -0
  109. package/lib/commands/applications/menu.d.ts +2 -3
  110. package/lib/commands/applications/menu.js +2 -5
  111. package/lib/commands/applications/menucontext.d.ts +14 -13
  112. package/lib/commands/applications/menucontext.js +9 -9
  113. package/lib/commands/applications/options.d.ts +4 -3
  114. package/lib/commands/applications/options.js +20 -21
  115. package/lib/commands/applications/shared.d.ts +3 -1
  116. package/lib/commands/decorators.d.ts +47 -35
  117. package/lib/commands/decorators.js +20 -18
  118. package/lib/commands/handle.d.ts +65 -0
  119. package/lib/commands/handle.js +727 -0
  120. package/lib/commands/handler.d.ts +29 -18
  121. package/lib/commands/handler.js +295 -164
  122. package/lib/commands/index.d.ts +2 -0
  123. package/lib/commands/index.js +2 -0
  124. package/lib/commands/optionresolver.d.ts +13 -13
  125. package/lib/commands/optionresolver.js +24 -29
  126. package/lib/common/bot/watcher.d.ts +4 -33
  127. package/lib/common/bot/watcher.js +0 -109
  128. package/lib/common/index.d.ts +1 -0
  129. package/lib/common/index.js +1 -0
  130. package/lib/common/it/colors.js +48 -49
  131. package/lib/common/it/formatter.d.ts +32 -0
  132. package/lib/common/it/formatter.js +42 -0
  133. package/lib/common/it/logger.d.ts +0 -1
  134. package/lib/common/it/logger.js +3 -3
  135. package/lib/common/it/utils.d.ts +24 -4
  136. package/lib/common/it/utils.js +88 -17
  137. package/lib/common/shorters/application.d.ts +56 -0
  138. package/lib/common/shorters/application.js +81 -0
  139. package/lib/common/shorters/bans.d.ts +4 -5
  140. package/lib/common/shorters/bans.js +3 -3
  141. package/lib/common/shorters/channels.d.ts +7 -6
  142. package/lib/common/shorters/channels.js +19 -15
  143. package/lib/common/shorters/emojis.d.ts +5 -6
  144. package/lib/common/shorters/emojis.js +5 -5
  145. package/lib/common/shorters/guilds.d.ts +18 -16
  146. package/lib/common/shorters/guilds.js +31 -26
  147. package/lib/common/shorters/interaction.d.ts +7 -7
  148. package/lib/common/shorters/interaction.js +3 -2
  149. package/lib/common/shorters/members.d.ts +29 -12
  150. package/lib/common/shorters/members.js +55 -16
  151. package/lib/common/shorters/messages.d.ts +7 -8
  152. package/lib/common/shorters/messages.js +8 -7
  153. package/lib/common/shorters/reactions.d.ts +3 -3
  154. package/lib/common/shorters/reactions.js +11 -11
  155. package/lib/common/shorters/roles.d.ts +9 -7
  156. package/lib/common/shorters/roles.js +26 -7
  157. package/lib/common/shorters/templates.d.ts +7 -8
  158. package/lib/common/shorters/templates.js +7 -7
  159. package/lib/common/shorters/threads.d.ts +6 -7
  160. package/lib/common/shorters/threads.js +6 -9
  161. package/lib/common/shorters/users.d.ts +4 -4
  162. package/lib/common/shorters/users.js +8 -4
  163. package/lib/common/shorters/webhook.d.ts +10 -10
  164. package/lib/common/shorters/webhook.js +10 -9
  165. package/lib/common/types/resolvables.d.ts +2 -2
  166. package/lib/common/types/util.d.ts +4 -2
  167. package/lib/common/types/write.d.ts +3 -3
  168. package/lib/components/ActionRow.d.ts +1 -1
  169. package/lib/components/BaseComponent.d.ts +1 -1
  170. package/lib/components/BaseComponent.js +1 -1
  171. package/lib/components/BaseSelectMenuComponent.d.ts +1 -1
  172. package/lib/components/ButtonComponent.d.ts +17 -7
  173. package/lib/components/ButtonComponent.js +19 -2
  174. package/lib/components/ChannelSelectMenuComponent.d.ts +3 -3
  175. package/lib/components/MentionableSelectMenuComponent.d.ts +2 -2
  176. package/lib/components/RoleSelectMenuComponent.d.ts +2 -2
  177. package/lib/components/StringSelectMenuComponent.d.ts +2 -2
  178. package/lib/components/TextInputComponent.d.ts +2 -2
  179. package/lib/components/UserSelectMenuComponent.d.ts +2 -2
  180. package/lib/components/componentcommand.js +2 -2
  181. package/lib/components/componentcontext.d.ts +10 -9
  182. package/lib/components/componentcontext.js +8 -8
  183. package/lib/components/handler.d.ts +15 -14
  184. package/lib/components/handler.js +89 -93
  185. package/lib/components/index.d.ts +3 -3
  186. package/lib/components/index.js +12 -10
  187. package/lib/components/modalcontext.d.ts +12 -11
  188. package/lib/components/modalcontext.js +2 -2
  189. package/lib/deps/mixer.d.ts +8 -0
  190. package/lib/deps/mixer.js +71 -0
  191. package/lib/events/handler.d.ts +35 -13
  192. package/lib/events/handler.js +57 -24
  193. package/lib/events/hooks/application_command.d.ts +2 -2
  194. package/lib/events/hooks/auto_moderation.d.ts +6 -7
  195. package/lib/events/hooks/auto_moderation.js +4 -4
  196. package/lib/events/hooks/channel.d.ts +2 -2
  197. package/lib/events/hooks/channel.js +4 -7
  198. package/lib/events/hooks/custom.d.ts +4 -3
  199. package/lib/events/hooks/custom.js +5 -1
  200. package/lib/events/hooks/dispatch.d.ts +3 -4
  201. package/lib/events/hooks/dispatch.js +2 -2
  202. package/lib/events/hooks/entitlement.d.ts +5 -37
  203. package/lib/events/hooks/entitlement.js +7 -7
  204. package/lib/events/hooks/guild.d.ts +125 -125
  205. package/lib/events/hooks/guild.js +13 -15
  206. package/lib/events/hooks/integration.d.ts +27 -28
  207. package/lib/events/hooks/integration.js +3 -3
  208. package/lib/events/hooks/interactions.d.ts +2 -2
  209. package/lib/events/hooks/invite.d.ts +18 -17
  210. package/lib/events/hooks/message.d.ts +69 -54
  211. package/lib/events/hooks/message.js +4 -8
  212. package/lib/events/hooks/presence.d.ts +17 -16
  213. package/lib/events/hooks/stage.d.ts +4 -4
  214. package/lib/events/hooks/subscriptions.d.ts +35 -0
  215. package/lib/events/hooks/subscriptions.js +16 -0
  216. package/lib/events/hooks/thread.d.ts +132 -63
  217. package/lib/events/hooks/thread.js +4 -4
  218. package/lib/events/hooks/typing.d.ts +28 -6
  219. package/lib/events/hooks/typing.js +2 -2
  220. package/lib/events/hooks/user.d.ts +3 -3
  221. package/lib/events/hooks/user.js +2 -2
  222. package/lib/events/hooks/voice.d.ts +28 -3
  223. package/lib/events/hooks/voice.js +8 -4
  224. package/lib/events/hooks/webhook.d.ts +1 -1
  225. package/lib/index.d.ts +5 -14
  226. package/lib/index.js +7 -12
  227. package/lib/langs/handler.d.ts +14 -10
  228. package/lib/langs/handler.js +40 -9
  229. package/lib/structures/AutoModerationRule.d.ts +4 -4
  230. package/lib/structures/AutoModerationRule.js +1 -2
  231. package/lib/structures/ClientUser.d.ts +1 -1
  232. package/lib/structures/Entitlement.d.ts +10 -0
  233. package/lib/structures/Entitlement.js +16 -0
  234. package/lib/structures/Guild.d.ts +33 -34
  235. package/lib/structures/Guild.js +5 -2
  236. package/lib/structures/GuildBan.d.ts +6 -6
  237. package/lib/structures/GuildBan.js +2 -1
  238. package/lib/structures/GuildEmoji.d.ts +4 -4
  239. package/lib/structures/GuildEmoji.js +3 -2
  240. package/lib/structures/GuildMember.d.ts +20 -17
  241. package/lib/structures/GuildMember.js +18 -8
  242. package/lib/structures/GuildPreview.d.ts +1 -1
  243. package/lib/structures/GuildRole.d.ts +5 -3
  244. package/lib/structures/GuildRole.js +8 -1
  245. package/lib/structures/GuildTemplate.d.ts +2 -2
  246. package/lib/structures/GuildTemplate.js +1 -1
  247. package/lib/structures/Interaction.d.ts +76 -39
  248. package/lib/structures/Interaction.js +179 -94
  249. package/lib/structures/Message.d.ts +29 -33
  250. package/lib/structures/Message.js +8 -12
  251. package/lib/structures/Poll.d.ts +4 -3
  252. package/lib/structures/Poll.js +6 -2
  253. package/lib/structures/Sticker.d.ts +7 -7
  254. package/lib/structures/Sticker.js +7 -7
  255. package/lib/structures/User.d.ts +5 -4
  256. package/lib/structures/User.js +2 -1
  257. package/lib/structures/VoiceState.d.ts +15 -11
  258. package/lib/structures/VoiceState.js +35 -17
  259. package/lib/structures/Webhook.d.ts +6 -7
  260. package/lib/structures/Webhook.js +6 -7
  261. package/lib/structures/channels.d.ts +11 -10
  262. package/lib/structures/channels.js +70 -65
  263. package/lib/structures/extra/BaseGuild.d.ts +12 -2
  264. package/lib/structures/extra/BaseGuild.js +30 -3
  265. package/lib/structures/extra/BitField.d.ts +1 -1
  266. package/lib/structures/extra/BitField.js +3 -2
  267. package/lib/structures/extra/DiscordBase.js +2 -2
  268. package/lib/structures/extra/Permissions.d.ts +3 -1
  269. package/lib/structures/extra/Permissions.js +8 -3
  270. package/lib/types/gateway.d.ts +1554 -0
  271. package/lib/types/gateway.js +4 -0
  272. package/lib/types/index.d.ts +9 -1
  273. package/lib/types/index.js +28 -1
  274. package/lib/types/payloads/_interactions/_applicationCommands/_chatInput/attachment.d.ts +5 -0
  275. package/lib/types/payloads/_interactions/_applicationCommands/_chatInput/attachment.js +2 -0
  276. package/lib/types/payloads/_interactions/_applicationCommands/_chatInput/base.d.ts +22 -0
  277. package/lib/types/payloads/_interactions/_applicationCommands/_chatInput/base.js +2 -0
  278. package/lib/types/payloads/_interactions/_applicationCommands/_chatInput/boolean.d.ts +4 -0
  279. package/lib/types/payloads/_interactions/_applicationCommands/_chatInput/boolean.js +2 -0
  280. package/lib/types/payloads/_interactions/_applicationCommands/_chatInput/channel.d.ts +7 -0
  281. package/lib/types/payloads/_interactions/_applicationCommands/_chatInput/channel.js +2 -0
  282. package/lib/types/payloads/_interactions/_applicationCommands/_chatInput/integer.d.ts +17 -0
  283. package/lib/types/payloads/_interactions/_applicationCommands/_chatInput/integer.js +2 -0
  284. package/lib/types/payloads/_interactions/_applicationCommands/_chatInput/mentionable.d.ts +5 -0
  285. package/lib/types/payloads/_interactions/_applicationCommands/_chatInput/mentionable.js +2 -0
  286. package/lib/types/payloads/_interactions/_applicationCommands/_chatInput/number.d.ts +17 -0
  287. package/lib/types/payloads/_interactions/_applicationCommands/_chatInput/number.js +2 -0
  288. package/lib/types/payloads/_interactions/_applicationCommands/_chatInput/role.d.ts +5 -0
  289. package/lib/types/payloads/_interactions/_applicationCommands/_chatInput/role.js +2 -0
  290. package/lib/types/payloads/_interactions/_applicationCommands/_chatInput/shared.d.ts +25 -0
  291. package/lib/types/payloads/_interactions/_applicationCommands/_chatInput/shared.js +20 -0
  292. package/lib/types/payloads/_interactions/_applicationCommands/_chatInput/string.d.ts +17 -0
  293. package/lib/types/payloads/_interactions/_applicationCommands/_chatInput/string.js +2 -0
  294. package/lib/types/payloads/_interactions/_applicationCommands/_chatInput/subcommand.d.ts +11 -0
  295. package/lib/types/payloads/_interactions/_applicationCommands/_chatInput/subcommand.js +2 -0
  296. package/lib/types/payloads/_interactions/_applicationCommands/_chatInput/subcommandGroup.d.ts +11 -0
  297. package/lib/types/payloads/_interactions/_applicationCommands/_chatInput/subcommandGroup.js +2 -0
  298. package/lib/types/payloads/_interactions/_applicationCommands/_chatInput/user.d.ts +5 -0
  299. package/lib/types/payloads/_interactions/_applicationCommands/_chatInput/user.js +2 -0
  300. package/lib/types/payloads/_interactions/_applicationCommands/chatInput.d.ts +65 -0
  301. package/lib/types/payloads/_interactions/_applicationCommands/chatInput.js +29 -0
  302. package/lib/types/payloads/_interactions/_applicationCommands/contextMenu.d.ts +65 -0
  303. package/lib/types/payloads/_interactions/_applicationCommands/contextMenu.js +2 -0
  304. package/lib/types/payloads/_interactions/_applicationCommands/internals.d.ts +8 -0
  305. package/lib/types/payloads/_interactions/_applicationCommands/internals.js +2 -0
  306. package/lib/types/payloads/_interactions/_applicationCommands/permissions.d.ts +54 -0
  307. package/lib/types/payloads/_interactions/_applicationCommands/permissions.js +20 -0
  308. package/lib/types/payloads/_interactions/applicationCommands.d.ts +188 -0
  309. package/lib/types/payloads/_interactions/applicationCommands.js +88 -0
  310. package/lib/types/payloads/_interactions/autocomplete.d.ts +10 -0
  311. package/lib/types/payloads/_interactions/autocomplete.js +2 -0
  312. package/lib/types/payloads/_interactions/base.d.ts +197 -0
  313. package/lib/types/payloads/_interactions/base.js +2 -0
  314. package/lib/types/payloads/_interactions/messageComponents.d.ts +41 -0
  315. package/lib/types/payloads/_interactions/messageComponents.js +2 -0
  316. package/lib/types/payloads/_interactions/modalSubmit.d.ts +35 -0
  317. package/lib/types/payloads/_interactions/modalSubmit.js +2 -0
  318. package/lib/types/payloads/_interactions/ping.d.ts +3 -0
  319. package/lib/types/payloads/_interactions/ping.js +2 -0
  320. package/lib/types/payloads/_interactions/responses.d.ts +184 -0
  321. package/lib/types/payloads/_interactions/responses.js +58 -0
  322. package/lib/types/payloads/application.d.ts +292 -0
  323. package/lib/types/payloads/application.js +117 -0
  324. package/lib/types/payloads/auditLog.d.ts +644 -0
  325. package/lib/types/payloads/auditLog.js +80 -0
  326. package/lib/types/payloads/autoModeration.d.ts +219 -0
  327. package/lib/types/payloads/autoModeration.js +87 -0
  328. package/lib/types/payloads/channel.d.ts +1748 -0
  329. package/lib/types/payloads/channel.js +376 -0
  330. package/lib/types/payloads/emoji.d.ts +48 -0
  331. package/lib/types/payloads/emoji.js +5 -0
  332. package/lib/types/payloads/gateway.d.ts +373 -0
  333. package/lib/types/payloads/gateway.js +82 -0
  334. package/lib/types/payloads/guild.d.ts +1060 -0
  335. package/lib/types/payloads/guild.js +324 -0
  336. package/lib/types/payloads/guildScheduledEvent.d.ts +138 -0
  337. package/lib/types/payloads/guildScheduledEvent.js +32 -0
  338. package/lib/types/payloads/index.d.ts +64 -0
  339. package/lib/types/payloads/index.js +37 -0
  340. package/lib/types/payloads/interactions.d.ts +24 -0
  341. package/lib/types/payloads/interactions.js +23 -0
  342. package/lib/types/payloads/invite.d.ts +121 -0
  343. package/lib/types/payloads/invite.js +23 -0
  344. package/lib/types/payloads/monetization.d.ts +178 -0
  345. package/lib/types/payloads/monetization.js +88 -0
  346. package/lib/types/payloads/oauth2.d.ts +131 -0
  347. package/lib/types/payloads/oauth2.js +135 -0
  348. package/lib/types/payloads/permissions.d.ts +97 -0
  349. package/lib/types/payloads/permissions.js +16 -0
  350. package/lib/types/payloads/poll.d.ts +104 -0
  351. package/lib/types/payloads/poll.js +16 -0
  352. package/lib/types/payloads/stageInstance.d.ts +77 -0
  353. package/lib/types/payloads/stageInstance.js +19 -0
  354. package/lib/types/payloads/sticker.d.ts +123 -0
  355. package/lib/types/payloads/sticker.js +30 -0
  356. package/lib/types/payloads/teams.d.ts +78 -0
  357. package/lib/types/payloads/teams.js +23 -0
  358. package/lib/types/payloads/template.d.ts +62 -0
  359. package/lib/types/payloads/template.js +5 -0
  360. package/lib/types/payloads/user.d.ts +337 -0
  361. package/lib/types/payloads/user.js +167 -0
  362. package/lib/types/payloads/voice.d.ts +89 -0
  363. package/lib/types/payloads/voice.js +5 -0
  364. package/lib/types/payloads/webhook.d.ts +76 -0
  365. package/lib/types/payloads/webhook.js +21 -0
  366. package/lib/types/rest/application.d.ts +57 -0
  367. package/lib/types/rest/application.js +2 -0
  368. package/lib/types/rest/auditLog.d.ts +30 -0
  369. package/lib/types/rest/auditLog.js +2 -0
  370. package/lib/types/rest/autoModeration.d.ts +66 -0
  371. package/lib/types/rest/autoModeration.js +2 -0
  372. package/lib/types/rest/channel.d.ts +699 -0
  373. package/lib/types/rest/channel.js +11 -0
  374. package/lib/types/rest/emoji.d.ts +54 -0
  375. package/lib/types/rest/emoji.js +2 -0
  376. package/lib/types/rest/gateway.d.ts +9 -0
  377. package/lib/types/rest/gateway.js +2 -0
  378. package/lib/types/rest/guild.d.ts +865 -0
  379. package/lib/types/rest/guild.js +2 -0
  380. package/lib/types/rest/guildScheduledEvent.d.ts +126 -0
  381. package/lib/types/rest/guildScheduledEvent.js +2 -0
  382. package/lib/types/rest/index.d.ts +296 -0
  383. package/lib/types/rest/index.js +292 -0
  384. package/lib/types/rest/interactions.d.ts +216 -0
  385. package/lib/types/rest/interactions.js +2 -0
  386. package/lib/types/rest/invite.d.ts +24 -0
  387. package/lib/types/rest/invite.js +2 -0
  388. package/lib/types/rest/monetization.d.ts +103 -0
  389. package/lib/types/rest/monetization.js +11 -0
  390. package/lib/types/rest/oauth2.d.ts +172 -0
  391. package/lib/types/rest/oauth2.js +2 -0
  392. package/lib/types/rest/poll.d.ts +44 -0
  393. package/lib/types/rest/poll.js +2 -0
  394. package/lib/types/rest/stageInstance.d.ts +58 -0
  395. package/lib/types/rest/stageInstance.js +2 -0
  396. package/lib/types/rest/sticker.d.ts +77 -0
  397. package/lib/types/rest/sticker.js +2 -0
  398. package/lib/types/rest/template.d.ts +62 -0
  399. package/lib/types/rest/template.js +2 -0
  400. package/lib/types/rest/user.d.ts +120 -0
  401. package/lib/types/rest/user.js +2 -0
  402. package/lib/types/rest/voice.d.ts +17 -0
  403. package/lib/types/rest/voice.js +2 -0
  404. package/lib/types/rest/webhook.d.ts +250 -0
  405. package/lib/types/rest/webhook.js +2 -0
  406. package/lib/types/utils/index.d.ts +808 -0
  407. package/lib/types/utils/index.js +810 -0
  408. package/lib/websocket/SharedTypes.d.ts +12 -5
  409. package/lib/websocket/SharedTypes.js +1 -1
  410. package/lib/websocket/constants/index.d.ts +3 -3
  411. package/lib/websocket/constants/index.js +11 -1
  412. package/lib/websocket/discord/basesocket.d.ts +7 -7
  413. package/lib/websocket/discord/basesocket.js +34 -22
  414. package/lib/websocket/discord/events/memberUpdate.d.ts +1 -6
  415. package/lib/websocket/discord/events/memberUpdate.js +2 -1
  416. package/lib/websocket/discord/events/presenceUpdate.d.ts +5 -18
  417. package/lib/websocket/discord/events/presenceUpdate.js +5 -6
  418. package/lib/websocket/discord/shard.d.ts +9 -8
  419. package/lib/websocket/discord/shard.js +83 -57
  420. package/lib/websocket/discord/sharder.d.ts +6 -5
  421. package/lib/websocket/discord/sharder.js +70 -11
  422. package/lib/websocket/discord/shared.d.ts +34 -6
  423. package/lib/websocket/discord/socket/custom.d.ts +52 -0
  424. package/lib/websocket/discord/socket/custom.js +300 -0
  425. package/lib/websocket/discord/worker.d.ts +6 -10
  426. package/lib/websocket/discord/workermanager.d.ts +10 -16
  427. package/lib/websocket/discord/workermanager.js +63 -50
  428. package/lib/websocket/structures/index.d.ts +0 -1
  429. package/lib/websocket/structures/index.js +1 -1
  430. package/lib/websocket/structures/timeout.d.ts +0 -1
  431. package/package.json +70 -74
  432. package/lib/cache/adapters/redis.d.ts +0 -37
  433. package/lib/cache/adapters/redis.js +0 -218
  434. package/lib/client/oninteractioncreate.d.ts +0 -4
  435. package/lib/client/oninteractioncreate.js +0 -198
  436. package/lib/client/onmessagecreate.d.ts +0 -13
  437. package/lib/client/onmessagecreate.js +0 -410
  438. package/lib/structures/extra/functions.d.ts +0 -12
  439. 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;
@@ -87,7 +85,12 @@ export declare class GuildMember extends BaseGuildMember {
87
85
  avatarURL(options?: ImageOptions & {
88
86
  exclude?: false;
89
87
  }): string;
90
- bannerURL(options?: ImageOptions): string | undefined;
88
+ bannerURL(options: ImageOptions & {
89
+ exclude: true;
90
+ }): string | undefined | null;
91
+ bannerURL(options?: ImageOptions & {
92
+ exclude?: false;
93
+ }): string | undefined;
91
94
  fetchPermissions(force?: boolean): Promise<PermissionsBitField>;
92
95
  manageable(force?: boolean): Promise<boolean>;
93
96
  bannable(force?: boolean): Promise<boolean>;
@@ -108,7 +111,7 @@ declare const InteractionGuildMember_base: ToClass<Omit<GuildMember, "deaf" | "m
108
111
  */
109
112
  export declare class InteractionGuildMember extends InteractionGuildMember_base {
110
113
  permissions: PermissionsBitField;
111
- constructor(client: UsingClient, data: APIInteractionDataResolvedGuildMember, user: APIUser | User,
114
+ constructor(client: UsingClient, data: APIInteractionDataResolvedGuildMember, user: APIUser,
112
115
  /** the choosen guild id */
113
116
  guildId: string);
114
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;
@@ -125,12 +132,15 @@ class GuildMember extends BaseGuildMember {
125
132
  }
126
133
  avatarURL(options) {
127
134
  if (!this.avatar) {
128
- return options?.exclude ? null : this.user.avatarURL();
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,71 +1,104 @@
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';
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, type APIEntryPointCommandInteraction, type InteractionCallbackData, type InteractionCallbackResourceActivity } from '../types';
2
2
  import type { RawFile } from '../api';
3
- import { OptionResolver, type UsingClient } from '../commands';
4
- import type { ObjectToLower, OmitInsert, ToClass, When } from '../common';
5
- import type { ComponentInteractionMessageUpdate, InteractionCreateBodyRequest, InteractionMessageUpdateBodyRequest, MessageCreateBodyRequest, MessageUpdateBodyRequest, MessageWebhookCreateBodyRequest, ModalCreateBodyRequest } from '../common/types/write';
6
- import { InteractionGuildMember, type AllChannels } from './';
7
- import { GuildRole } from './GuildRole';
8
- import { Message, type WebhookMessage } from './Message';
9
- import { User } from './User';
3
+ import type { UsingClient } from '../commands';
4
+ import { type ObjectToLower, type OmitInsert, type ToClass, type When, type ComponentInteractionMessageUpdate, type InteractionCreateBodyRequest, type InteractionMessageUpdateBodyRequest, type MessageCreateBodyRequest, type MessageUpdateBodyRequest, type MessageWebhookCreateBodyRequest, type ModalCreateBodyRequest } from '../common';
5
+ import { type AllChannels } from './';
10
6
  import { DiscordBase } from './extra/DiscordBase';
11
7
  import { PermissionsBitField } from './extra/Permissions';
8
+ import { type GuildRoleStructure, type InteractionGuildMemberStructure, type MessageStructure, type UserStructure, type WebhookMessageStructure, type OptionResolverStructure } from '../client/transformers';
12
9
  export type ReplyInteractionBody = {
13
10
  type: InteractionResponseType.Modal;
14
11
  data: ModalCreateBodyRequest;
15
12
  } | {
16
13
  type: InteractionResponseType.ChannelMessageWithSource | InteractionResponseType.UpdateMessage;
17
14
  data: InteractionCreateBodyRequest | InteractionMessageUpdateBodyRequest | ComponentInteractionMessageUpdate;
15
+ } | {
16
+ type: InteractionResponseType.LaunchActivity;
18
17
  } | Exclude<RESTPostAPIInteractionCallbackJSONBody, APIInteractionResponsePong>;
18
+ export type __InternalReplyFunction = (_: {
19
+ body: APIInteractionResponse;
20
+ files?: RawFile[];
21
+ }) => Promise<any>;
19
22
  export interface BaseInteraction extends ObjectToLower<Omit<APIBaseInteraction<InteractionType, any>, 'user' | 'member' | 'message' | 'channel' | 'type' | 'app_permissions'>> {
20
23
  }
21
24
  export declare class BaseInteraction<FromGuild extends boolean = boolean, Type extends APIInteraction = APIInteraction> extends DiscordBase<Type> {
22
25
  readonly client: UsingClient;
23
26
  protected __reply?: __InternalReplyFunction | undefined;
24
- user: User;
25
- member: When<FromGuild, InteractionGuildMember, undefined>;
27
+ user: UserStructure;
28
+ member: When<FromGuild, InteractionGuildMemberStructure, undefined>;
26
29
  channel?: AllChannels;
27
- message?: Message;
30
+ message?: MessageStructure;
28
31
  replied?: Promise<boolean> | boolean;
29
32
  appPermissions?: PermissionsBitField;
30
33
  constructor(client: UsingClient, interaction: Type, __reply?: __InternalReplyFunction | undefined);
31
34
  static transformBodyRequest(body: ReplyInteractionBody, files: RawFile[] | undefined, self: UsingClient): APIInteractionResponse;
32
- static transformBody<T>(body: InteractionMessageUpdateBodyRequest | MessageUpdateBodyRequest | MessageCreateBodyRequest | MessageWebhookCreateBodyRequest, files: RawFile[] | undefined, self: UsingClient): T;
35
+ static transformBody<T>(body: InteractionCreateBodyRequest | InteractionMessageUpdateBodyRequest | MessageUpdateBodyRequest | MessageCreateBodyRequest | MessageWebhookCreateBodyRequest, files: RawFile[] | undefined, self: UsingClient): T;
33
36
  private matchReplied;
34
37
  reply(body: ReplyInteractionBody): Promise<void>;
35
38
  deferReply(flags?: MessageFlags): Promise<void>;
36
- 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>;
37
- fetchGuild(force?: boolean): Promise<import("./Guild").Guild<"cached"> | import("./Guild").Guild<"api">> | undefined;
38
- }
39
- export type AllInteractions = AutocompleteInteraction | ChatInputCommandInteraction | UserCommandInteraction | MessageCommandInteraction | ComponentInteraction | SelectMenuInteraction | ModalSubmitInteraction | BaseInteraction;
39
+ isButton(): this is ButtonInteraction;
40
+ isChannelSelectMenu(): this is ChannelSelectMenuInteraction;
41
+ isRoleSelectMenu(): this is RoleSelectMenuInteraction;
42
+ isMentionableSelectMenu(): this is MentionableSelectMenuInteraction;
43
+ isUserSelectMenu(): this is UserSelectMenuInteraction;
44
+ isStringSelectMenu(): this is StringSelectMenuInteraction;
45
+ isChatInput(): this is ChatInputCommandInteraction;
46
+ isUser(): this is UserCommandInteraction;
47
+ isMessage(): this is MessageCommandInteraction;
48
+ isAutocomplete(): this is AutocompleteInteraction;
49
+ isModal(): this is ModalSubmitInteraction;
50
+ isEntryPoint(): this is EntryPointInteraction;
51
+ 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>;
52
+ fetchGuild(force?: boolean): Promise<import("./Guild").Guild<"api">> | undefined;
53
+ }
54
+ export type AllInteractions = AutocompleteInteraction | ChatInputCommandInteraction | UserCommandInteraction | MessageCommandInteraction | ComponentInteraction | SelectMenuInteraction | ModalSubmitInteraction | EntryPointInteraction | BaseInteraction;
40
55
  export interface AutocompleteInteraction extends ObjectToLower<Omit<APIApplicationCommandAutocompleteInteraction, 'user' | 'member' | 'type' | 'data' | 'message' | 'channel' | 'app_permissions'>> {
41
56
  }
42
57
  export declare class AutocompleteInteraction<FromGuild extends boolean = boolean> extends BaseInteraction<FromGuild, APIApplicationCommandAutocompleteInteraction> {
43
58
  protected __reply?: __InternalReplyFunction | undefined;
44
59
  type: InteractionType.ApplicationCommandAutocomplete;
45
60
  data: ObjectToLower<APIApplicationCommandAutocompleteInteraction['data']>;
46
- options: OptionResolver;
47
- constructor(client: UsingClient, interaction: APIApplicationCommandAutocompleteInteraction, resolver?: OptionResolver, __reply?: __InternalReplyFunction | undefined);
61
+ options: OptionResolverStructure;
62
+ constructor(client: UsingClient, interaction: APIApplicationCommandAutocompleteInteraction, resolver?: OptionResolverStructure, __reply?: __InternalReplyFunction | undefined);
48
63
  getInput(): string;
49
64
  respond(choices: APICommandAutocompleteInteractionResponseCallbackData['choices']): Promise<void>;
65
+ isAutocomplete(): this is AutocompleteInteraction;
50
66
  /** @intenal */
51
67
  reply(..._args: unknown[]): Promise<void>;
52
68
  }
53
69
  export declare class Interaction<FromGuild extends boolean = boolean, Type extends APIInteraction = APIInteraction> extends BaseInteraction<FromGuild, Type> {
54
- fetchMessage(messageId: string): Promise<WebhookMessage | undefined>;
55
- fetchResponse(): Promise<WebhookMessage | undefined>;
56
- write<FR extends boolean = false>(body: InteractionCreateBodyRequest, fetchReply?: FR): Promise<When<FR, WebhookMessage, void>>;
70
+ fetchMessage(messageId: string): Promise<import("./Message").WebhookMessage | undefined>;
71
+ fetchResponse(): Promise<import("./Message").WebhookMessage | undefined>;
72
+ write<FR extends boolean = false>(body: InteractionCreateBodyRequest, fetchReply?: FR): Promise<When<FR, WebhookMessageStructure, void>>;
57
73
  modal(body: ModalCreateBodyRequest): Promise<void>;
58
- editOrReply<FR extends boolean = false>(body: InteractionCreateBodyRequest, fetchReply?: FR): Promise<When<FR, WebhookMessage, void>>;
59
- editMessage(messageId: string, body: InteractionMessageUpdateBodyRequest): Promise<WebhookMessage>;
60
- editResponse(body: InteractionMessageUpdateBodyRequest): Promise<WebhookMessage>;
74
+ editOrReply<FR extends boolean = false>(body: InteractionCreateBodyRequest, fetchReply?: FR): Promise<When<FR, WebhookMessageStructure, void>>;
75
+ editMessage(messageId: string, body: InteractionMessageUpdateBodyRequest): Promise<import("./Message").WebhookMessage>;
76
+ editResponse(body: InteractionMessageUpdateBodyRequest): Promise<import("./Message").WebhookMessage>;
61
77
  deleteResponse(): Promise<void | undefined>;
62
78
  deleteMessage(messageId: string): Promise<void | undefined>;
63
- followup(body: MessageWebhookCreateBodyRequest): Promise<WebhookMessage>;
79
+ followup(body: MessageWebhookCreateBodyRequest): Promise<import("./Message").WebhookMessage>;
64
80
  }
65
81
  export declare class ApplicationCommandInteraction<FromGuild extends boolean = boolean, Type extends APIApplicationCommandInteraction = APIApplicationCommandInteraction> extends Interaction<FromGuild, Type> {
66
82
  type: ApplicationCommandType;
67
83
  respond(data: APIInteractionResponseChannelMessageWithSource | APIInteractionResponseDeferredChannelMessageWithSource | APIInteractionResponseDeferredMessageUpdate | APIInteractionResponseUpdateMessage): Promise<void>;
68
84
  }
85
+ /**
86
+ * Seyfert don't support activities, so this interaction is blank
87
+ */
88
+ export declare class EntryPointInteraction<FromGuild extends boolean = boolean> extends ApplicationCommandInteraction<FromGuild, APIEntryPointCommandInteraction> {
89
+ withReponse(data?: InteractionCreateBodyRequest): Promise<EntryPointWithResponseResult>;
90
+ isEntryPoint(): this is EntryPointInteraction;
91
+ }
92
+ export interface EntryPointWithResponseResult {
93
+ interaction: ObjectToLower<InteractionCallbackData>;
94
+ resource?: {
95
+ type: InteractionResponseType.LaunchActivity;
96
+ activityInstance: InteractionCallbackResourceActivity;
97
+ } | {
98
+ type: Exclude<InteractionResponseType, InteractionResponseType.LaunchActivity>;
99
+ message: WebhookMessageStructure;
100
+ };
101
+ }
69
102
  export interface ComponentInteraction extends ObjectToLower<Omit<APIMessageComponentInteraction, 'user' | 'member' | 'type' | 'data' | 'message' | 'channel' | 'app_permissions'>> {
70
103
  }
71
104
  export declare class ComponentInteraction<FromGuild extends boolean = boolean, Type extends APIMessageComponentInteraction = APIMessageComponentInteraction> extends Interaction<FromGuild, Type> {
@@ -73,20 +106,15 @@ export declare class ComponentInteraction<FromGuild extends boolean = boolean, T
73
106
  channelId: string;
74
107
  channel: AllChannels;
75
108
  type: InteractionType.MessageComponent;
76
- message: Message;
109
+ message: MessageStructure;
77
110
  update(data: ComponentInteractionMessageUpdate): Promise<void>;
78
111
  deferUpdate(): Promise<void>;
79
112
  get customId(): string;
80
113
  get componentType(): ComponentType.Button | ComponentType.StringSelect | ComponentType.UserSelect | ComponentType.RoleSelect | ComponentType.MentionableSelect | ComponentType.ChannelSelect;
81
- isButton(): this is ButtonInteraction;
82
- isChannelSelectMenu(): this is ChannelSelectMenuInteraction;
83
- isRoleSelectMenu(): this is RoleSelectMenuInteraction;
84
- isMentionableSelectMenu(): this is MentionableSelectMenuInteraction;
85
- isUserSelectMenu(): this is UserSelectMenuInteraction;
86
- isStringSelectMenu(): this is StringSelectMenuInteraction;
87
114
  }
88
115
  export declare class ButtonInteraction extends ComponentInteraction {
89
116
  data: ObjectToLower<APIMessageButtonInteractionData>;
117
+ isButton(): this is ButtonInteraction;
90
118
  }
91
119
  export declare class SelectMenuInteraction extends ComponentInteraction {
92
120
  protected __reply?: __InternalReplyFunction | undefined;
@@ -94,46 +122,54 @@ export declare class SelectMenuInteraction extends ComponentInteraction {
94
122
  constructor(client: UsingClient, interaction: APIMessageComponentSelectMenuInteraction, __reply?: __InternalReplyFunction | undefined);
95
123
  get values(): string[];
96
124
  }
97
- declare const StringSelectMenuInteraction_base: ToClass<Omit<SelectMenuInteraction, "data">, StringSelectMenuInteraction<string[]>>;
125
+ declare const StringSelectMenuInteraction_base: ToClass<Omit<SelectMenuInteraction, "data" | "isStringSelectMenu">, StringSelectMenuInteraction<string[]>>;
98
126
  export declare class StringSelectMenuInteraction<T extends any[] = string[]> extends StringSelectMenuInteraction_base {
99
127
  data: OmitInsert<ObjectToLower<APIMessageStringSelectInteractionData>, 'values', {
100
128
  values: T;
101
129
  }>;
102
130
  values: T;
131
+ isStringSelectMenu(): this is StringSelectMenuInteraction;
103
132
  }
104
133
  export declare class ChannelSelectMenuInteraction extends SelectMenuInteraction {
105
134
  protected __reply?: __InternalReplyFunction | undefined;
106
135
  channels: AllChannels[];
107
136
  constructor(client: UsingClient, interaction: APIMessageComponentSelectMenuInteraction, __reply?: __InternalReplyFunction | undefined);
137
+ isChannelSelectMenu(): this is ChannelSelectMenuInteraction;
108
138
  }
109
139
  export declare class MentionableSelectMenuInteraction extends SelectMenuInteraction {
110
140
  protected __reply?: __InternalReplyFunction | undefined;
111
- roles: GuildRole[];
112
- members: InteractionGuildMember[];
113
- users: User[];
141
+ roles: GuildRoleStructure[];
142
+ members: InteractionGuildMemberStructure[];
143
+ users: UserStructure[];
114
144
  constructor(client: UsingClient, interaction: APIMessageComponentSelectMenuInteraction, __reply?: __InternalReplyFunction | undefined);
145
+ isMentionableSelectMenu(): this is MentionableSelectMenuInteraction;
115
146
  }
116
147
  export declare class RoleSelectMenuInteraction extends SelectMenuInteraction {
117
148
  protected __reply?: __InternalReplyFunction | undefined;
118
- roles: GuildRole[];
149
+ roles: GuildRoleStructure[];
119
150
  constructor(client: UsingClient, interaction: APIMessageComponentSelectMenuInteraction, __reply?: __InternalReplyFunction | undefined);
151
+ isRoleSelectMenu(): this is RoleSelectMenuInteraction;
120
152
  }
121
153
  export declare class UserSelectMenuInteraction extends SelectMenuInteraction {
122
154
  protected __reply?: __InternalReplyFunction | undefined;
123
- members: InteractionGuildMember[];
124
- users: User[];
155
+ members: InteractionGuildMemberStructure[];
156
+ users: UserStructure[];
125
157
  constructor(client: UsingClient, interaction: APIMessageComponentSelectMenuInteraction, __reply?: __InternalReplyFunction | undefined);
158
+ isUserSelectMenu(): this is UserSelectMenuInteraction;
126
159
  }
127
160
  export declare class ChatInputCommandInteraction<FromGuild extends boolean = boolean> extends ApplicationCommandInteraction<FromGuild, APIChatInputApplicationCommandInteraction> {
128
161
  data: ObjectToLower<APIChatInputApplicationCommandInteractionData>;
162
+ isChatInput(): this is ChatInputCommandInteraction;
129
163
  }
130
164
  export declare class UserCommandInteraction<FromGuild extends boolean = boolean> extends ApplicationCommandInteraction<FromGuild, APIUserApplicationCommandInteraction> {
131
165
  type: ApplicationCommandType.User;
132
166
  data: ObjectToLower<APIUserApplicationCommandInteractionData>;
167
+ isUser(): this is UserCommandInteraction;
133
168
  }
134
169
  export declare class MessageCommandInteraction<FromGuild extends boolean = boolean> extends ApplicationCommandInteraction<FromGuild, APIMessageApplicationCommandInteraction> {
135
170
  type: ApplicationCommandType.Message;
136
171
  data: ObjectToLower<APIMessageApplicationCommandInteractionData>;
172
+ isMessage(): this is MessageCommandInteraction;
137
173
  }
138
174
  export interface ModalSubmitInteraction<FromGuild extends boolean = boolean> extends Omit<Interaction<FromGuild, APIModalSubmitInteraction>, 'modal'> {
139
175
  }
@@ -150,5 +186,6 @@ export declare class ModalSubmitInteraction<FromGuild extends boolean = boolean>
150
186
  }[];
151
187
  getInputValue(customId: string, required: true): string;
152
188
  getInputValue(customId: string, required?: false): string | undefined;
189
+ isModal(): this is ModalSubmitInteraction;
153
190
  }
154
191
  export {};