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,46 +1,46 @@
1
- import type { AllChannels, Guild, InferWithPrefix, ReturnCache, WebhookMessage } from '../..';
1
+ import type { AllChannels, InferWithPrefix, Message, ReturnCache } from '../..';
2
2
  import type { If, UnionToTuple, When } from '../../common';
3
3
  import type { InteractionCreateBodyRequest, InteractionMessageUpdateBodyRequest } from '../../common/types/write';
4
- import { Message, type ChatInputCommandInteraction, type GuildMember, type InteractionGuildMember } from '../../structures';
4
+ import { ChatInputCommandInteraction } from '../../structures';
5
5
  import { BaseContext } from '../basecontext';
6
6
  import type { RegisteredMiddlewares } from '../decorators';
7
- import type { OptionResolver } from '../optionresolver';
8
7
  import type { Command, ContextOptions, OptionsRecord, SubCommand } from './chat';
9
8
  import type { CommandMetadata, ExtendContext, GlobalMetadata, UsingClient } from './shared';
9
+ import type { GuildMemberStructure, GuildStructure, InteractionGuildMemberStructure, MessageStructure, OptionResolverStructure, WebhookMessageStructure } from '../../client/transformers';
10
10
  export interface CommandContext<T extends OptionsRecord = {}, M extends keyof RegisteredMiddlewares = never> extends BaseContext, ExtendContext {
11
11
  }
12
12
  export declare class CommandContext<T extends OptionsRecord = {}, M extends keyof RegisteredMiddlewares = never> extends BaseContext {
13
13
  readonly client: UsingClient;
14
- readonly resolver: OptionResolver;
14
+ readonly resolver: OptionResolverStructure;
15
15
  readonly shardId: number;
16
16
  readonly command: Command | SubCommand;
17
- message: If<InferWithPrefix, Message | undefined, undefined>;
17
+ message: If<InferWithPrefix, MessageStructure | undefined, undefined>;
18
18
  interaction: If<InferWithPrefix, ChatInputCommandInteraction | undefined, ChatInputCommandInteraction>;
19
- messageResponse?: If<InferWithPrefix, Message | undefined>;
20
- constructor(client: UsingClient, data: ChatInputCommandInteraction | Message, resolver: OptionResolver, shardId: number, command: Command | SubCommand);
19
+ messageResponse?: If<InferWithPrefix, MessageStructure | undefined>;
20
+ constructor(client: UsingClient, data: ChatInputCommandInteraction | MessageStructure, resolver: OptionResolverStructure, shardId: number, command: Command | SubCommand);
21
21
  options: ContextOptions<T>;
22
22
  metadata: CommandMetadata<UnionToTuple<M>>;
23
23
  globalMetadata: GlobalMetadata;
24
24
  get proxy(): import("../..").APIRoutes;
25
25
  get t(): import("../..").__InternalParseLocale<import("./shared").DefaultLocale> & {
26
- get(locale?: string | undefined): import("./shared").DefaultLocale;
26
+ get(locale?: string): import("./shared").DefaultLocale;
27
27
  };
28
28
  get fullCommandName(): string;
29
- write<FR extends boolean = false>(body: InteractionCreateBodyRequest, fetchReply?: FR): Promise<When<FR, WebhookMessage | Message, void | WebhookMessage | Message>>;
29
+ write<FR extends boolean = false>(body: InteractionCreateBodyRequest, fetchReply?: FR): Promise<When<FR, WebhookMessageStructure | MessageStructure, void | WebhookMessageStructure | MessageStructure>>;
30
30
  deferReply(ephemeral?: boolean): Promise<void | Message>;
31
- editResponse(body: InteractionMessageUpdateBodyRequest): Promise<Message | WebhookMessage>;
31
+ editResponse(body: InteractionMessageUpdateBodyRequest): Promise<Message | import("../..").WebhookMessage>;
32
32
  deleteResponse(): Promise<void>;
33
- editOrReply<FR extends boolean = false>(body: InteractionCreateBodyRequest | InteractionMessageUpdateBodyRequest, fetchReply?: FR): Promise<When<FR, WebhookMessage | Message, void | WebhookMessage | Message>>;
34
- fetchResponse(): Promise<If<InferWithPrefix, WebhookMessage | Message | undefined, WebhookMessage | undefined>>;
33
+ editOrReply<FR extends boolean = false>(body: InteractionCreateBodyRequest | InteractionMessageUpdateBodyRequest, fetchReply?: FR): Promise<When<FR, WebhookMessageStructure | MessageStructure, void | WebhookMessageStructure | MessageStructure>>;
34
+ fetchResponse(): Promise<If<InferWithPrefix, WebhookMessageStructure | MessageStructure | undefined, WebhookMessageStructure | undefined>>;
35
35
  channel(mode?: 'rest' | 'flow'): Promise<If<InferWithPrefix, AllChannels | undefined, AllChannels>>;
36
36
  channel(mode?: 'cache'): ReturnCache<If<InferWithPrefix, AllChannels | undefined, AllChannels>>;
37
- me(mode?: 'rest' | 'flow'): Promise<GuildMember>;
38
- me(mode?: 'cache'): ReturnCache<GuildMember | undefined>;
39
- guild(mode?: 'rest' | 'flow'): Promise<Guild<'cached' | 'api'> | undefined>;
40
- guild(mode?: 'cache'): ReturnCache<Guild<'cached'> | undefined>;
37
+ me(mode?: 'rest' | 'flow'): Promise<GuildMemberStructure>;
38
+ me(mode?: 'cache'): ReturnCache<GuildMemberStructure | undefined>;
39
+ guild(mode?: 'rest' | 'flow'): Promise<GuildStructure<'cached' | 'api'> | undefined>;
40
+ guild(mode?: 'cache'): ReturnCache<GuildStructure<'cached'> | undefined>;
41
41
  get guildId(): string | undefined;
42
42
  get channelId(): string;
43
43
  get author(): import("../..").User;
44
- get member(): If<InferWithPrefix, GuildMember | InteractionGuildMember | undefined, InteractionGuildMember | undefined>;
44
+ get member(): If<InferWithPrefix, GuildMemberStructure | InteractionGuildMemberStructure | undefined, InteractionGuildMemberStructure | undefined>;
45
45
  isChat(): this is CommandContext;
46
46
  }
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.CommandContext = void 0;
4
- const v10_1 = require("discord-api-types/v10");
4
+ const types_1 = require("../../types");
5
5
  const structures_1 = require("../../structures");
6
6
  const basecontext_1 = require("../basecontext");
7
7
  class CommandContext extends basecontext_1.BaseContext {
@@ -18,11 +18,11 @@ class CommandContext extends basecontext_1.BaseContext {
18
18
  this.resolver = resolver;
19
19
  this.shardId = shardId;
20
20
  this.command = command;
21
- if (data instanceof structures_1.Message) {
22
- this.message = data;
21
+ if (data instanceof structures_1.ChatInputCommandInteraction) {
22
+ this.interaction = data;
23
23
  }
24
24
  else {
25
- this.interaction = data;
25
+ this.message = data;
26
26
  }
27
27
  }
28
28
  options = {};
@@ -45,7 +45,7 @@ class CommandContext extends basecontext_1.BaseContext {
45
45
  }
46
46
  async deferReply(ephemeral = false) {
47
47
  if (this.interaction)
48
- return this.interaction.deferReply(ephemeral ? v10_1.MessageFlags.Ephemeral : undefined);
48
+ return this.interaction.deferReply(ephemeral ? types_1.MessageFlags.Ephemeral : undefined);
49
49
  const options = this.client.options?.commands;
50
50
  return (this.messageResponse = await this.message[options?.reply?.(this) ? 'reply' : 'write'](options?.deferReplyResponse?.(this) ?? { content: 'Thinking...' }));
51
51
  }
@@ -0,0 +1,46 @@
1
+ import { type PermissionStrings } from '../../common';
2
+ import { ApplicationCommandType, type EntryPointCommandHandlerType, type ApplicationIntegrationType, type InteractionContextType, type LocaleString } from '../../types';
3
+ import type { RegisteredMiddlewares } from '../decorators';
4
+ import type { EntryPointContext } from './entrycontext';
5
+ import type { ExtraProps, UsingClient } from './shared';
6
+ export declare abstract class EntryPointCommand {
7
+ middlewares: (keyof RegisteredMiddlewares)[];
8
+ __filePath?: string;
9
+ __t?: {
10
+ name: string | undefined;
11
+ description: string | undefined;
12
+ };
13
+ name: string;
14
+ type: ApplicationCommandType;
15
+ nsfw?: boolean;
16
+ integrationTypes: ApplicationIntegrationType[];
17
+ contexts: InteractionContextType[];
18
+ description: string;
19
+ botPermissions?: bigint;
20
+ dm?: boolean;
21
+ handler: EntryPointCommandHandlerType;
22
+ name_localizations?: Partial<Record<LocaleString, string>>;
23
+ description_localizations?: Partial<Record<LocaleString, string>>;
24
+ props: ExtraProps;
25
+ toJSON(): {
26
+ handler: EntryPointCommandHandlerType;
27
+ name: string;
28
+ type: ApplicationCommandType;
29
+ nsfw: boolean | undefined;
30
+ default_member_permissions: null;
31
+ guild_id: null;
32
+ description: string;
33
+ name_localizations: Partial<Record<"id" | "en-US" | "en-GB" | "bg" | "zh-CN" | "zh-TW" | "hr" | "cs" | "da" | "nl" | "fi" | "fr" | "de" | "el" | "hi" | "hu" | "it" | "ja" | "ko" | "lt" | "no" | "pl" | "pt-BR" | "ro" | "ru" | "es-ES" | "es-419" | "sv-SE" | "th" | "tr" | "uk" | "vi", string>> | undefined;
34
+ description_localizations: Partial<Record<"id" | "en-US" | "en-GB" | "bg" | "zh-CN" | "zh-TW" | "hr" | "cs" | "da" | "nl" | "fi" | "fr" | "de" | "el" | "hi" | "hu" | "it" | "ja" | "ko" | "lt" | "no" | "pl" | "pt-BR" | "ro" | "ru" | "es-ES" | "es-419" | "sv-SE" | "th" | "tr" | "uk" | "vi", string>> | undefined;
35
+ dm_permission: boolean | undefined;
36
+ contexts: InteractionContextType[];
37
+ integration_types: ApplicationIntegrationType[];
38
+ };
39
+ reload(): Promise<void>;
40
+ abstract run?(context: EntryPointContext): any;
41
+ onAfterRun?(context: EntryPointContext, error: unknown | undefined): any;
42
+ onRunError(context: EntryPointContext<never>, error: unknown): any;
43
+ onMiddlewaresError(context: EntryPointContext<never>, error: string): any;
44
+ onBotPermissionsFail(context: EntryPointContext<never>, permissions: PermissionStrings): any;
45
+ onInternalError(client: UsingClient, command: EntryPointCommand, error?: unknown): any;
46
+ }
@@ -0,0 +1,56 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.EntryPointCommand = void 0;
4
+ const common_1 = require("../../common");
5
+ const types_1 = require("../../types");
6
+ class EntryPointCommand {
7
+ middlewares = [];
8
+ __filePath;
9
+ __t;
10
+ name;
11
+ type = types_1.ApplicationCommandType.PrimaryEntryPoint;
12
+ nsfw;
13
+ integrationTypes = [];
14
+ contexts = [];
15
+ description;
16
+ botPermissions;
17
+ dm;
18
+ handler;
19
+ name_localizations;
20
+ description_localizations;
21
+ props = {};
22
+ toJSON() {
23
+ return {
24
+ handler: this.handler,
25
+ name: this.name,
26
+ type: this.type,
27
+ nsfw: this.nsfw,
28
+ default_member_permissions: null,
29
+ guild_id: null,
30
+ description: this.description,
31
+ name_localizations: this.name_localizations,
32
+ description_localizations: this.description_localizations,
33
+ dm_permission: this.dm,
34
+ contexts: this.contexts,
35
+ integration_types: this.integrationTypes,
36
+ };
37
+ }
38
+ async reload() {
39
+ delete require.cache[this.__filePath];
40
+ const __tempCommand = await (0, common_1.magicImport)(this.__filePath).then(x => x.default ?? x);
41
+ Object.setPrototypeOf(this, __tempCommand.prototype);
42
+ }
43
+ onRunError(context, error) {
44
+ context.client.logger.fatal(`${this.name}.<onRunError>`, context.author.id, error);
45
+ }
46
+ onMiddlewaresError(context, error) {
47
+ context.client.logger.fatal(`${this.name}.<onMiddlewaresError>`, context.author.id, error);
48
+ }
49
+ onBotPermissionsFail(context, permissions) {
50
+ context.client.logger.fatal(`${this.name}.<onBotPermissionsFail>`, context.author.id, permissions);
51
+ }
52
+ onInternalError(client, command, error) {
53
+ client.logger.fatal(command.name, error);
54
+ }
55
+ }
56
+ exports.EntryPointCommand = EntryPointCommand;
@@ -0,0 +1,40 @@
1
+ import type { ReturnCache } from '../..';
2
+ import type { InteractionCreateBodyRequest, InteractionMessageUpdateBodyRequest, ModalCreateBodyRequest, UnionToTuple, When } from '../../common';
3
+ import type { AllChannels, EntryPointInteraction } from '../../structures';
4
+ import { BaseContext } from '../basecontext';
5
+ import type { RegisteredMiddlewares } from '../decorators';
6
+ import type { CommandMetadata, ExtendContext, GlobalMetadata, UsingClient } from './shared';
7
+ import type { GuildMemberStructure, GuildStructure, MessageStructure, WebhookMessageStructure } from '../../client/transformers';
8
+ import type { EntryPointCommand } from './entryPoint';
9
+ export interface EntryPointContext<M extends keyof RegisteredMiddlewares = never> extends BaseContext, ExtendContext {
10
+ }
11
+ export declare class EntryPointContext<M extends keyof RegisteredMiddlewares = never> extends BaseContext {
12
+ readonly client: UsingClient;
13
+ readonly interaction: EntryPointInteraction;
14
+ readonly shardId: number;
15
+ readonly command: EntryPointCommand;
16
+ constructor(client: UsingClient, interaction: EntryPointInteraction, shardId: number, command: EntryPointCommand);
17
+ metadata: CommandMetadata<UnionToTuple<M>>;
18
+ globalMetadata: GlobalMetadata;
19
+ get t(): import("../..").__InternalParseLocale<import("./shared").DefaultLocale> & {
20
+ get(locale?: string): import("./shared").DefaultLocale;
21
+ };
22
+ get fullCommandName(): string;
23
+ write<FR extends boolean = false>(body: InteractionCreateBodyRequest, fetchReply?: FR): Promise<When<FR, WebhookMessageStructure, void | WebhookMessageStructure>>;
24
+ modal(body: ModalCreateBodyRequest): Promise<void>;
25
+ deferReply(ephemeral?: boolean): Promise<void>;
26
+ editResponse(body: InteractionMessageUpdateBodyRequest): Promise<import("../..").WebhookMessage>;
27
+ deleteResponse(): Promise<void | undefined>;
28
+ editOrReply<FR extends boolean = false>(body: InteractionCreateBodyRequest | InteractionMessageUpdateBodyRequest, fetchReply?: FR): Promise<When<FR, WebhookMessageStructure | MessageStructure, void | WebhookMessageStructure | MessageStructure>>;
29
+ fetchResponse(): Promise<import("../..").WebhookMessage | undefined>;
30
+ channel(mode?: 'rest' | 'flow'): Promise<AllChannels>;
31
+ channel(mode?: 'cache'): ReturnCache<AllChannels>;
32
+ me(mode?: 'rest' | 'flow'): Promise<GuildMemberStructure>;
33
+ me(mode?: 'cache'): ReturnCache<GuildMemberStructure | undefined>;
34
+ guild(mode?: 'rest' | 'flow'): Promise<GuildStructure<'cached' | 'api'> | undefined>;
35
+ guild(mode?: 'cache'): ReturnCache<GuildStructure<'cached'> | undefined>;
36
+ get guildId(): string | undefined;
37
+ get channelId(): string;
38
+ get author(): import("../..").User;
39
+ get member(): import("../..").InteractionGuildMember | undefined;
40
+ }
@@ -0,0 +1,85 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.EntryPointContext = void 0;
4
+ const types_1 = require("../../types");
5
+ const basecontext_1 = require("../basecontext");
6
+ class EntryPointContext extends basecontext_1.BaseContext {
7
+ client;
8
+ interaction;
9
+ shardId;
10
+ command;
11
+ constructor(client, interaction, shardId, command) {
12
+ super(client);
13
+ this.client = client;
14
+ this.interaction = interaction;
15
+ this.shardId = shardId;
16
+ this.command = command;
17
+ }
18
+ metadata = {};
19
+ globalMetadata = {};
20
+ get t() {
21
+ return this.client.t(this.interaction.locale ?? this.client.langs.defaultLang ?? 'en-US');
22
+ }
23
+ get fullCommandName() {
24
+ return this.command.name;
25
+ }
26
+ write(body, fetchReply) {
27
+ return this.interaction.write(body, fetchReply);
28
+ }
29
+ modal(body) {
30
+ return this.interaction.modal(body);
31
+ }
32
+ deferReply(ephemeral = false) {
33
+ return this.interaction.deferReply(ephemeral ? types_1.MessageFlags.Ephemeral : undefined);
34
+ }
35
+ editResponse(body) {
36
+ return this.interaction.editResponse(body);
37
+ }
38
+ deleteResponse() {
39
+ return this.interaction.deleteResponse();
40
+ }
41
+ editOrReply(body, fetchReply) {
42
+ return this.interaction.editOrReply(body, fetchReply);
43
+ }
44
+ fetchResponse() {
45
+ return this.interaction.fetchResponse();
46
+ }
47
+ channel(mode = 'cache') {
48
+ if (this.interaction.channel && mode === 'cache')
49
+ return this.client.cache.adapter.isAsync ? Promise.resolve(this.interaction.channel) : this.interaction.channel;
50
+ return this.client.channels.fetch(this.channelId, mode === 'rest');
51
+ }
52
+ me(mode = 'cache') {
53
+ if (!this.guildId)
54
+ return mode === 'cache' ? (this.client.cache.adapter.isAsync ? Promise.resolve() : undefined) : Promise.resolve();
55
+ switch (mode) {
56
+ case 'cache':
57
+ return this.client.cache.members?.get(this.client.botId, this.guildId);
58
+ default:
59
+ return this.client.members.fetch(this.guildId, this.client.botId, mode === 'rest');
60
+ }
61
+ }
62
+ guild(mode = 'cache') {
63
+ if (!this.guildId)
64
+ return (mode === 'cache' ? (this.client.cache.adapter.isAsync ? Promise.resolve() : undefined) : Promise.resolve());
65
+ switch (mode) {
66
+ case 'cache':
67
+ return this.client.cache.guilds?.get(this.guildId);
68
+ default:
69
+ return this.client.guilds.fetch(this.guildId, mode === 'rest');
70
+ }
71
+ }
72
+ get guildId() {
73
+ return this.interaction.guildId;
74
+ }
75
+ get channelId() {
76
+ return this.interaction.channelId;
77
+ }
78
+ get author() {
79
+ return this.interaction.user;
80
+ }
81
+ get member() {
82
+ return this.interaction.member;
83
+ }
84
+ }
85
+ exports.EntryPointContext = EntryPointContext;
@@ -1,4 +1,4 @@
1
- import type { ApplicationCommandType, ApplicationIntegrationType, InteractionContextType, LocaleString } from 'discord-api-types/v10';
1
+ import type { ApplicationCommandType, ApplicationIntegrationType, InteractionContextType, LocaleString } from '../../types';
2
2
  import { type PermissionStrings } from '../../common';
3
3
  import type { RegisteredMiddlewares } from '../decorators';
4
4
  import type { MenuCommandContext } from './menucontext';
@@ -42,6 +42,5 @@ export declare abstract class ContextMenuCommand {
42
42
  onRunError(context: MenuCommandContext<any, never>, error: unknown): any;
43
43
  onMiddlewaresError(context: MenuCommandContext<any, never>, error: string): any;
44
44
  onBotPermissionsFail(context: MenuCommandContext<any, never>, permissions: PermissionStrings): any;
45
- onPermissionsFail(context: MenuCommandContext<any, never>, permissions: PermissionStrings): any;
46
- onInternalError(client: UsingClient, error?: unknown): any;
45
+ onInternalError(client: UsingClient, command: ContextMenuCommand, error?: unknown): any;
47
46
  }
@@ -48,11 +48,8 @@ class ContextMenuCommand {
48
48
  onBotPermissionsFail(context, permissions) {
49
49
  context.client.logger.fatal(`${this.name}.<onBotPermissionsFail>`, context.author.id, permissions);
50
50
  }
51
- onPermissionsFail(context, permissions) {
52
- context.client.logger.fatal(`${this.name}.<onPermissionsFail>`, context.author.id, permissions);
53
- }
54
- onInternalError(client, error) {
55
- client.logger.fatal(error);
51
+ onInternalError(client, command, error) {
52
+ client.logger.fatal(command.name, error);
56
53
  }
57
54
  }
58
55
  exports.ContextMenuCommand = ContextMenuCommand;
@@ -1,10 +1,11 @@
1
- import type { ContextMenuCommand, ReturnCache, WebhookMessage } from '../..';
1
+ import type { ContextMenuCommand, ReturnCache } from '../..';
2
2
  import { type InteractionCreateBodyRequest, type InteractionMessageUpdateBodyRequest, type ModalCreateBodyRequest, type UnionToTuple, type When } from '../../common';
3
- import { Message, User, type AllChannels, type Guild, type GuildMember, type MessageCommandInteraction, type UserCommandInteraction } from '../../structures';
3
+ import type { AllChannels, MessageCommandInteraction, UserCommandInteraction } from '../../structures';
4
4
  import { BaseContext } from '../basecontext';
5
5
  import type { RegisteredMiddlewares } from '../decorators';
6
6
  import type { CommandMetadata, ExtendContext, GlobalMetadata, UsingClient } from './shared';
7
- export type InteractionTarget<T> = T extends MessageCommandInteraction ? Message : User;
7
+ import { type GuildMemberStructure, type GuildStructure, type MessageStructure, type UserStructure, type WebhookMessageStructure } from '../../client/transformers';
8
+ export type InteractionTarget<T> = T extends MessageCommandInteraction ? MessageStructure : UserStructure;
8
9
  export interface MenuCommandContext<T extends MessageCommandInteraction | UserCommandInteraction, M extends keyof RegisteredMiddlewares = never> extends BaseContext, ExtendContext {
9
10
  }
10
11
  export declare class MenuCommandContext<T extends MessageCommandInteraction | UserCommandInteraction, M extends keyof RegisteredMiddlewares = never> extends BaseContext {
@@ -17,25 +18,25 @@ export declare class MenuCommandContext<T extends MessageCommandInteraction | Us
17
18
  globalMetadata: GlobalMetadata;
18
19
  get target(): InteractionTarget<T>;
19
20
  get t(): import("../..").__InternalParseLocale<import("./shared").DefaultLocale> & {
20
- get(locale?: string | undefined): import("./shared").DefaultLocale;
21
+ get(locale?: string): import("./shared").DefaultLocale;
21
22
  };
22
23
  get fullCommandName(): string;
23
- write<FR extends boolean = false>(body: InteractionCreateBodyRequest, fetchReply?: FR): Promise<When<FR, WebhookMessage, void | WebhookMessage>>;
24
+ write<FR extends boolean = false>(body: InteractionCreateBodyRequest, fetchReply?: FR): Promise<When<FR, WebhookMessageStructure, void | WebhookMessageStructure>>;
24
25
  modal(body: ModalCreateBodyRequest): Promise<void>;
25
26
  deferReply(ephemeral?: boolean): Promise<void>;
26
- editResponse(body: InteractionMessageUpdateBodyRequest): Promise<WebhookMessage>;
27
+ editResponse(body: InteractionMessageUpdateBodyRequest): Promise<import("../..").WebhookMessage>;
27
28
  deleteResponse(): Promise<void | undefined>;
28
- editOrReply<FR extends boolean = false>(body: InteractionCreateBodyRequest | InteractionMessageUpdateBodyRequest, fetchReply?: FR): Promise<When<FR, WebhookMessage | Message, void | WebhookMessage | Message>>;
29
- fetchResponse(): Promise<WebhookMessage | undefined>;
29
+ editOrReply<FR extends boolean = false>(body: InteractionCreateBodyRequest | InteractionMessageUpdateBodyRequest, fetchReply?: FR): Promise<When<FR, WebhookMessageStructure | MessageStructure, void | WebhookMessageStructure | MessageStructure>>;
30
+ fetchResponse(): Promise<import("../..").WebhookMessage | undefined>;
30
31
  channel(mode?: 'rest' | 'flow'): Promise<AllChannels>;
31
32
  channel(mode?: 'cache'): ReturnCache<AllChannels>;
32
- me(mode?: 'rest' | 'flow'): Promise<GuildMember>;
33
- me(mode?: 'cache'): ReturnCache<GuildMember | undefined>;
34
- guild(mode?: 'rest' | 'flow'): Promise<Guild<'cached' | 'api'> | undefined>;
35
- guild(mode?: 'cache'): ReturnCache<Guild<'cached'> | undefined>;
33
+ me(mode?: 'rest' | 'flow'): Promise<GuildMemberStructure>;
34
+ me(mode?: 'cache'): ReturnCache<GuildMemberStructure | undefined>;
35
+ guild(mode?: 'rest' | 'flow'): Promise<GuildStructure<'cached' | 'api'> | undefined>;
36
+ guild(mode?: 'cache'): ReturnCache<GuildStructure<'cached'> | undefined>;
36
37
  get guildId(): string | undefined;
37
38
  get channelId(): string;
38
- get author(): User;
39
+ get author(): import("../..").User;
39
40
  get member(): import("../..").InteractionGuildMember | undefined;
40
41
  isMenu(): this is MenuCommandContext<UserCommandInteraction | MessageCommandInteraction>;
41
42
  isMenuUser(): this is MenuCommandContext<UserCommandInteraction>;
@@ -1,10 +1,10 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.MenuCommandContext = void 0;
4
- const v10_1 = require("discord-api-types/v10");
4
+ const types_1 = require("../../types");
5
5
  const common_1 = require("../../common");
6
- const structures_1 = require("../../structures");
7
6
  const basecontext_1 = require("../basecontext");
7
+ const transformers_1 = require("../../client/transformers");
8
8
  class MenuCommandContext extends basecontext_1.BaseContext {
9
9
  client;
10
10
  interaction;
@@ -22,13 +22,13 @@ class MenuCommandContext extends basecontext_1.BaseContext {
22
22
  // biome-ignore lint/suspicious/useGetterReturn: default don't exist.
23
23
  get target() {
24
24
  switch (this.interaction.data.type) {
25
- case v10_1.ApplicationCommandType.Message: {
25
+ case types_1.ApplicationCommandType.Message: {
26
26
  const data = this.interaction.data.resolved.messages[this.interaction.data.targetId];
27
- return new structures_1.Message(this.client, (0, common_1.toSnakeCase)(data));
27
+ return transformers_1.Transformers.Message(this.client, (0, common_1.toSnakeCase)(data));
28
28
  }
29
- case v10_1.ApplicationCommandType.User: {
29
+ case types_1.ApplicationCommandType.User: {
30
30
  const data = this.interaction.data.resolved.users[this.interaction.data.targetId];
31
- return new structures_1.User(this.client, (0, common_1.toSnakeCase)(data));
31
+ return transformers_1.Transformers.User(this.client, (0, common_1.toSnakeCase)(data));
32
32
  }
33
33
  }
34
34
  }
@@ -45,7 +45,7 @@ class MenuCommandContext extends basecontext_1.BaseContext {
45
45
  return this.interaction.modal(body);
46
46
  }
47
47
  deferReply(ephemeral = false) {
48
- return this.interaction.deferReply(ephemeral ? v10_1.MessageFlags.Ephemeral : undefined);
48
+ return this.interaction.deferReply(ephemeral ? types_1.MessageFlags.Ephemeral : undefined);
49
49
  }
50
50
  editResponse(body) {
51
51
  return this.interaction.editResponse(body);
@@ -100,10 +100,10 @@ class MenuCommandContext extends basecontext_1.BaseContext {
100
100
  return true;
101
101
  }
102
102
  isMenuUser() {
103
- return this.target instanceof structures_1.User;
103
+ return this.interaction.data.type === types_1.ApplicationCommandType.User;
104
104
  }
105
105
  isMenuMessage() {
106
- return this.target instanceof structures_1.Message;
106
+ return this.interaction.data.type === types_1.ApplicationCommandType.Message;
107
107
  }
108
108
  }
109
109
  exports.MenuCommandContext = MenuCommandContext;
@@ -1,5 +1,5 @@
1
- import { ApplicationCommandOptionType, type APIApplicationCommandOptionChoice, type ChannelType } from 'discord-api-types/v10';
2
- import type { AutocompleteCallback, MenuCommandContext, OnAutocompleteErrorCallback, ReturnOptionsTypes, __TypesWrapper } from '..';
1
+ import { ApplicationCommandOptionType, type APIApplicationCommandOptionChoice, type ChannelType } from '../../types';
2
+ import type { AutocompleteCallback, EntryPointContext, MenuCommandContext, OnAutocompleteErrorCallback, ReturnOptionsTypes, __TypesWrapper } from '..';
3
3
  import type { MessageCommandInteraction, UserCommandInteraction } from '../../structures';
4
4
  import type { CommandContext } from './chatcontext';
5
5
  import type { MiddlewareContext } from './shared';
@@ -65,4 +65,5 @@ export declare function createNumberOption<T extends SeyfertNumberOption = Seyfe
65
65
  export declare function createAttachmentOption<T extends SeyfertAttachmentOption = SeyfertAttachmentOption>(data: T): T & {
66
66
  readonly type: ApplicationCommandOptionType.Attachment;
67
67
  };
68
- export declare function createMiddleware<T = any, C extends CommandContext | MenuCommandContext<MessageCommandInteraction<boolean> | UserCommandInteraction<boolean>> | ComponentContext | ModalContext = CommandContext | MenuCommandContext<MessageCommandInteraction<boolean> | UserCommandInteraction<boolean>> | ComponentContext | ModalContext>(data: MiddlewareContext<T, C>): MiddlewareContext<T, C>;
68
+ export type AnyContext = CommandContext | MenuCommandContext<MessageCommandInteraction<boolean> | UserCommandInteraction<boolean>> | ComponentContext | ModalContext | EntryPointContext;
69
+ export declare function createMiddleware<T = any, C extends AnyContext = AnyContext>(data: MiddlewareContext<T, C>): MiddlewareContext<T, C>;
@@ -1,44 +1,43 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.createMiddleware = exports.createAttachmentOption = exports.createNumberOption = exports.createMentionableOption = exports.createRoleOption = exports.createChannelOption = exports.createUserOption = exports.createBooleanOption = exports.createIntegerOption = exports.createStringOption = void 0;
4
- const v10_1 = require("discord-api-types/v10");
3
+ exports.createStringOption = createStringOption;
4
+ exports.createIntegerOption = createIntegerOption;
5
+ exports.createBooleanOption = createBooleanOption;
6
+ exports.createUserOption = createUserOption;
7
+ exports.createChannelOption = createChannelOption;
8
+ exports.createRoleOption = createRoleOption;
9
+ exports.createMentionableOption = createMentionableOption;
10
+ exports.createNumberOption = createNumberOption;
11
+ exports.createAttachmentOption = createAttachmentOption;
12
+ exports.createMiddleware = createMiddleware;
13
+ const types_1 = require("../../types");
5
14
  function createStringOption(data) {
6
- return { ...data, type: v10_1.ApplicationCommandOptionType.String };
15
+ return { ...data, type: types_1.ApplicationCommandOptionType.String };
7
16
  }
8
- exports.createStringOption = createStringOption;
9
17
  function createIntegerOption(data) {
10
- return { ...data, type: v10_1.ApplicationCommandOptionType.Integer };
18
+ return { ...data, type: types_1.ApplicationCommandOptionType.Integer };
11
19
  }
12
- exports.createIntegerOption = createIntegerOption;
13
20
  function createBooleanOption(data) {
14
- return { ...data, type: v10_1.ApplicationCommandOptionType.Boolean };
21
+ return { ...data, type: types_1.ApplicationCommandOptionType.Boolean };
15
22
  }
16
- exports.createBooleanOption = createBooleanOption;
17
23
  function createUserOption(data) {
18
- return { ...data, type: v10_1.ApplicationCommandOptionType.User };
24
+ return { ...data, type: types_1.ApplicationCommandOptionType.User };
19
25
  }
20
- exports.createUserOption = createUserOption;
21
26
  function createChannelOption(data) {
22
- return { ...data, type: v10_1.ApplicationCommandOptionType.Channel };
27
+ return { ...data, type: types_1.ApplicationCommandOptionType.Channel };
23
28
  }
24
- exports.createChannelOption = createChannelOption;
25
29
  function createRoleOption(data) {
26
- return { ...data, type: v10_1.ApplicationCommandOptionType.Role };
30
+ return { ...data, type: types_1.ApplicationCommandOptionType.Role };
27
31
  }
28
- exports.createRoleOption = createRoleOption;
29
32
  function createMentionableOption(data) {
30
- return { ...data, type: v10_1.ApplicationCommandOptionType.Mentionable };
33
+ return { ...data, type: types_1.ApplicationCommandOptionType.Mentionable };
31
34
  }
32
- exports.createMentionableOption = createMentionableOption;
33
35
  function createNumberOption(data) {
34
- return { ...data, type: v10_1.ApplicationCommandOptionType.Number };
36
+ return { ...data, type: types_1.ApplicationCommandOptionType.Number };
35
37
  }
36
- exports.createNumberOption = createNumberOption;
37
38
  function createAttachmentOption(data) {
38
- return { ...data, type: v10_1.ApplicationCommandOptionType.Attachment };
39
+ return { ...data, type: types_1.ApplicationCommandOptionType.Attachment };
39
40
  }
40
- exports.createAttachmentOption = createAttachmentOption;
41
41
  function createMiddleware(data) {
42
42
  return data;
43
43
  }
44
- exports.createMiddleware = createMiddleware;
@@ -1,6 +1,6 @@
1
- import type { ChannelType } from 'discord-api-types/v10';
2
1
  import type { BaseClient } from '../../client/base';
3
2
  import type { IsStrictlyUndefined } from '../../common';
3
+ import type { ChannelType } from '../../types';
4
4
  import type { RegisteredMiddlewares } from '../decorators';
5
5
  export type OKFunction<T> = (value: T) => void;
6
6
  export type StopFunction = (error: string) => void;
@@ -22,6 +22,8 @@ export interface UsingClient extends BaseClient {
22
22
  export type ParseClient<T extends BaseClient> = T;
23
23
  export interface InternalOptions {
24
24
  }
25
+ export interface CustomStructures {
26
+ }
25
27
  export type MiddlewareContext<T = any, C = any> = (context: {
26
28
  context: C;
27
29
  next: NextFunction<T>;