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
@@ -5,22 +5,16 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
5
5
  else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
6
  return c > 3 && r && Object.defineProperty(target, key, r), r;
7
7
  };
8
- var __importDefault = (this && this.__importDefault) || function (mod) {
9
- return (mod && mod.__esModule) ? mod : { "default": mod };
10
- };
11
8
  Object.defineProperty(exports, "__esModule", { value: true });
12
9
  exports.ModalSubmitInteraction = exports.MessageCommandInteraction = exports.UserCommandInteraction = exports.ChatInputCommandInteraction = exports.UserSelectMenuInteraction = exports.RoleSelectMenuInteraction = exports.MentionableSelectMenuInteraction = exports.ChannelSelectMenuInteraction = exports.StringSelectMenuInteraction = exports.SelectMenuInteraction = exports.ButtonInteraction = exports.ComponentInteraction = exports.ApplicationCommandInteraction = exports.Interaction = exports.AutocompleteInteraction = exports.BaseInteraction = void 0;
13
- const v10_1 = require("discord-api-types/v10");
14
- const ts_mixer_1 = require("ts-mixer");
10
+ const types_1 = require("../types");
15
11
  const builders_1 = require("../builders");
16
- const commands_1 = require("../commands");
17
12
  const _1 = require("./");
18
- const GuildRole_1 = require("./GuildRole");
19
- const Message_1 = require("./Message");
20
- const User_1 = require("./User");
21
- const channels_1 = __importDefault(require("./channels"));
22
13
  const DiscordBase_1 = require("./extra/DiscordBase");
23
14
  const Permissions_1 = require("./extra/Permissions");
15
+ const transformers_1 = require("../client/transformers");
16
+ const mixer_1 = require("../deps/mixer");
17
+ const Entitlement_1 = require("./Entitlement");
24
18
  class BaseInteraction extends DiscordBase_1.DiscordBase {
25
19
  client;
26
20
  __reply;
@@ -35,44 +29,35 @@ class BaseInteraction extends DiscordBase_1.DiscordBase {
35
29
  this.client = client;
36
30
  this.__reply = __reply;
37
31
  if (interaction.member) {
38
- this.member = new _1.InteractionGuildMember(client, interaction.member, interaction.member.user, interaction.guild_id);
32
+ this.member = transformers_1.Transformers.InteractionGuildMember(client, interaction.member, interaction.member.user, interaction.guild_id);
39
33
  }
40
34
  if (interaction.message) {
41
- this.message = new Message_1.Message(client, interaction.message);
35
+ this.message = transformers_1.Transformers.Message(client, interaction.message);
42
36
  }
43
37
  if (interaction.app_permissions) {
44
38
  this.appPermissions = new Permissions_1.PermissionsBitField(Number(interaction.app_permissions));
45
39
  }
46
40
  if (interaction.channel) {
47
- this.channel = (0, channels_1.default)(interaction.channel, client);
41
+ this.channel = (0, _1.channelFrom)(interaction.channel, client);
48
42
  }
49
- this.user = this.member?.user ?? new User_1.User(client, interaction.user);
43
+ this.user = this.member?.user ?? transformers_1.Transformers.User(client, interaction.user);
44
+ this.entitlements = interaction.entitlements.map(e => new Entitlement_1.Entitlement(this.client, e));
50
45
  }
51
- static transformBodyRequest(body, self) {
46
+ static transformBodyRequest(body, files, self) {
52
47
  switch (body.type) {
53
- case v10_1.InteractionResponseType.ApplicationCommandAutocompleteResult:
54
- case v10_1.InteractionResponseType.DeferredMessageUpdate:
55
- case v10_1.InteractionResponseType.DeferredChannelMessageWithSource:
48
+ case types_1.InteractionResponseType.ApplicationCommandAutocompleteResult:
49
+ case types_1.InteractionResponseType.DeferredMessageUpdate:
50
+ case types_1.InteractionResponseType.DeferredChannelMessageWithSource:
56
51
  return body;
57
- case v10_1.InteractionResponseType.ChannelMessageWithSource:
58
- case v10_1.InteractionResponseType.UpdateMessage: {
59
- const poll = body.poll;
52
+ case types_1.InteractionResponseType.ChannelMessageWithSource:
53
+ case types_1.InteractionResponseType.UpdateMessage: {
60
54
  return {
61
55
  type: body.type,
62
56
  //@ts-ignore
63
- data: {
64
- //@ts-ignore
65
- allowed_mentions: self.options?.allowedMentions,
66
- ...(body.data ?? {}),
67
- //@ts-ignore
68
- components: body.data?.components?.map(x => (x instanceof builders_1.ActionRow ? x.toJSON() : x)) ?? undefined,
69
- embeds: body.data?.embeds?.map(x => (x instanceof builders_1.Embed ? x.toJSON() : x)) ?? undefined,
70
- attachments: body.data?.attachments?.map((x, i) => ({ id: i, ...(0, builders_1.resolveAttachment)(x) })) ?? undefined,
71
- poll: poll ? (poll instanceof builders_1.PollBuilder ? poll.toJSON() : poll) : undefined,
72
- },
57
+ data: BaseInteraction.transformBody(body.data ?? {}, files, self),
73
58
  };
74
59
  }
75
- case v10_1.InteractionResponseType.Modal:
60
+ case types_1.InteractionResponseType.Modal:
76
61
  return {
77
62
  type: body.type,
78
63
  data: body.data instanceof builders_1.Modal
@@ -90,15 +75,29 @@ class BaseInteraction extends DiscordBase_1.DiscordBase {
90
75
  return body;
91
76
  }
92
77
  }
93
- static transformBody(body, self) {
78
+ static transformBody(body, files, self) {
94
79
  const poll = body.poll;
95
- return {
80
+ const payload = {
96
81
  allowed_mentions: self.options?.allowedMentions,
97
82
  ...body,
98
- components: body.components?.map(x => (x instanceof builders_1.ActionRow ? x.toJSON() : x)) ?? undefined,
99
- embeds: body?.embeds?.map(x => (x instanceof builders_1.Embed ? x.toJSON() : x)) ?? undefined,
83
+ components: body.components?.map(x => (x instanceof builders_1.ActionRow ? x.toJSON() : x)),
84
+ embeds: body?.embeds?.map(x => (x instanceof builders_1.Embed ? x.toJSON() : x)),
100
85
  poll: poll ? (poll instanceof builders_1.PollBuilder ? poll.toJSON() : poll) : undefined,
101
86
  };
87
+ if ('attachments' in body) {
88
+ payload.attachments =
89
+ body.attachments?.map((x, i) => ({
90
+ id: i,
91
+ ...(0, builders_1.resolveAttachment)(x),
92
+ })) ?? undefined;
93
+ }
94
+ else if (files?.length) {
95
+ payload.attachments = files?.map((x, id) => ({
96
+ id,
97
+ filename: x.name,
98
+ }));
99
+ }
100
+ return payload;
102
101
  }
103
102
  async matchReplied(body) {
104
103
  if (this.__reply) {
@@ -106,9 +105,10 @@ class BaseInteraction extends DiscordBase_1.DiscordBase {
106
105
  const { files, ...rest } = body.data ?? {};
107
106
  //@ts-expect-error
108
107
  const data = body.data instanceof builders_1.Modal ? body.data : rest;
108
+ const parsedFiles = files ? await (0, builders_1.resolveFiles)(files) : undefined;
109
109
  return (this.replied = this.__reply({
110
- body: BaseInteraction.transformBodyRequest({ data, type: body.type }, this.client),
111
- files: files ? await (0, builders_1.resolveFiles)(files) : undefined,
110
+ body: BaseInteraction.transformBodyRequest({ data, type: body.type }, parsedFiles, this.client),
111
+ files: parsedFiles,
112
112
  }).then(() => (this.replied = true)));
113
113
  }
114
114
  return (this.replied = this.client.interactions.reply(this.id, this.token, body).then(() => (this.replied = true)));
@@ -125,43 +125,76 @@ class BaseInteraction extends DiscordBase_1.DiscordBase {
125
125
  }
126
126
  deferReply(flags) {
127
127
  return this.reply({
128
- type: v10_1.InteractionResponseType.DeferredChannelMessageWithSource,
128
+ type: types_1.InteractionResponseType.DeferredChannelMessageWithSource,
129
129
  data: {
130
130
  flags,
131
131
  },
132
132
  });
133
133
  }
134
+ isButton() {
135
+ return false;
136
+ }
137
+ isChannelSelectMenu() {
138
+ return false;
139
+ }
140
+ isRoleSelectMenu() {
141
+ return false;
142
+ }
143
+ isMentionableSelectMenu() {
144
+ return false;
145
+ }
146
+ isUserSelectMenu() {
147
+ return false;
148
+ }
149
+ isStringSelectMenu() {
150
+ return false;
151
+ }
152
+ isChatInput() {
153
+ return false;
154
+ }
155
+ isUser() {
156
+ return false;
157
+ }
158
+ isMessage() {
159
+ return false;
160
+ }
161
+ isAutocomplete() {
162
+ return false;
163
+ }
164
+ isModal() {
165
+ return false;
166
+ }
134
167
  static from(client, gateway, __reply) {
135
168
  switch (gateway.type) {
136
- case v10_1.InteractionType.ApplicationCommandAutocomplete:
169
+ case types_1.InteractionType.ApplicationCommandAutocomplete:
137
170
  return new AutocompleteInteraction(client, gateway, undefined, __reply);
138
171
  // biome-ignore lint/suspicious/noFallthroughSwitchClause: bad interaction between biome and ts-server
139
- case v10_1.InteractionType.ApplicationCommand:
172
+ case types_1.InteractionType.ApplicationCommand:
140
173
  switch (gateway.data.type) {
141
- case v10_1.ApplicationCommandType.ChatInput:
174
+ case types_1.ApplicationCommandType.ChatInput:
142
175
  return new ChatInputCommandInteraction(client, gateway, __reply);
143
- case v10_1.ApplicationCommandType.User:
176
+ case types_1.ApplicationCommandType.User:
144
177
  return new UserCommandInteraction(client, gateway, __reply);
145
- case v10_1.ApplicationCommandType.Message:
178
+ case types_1.ApplicationCommandType.Message:
146
179
  return new MessageCommandInteraction(client, gateway, __reply);
147
180
  }
148
181
  // biome-ignore lint/suspicious/noFallthroughSwitchClause: bad interaction between biome and ts-server
149
- case v10_1.InteractionType.MessageComponent:
182
+ case types_1.InteractionType.MessageComponent:
150
183
  switch (gateway.data.component_type) {
151
- case v10_1.ComponentType.Button:
184
+ case types_1.ComponentType.Button:
152
185
  return new ButtonInteraction(client, gateway, __reply);
153
- case v10_1.ComponentType.ChannelSelect:
186
+ case types_1.ComponentType.ChannelSelect:
154
187
  return new ChannelSelectMenuInteraction(client, gateway, __reply);
155
- case v10_1.ComponentType.RoleSelect:
188
+ case types_1.ComponentType.RoleSelect:
156
189
  return new RoleSelectMenuInteraction(client, gateway, __reply);
157
- case v10_1.ComponentType.MentionableSelect:
190
+ case types_1.ComponentType.MentionableSelect:
158
191
  return new MentionableSelectMenuInteraction(client, gateway, __reply);
159
- case v10_1.ComponentType.UserSelect:
192
+ case types_1.ComponentType.UserSelect:
160
193
  return new UserSelectMenuInteraction(client, gateway, __reply);
161
- case v10_1.ComponentType.StringSelect:
194
+ case types_1.ComponentType.StringSelect:
162
195
  return new StringSelectMenuInteraction(client, gateway, __reply);
163
196
  }
164
- case v10_1.InteractionType.ModalSubmit:
197
+ case types_1.InteractionType.ModalSubmit:
165
198
  return new ModalSubmitInteraction(client, gateway);
166
199
  default:
167
200
  return new BaseInteraction(client, gateway);
@@ -180,13 +213,16 @@ class AutocompleteInteraction extends BaseInteraction {
180
213
  this.__reply = __reply;
181
214
  this.options =
182
215
  resolver ??
183
- new commands_1.OptionResolver(client, interaction.data.options, undefined, interaction.guild_id, interaction.data.resolved);
216
+ transformers_1.Transformers.OptionResolver(client, interaction.data.options, undefined, interaction.guild_id, interaction.data.resolved);
184
217
  }
185
218
  getInput() {
186
219
  return this.options.getAutocompleteValue() ?? '';
187
220
  }
188
221
  respond(choices) {
189
- return super.reply({ data: { choices }, type: v10_1.InteractionResponseType.ApplicationCommandAutocompleteResult });
222
+ return super.reply({ data: { choices }, type: types_1.InteractionResponseType.ApplicationCommandAutocompleteResult });
223
+ }
224
+ isAutocomplete() {
225
+ return true;
190
226
  }
191
227
  /** @intenal */
192
228
  async reply(..._args) {
@@ -203,7 +239,7 @@ class Interaction extends BaseInteraction {
203
239
  }
204
240
  async write(body, fetchReply) {
205
241
  (await this.reply({
206
- type: v10_1.InteractionResponseType.ChannelMessageWithSource,
242
+ type: types_1.InteractionResponseType.ChannelMessageWithSource,
207
243
  data: body,
208
244
  }));
209
245
  if (fetchReply)
@@ -212,7 +248,7 @@ class Interaction extends BaseInteraction {
212
248
  }
213
249
  modal(body) {
214
250
  return this.reply({
215
- type: v10_1.InteractionResponseType.Modal,
251
+ type: types_1.InteractionResponseType.Modal,
216
252
  data: body,
217
253
  });
218
254
  }
@@ -235,13 +271,13 @@ class Interaction extends BaseInteraction {
235
271
  deleteMessage(messageId) {
236
272
  return this.client.interactions.deleteResponse(this.id, this.token, messageId);
237
273
  }
238
- async followup(body) {
274
+ followup(body) {
239
275
  return this.client.interactions.followup(this.token, body);
240
276
  }
241
277
  }
242
278
  exports.Interaction = Interaction;
243
279
  class ApplicationCommandInteraction extends Interaction {
244
- type = v10_1.ApplicationCommandType.ChatInput;
280
+ type;
245
281
  respond(data) {
246
282
  return this.reply(data);
247
283
  }
@@ -250,13 +286,13 @@ exports.ApplicationCommandInteraction = ApplicationCommandInteraction;
250
286
  class ComponentInteraction extends Interaction {
251
287
  update(data) {
252
288
  return this.reply({
253
- type: v10_1.InteractionResponseType.UpdateMessage,
289
+ type: types_1.InteractionResponseType.UpdateMessage,
254
290
  data,
255
291
  });
256
292
  }
257
293
  deferUpdate() {
258
294
  return this.reply({
259
- type: v10_1.InteractionResponseType.DeferredMessageUpdate,
295
+ type: types_1.InteractionResponseType.DeferredMessageUpdate,
260
296
  });
261
297
  }
262
298
  get customId() {
@@ -265,27 +301,12 @@ class ComponentInteraction extends Interaction {
265
301
  get componentType() {
266
302
  return this.data.componentType;
267
303
  }
268
- isButton() {
269
- return this.data.componentType === v10_1.ComponentType.Button;
270
- }
271
- isChannelSelectMenu() {
272
- return this.componentType === v10_1.ComponentType.ChannelSelect;
273
- }
274
- isRoleSelectMenu() {
275
- return this.componentType === v10_1.ComponentType.RoleSelect;
276
- }
277
- isMentionableSelectMenu() {
278
- return this.componentType === v10_1.ComponentType.MentionableSelect;
279
- }
280
- isUserSelectMenu() {
281
- return this.componentType === v10_1.ComponentType.UserSelect;
282
- }
283
- isStringSelectMenu() {
284
- return this.componentType === v10_1.ComponentType.StringSelect;
285
- }
286
304
  }
287
305
  exports.ComponentInteraction = ComponentInteraction;
288
306
  class ButtonInteraction extends ComponentInteraction {
307
+ isButton() {
308
+ return true;
309
+ }
289
310
  }
290
311
  exports.ButtonInteraction = ButtonInteraction;
291
312
  class SelectMenuInteraction extends ComponentInteraction {
@@ -300,6 +321,9 @@ class SelectMenuInteraction extends ComponentInteraction {
300
321
  }
301
322
  exports.SelectMenuInteraction = SelectMenuInteraction;
302
323
  class StringSelectMenuInteraction extends SelectMenuInteraction {
324
+ isStringSelectMenu() {
325
+ return true;
326
+ }
303
327
  }
304
328
  exports.StringSelectMenuInteraction = StringSelectMenuInteraction;
305
329
  class ChannelSelectMenuInteraction extends SelectMenuInteraction {
@@ -309,7 +333,10 @@ class ChannelSelectMenuInteraction extends SelectMenuInteraction {
309
333
  super(client, interaction);
310
334
  this.__reply = __reply;
311
335
  const resolved = interaction.data.resolved;
312
- this.channels = this.values.map(x => (0, channels_1.default)(resolved.channels[x], this.client));
336
+ this.channels = this.values.map(x => (0, _1.channelFrom)(resolved.channels[x], this.client));
337
+ }
338
+ isChannelSelectMenu() {
339
+ return true;
313
340
  }
314
341
  }
315
342
  exports.ChannelSelectMenuInteraction = ChannelSelectMenuInteraction;
@@ -323,12 +350,15 @@ class MentionableSelectMenuInteraction extends SelectMenuInteraction {
323
350
  this.__reply = __reply;
324
351
  const resolved = interaction.data.resolved;
325
352
  this.roles = resolved.roles
326
- ? this.values.map(x => new GuildRole_1.GuildRole(this.client, resolved.roles[x], this.guildId))
353
+ ? this.values.map(x => transformers_1.Transformers.GuildRole(this.client, resolved.roles[x], this.guildId))
327
354
  : [];
328
355
  this.members = resolved.members
329
- ? this.values.map(x => new _1.InteractionGuildMember(this.client, resolved.members[x], this.users.find(u => u.id === x), this.guildId))
356
+ ? this.values.map(x => transformers_1.Transformers.InteractionGuildMember(this.client, resolved.members[x], resolved.users[this.values.find(u => u === x)], this.guildId))
330
357
  : [];
331
- this.users = resolved.users ? this.values.map(x => new User_1.User(this.client, resolved.users[x])) : [];
358
+ this.users = resolved.users ? this.values.map(x => transformers_1.Transformers.User(this.client, resolved.users[x])) : [];
359
+ }
360
+ isMentionableSelectMenu() {
361
+ return true;
332
362
  }
333
363
  }
334
364
  exports.MentionableSelectMenuInteraction = MentionableSelectMenuInteraction;
@@ -339,7 +369,10 @@ class RoleSelectMenuInteraction extends SelectMenuInteraction {
339
369
  super(client, interaction);
340
370
  this.__reply = __reply;
341
371
  const resolved = interaction.data.resolved;
342
- this.roles = this.values.map(x => new GuildRole_1.GuildRole(this.client, resolved.roles[x], this.guildId));
372
+ this.roles = this.values.map(x => transformers_1.Transformers.GuildRole(this.client, resolved.roles[x], this.guildId));
373
+ }
374
+ isRoleSelectMenu() {
375
+ return true;
343
376
  }
344
377
  }
345
378
  exports.RoleSelectMenuInteraction = RoleSelectMenuInteraction;
@@ -351,20 +384,32 @@ class UserSelectMenuInteraction extends SelectMenuInteraction {
351
384
  super(client, interaction);
352
385
  this.__reply = __reply;
353
386
  const resolved = interaction.data.resolved;
354
- this.users = this.values.map(x => new User_1.User(this.client, resolved.users[x]));
387
+ this.users = this.values.map(x => transformers_1.Transformers.User(this.client, resolved.users[x]));
355
388
  this.members = resolved.members
356
- ? this.values.map(x => new _1.InteractionGuildMember(this.client, resolved.members[x], this.users.find(u => u.id === x), this.guildId))
389
+ ? this.values.map(x => transformers_1.Transformers.InteractionGuildMember(this.client, resolved.members[x], resolved.users[this.values.find(u => u === x)], this.guildId))
357
390
  : [];
358
391
  }
392
+ isUserSelectMenu() {
393
+ return true;
394
+ }
359
395
  }
360
396
  exports.UserSelectMenuInteraction = UserSelectMenuInteraction;
361
397
  class ChatInputCommandInteraction extends ApplicationCommandInteraction {
398
+ isChatInput() {
399
+ return true;
400
+ }
362
401
  }
363
402
  exports.ChatInputCommandInteraction = ChatInputCommandInteraction;
364
403
  class UserCommandInteraction extends ApplicationCommandInteraction {
404
+ isUser() {
405
+ return true;
406
+ }
365
407
  }
366
408
  exports.UserCommandInteraction = UserCommandInteraction;
367
409
  class MessageCommandInteraction extends ApplicationCommandInteraction {
410
+ isMessage() {
411
+ return true;
412
+ }
368
413
  }
369
414
  exports.MessageCommandInteraction = MessageCommandInteraction;
370
415
  let ModalSubmitInteraction = class ModalSubmitInteraction extends BaseInteraction {
@@ -387,8 +432,11 @@ let ModalSubmitInteraction = class ModalSubmitInteraction extends BaseInteractio
387
432
  throw new Error(`${customId} component doesn't have a value`);
388
433
  return value;
389
434
  }
435
+ isModal() {
436
+ return true;
437
+ }
390
438
  };
391
439
  exports.ModalSubmitInteraction = ModalSubmitInteraction;
392
440
  exports.ModalSubmitInteraction = ModalSubmitInteraction = __decorate([
393
- (0, ts_mixer_1.mix)(Interaction)
441
+ (0, mixer_1.mix)(Interaction)
394
442
  ], ModalSubmitInteraction);
@@ -1,44 +1,44 @@
1
- import type { APIChannelMention, APIMessage, GatewayMessageCreateDispatchData } from 'discord-api-types/v10';
1
+ import type { APIChannelMention, APIEmbed, APIMessage, GatewayMessageCreateDispatchData } from '../types';
2
2
  import type { ListenerOptions } from '../builders';
3
3
  import type { UsingClient } from '../commands';
4
- import type { ObjectToLower } from '../common';
4
+ import { type ObjectToLower } from '../common';
5
5
  import type { EmojiResolvable } from '../common/types/resolvables';
6
6
  import type { MessageCreateBodyRequest, MessageUpdateBodyRequest } from '../common/types/write';
7
7
  import type { ActionRowMessageComponents } from '../components';
8
8
  import { MessageActionRowComponent } from '../components/ActionRow';
9
- import { GuildMember } from './GuildMember';
10
- import { User } from './User';
11
9
  import type { MessageWebhookMethodEditParams, MessageWebhookMethodWriteParams } from './Webhook';
12
10
  import { DiscordBase } from './extra/DiscordBase';
13
- import { Poll } from '..';
11
+ import { Embed } from '..';
12
+ import { type PollStructure, type GuildMemberStructure, type UserStructure } from '../client/transformers';
14
13
  export type MessageData = APIMessage | GatewayMessageCreateDispatchData;
15
- export interface BaseMessage extends DiscordBase, ObjectToLower<Omit<MessageData, 'timestamp' | 'author' | 'mentions' | 'components' | 'poll'>> {
16
- }
17
- export declare class BaseMessage extends DiscordBase {
18
- guildId: string | undefined;
14
+ export interface BaseMessage extends DiscordBase, ObjectToLower<Omit<MessageData, 'timestamp' | 'author' | 'mentions' | 'components' | 'poll' | 'embeds'>> {
19
15
  timestamp?: number;
20
- author: User;
21
- member?: GuildMember;
16
+ guildId?: string;
17
+ author: UserStructure;
18
+ member?: GuildMemberStructure;
22
19
  components: MessageActionRowComponent<ActionRowMessageComponents>[];
23
- poll?: Poll;
20
+ poll?: PollStructure;
24
21
  mentions: {
25
22
  roles: string[];
26
23
  channels: APIChannelMention[];
27
- users: (GuildMember | User)[];
24
+ users: (GuildMemberStructure | UserStructure)[];
28
25
  };
26
+ }
27
+ export declare class BaseMessage extends DiscordBase {
28
+ embeds: InMessageEmbed[];
29
29
  constructor(client: UsingClient, data: MessageData);
30
- get user(): User;
30
+ get user(): import("./User").User;
31
31
  createComponentCollector(options?: ListenerOptions): {
32
- run<T extends import("./Interaction").StringSelectMenuInteraction<string[]> | import("./Interaction").ComponentInteraction<boolean, import("discord-api-types/v10").APIMessageComponentInteraction> = import("./Interaction").StringSelectMenuInteraction<string[]> | import("./Interaction").ComponentInteraction<boolean, import("discord-api-types/v10").APIMessageComponentInteraction>>(customId: string | RegExp | string[], callback: import("..").ComponentCallback<T>): any;
33
- stop(reason?: string | undefined): any;
32
+ run<T extends import("../components/handler").CollectorInteraction = import("../components/handler").CollectorInteraction>(customId: string | string[] | RegExp, callback: import("..").ComponentCallback<T>): any;
33
+ stop(reason?: string): any;
34
34
  };
35
- get url(): string;
36
- guild(force?: boolean): Promise<import("./Guild").Guild<"cached"> | import("./Guild").Guild<"api">> | undefined;
35
+ get url(): `https://discord.com/channels/${string}/${string}/${string}`;
36
+ guild(force?: boolean): Promise<import("./Guild").Guild<"api">> | undefined;
37
37
  channel(force?: boolean): Promise<import("./channels").AllChannels>;
38
38
  react(emoji: EmojiResolvable): Promise<void>;
39
39
  private patch;
40
40
  }
41
- export interface Message extends BaseMessage, ObjectToLower<Omit<MessageData, 'timestamp' | 'author' | 'mentions' | 'components' | 'poll'>> {
41
+ export interface Message extends BaseMessage, ObjectToLower<Omit<MessageData, 'timestamp' | 'author' | 'mentions' | 'components' | 'poll' | 'embeds'>> {
42
42
  }
43
43
  export declare class Message extends BaseMessage {
44
44
  constructor(client: UsingClient, data: MessageData);
@@ -55,8 +55,68 @@ export declare class WebhookMessage extends BaseMessage {
55
55
  readonly webhookId: string;
56
56
  readonly webhookToken: string;
57
57
  constructor(client: UsingClient, data: MessageData, webhookId: string, webhookToken: string);
58
- fetch(): Promise<import("discord-api-types/v10").RESTGetAPIWebhookWithTokenResult>;
58
+ fetch(): Promise<import("../types").RESTGetAPIWebhookWithTokenResult>;
59
59
  edit(body: EditMessageWebhook): Promise<WebhookMessage>;
60
60
  write(body: WriteMessageWebhook): Promise<WebhookMessage | null>;
61
61
  delete(reason?: string): Promise<never>;
62
62
  }
63
+ export declare class InMessageEmbed {
64
+ data: APIEmbed;
65
+ constructor(data: APIEmbed);
66
+ get title(): string | undefined;
67
+ /**
68
+ * @deprecated
69
+ */
70
+ get type(): import("../types").EmbedType | undefined;
71
+ get description(): string | undefined;
72
+ get url(): string | undefined;
73
+ get timestamp(): string | undefined;
74
+ get color(): number | undefined;
75
+ get footer(): {
76
+ text: string;
77
+ iconUrl?: string | undefined;
78
+ proxyIconUrl?: string | undefined;
79
+ } | undefined;
80
+ get image(): {
81
+ url: string;
82
+ proxyUrl?: string | undefined;
83
+ height?: number | undefined;
84
+ width?: number | undefined;
85
+ } | undefined;
86
+ get thumbnail(): {
87
+ url: string;
88
+ proxyUrl?: string | undefined;
89
+ height?: number | undefined;
90
+ width?: number | undefined;
91
+ } | undefined;
92
+ get video(): {
93
+ url?: string | undefined;
94
+ proxyUrl?: string | undefined;
95
+ height?: number | undefined;
96
+ width?: number | undefined;
97
+ } | undefined;
98
+ get provider(): import("../types").APIEmbedProvider | undefined;
99
+ get author(): {
100
+ name: string;
101
+ url?: string | undefined;
102
+ iconUrl?: string | undefined;
103
+ proxyIconUrl?: string | undefined;
104
+ } | undefined;
105
+ get fields(): import("../types").APIEmbedField[] | undefined;
106
+ toBuilder(): Embed;
107
+ toJSON(): {
108
+ title?: string;
109
+ type?: import("../types").EmbedType;
110
+ description?: string;
111
+ url?: string;
112
+ timestamp?: string;
113
+ color?: number;
114
+ footer?: import("../types").APIEmbedFooter;
115
+ image?: import("../types").APIEmbedImage;
116
+ thumbnail?: import("../types").APIEmbedThumbnail;
117
+ video?: import("../types").APIEmbedVideo;
118
+ provider?: import("../types").APIEmbedProvider;
119
+ author?: import("../types").APIEmbedAuthor;
120
+ fields?: import("../types").APIEmbedField[];
121
+ };
122
+ }