seyfert 1.5.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 (427) 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 +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 +18 -9
  50. package/lib/cache/index.js +319 -21
  51. package/lib/cache/resources/bans.d.ts +9 -6
  52. package/lib/cache/resources/bans.js +13 -4
  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 +22 -6
  67. package/lib/cache/resources/messages.d.ts +11 -7
  68. package/lib/cache/resources/messages.js +19 -7
  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 +28 -20
  84. package/lib/client/base.js +58 -56
  85. package/lib/client/client.d.ts +7 -16
  86. package/lib/client/client.js +29 -31
  87. package/lib/client/collectors.d.ts +10 -10
  88. package/lib/client/collectors.js +26 -1
  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 +14 -14
  98. package/lib/client/workerclient.js +112 -66
  99. package/lib/commands/applications/chat.d.ts +35 -34
  100. package/lib/commands/applications/chat.js +5 -9
  101. package/lib/commands/applications/chatcontext.d.ts +17 -17
  102. package/lib/commands/applications/chatcontext.js +5 -5
  103. package/lib/commands/applications/menu.d.ts +2 -3
  104. package/lib/commands/applications/menu.js +2 -5
  105. package/lib/commands/applications/menucontext.d.ts +14 -13
  106. package/lib/commands/applications/menucontext.js +9 -9
  107. package/lib/commands/applications/options.d.ts +1 -1
  108. package/lib/commands/applications/options.js +20 -21
  109. package/lib/commands/applications/shared.d.ts +3 -1
  110. package/lib/commands/decorators.d.ts +38 -20
  111. package/lib/commands/decorators.js +17 -18
  112. package/lib/commands/handle.d.ts +64 -0
  113. package/lib/commands/handle.js +685 -0
  114. package/lib/commands/handler.d.ts +27 -18
  115. package/lib/commands/handler.js +290 -164
  116. package/lib/commands/optionresolver.d.ts +13 -13
  117. package/lib/commands/optionresolver.js +23 -28
  118. package/lib/common/bot/watcher.d.ts +4 -33
  119. package/lib/common/bot/watcher.js +0 -109
  120. package/lib/common/index.d.ts +1 -0
  121. package/lib/common/index.js +1 -0
  122. package/lib/common/it/colors.js +48 -49
  123. package/lib/common/it/formatter.d.ts +32 -0
  124. package/lib/common/it/formatter.js +42 -0
  125. package/lib/common/it/logger.d.ts +0 -1
  126. package/lib/common/it/logger.js +3 -3
  127. package/lib/common/it/utils.d.ts +15 -2
  128. package/lib/common/it/utils.js +78 -17
  129. package/lib/common/shorters/application.d.ts +56 -0
  130. package/lib/common/shorters/application.js +81 -0
  131. package/lib/common/shorters/bans.d.ts +4 -5
  132. package/lib/common/shorters/bans.js +3 -3
  133. package/lib/common/shorters/channels.d.ts +7 -6
  134. package/lib/common/shorters/channels.js +19 -15
  135. package/lib/common/shorters/emojis.d.ts +5 -6
  136. package/lib/common/shorters/emojis.js +5 -5
  137. package/lib/common/shorters/guilds.d.ts +18 -16
  138. package/lib/common/shorters/guilds.js +31 -26
  139. package/lib/common/shorters/interaction.d.ts +6 -6
  140. package/lib/common/shorters/interaction.js +3 -2
  141. package/lib/common/shorters/members.d.ts +29 -12
  142. package/lib/common/shorters/members.js +55 -16
  143. package/lib/common/shorters/messages.d.ts +7 -8
  144. package/lib/common/shorters/messages.js +8 -7
  145. package/lib/common/shorters/reactions.d.ts +3 -3
  146. package/lib/common/shorters/reactions.js +11 -11
  147. package/lib/common/shorters/roles.d.ts +9 -7
  148. package/lib/common/shorters/roles.js +26 -7
  149. package/lib/common/shorters/templates.d.ts +7 -8
  150. package/lib/common/shorters/templates.js +7 -7
  151. package/lib/common/shorters/threads.d.ts +6 -7
  152. package/lib/common/shorters/threads.js +6 -9
  153. package/lib/common/shorters/users.d.ts +4 -4
  154. package/lib/common/shorters/users.js +8 -4
  155. package/lib/common/shorters/webhook.d.ts +10 -10
  156. package/lib/common/shorters/webhook.js +10 -9
  157. package/lib/common/types/resolvables.d.ts +2 -2
  158. package/lib/common/types/util.d.ts +3 -1
  159. package/lib/common/types/write.d.ts +1 -1
  160. package/lib/components/ActionRow.d.ts +1 -1
  161. package/lib/components/BaseComponent.d.ts +1 -1
  162. package/lib/components/BaseComponent.js +1 -1
  163. package/lib/components/BaseSelectMenuComponent.d.ts +1 -1
  164. package/lib/components/ButtonComponent.d.ts +17 -7
  165. package/lib/components/ButtonComponent.js +19 -2
  166. package/lib/components/ChannelSelectMenuComponent.d.ts +3 -3
  167. package/lib/components/MentionableSelectMenuComponent.d.ts +2 -2
  168. package/lib/components/RoleSelectMenuComponent.d.ts +2 -2
  169. package/lib/components/StringSelectMenuComponent.d.ts +2 -2
  170. package/lib/components/TextInputComponent.d.ts +2 -2
  171. package/lib/components/UserSelectMenuComponent.d.ts +2 -2
  172. package/lib/components/componentcommand.js +2 -2
  173. package/lib/components/componentcontext.d.ts +10 -9
  174. package/lib/components/componentcontext.js +8 -8
  175. package/lib/components/handler.d.ts +15 -14
  176. package/lib/components/handler.js +89 -93
  177. package/lib/components/index.d.ts +3 -3
  178. package/lib/components/index.js +12 -10
  179. package/lib/components/modalcontext.d.ts +12 -11
  180. package/lib/components/modalcontext.js +2 -2
  181. package/lib/deps/mixer.d.ts +8 -0
  182. package/lib/deps/mixer.js +66 -0
  183. package/lib/events/handler.d.ts +35 -13
  184. package/lib/events/handler.js +58 -25
  185. package/lib/events/hooks/application_command.d.ts +2 -2
  186. package/lib/events/hooks/auto_moderation.d.ts +6 -7
  187. package/lib/events/hooks/auto_moderation.js +4 -4
  188. package/lib/events/hooks/channel.d.ts +2 -2
  189. package/lib/events/hooks/channel.js +4 -7
  190. package/lib/events/hooks/custom.d.ts +3 -3
  191. package/lib/events/hooks/dispatch.d.ts +3 -4
  192. package/lib/events/hooks/dispatch.js +2 -2
  193. package/lib/events/hooks/entitlement.d.ts +5 -37
  194. package/lib/events/hooks/entitlement.js +7 -7
  195. package/lib/events/hooks/guild.d.ts +125 -125
  196. package/lib/events/hooks/guild.js +13 -15
  197. package/lib/events/hooks/integration.d.ts +27 -28
  198. package/lib/events/hooks/integration.js +3 -3
  199. package/lib/events/hooks/interactions.d.ts +2 -2
  200. package/lib/events/hooks/invite.d.ts +18 -17
  201. package/lib/events/hooks/message.d.ts +69 -54
  202. package/lib/events/hooks/message.js +4 -8
  203. package/lib/events/hooks/presence.d.ts +17 -16
  204. package/lib/events/hooks/stage.d.ts +4 -4
  205. package/lib/events/hooks/thread.d.ts +132 -63
  206. package/lib/events/hooks/thread.js +4 -4
  207. package/lib/events/hooks/typing.d.ts +28 -6
  208. package/lib/events/hooks/typing.js +2 -2
  209. package/lib/events/hooks/user.d.ts +3 -3
  210. package/lib/events/hooks/user.js +2 -2
  211. package/lib/events/hooks/voice.d.ts +28 -3
  212. package/lib/events/hooks/voice.js +8 -4
  213. package/lib/events/hooks/webhook.d.ts +1 -1
  214. package/lib/index.d.ts +5 -14
  215. package/lib/index.js +7 -12
  216. package/lib/langs/handler.d.ts +14 -10
  217. package/lib/langs/handler.js +40 -9
  218. package/lib/structures/AutoModerationRule.d.ts +4 -4
  219. package/lib/structures/AutoModerationRule.js +1 -2
  220. package/lib/structures/ClientUser.d.ts +1 -1
  221. package/lib/structures/Entitlement.d.ts +10 -0
  222. package/lib/structures/Entitlement.js +16 -0
  223. package/lib/structures/Guild.d.ts +33 -34
  224. package/lib/structures/Guild.js +5 -2
  225. package/lib/structures/GuildBan.d.ts +6 -6
  226. package/lib/structures/GuildBan.js +2 -1
  227. package/lib/structures/GuildEmoji.d.ts +4 -4
  228. package/lib/structures/GuildEmoji.js +3 -2
  229. package/lib/structures/GuildMember.d.ts +20 -17
  230. package/lib/structures/GuildMember.js +18 -8
  231. package/lib/structures/GuildPreview.d.ts +1 -1
  232. package/lib/structures/GuildRole.d.ts +5 -3
  233. package/lib/structures/GuildRole.js +8 -1
  234. package/lib/structures/GuildTemplate.d.ts +2 -2
  235. package/lib/structures/GuildTemplate.js +1 -1
  236. package/lib/structures/Interaction.d.ts +53 -36
  237. package/lib/structures/Interaction.js +127 -91
  238. package/lib/structures/Message.d.ts +29 -30
  239. package/lib/structures/Message.js +8 -9
  240. package/lib/structures/Poll.d.ts +4 -3
  241. package/lib/structures/Poll.js +6 -2
  242. package/lib/structures/Sticker.d.ts +7 -7
  243. package/lib/structures/Sticker.js +7 -7
  244. package/lib/structures/User.d.ts +5 -4
  245. package/lib/structures/User.js +2 -1
  246. package/lib/structures/VoiceState.d.ts +15 -11
  247. package/lib/structures/VoiceState.js +35 -17
  248. package/lib/structures/Webhook.d.ts +6 -7
  249. package/lib/structures/Webhook.js +6 -7
  250. package/lib/structures/channels.d.ts +11 -10
  251. package/lib/structures/channels.js +70 -65
  252. package/lib/structures/extra/BaseGuild.d.ts +1 -1
  253. package/lib/structures/extra/BaseGuild.js +3 -3
  254. package/lib/structures/extra/BitField.d.ts +1 -1
  255. package/lib/structures/extra/BitField.js +3 -2
  256. package/lib/structures/extra/DiscordBase.js +2 -2
  257. package/lib/structures/extra/Permissions.d.ts +3 -1
  258. package/lib/structures/extra/Permissions.js +8 -3
  259. package/lib/types/gateway.d.ts +1537 -0
  260. package/lib/types/gateway.js +4 -0
  261. package/lib/types/index.d.ts +9 -1
  262. package/lib/types/index.js +28 -1
  263. package/lib/types/payloads/_interactions/_applicationCommands/_chatInput/attachment.d.ts +5 -0
  264. package/lib/types/payloads/_interactions/_applicationCommands/_chatInput/attachment.js +2 -0
  265. package/lib/types/payloads/_interactions/_applicationCommands/_chatInput/base.d.ts +22 -0
  266. package/lib/types/payloads/_interactions/_applicationCommands/_chatInput/base.js +2 -0
  267. package/lib/types/payloads/_interactions/_applicationCommands/_chatInput/boolean.d.ts +4 -0
  268. package/lib/types/payloads/_interactions/_applicationCommands/_chatInput/boolean.js +2 -0
  269. package/lib/types/payloads/_interactions/_applicationCommands/_chatInput/channel.d.ts +7 -0
  270. package/lib/types/payloads/_interactions/_applicationCommands/_chatInput/channel.js +2 -0
  271. package/lib/types/payloads/_interactions/_applicationCommands/_chatInput/integer.d.ts +17 -0
  272. package/lib/types/payloads/_interactions/_applicationCommands/_chatInput/integer.js +2 -0
  273. package/lib/types/payloads/_interactions/_applicationCommands/_chatInput/mentionable.d.ts +5 -0
  274. package/lib/types/payloads/_interactions/_applicationCommands/_chatInput/mentionable.js +2 -0
  275. package/lib/types/payloads/_interactions/_applicationCommands/_chatInput/number.d.ts +17 -0
  276. package/lib/types/payloads/_interactions/_applicationCommands/_chatInput/number.js +2 -0
  277. package/lib/types/payloads/_interactions/_applicationCommands/_chatInput/role.d.ts +5 -0
  278. package/lib/types/payloads/_interactions/_applicationCommands/_chatInput/role.js +2 -0
  279. package/lib/types/payloads/_interactions/_applicationCommands/_chatInput/shared.d.ts +25 -0
  280. package/lib/types/payloads/_interactions/_applicationCommands/_chatInput/shared.js +20 -0
  281. package/lib/types/payloads/_interactions/_applicationCommands/_chatInput/string.d.ts +17 -0
  282. package/lib/types/payloads/_interactions/_applicationCommands/_chatInput/string.js +2 -0
  283. package/lib/types/payloads/_interactions/_applicationCommands/_chatInput/subcommand.d.ts +11 -0
  284. package/lib/types/payloads/_interactions/_applicationCommands/_chatInput/subcommand.js +2 -0
  285. package/lib/types/payloads/_interactions/_applicationCommands/_chatInput/subcommandGroup.d.ts +11 -0
  286. package/lib/types/payloads/_interactions/_applicationCommands/_chatInput/subcommandGroup.js +2 -0
  287. package/lib/types/payloads/_interactions/_applicationCommands/_chatInput/user.d.ts +5 -0
  288. package/lib/types/payloads/_interactions/_applicationCommands/_chatInput/user.js +2 -0
  289. package/lib/types/payloads/_interactions/_applicationCommands/chatInput.d.ts +60 -0
  290. package/lib/types/payloads/_interactions/_applicationCommands/chatInput.js +29 -0
  291. package/lib/types/payloads/_interactions/_applicationCommands/contextMenu.d.ts +65 -0
  292. package/lib/types/payloads/_interactions/_applicationCommands/contextMenu.js +2 -0
  293. package/lib/types/payloads/_interactions/_applicationCommands/internals.d.ts +8 -0
  294. package/lib/types/payloads/_interactions/_applicationCommands/internals.js +2 -0
  295. package/lib/types/payloads/_interactions/_applicationCommands/permissions.d.ts +54 -0
  296. package/lib/types/payloads/_interactions/_applicationCommands/permissions.js +20 -0
  297. package/lib/types/payloads/_interactions/applicationCommands.d.ts +153 -0
  298. package/lib/types/payloads/_interactions/applicationCommands.js +61 -0
  299. package/lib/types/payloads/_interactions/autocomplete.d.ts +10 -0
  300. package/lib/types/payloads/_interactions/autocomplete.js +2 -0
  301. package/lib/types/payloads/_interactions/base.d.ts +197 -0
  302. package/lib/types/payloads/_interactions/base.js +2 -0
  303. package/lib/types/payloads/_interactions/messageComponents.d.ts +41 -0
  304. package/lib/types/payloads/_interactions/messageComponents.js +2 -0
  305. package/lib/types/payloads/_interactions/modalSubmit.d.ts +35 -0
  306. package/lib/types/payloads/_interactions/modalSubmit.js +2 -0
  307. package/lib/types/payloads/_interactions/ping.d.ts +3 -0
  308. package/lib/types/payloads/_interactions/ping.js +2 -0
  309. package/lib/types/payloads/_interactions/responses.d.ts +112 -0
  310. package/lib/types/payloads/_interactions/responses.js +54 -0
  311. package/lib/types/payloads/application.d.ts +292 -0
  312. package/lib/types/payloads/application.js +117 -0
  313. package/lib/types/payloads/auditLog.d.ts +644 -0
  314. package/lib/types/payloads/auditLog.js +80 -0
  315. package/lib/types/payloads/autoModeration.d.ts +219 -0
  316. package/lib/types/payloads/autoModeration.js +87 -0
  317. package/lib/types/payloads/channel.d.ts +1708 -0
  318. package/lib/types/payloads/channel.js +372 -0
  319. package/lib/types/payloads/emoji.d.ts +48 -0
  320. package/lib/types/payloads/emoji.js +5 -0
  321. package/lib/types/payloads/gateway.d.ts +373 -0
  322. package/lib/types/payloads/gateway.js +82 -0
  323. package/lib/types/payloads/guild.d.ts +1060 -0
  324. package/lib/types/payloads/guild.js +324 -0
  325. package/lib/types/payloads/guildScheduledEvent.d.ts +138 -0
  326. package/lib/types/payloads/guildScheduledEvent.js +32 -0
  327. package/lib/types/payloads/index.d.ts +64 -0
  328. package/lib/types/payloads/index.js +37 -0
  329. package/lib/types/payloads/interactions.d.ts +24 -0
  330. package/lib/types/payloads/interactions.js +23 -0
  331. package/lib/types/payloads/invite.d.ts +121 -0
  332. package/lib/types/payloads/invite.js +23 -0
  333. package/lib/types/payloads/monetization.d.ts +150 -0
  334. package/lib/types/payloads/monetization.js +79 -0
  335. package/lib/types/payloads/oauth2.d.ts +131 -0
  336. package/lib/types/payloads/oauth2.js +135 -0
  337. package/lib/types/payloads/permissions.d.ts +97 -0
  338. package/lib/types/payloads/permissions.js +16 -0
  339. package/lib/types/payloads/poll.d.ts +104 -0
  340. package/lib/types/payloads/poll.js +16 -0
  341. package/lib/types/payloads/stageInstance.d.ts +77 -0
  342. package/lib/types/payloads/stageInstance.js +19 -0
  343. package/lib/types/payloads/sticker.d.ts +123 -0
  344. package/lib/types/payloads/sticker.js +30 -0
  345. package/lib/types/payloads/teams.d.ts +78 -0
  346. package/lib/types/payloads/teams.js +23 -0
  347. package/lib/types/payloads/template.d.ts +62 -0
  348. package/lib/types/payloads/template.js +5 -0
  349. package/lib/types/payloads/user.d.ts +337 -0
  350. package/lib/types/payloads/user.js +167 -0
  351. package/lib/types/payloads/voice.d.ts +89 -0
  352. package/lib/types/payloads/voice.js +5 -0
  353. package/lib/types/payloads/webhook.d.ts +76 -0
  354. package/lib/types/payloads/webhook.js +21 -0
  355. package/lib/types/rest/application.d.ts +57 -0
  356. package/lib/types/rest/application.js +2 -0
  357. package/lib/types/rest/auditLog.d.ts +30 -0
  358. package/lib/types/rest/auditLog.js +2 -0
  359. package/lib/types/rest/autoModeration.d.ts +66 -0
  360. package/lib/types/rest/autoModeration.js +2 -0
  361. package/lib/types/rest/channel.d.ts +712 -0
  362. package/lib/types/rest/channel.js +11 -0
  363. package/lib/types/rest/emoji.d.ts +54 -0
  364. package/lib/types/rest/emoji.js +2 -0
  365. package/lib/types/rest/gateway.d.ts +9 -0
  366. package/lib/types/rest/gateway.js +2 -0
  367. package/lib/types/rest/guild.d.ts +865 -0
  368. package/lib/types/rest/guild.js +2 -0
  369. package/lib/types/rest/guildScheduledEvent.d.ts +126 -0
  370. package/lib/types/rest/guildScheduledEvent.js +2 -0
  371. package/lib/types/rest/index.d.ts +296 -0
  372. package/lib/types/rest/index.js +292 -0
  373. package/lib/types/rest/interactions.d.ts +194 -0
  374. package/lib/types/rest/interactions.js +2 -0
  375. package/lib/types/rest/invite.d.ts +24 -0
  376. package/lib/types/rest/invite.js +2 -0
  377. package/lib/types/rest/monetization.d.ts +82 -0
  378. package/lib/types/rest/monetization.js +11 -0
  379. package/lib/types/rest/oauth2.d.ts +172 -0
  380. package/lib/types/rest/oauth2.js +2 -0
  381. package/lib/types/rest/poll.d.ts +44 -0
  382. package/lib/types/rest/poll.js +2 -0
  383. package/lib/types/rest/stageInstance.d.ts +58 -0
  384. package/lib/types/rest/stageInstance.js +2 -0
  385. package/lib/types/rest/sticker.d.ts +77 -0
  386. package/lib/types/rest/sticker.js +2 -0
  387. package/lib/types/rest/template.d.ts +62 -0
  388. package/lib/types/rest/template.js +2 -0
  389. package/lib/types/rest/user.d.ts +120 -0
  390. package/lib/types/rest/user.js +2 -0
  391. package/lib/types/rest/voice.d.ts +17 -0
  392. package/lib/types/rest/voice.js +2 -0
  393. package/lib/types/rest/webhook.d.ts +250 -0
  394. package/lib/types/rest/webhook.js +2 -0
  395. package/lib/types/utils/index.d.ts +797 -0
  396. package/lib/types/utils/index.js +799 -0
  397. package/lib/websocket/SharedTypes.d.ts +4 -3
  398. package/lib/websocket/SharedTypes.js +1 -1
  399. package/lib/websocket/constants/index.d.ts +0 -1
  400. package/lib/websocket/discord/basesocket.d.ts +7 -7
  401. package/lib/websocket/discord/basesocket.js +34 -22
  402. package/lib/websocket/discord/events/memberUpdate.d.ts +1 -6
  403. package/lib/websocket/discord/events/memberUpdate.js +2 -1
  404. package/lib/websocket/discord/events/presenceUpdate.d.ts +5 -18
  405. package/lib/websocket/discord/events/presenceUpdate.js +5 -6
  406. package/lib/websocket/discord/shard.d.ts +8 -8
  407. package/lib/websocket/discord/shard.js +59 -47
  408. package/lib/websocket/discord/sharder.d.ts +6 -5
  409. package/lib/websocket/discord/sharder.js +11 -10
  410. package/lib/websocket/discord/shared.d.ts +13 -5
  411. package/lib/websocket/discord/socket/custom.d.ts +52 -0
  412. package/lib/websocket/discord/socket/custom.js +283 -0
  413. package/lib/websocket/discord/worker.d.ts +5 -10
  414. package/lib/websocket/discord/workermanager.d.ts +8 -15
  415. package/lib/websocket/discord/workermanager.js +35 -39
  416. package/lib/websocket/structures/index.d.ts +0 -1
  417. package/lib/websocket/structures/index.js +1 -1
  418. package/lib/websocket/structures/timeout.d.ts +0 -1
  419. package/package.json +65 -74
  420. package/lib/cache/adapters/redis.d.ts +0 -37
  421. package/lib/cache/adapters/redis.js +0 -218
  422. package/lib/client/oninteractioncreate.d.ts +0 -4
  423. package/lib/client/oninteractioncreate.js +0 -198
  424. package/lib/client/onmessagecreate.d.ts +0 -13
  425. package/lib/client/onmessagecreate.js +0 -410
  426. package/lib/structures/extra/functions.d.ts +0 -12
  427. 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
  }
@@ -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,4 +1,4 @@
1
- import { ApplicationCommandOptionType, type APIApplicationCommandOptionChoice, type ChannelType } from 'discord-api-types/v10';
1
+ import { ApplicationCommandOptionType, type APIApplicationCommandOptionChoice, type ChannelType } from '../../types';
2
2
  import type { AutocompleteCallback, MenuCommandContext, OnAutocompleteErrorCallback, ReturnOptionsTypes, __TypesWrapper } from '..';
3
3
  import type { MessageCommandInteraction, UserCommandInteraction } from '../../structures';
4
4
  import type { CommandContext } from './chatcontext';
@@ -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>;
@@ -1,4 +1,4 @@
1
- import { ApplicationCommandType, ApplicationIntegrationType, InteractionContextType, type LocaleString } from 'discord-api-types/v10';
1
+ import { ApplicationCommandType, ApplicationIntegrationType, InteractionContextType, type LocaleString } from '../types';
2
2
  import type { FlatObjectKeys, PermissionStrings } from '../common';
3
3
  import type { CommandOption, OptionsRecord, SubCommand } from './applications/chat';
4
4
  import type { DefaultLocale, ExtraProps, IgnoreCommand, MiddlewareContext } from './applications/shared';
@@ -32,7 +32,9 @@ type DeclareOptions = {
32
32
  export declare function Locales({ name: names, description: descriptions, }: {
33
33
  name?: [language: LocaleString, value: string][];
34
34
  description?: [language: LocaleString, value: string][];
35
- }): <T extends new (...args: any[]) => {}>(target: T) => {
35
+ }): <T extends {
36
+ new (...args: any[]): {};
37
+ }>(target: T) => {
36
38
  new (...args: any[]): {
37
39
  name_localizations: {
38
40
  [k: string]: string;
@@ -42,7 +44,9 @@ export declare function Locales({ name: names, description: descriptions, }: {
42
44
  } | undefined;
43
45
  };
44
46
  } & T;
45
- export declare function LocalesT(name?: FlatObjectKeys<DefaultLocale>, description?: FlatObjectKeys<DefaultLocale>): <T extends new (...args: any[]) => {}>(target: T) => {
47
+ export declare function LocalesT(name?: FlatObjectKeys<DefaultLocale>, description?: FlatObjectKeys<DefaultLocale>): <T extends {
48
+ new (...args: any[]): {};
49
+ }>(target: T) => {
46
50
  new (...args: any[]): {
47
51
  __t: {
48
52
  name: undefined;
@@ -55,13 +59,15 @@ export declare function GroupsT(groups: Record<string, {
55
59
  description?: FlatObjectKeys<DefaultLocale>;
56
60
  defaultDescription: string;
57
61
  aliases?: string[];
58
- }>): <T extends new (...args: any[]) => {}>(target: T) => {
62
+ }>): <T extends {
63
+ new (...args: any[]): {};
64
+ }>(target: T) => {
59
65
  new (...args: any[]): {
60
66
  __tGroups: Record<string, {
61
- name?: undefined;
62
- description?: undefined;
67
+ name?: FlatObjectKeys<DefaultLocale>;
68
+ description?: FlatObjectKeys<DefaultLocale>;
63
69
  defaultDescription: string;
64
- aliases?: string[] | undefined;
70
+ aliases?: string[];
65
71
  }>;
66
72
  groupsAliases: Record<string, string>;
67
73
  };
@@ -71,28 +77,36 @@ export declare function Groups(groups: Record<string, {
71
77
  description?: [language: LocaleString, value: string][];
72
78
  defaultDescription: string;
73
79
  aliases?: string[];
74
- }>): <T extends new (...args: any[]) => {}>(target: T) => {
80
+ }>): <T extends {
81
+ new (...args: any[]): {};
82
+ }>(target: T) => {
75
83
  new (...args: any[]): {
76
84
  groups: Record<string, {
77
- name?: [language: "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", value: string][] | undefined;
78
- description?: [language: "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", value: string][] | undefined;
85
+ name?: [language: LocaleString, value: string][];
86
+ description?: [language: LocaleString, value: string][];
79
87
  defaultDescription: string;
80
- aliases?: string[] | undefined;
88
+ aliases?: string[];
81
89
  }>;
82
90
  groupsAliases: Record<string, string>;
83
91
  };
84
92
  } & T;
85
- export declare function Group(groupName: string): <T extends new (...args: any[]) => {}>(target: T) => {
93
+ export declare function Group(groupName: string): <T extends {
94
+ new (...args: any[]): {};
95
+ }>(target: T) => {
86
96
  new (...args: any[]): {
87
97
  group: string;
88
98
  };
89
99
  } & T;
90
- export declare function Options(options: (new () => SubCommand)[] | OptionsRecord): <T extends new (...args: any[]) => {}>(target: T) => {
100
+ export declare function Options(options: (new () => SubCommand)[] | OptionsRecord): <T extends {
101
+ new (...args: any[]): {};
102
+ }>(target: T) => {
91
103
  new (...args: any[]): {
92
104
  options: SubCommand[] | CommandOption[];
93
105
  };
94
106
  } & T;
95
- export declare function AutoLoad(): <T extends new (...args: any[]) => {}>(target: T) => {
107
+ export declare function AutoLoad(): <T extends {
108
+ new (...args: any[]): {};
109
+ }>(target: T) => {
96
110
  new (...args: any[]): {
97
111
  __autoload: boolean;
98
112
  };
@@ -100,25 +114,29 @@ export declare function AutoLoad(): <T extends new (...args: any[]) => {}>(targe
100
114
  export type ParseMiddlewares<T extends Record<string, MiddlewareContext>> = {
101
115
  [k in keyof T]: T[k];
102
116
  };
103
- export declare function Middlewares(cbs: readonly (keyof RegisteredMiddlewares)[]): <T extends new (...args: any[]) => {}>(target: T) => {
117
+ export declare function Middlewares(cbs: readonly (keyof RegisteredMiddlewares)[]): <T extends {
118
+ new (...args: any[]): {};
119
+ }>(target: T) => {
104
120
  new (...args: any[]): {
105
121
  middlewares: readonly never[];
106
122
  };
107
123
  } & T;
108
- export declare function Declare(declare: DeclareOptions): <T extends new (...args: any[]) => {}>(target: T) => {
124
+ export declare function Declare(declare: DeclareOptions): <T extends {
125
+ new (...args: any[]): {};
126
+ }>(target: T) => {
109
127
  new (...args: any[]): {
110
128
  name: string;
111
129
  nsfw: boolean | undefined;
112
130
  props: ExtraProps | undefined;
113
- contexts: (string | InteractionContextType)[];
131
+ contexts: InteractionContextType[];
114
132
  integrationTypes: ApplicationIntegrationType[];
115
133
  defaultMemberPermissions: bigint | undefined;
116
134
  botPermissions: bigint | undefined;
117
135
  description: string;
118
136
  type: ApplicationCommandType;
119
- guildId?: string[] | undefined;
120
- ignore?: IgnoreCommand | undefined;
121
- aliases?: string[] | undefined;
137
+ guildId?: string[];
138
+ ignore?: IgnoreCommand;
139
+ aliases?: string[];
122
140
  };
123
141
  } & T;
124
142
  export {};
@@ -1,20 +1,26 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Declare = exports.Middlewares = exports.AutoLoad = exports.Options = exports.Group = exports.Groups = exports.GroupsT = exports.LocalesT = exports.Locales = void 0;
4
- const v10_1 = require("discord-api-types/v10");
3
+ exports.Locales = Locales;
4
+ exports.LocalesT = LocalesT;
5
+ exports.GroupsT = GroupsT;
6
+ exports.Groups = Groups;
7
+ exports.Group = Group;
8
+ exports.Options = Options;
9
+ exports.AutoLoad = AutoLoad;
10
+ exports.Middlewares = Middlewares;
11
+ exports.Declare = Declare;
12
+ const types_1 = require("../types");
5
13
  function Locales({ name: names, description: descriptions, }) {
6
14
  return (target) => class extends target {
7
15
  name_localizations = names ? Object.fromEntries(names) : undefined;
8
16
  description_localizations = descriptions ? Object.fromEntries(descriptions) : undefined;
9
17
  };
10
18
  }
11
- exports.Locales = Locales;
12
19
  function LocalesT(name, description) {
13
20
  return (target) => class extends target {
14
21
  __t = { name, description };
15
22
  };
16
23
  }
17
- exports.LocalesT = LocalesT;
18
24
  function GroupsT(groups) {
19
25
  return (target) => class extends target {
20
26
  __tGroups = groups;
@@ -29,7 +35,6 @@ function GroupsT(groups) {
29
35
  }
30
36
  };
31
37
  }
32
- exports.GroupsT = GroupsT;
33
38
  function Groups(groups) {
34
39
  return (target) => class extends target {
35
40
  groups = groups;
@@ -44,13 +49,11 @@ function Groups(groups) {
44
49
  }
45
50
  };
46
51
  }
47
- exports.Groups = Groups;
48
52
  function Group(groupName) {
49
53
  return (target) => class extends target {
50
54
  group = groupName;
51
55
  };
52
56
  }
53
- exports.Group = Group;
54
57
  function Options(options) {
55
58
  return (target) => class extends target {
56
59
  options = Array.isArray(options)
@@ -63,37 +66,34 @@ function Options(options) {
63
66
  });
64
67
  };
65
68
  }
66
- exports.Options = Options;
67
69
  function AutoLoad() {
68
70
  return (target) => class extends target {
69
71
  __autoload = true;
70
72
  };
71
73
  }
72
- exports.AutoLoad = AutoLoad;
73
74
  function Middlewares(cbs) {
74
75
  return (target) => class extends target {
75
76
  middlewares = cbs;
76
77
  };
77
78
  }
78
- exports.Middlewares = Middlewares;
79
79
  function Declare(declare) {
80
80
  return (target) => class extends target {
81
81
  name = declare.name;
82
82
  nsfw = declare.nsfw;
83
83
  props = declare.props;
84
- contexts = declare.contexts?.map(i => v10_1.InteractionContextType[i]) ??
85
- Object.values(v10_1.InteractionContextType).filter(x => typeof x === 'number');
86
- integrationTypes = declare.integrationTypes?.map(i => v10_1.ApplicationIntegrationType[i]) ?? [
87
- v10_1.ApplicationIntegrationType.GuildInstall,
84
+ contexts = declare.contexts?.map(i => types_1.InteractionContextType[i]) ??
85
+ Object.values(types_1.InteractionContextType).filter(x => typeof x === 'number');
86
+ integrationTypes = declare.integrationTypes?.map(i => types_1.ApplicationIntegrationType[i]) ?? [
87
+ types_1.ApplicationIntegrationType.GuildInstall,
88
88
  ];
89
89
  defaultMemberPermissions = Array.isArray(declare.defaultMemberPermissions)
90
- ? declare.defaultMemberPermissions?.reduce((acc, prev) => acc | v10_1.PermissionFlagsBits[prev], BigInt(0))
90
+ ? declare.defaultMemberPermissions?.reduce((acc, prev) => acc | types_1.PermissionFlagsBits[prev], BigInt(0))
91
91
  : declare.defaultMemberPermissions;
92
92
  botPermissions = Array.isArray(declare.botPermissions)
93
- ? declare.botPermissions?.reduce((acc, prev) => acc | v10_1.PermissionFlagsBits[prev], BigInt(0))
93
+ ? declare.botPermissions?.reduce((acc, prev) => acc | types_1.PermissionFlagsBits[prev], BigInt(0))
94
94
  : declare.botPermissions;
95
95
  description = '';
96
- type = v10_1.ApplicationCommandType.ChatInput;
96
+ type = types_1.ApplicationCommandType.ChatInput;
97
97
  guildId;
98
98
  ignore;
99
99
  aliases;
@@ -113,4 +113,3 @@ function Declare(declare) {
113
113
  }
114
114
  };
115
115
  }
116
- exports.Declare = Declare;
@@ -0,0 +1,64 @@
1
+ import { type APIApplicationCommandInteraction, type APIInteraction, type GatewayMessageCreateDispatchData, type APIApplicationCommandInteractionDataOption, ApplicationCommandOptionType } from '../types';
2
+ import { Command, type ContextOptionsResolved, type UsingClient, type CommandAutocompleteOption, type ContextMenuCommand, MenuCommandContext, CommandContext, SubCommand, type CommandOption, type MessageCommandOptionErrors } from '.';
3
+ import { AutocompleteInteraction, type ComponentInteraction, type ModalSubmitInteraction, type ChatInputCommandInteraction, type MessageCommandInteraction, type UserCommandInteraction, type __InternalReplyFunction } from '../structures';
4
+ import type { PermissionsBitField } from '../structures/extra/Permissions';
5
+ import type { MakeRequired } from '../common';
6
+ import { type MessageStructure, Transformers, type OptionResolverStructure } from '../client/transformers';
7
+ export type CommandOptionWithType = CommandOption & {
8
+ type: ApplicationCommandOptionType;
9
+ };
10
+ export interface CommandFromContent {
11
+ command?: Command | SubCommand;
12
+ parent?: Command;
13
+ fullCommandName: string;
14
+ }
15
+ export declare class HandleCommand {
16
+ client: UsingClient;
17
+ constructor(client: UsingClient);
18
+ autocomplete(interaction: AutocompleteInteraction, optionsResolver: OptionResolverStructure, command?: CommandAutocompleteOption): Promise<void>;
19
+ contextMenuMessage(command: ContextMenuCommand, interaction: MessageCommandInteraction, context: MenuCommandContext<MessageCommandInteraction>): Promise<any>;
20
+ contextMenuUser(command: ContextMenuCommand, interaction: UserCommandInteraction, context: MenuCommandContext<UserCommandInteraction>): Promise<any>;
21
+ chatInput(command: Command | SubCommand, interaction: ChatInputCommandInteraction, resolver: OptionResolverStructure, context: CommandContext): Promise<any>;
22
+ modal(interaction: ModalSubmitInteraction): Promise<void>;
23
+ messageComponent(interaction: ComponentInteraction): Promise<void>;
24
+ interaction(body: APIInteraction, shardId: number, __reply?: __InternalReplyFunction): Promise<void>;
25
+ message(rawMessage: GatewayMessageCreateDispatchData, shardId: number): Promise<any>;
26
+ argsParser(content: string, _command: SubCommand | Command, _message: MessageStructure): Record<string, string>;
27
+ resolveCommandFromContent(content: string, _prefix: string, _message: GatewayMessageCreateDispatchData): CommandFromContent & {
28
+ argsContent?: string;
29
+ };
30
+ getCommandFromContent(commandRaw: string[]): CommandFromContent;
31
+ makeResolver(...args: Parameters<(typeof Transformers)['OptionResolver']>): import("./optionresolver").OptionResolver;
32
+ getParentMessageCommand(rawParentName: string): Command | ContextMenuCommand | undefined;
33
+ getCommand<T extends Command | ContextMenuCommand>(data: {
34
+ guild_id?: string;
35
+ name: string;
36
+ }): T | undefined;
37
+ checkPermissions(app: PermissionsBitField, bot: bigint): import("../common").PermissionStrings | undefined;
38
+ fetchChannel(_option: CommandOptionWithType, query: string): Promise<import("../types").APIChannel | null>;
39
+ fetchUser(_option: CommandOptionWithType, query: string): Promise<import("../types").APIUser | null>;
40
+ fetchMember(_option: CommandOptionWithType, query: string, guildId: string): Promise<import("../types").APIGuildMember | null>;
41
+ fetchRole(_option: CommandOptionWithType, query: string, guildId?: string): Promise<import("../types").APIRole | null | undefined>;
42
+ runGlobalMiddlewares(command: Command | ContextMenuCommand | SubCommand, context: CommandContext<{}, never> | MenuCommandContext<any>): Promise<false | {
43
+ error?: string;
44
+ pass?: boolean;
45
+ }>;
46
+ runMiddlewares(command: Command | ContextMenuCommand | SubCommand, context: CommandContext<{}, never> | MenuCommandContext<any>): Promise<false | {
47
+ error?: string;
48
+ pass?: boolean;
49
+ }>;
50
+ makeMenuCommand(body: APIApplicationCommandInteraction, shardId: number, __reply?: __InternalReplyFunction): void | {
51
+ command: ContextMenuCommand;
52
+ interaction: UserCommandInteraction<boolean> | MessageCommandInteraction<boolean>;
53
+ context: MenuCommandContext<UserCommandInteraction<boolean> | MessageCommandInteraction<boolean>, never>;
54
+ };
55
+ runOptions(command: Command | SubCommand, context: CommandContext, resolver: OptionResolverStructure): Promise<boolean>;
56
+ argsOptionsParser(command: Command | SubCommand, message: GatewayMessageCreateDispatchData, args: Partial<Record<string, string>>, resolved: MakeRequired<ContextOptionsResolved>): Promise<{
57
+ errors: {
58
+ name: string;
59
+ error: string;
60
+ fullError: MessageCommandOptionErrors;
61
+ }[];
62
+ options: APIApplicationCommandInteractionDataOption[];
63
+ }>;
64
+ }