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
package/package.json CHANGED
@@ -1,74 +1,65 @@
1
- {
2
- "name": "seyfert",
3
- "version": "1.5.0",
4
- "description": "The most advanced framework for discord bots",
5
- "main": "./lib/index.js",
6
- "module": "./lib/index.js",
7
- "types": "./lib/index.d.ts",
8
- "files": [
9
- "lib/**"
10
- ],
11
- "scripts": {
12
- "build": "tsc --outDir ./lib",
13
- "prepublishOnly": "npm run build",
14
- "prepare": "npm run build && husky install",
15
- "lint": "biome lint --apply ./src",
16
- "format": "biome format --write ./src",
17
- "check-h": "biome check --apply ./src",
18
- "check": "biome check --apply --no-errors-on-unmatched ./src"
19
- },
20
- "author": "MARCROCK22",
21
- "license": "Apache-2.0",
22
- "dependencies": {
23
- "chokidar": "^3.6.0",
24
- "discord-api-types": "^0.37.86",
25
- "magic-bytes.js": "^1.10.0",
26
- "ts-mixer": "^6.0.4",
27
- "ws": "^8.17.0"
28
- },
29
- "lint-staged": {
30
- "*.ts": [
31
- "biome check --apply",
32
- "biome format --write"
33
- ]
34
- },
35
- "devDependencies": {
36
- "@biomejs/biome": "1.7.3",
37
- "@commitlint/cli": "^19.3.0",
38
- "@commitlint/config-conventional": "^19.2.2",
39
- "@types/node": "^20.12.12",
40
- "@types/ws": "^8.5.10",
41
- "husky": "^9.0.11",
42
- "lint-staged": "^15.2.5",
43
- "typescript": "^5.4.5"
44
- },
45
- "optionalDependencies": {
46
- "ioredis": "^5.4.1",
47
- "tweetnacl": "^1.0.3",
48
- "uWebSockets.js": "github:uNetworking/uWebSockets.js#v20.42.0"
49
- },
50
- "homepage": "https://seyfert.dev",
51
- "repository": {
52
- "type": "git",
53
- "url": "git+https://github.com/tiramisulabs/seyfert.git"
54
- },
55
- "bugs": {
56
- "url": "https://github.com/tiramisulabs/seyfert"
57
- },
58
- "keywords": [
59
- "api",
60
- "discord",
61
- "bots",
62
- "typescript",
63
- "botdev"
64
- ],
65
- "publishConfig": {
66
- "access": "public"
67
- },
68
- "contributors": [
69
- {
70
- "name": "socram03",
71
- "url": "https://github.com/socram03"
72
- }
73
- ]
74
- }
1
+ {
2
+ "name": "seyfert",
3
+ "version": "2.0.0",
4
+ "description": "The most advanced framework for discord bots",
5
+ "main": "./lib/index.js",
6
+ "module": "./lib/index.js",
7
+ "types": "./lib/index.d.ts",
8
+ "files": [
9
+ "lib/**"
10
+ ],
11
+ "scripts": {
12
+ "build": "tsc --outDir ./lib",
13
+ "prepublishOnly": "npm run build",
14
+ "prepare": "npm run build && husky",
15
+ "lint": "biome lint --write ./src",
16
+ "format": "biome format --write ./src",
17
+ "check-h": "biome check --write ./src",
18
+ "check": "biome check --write --no-errors-on-unmatched ./src"
19
+ },
20
+ "author": "MARCROCK22",
21
+ "license": "Apache-2.0",
22
+ "devDependencies": {
23
+ "@biomejs/biome": "1.8.3",
24
+ "@commitlint/cli": "^19.4.0",
25
+ "@commitlint/config-conventional": "^19.2.2",
26
+ "@types/node": "^22.5.0",
27
+ "husky": "^9.1.5",
28
+ "lint-staged": "^15.2.9",
29
+ "typescript": "^5.5.4"
30
+ },
31
+ "homepage": "https://seyfert.dev",
32
+ "repository": {
33
+ "type": "git",
34
+ "url": "git+https://github.com/tiramisulabs/seyfert.git"
35
+ },
36
+ "bugs": {
37
+ "url": "https://github.com/tiramisulabs/seyfert"
38
+ },
39
+ "keywords": [
40
+ "api",
41
+ "discord",
42
+ "bots",
43
+ "typescript",
44
+ "botdev"
45
+ ],
46
+ "publishConfig": {
47
+ "access": "public"
48
+ },
49
+ "maintainers": [
50
+ {
51
+ "name": "socram03",
52
+ "url": "https://github.com/socram03"
53
+ }
54
+ ],
55
+ "contributors": [
56
+ {
57
+ "name": "Free 公園",
58
+ "url": "https://github.com/FreeAoi"
59
+ },
60
+ {
61
+ "name": "David",
62
+ "url": "https://github.com/Drylozu"
63
+ }
64
+ ]
65
+ }
@@ -1,37 +0,0 @@
1
- import type { RedisOptions } from 'ioredis';
2
- import type { Adapter } from './types';
3
- interface RedisAdapterOptions {
4
- namespace?: string;
5
- }
6
- export declare class RedisAdapter implements Adapter {
7
- isAsync: boolean;
8
- client: import('ioredis').Redis;
9
- namespace: string;
10
- constructor(data: ({
11
- client: import('ioredis').Redis;
12
- } | {
13
- redisOptions: RedisOptions;
14
- }) & RedisAdapterOptions);
15
- private __scanSets;
16
- scan(query: string, returnKeys?: false): Promise<any[]>;
17
- scan(query: string, returnKeys: true): Promise<string[]>;
18
- get(keys: string[]): Promise<any[]>;
19
- get(keys: string): Promise<any>;
20
- set(id: [string, any][]): Promise<void>;
21
- set(id: string, data: any): Promise<void>;
22
- patch(updateOnly: boolean, id: [string, any][]): Promise<void>;
23
- patch(updateOnly: boolean, id: string, data: any): Promise<void>;
24
- values(to: string): Promise<any[]>;
25
- keys(to: string): Promise<string[]>;
26
- count(to: string): Promise<number>;
27
- remove(keys: string | string[]): Promise<void>;
28
- flush(): Promise<void>;
29
- contains(to: string, keys: string): Promise<boolean>;
30
- getToRelationship(to: string): Promise<string[]>;
31
- bulkAddToRelationShip(data: Record<string, string[]>): Promise<void>;
32
- addToRelationship(to: string, keys: string | string[]): Promise<void>;
33
- removeToRelationship(to: string, keys: string | string[]): Promise<void>;
34
- removeRelationship(to: string | string[]): Promise<void>;
35
- protected buildKey(key: string): string;
36
- }
37
- export {};
@@ -1,218 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.RedisAdapter = void 0;
4
- let Redis;
5
- try {
6
- Redis = require('ioredis').Redis;
7
- }
8
- catch {
9
- // potocuit > seyfert
10
- }
11
- class RedisAdapter {
12
- isAsync = true;
13
- client;
14
- namespace;
15
- constructor(data) {
16
- if (!Redis) {
17
- throw new Error('No ioredis installed');
18
- }
19
- this.client = 'client' in data ? data.client : new Redis(data.redisOptions);
20
- this.namespace = data.namespace ?? 'seyfert';
21
- }
22
- __scanSets(query, returnKeys = false) {
23
- const match = this.buildKey(query);
24
- return new Promise((r, j) => {
25
- const stream = this.client.scanStream({
26
- match,
27
- type: 'set',
28
- });
29
- const keys = [];
30
- stream
31
- .on('data', resultKeys => keys.push(...resultKeys))
32
- .on('end', () => (returnKeys ? r(keys.map(x => this.buildKey(x))) : r(this.get(keys))))
33
- .on('error', err => j(err));
34
- });
35
- }
36
- scan(query, returnKeys = false) {
37
- const match = this.buildKey(query);
38
- return new Promise((r, j) => {
39
- const stream = this.client.scanStream({
40
- match,
41
- // omit relationships
42
- type: 'hash',
43
- });
44
- const keys = [];
45
- stream
46
- .on('data', resultKeys => keys.push(...resultKeys))
47
- .on('end', () => (returnKeys ? r(keys.map(x => this.buildKey(x))) : r(this.get(keys))))
48
- .on('error', err => j(err));
49
- });
50
- }
51
- async get(keys) {
52
- if (!Array.isArray(keys)) {
53
- const value = await this.client.hgetall(this.buildKey(keys));
54
- if (value) {
55
- return toNormal(value);
56
- }
57
- return;
58
- }
59
- const pipeline = this.client.pipeline();
60
- for (const key of keys) {
61
- pipeline.hgetall(this.buildKey(key));
62
- }
63
- return (await pipeline.exec())?.filter(x => !!x[1]).map(x => toNormal(x[1])) ?? [];
64
- }
65
- async set(id, data) {
66
- if (!Array.isArray(id)) {
67
- await this.client.hset(this.buildKey(id), toDb(data));
68
- return;
69
- }
70
- const pipeline = this.client.pipeline();
71
- for (const [k, v] of id) {
72
- pipeline.hset(this.buildKey(k), toDb(v));
73
- }
74
- await pipeline.exec();
75
- }
76
- async patch(updateOnly, id, data) {
77
- if (!Array.isArray(id)) {
78
- if (updateOnly) {
79
- await this.client.eval(`if redis.call('exists',KEYS[1]) == 1 then redis.call('hset', KEYS[1], ${Array.from({ length: Object.keys(data).length * 2 }, (_, i) => `ARGV[${i + 1}]`)}) end`, 1, this.buildKey(id), ...Object.entries(toDb(data)).flat());
80
- }
81
- else {
82
- await this.client.hset(this.buildKey(id), toDb(data));
83
- }
84
- return;
85
- }
86
- const pipeline = this.client.pipeline();
87
- for (const [k, v] of id) {
88
- if (updateOnly) {
89
- pipeline.eval(`if redis.call('exists',KEYS[1]) == 1 then redis.call('hset', KEYS[1], ${Array.from({ length: Object.keys(v).length * 2 }, (_, i) => `ARGV[${i + 1}]`)}) end`, 1, this.buildKey(k), ...Object.entries(toDb(v)).flat());
90
- }
91
- else {
92
- pipeline.hset(this.buildKey(k), toDb(v));
93
- }
94
- }
95
- await pipeline.exec();
96
- }
97
- async values(to) {
98
- const array = [];
99
- const data = await this.keys(to);
100
- if (data.length) {
101
- const items = await this.get(data);
102
- for (const item of items) {
103
- if (item) {
104
- array.push(item);
105
- }
106
- }
107
- }
108
- return array;
109
- }
110
- async keys(to) {
111
- const data = await this.getToRelationship(to);
112
- return data.map(id => this.buildKey(`${to}.${id}`));
113
- }
114
- async count(to) {
115
- return this.client.scard(`${this.buildKey(to)}:set`);
116
- }
117
- async remove(keys) {
118
- if (!Array.isArray(keys)) {
119
- await this.client.del(this.buildKey(keys));
120
- return;
121
- }
122
- await this.client.del(...keys.map(x => this.buildKey(x)));
123
- }
124
- async flush() {
125
- const keys = await Promise.all([
126
- this.scan(this.buildKey('*'), true),
127
- this.__scanSets(this.buildKey('*'), true),
128
- ]).then(x => x.flat());
129
- if (!keys.length)
130
- return;
131
- await this.remove(keys);
132
- }
133
- async contains(to, keys) {
134
- return (await this.client.sismember(`${this.buildKey(to)}:set`, keys)) === 1;
135
- }
136
- async getToRelationship(to) {
137
- return this.client.smembers(`${this.buildKey(to)}:set`);
138
- }
139
- async bulkAddToRelationShip(data) {
140
- const pipeline = this.client.pipeline();
141
- for (const [key, value] of Object.entries(data)) {
142
- pipeline.sadd(`${this.buildKey(key)}:set`, ...value);
143
- }
144
- await pipeline.exec();
145
- }
146
- async addToRelationship(to, keys) {
147
- await this.client.sadd(`${this.buildKey(to)}:set`, ...(Array.isArray(keys) ? keys : [keys]));
148
- }
149
- async removeToRelationship(to, keys) {
150
- await this.client.srem(`${this.buildKey(to)}:set`, ...(Array.isArray(keys) ? keys : [keys]));
151
- }
152
- async removeRelationship(to) {
153
- await this.client.del(...(Array.isArray(to) ? to.map(x => `${this.buildKey(x)}:set`) : [`${this.buildKey(to)}:set`]));
154
- }
155
- buildKey(key) {
156
- return key.startsWith(this.namespace) ? key : `${this.namespace}:${key}`;
157
- }
158
- }
159
- exports.RedisAdapter = RedisAdapter;
160
- const isObject = (o) => {
161
- return !!o && typeof o === 'object' && !Array.isArray(o);
162
- };
163
- function toNormal(target) {
164
- if (typeof target.ARRAY_OF === 'string')
165
- return JSON.parse(target.ARRAY_OF).map(toNormal);
166
- if (!Object.keys(target).length)
167
- return undefined;
168
- const result = {};
169
- for (const [key, value] of Object.entries(target)) {
170
- if (key.startsWith('O_')) {
171
- result[key.slice(2)] = JSON.parse(value);
172
- }
173
- else if (key.startsWith('N_')) {
174
- result[key.slice(2)] = Number(value);
175
- }
176
- else if (key.startsWith('B_')) {
177
- result[key.slice(2)] = value === 'true';
178
- }
179
- else {
180
- result[key] = value;
181
- }
182
- }
183
- return result;
184
- }
185
- function toDb(target) {
186
- if (Array.isArray(target))
187
- return { ARRAY_OF: JSON.stringify(target.map(toDb)) };
188
- const result = {};
189
- for (const [key, value] of Object.entries(target)) {
190
- switch (typeof value) {
191
- case 'boolean':
192
- result[`B_${key}`] = value;
193
- break;
194
- case 'number':
195
- result[`N_${key}`] = `${value}`;
196
- break;
197
- case 'object':
198
- if (Array.isArray(value)) {
199
- result[`O_${key}`] = JSON.stringify(value);
200
- break;
201
- }
202
- if (isObject(value)) {
203
- result[`O_${key}`] = JSON.stringify(value);
204
- break;
205
- }
206
- if (!Number.isNaN(value)) {
207
- result[`O_${key}`] = 'null';
208
- break;
209
- }
210
- result[`O_${key}`] = JSON.stringify(value);
211
- break;
212
- default:
213
- result[key] = value;
214
- break;
215
- }
216
- }
217
- return result;
218
- }
@@ -1,4 +0,0 @@
1
- import { type APIInteraction } from 'discord-api-types/v10';
2
- import { type UsingClient } from '../commands';
3
- import type { __InternalReplyFunction } from '../structures';
4
- export declare function onInteractionCreate(self: UsingClient, body: APIInteraction, shardId: number, __reply?: __InternalReplyFunction): Promise<any>;
@@ -1,198 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.onInteractionCreate = void 0;
4
- const v10_1 = require("discord-api-types/v10");
5
- const commands_1 = require("../commands");
6
- const structures_1 = require("../structures");
7
- const components_1 = require("../components");
8
- async function onInteractionCreate(self, body, shardId, __reply) {
9
- self.debugger?.debug(`[${v10_1.InteractionType[body.type] ?? body.type}] Interaction received.`);
10
- switch (body.type) {
11
- case v10_1.InteractionType.ApplicationCommandAutocomplete:
12
- {
13
- const parentCommand = self.commands?.values.find(x => {
14
- if (body.data.guild_id) {
15
- return x.guildId?.includes(body.data.guild_id) && x.name === body.data.name;
16
- }
17
- return x.name === body.data.name;
18
- });
19
- const optionsResolver = new commands_1.OptionResolver(self, body.data.options ?? [], parentCommand, body.guild_id, body.data.resolved);
20
- const interaction = new structures_1.AutocompleteInteraction(self, body, optionsResolver, __reply);
21
- const command = optionsResolver.getAutocomplete();
22
- // idc, is a YOU problem
23
- if (!command?.autocomplete)
24
- return self.logger.warn(`${optionsResolver.fullCommandName} ${command?.name} command does not have 'autocomplete' callback`);
25
- try {
26
- try {
27
- await command.autocomplete(interaction);
28
- }
29
- catch (error) {
30
- if (!command.onAutocompleteError)
31
- return self.logger.error(`${optionsResolver.fullCommandName} ${command.name} just threw an error, ${error ? (typeof error === 'object' && 'message' in error ? error.message : error) : 'Unknown'}`);
32
- await command.onAutocompleteError(interaction, error);
33
- }
34
- }
35
- catch (error) {
36
- try {
37
- await optionsResolver.getCommand()?.onInternalError?.(self, optionsResolver.getCommand(), error);
38
- }
39
- catch {
40
- // supress error
41
- }
42
- }
43
- }
44
- break;
45
- case v10_1.InteractionType.ApplicationCommand:
46
- {
47
- switch (body.data.type) {
48
- case v10_1.ApplicationCommandType.Message:
49
- case v10_1.ApplicationCommandType.User:
50
- {
51
- const command = self.commands?.values.find(x => {
52
- if (body.data.guild_id) {
53
- return x.guildId?.includes(body.data.guild_id) && x.name === body.data.name;
54
- }
55
- return x.name === body.data.name;
56
- });
57
- const interaction = structures_1.BaseInteraction.from(self, body, __reply);
58
- // idc, is a YOU problem
59
- if (!command?.run)
60
- return self.logger.warn(`${command.name ?? 'Unknown'} command does not have 'run' callback`);
61
- const context = new commands_1.MenuCommandContext(self, interaction, shardId, command);
62
- const extendContext = self.options?.context?.(interaction) ?? {};
63
- Object.assign(context, extendContext);
64
- try {
65
- if (command.botPermissions && interaction.appPermissions) {
66
- const permissions = interaction.appPermissions.missings(...interaction.appPermissions.values([command.botPermissions]));
67
- if (!interaction.appPermissions.has('Administrator') && permissions.length) {
68
- return command.onBotPermissionsFail(context, interaction.appPermissions.keys(permissions));
69
- }
70
- }
71
- const resultRunGlobalMiddlewares = await commands_1.BaseCommand.__runMiddlewares(context, (self.options?.globalMiddlewares ?? []), true);
72
- if (resultRunGlobalMiddlewares.pass) {
73
- return;
74
- }
75
- if ('error' in resultRunGlobalMiddlewares) {
76
- return command.onMiddlewaresError(context, resultRunGlobalMiddlewares.error ?? 'Unknown error');
77
- }
78
- const resultRunMiddlewares = await commands_1.BaseCommand.__runMiddlewares(context, command.middlewares, false);
79
- if (resultRunMiddlewares.pass) {
80
- return;
81
- }
82
- if ('error' in resultRunMiddlewares) {
83
- return command.onMiddlewaresError(context, resultRunMiddlewares.error ?? 'Unknown error');
84
- }
85
- try {
86
- await command.run(context);
87
- await command.onAfterRun?.(context, undefined);
88
- }
89
- catch (error) {
90
- await command.onRunError(context, error);
91
- await command.onAfterRun?.(context, error);
92
- }
93
- }
94
- catch (error) {
95
- try {
96
- await command.onInternalError(self, error);
97
- }
98
- catch {
99
- // supress error
100
- }
101
- }
102
- }
103
- break;
104
- case v10_1.ApplicationCommandType.ChatInput:
105
- {
106
- const parentCommand = self.commands?.values.find(x => {
107
- if (body.data.guild_id) {
108
- return x.guildId?.includes(body.data.guild_id) && x.name === body.data.name;
109
- }
110
- return x.name === body.data.name;
111
- });
112
- const optionsResolver = new commands_1.OptionResolver(self, body.data.options ?? [], parentCommand, body.guild_id, body.data.resolved);
113
- const interaction = structures_1.BaseInteraction.from(self, body, __reply);
114
- const command = optionsResolver.getCommand();
115
- if (!command?.run)
116
- return self.logger.warn(`${optionsResolver.fullCommandName} command does not have 'run' callback`);
117
- const context = new commands_1.CommandContext(self, interaction, optionsResolver, shardId, command);
118
- const extendContext = self.options?.context?.(interaction) ?? {};
119
- Object.assign(context, extendContext);
120
- try {
121
- if (command.botPermissions && interaction.appPermissions) {
122
- const permissions = interaction.appPermissions.missings(...interaction.appPermissions.values([command.botPermissions]));
123
- if (!interaction.appPermissions.has('Administrator') && permissions.length) {
124
- return command.onBotPermissionsFail?.(context, interaction.appPermissions.keys(permissions));
125
- }
126
- }
127
- const [erroredOptions, result] = await command.__runOptions(context, optionsResolver);
128
- if (erroredOptions) {
129
- return command.onOptionsError?.(context, result);
130
- }
131
- const resultRunGlobalMiddlewares = await command.__runGlobalMiddlewares(context);
132
- if (resultRunGlobalMiddlewares.pass) {
133
- return;
134
- }
135
- if ('error' in resultRunGlobalMiddlewares) {
136
- return command.onMiddlewaresError?.(context, resultRunGlobalMiddlewares.error ?? 'Unknown error');
137
- }
138
- const resultRunMiddlewares = await command.__runMiddlewares(context);
139
- if (resultRunMiddlewares.pass) {
140
- return;
141
- }
142
- if ('error' in resultRunMiddlewares) {
143
- return command.onMiddlewaresError?.(context, resultRunMiddlewares.error ?? 'Unknown error');
144
- }
145
- try {
146
- await command.run(context);
147
- await command.onAfterRun?.(context, undefined);
148
- }
149
- catch (error) {
150
- await command.onRunError?.(context, error);
151
- await command.onAfterRun?.(context, error);
152
- }
153
- }
154
- catch (error) {
155
- try {
156
- await command.onInternalError?.(self, context.command, error);
157
- }
158
- catch {
159
- // supress error
160
- }
161
- }
162
- }
163
- break;
164
- }
165
- }
166
- break;
167
- case v10_1.InteractionType.ModalSubmit:
168
- {
169
- const interaction = structures_1.BaseInteraction.from(self, body, __reply);
170
- if (self.components?.hasModal(interaction)) {
171
- await self.components.onModalSubmit(interaction);
172
- }
173
- else {
174
- const context = new components_1.ModalContext(self, interaction);
175
- const extended = self.options?.context?.(interaction) ?? {};
176
- Object.assign(context, extended);
177
- await self.components?.executeModal(context);
178
- }
179
- }
180
- break;
181
- case v10_1.InteractionType.MessageComponent:
182
- {
183
- const interaction = structures_1.BaseInteraction.from(self, body, __reply);
184
- if (self.components?.hasComponent(body.message.id, interaction.customId)) {
185
- await self.components.onComponent(body.message.id, interaction);
186
- }
187
- else {
188
- //@ts-expect-error
189
- const context = new components_1.ComponentContext(self, interaction);
190
- const extended = self.options?.context?.(interaction) ?? {};
191
- Object.assign(context, extended);
192
- await self.components?.executeComponent(context);
193
- }
194
- }
195
- break;
196
- }
197
- }
198
- exports.onInteractionCreate = onInteractionCreate;
@@ -1,13 +0,0 @@
1
- import { type APIApplicationCommandInteractionDataOption, type GatewayMessageCreateDispatchData } from 'discord-api-types/v10';
2
- import { Command, type MessageCommandOptionErrors, SubCommand, type UsingClient, type Client, type ContextOptionsResolved, type WorkerClient } from '..';
3
- import type { MakeRequired } from '../common';
4
- export declare function onMessageCreate(self: Client | WorkerClient, rawMessage: GatewayMessageCreateDispatchData, shardId: number): Promise<any>;
5
- export declare function defaultOptionsParser(self: UsingClient, command: Command | SubCommand, message: GatewayMessageCreateDispatchData, args: Partial<Record<string, string>>, resolved: MakeRequired<ContextOptionsResolved>): Promise<{
6
- errors: {
7
- name: string;
8
- error: string;
9
- fullError: MessageCommandOptionErrors;
10
- }[];
11
- options: APIApplicationCommandInteractionDataOption[];
12
- }>;
13
- export declare function defaultArgsParser(content: string): Record<string, string>;