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/lib/index.d.ts CHANGED
@@ -1,6 +1,6 @@
1
1
  import { type BaseClientOptions, type InternalRuntimeConfig, type InternalRuntimeConfigHTTP, type RuntimeConfig, type RuntimeConfigHTTP } from './client/base';
2
- import type { CustomEventsKeys, ClientNameEvents, EventContext } from './events';
3
- export { Logger, PermissionStrings, Watcher, Formatter } from './common';
2
+ import type { CustomEventsKeys, ClientNameEvents, ResolveEventParams } from './events';
3
+ export { Logger, PermissionStrings, Formatter } from './common';
4
4
  export { Collection, LimitedCollection } from './collection';
5
5
  export * from './api';
6
6
  export * from './builders';
@@ -12,7 +12,6 @@ export * from './langs';
12
12
  export { ShardManager, WorkerManager } from './websocket/discord';
13
13
  export * from './structures';
14
14
  export * from './client';
15
- export declare function throwError(msg: string): never;
16
15
  /**
17
16
  * Creates an event with the specified data and run function.
18
17
  *
@@ -32,21 +31,13 @@ export declare function createEvent<E extends ClientNameEvents | CustomEventsKey
32
31
  name: E;
33
32
  once?: boolean;
34
33
  };
35
- run: (...args: EventContext<{
36
- data: {
37
- name: E;
38
- };
39
- }>) => any;
34
+ run: (...args: ResolveEventParams<E>) => any;
40
35
  }): {
41
36
  data: {
42
37
  name: E;
43
38
  once?: boolean;
44
39
  };
45
- run: (...args: EventContext<{
46
- data: {
47
- name: E;
48
- };
49
- }>) => any;
40
+ run: (...args: ResolveEventParams<E>) => any;
50
41
  };
51
42
  export declare const config: {
52
43
  /**
@@ -78,4 +69,4 @@ export declare const config: {
78
69
  * };
79
70
  * });
80
71
  */
81
- export declare function extendContext<T extends {}>(cb: (interaction: Parameters<NonNullable<BaseClientOptions['context']>>[0]) => T): (interaction: Parameters<NonNullable<BaseClientOptions['context']>>[0]) => T;
72
+ export declare function extendContext<T extends {}>(cb: (interaction: Parameters<NonNullable<BaseClientOptions['context']>>[0]) => T): (interaction: Parameters<NonNullable<BaseClientOptions["context"]>>[0]) => T;
package/lib/index.js CHANGED
@@ -14,13 +14,14 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
14
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
- exports.extendContext = exports.config = exports.createEvent = exports.throwError = exports.WorkerManager = exports.ShardManager = exports.LimitedCollection = exports.Collection = exports.Formatter = exports.Watcher = exports.Logger = void 0;
18
- const v10_1 = require("discord-api-types/gateway/v10");
17
+ exports.config = exports.WorkerManager = exports.ShardManager = exports.LimitedCollection = exports.Collection = exports.Formatter = exports.Logger = void 0;
18
+ exports.createEvent = createEvent;
19
+ exports.extendContext = extendContext;
20
+ const types_1 = require("./types");
19
21
  const base_1 = require("./client/base");
20
22
  const common_1 = require("./common");
21
23
  var common_2 = require("./common");
22
24
  Object.defineProperty(exports, "Logger", { enumerable: true, get: function () { return common_2.Logger; } });
23
- Object.defineProperty(exports, "Watcher", { enumerable: true, get: function () { return common_2.Watcher; } });
24
25
  Object.defineProperty(exports, "Formatter", { enumerable: true, get: function () { return common_2.Formatter; } });
25
26
  //
26
27
  var collection_1 = require("./collection");
@@ -42,11 +43,7 @@ Object.defineProperty(exports, "WorkerManager", { enumerable: true, get: functio
42
43
  __exportStar(require("./structures"), exports);
43
44
  //
44
45
  __exportStar(require("./client"), exports);
45
- //
46
- function throwError(msg) {
47
- throw new Error(msg);
48
- }
49
- exports.throwError = throwError;
46
+ ///
50
47
  /**
51
48
  * Creates an event with the specified data and run function.
52
49
  *
@@ -65,7 +62,6 @@ function createEvent(data) {
65
62
  data.data.once ??= false;
66
63
  return data;
67
64
  }
68
- exports.createEvent = createEvent;
69
65
  exports.config = {
70
66
  /**
71
67
  * Configurations for the bot.
@@ -79,7 +75,7 @@ exports.config = {
79
75
  intents: 'intents' in data
80
76
  ? typeof data.intents === 'number'
81
77
  ? data.intents
82
- : data.intents?.reduce((pr, acc) => pr | (typeof acc === 'number' ? acc : v10_1.GatewayIntentBits[acc]), 0) ?? 0
78
+ : data.intents?.reduce((pr, acc) => pr | (typeof acc === 'number' ? acc : types_1.GatewayIntentBits[acc]), 0) ?? 0
83
79
  : 0,
84
80
  };
85
81
  },
@@ -95,7 +91,7 @@ exports.config = {
95
91
  ...data,
96
92
  };
97
93
  if ((0, common_1.isCloudfareWorker)())
98
- base_1.BaseClient._seyfertConfig = obj;
94
+ base_1.BaseClient._seyfertCfWorkerConfig = obj;
99
95
  return obj;
100
96
  },
101
97
  };
@@ -116,4 +112,3 @@ exports.config = {
116
112
  function extendContext(cb) {
117
113
  return cb;
118
114
  }
119
- exports.extendContext = extendContext;
@@ -1,21 +1,25 @@
1
- import type { LocaleString } from 'discord-api-types/v10';
2
1
  import { BaseHandler } from '../common';
2
+ import type { FileLoaded } from '../commands/handler';
3
+ import type { LocaleString } from '../types';
3
4
  export declare class LangsHandler extends BaseHandler {
4
5
  values: Partial<Record<string, any>>;
6
+ private __paths;
5
7
  protected filter: (path: string) => boolean;
6
8
  defaultLang?: string;
7
9
  aliases: [string, LocaleString[]][];
8
10
  getLocale(locale: string): string;
9
11
  getKey(lang: string, message: string): string | undefined;
10
12
  get(userLocale: string): import("./router").__InternalParseLocale<import("..").DefaultLocale> & {
11
- get(locale?: string | undefined): import("..").DefaultLocale;
13
+ get(locale?: string): import("..").DefaultLocale;
12
14
  };
13
- load(dir: string, instances?: {
14
- name: string;
15
- file: Record<string, any>;
16
- }[]): Promise<void>;
17
- setHandlers({ callback }: {
18
- callback: LangsHandler['callback'];
19
- }): void;
20
- callback: (_locale: string, file: Record<string, any>) => Record<string, any> | false;
15
+ load(dir: string): Promise<void>;
16
+ parse(file: EventInstance): void;
17
+ set(instances: EventInstance[]): void;
18
+ reload(lang: string): Promise<false | Record<string, any> | null>;
19
+ reloadAll(stopIfFail?: boolean): Promise<void>;
20
+ onFile(_locale: string, file: FileLoaded<Record<string, any>>): Record<string, any> | false;
21
21
  }
22
+ export type EventInstance = {
23
+ name: string;
24
+ file: Record<string, any>;
25
+ };
@@ -5,6 +5,7 @@ const common_1 = require("../common");
5
5
  const router_1 = require("./router");
6
6
  class LangsHandler extends common_1.BaseHandler {
7
7
  values = {};
8
+ __paths = {};
8
9
  filter = (path) => path.endsWith('.js') || (!path.endsWith('.d.ts') && path.endsWith('.ts')) || path.endsWith('.json');
9
10
  defaultLang;
10
11
  aliases = [];
@@ -30,18 +31,48 @@ class LangsHandler extends common_1.BaseHandler {
30
31
  const locale = this.getLocale(userLocale);
31
32
  return (0, router_1.LangRouter)(locale, this.defaultLang ?? locale, this.values)();
32
33
  }
33
- async load(dir, instances) {
34
- const files = instances ?? (await this.loadFilesK(await this.getFiles(dir)));
34
+ async load(dir) {
35
+ const files = await this.loadFilesK(await this.getFiles(dir));
35
36
  for (const i of files) {
36
- const locale = i.name.split('.').slice(0, -1).join('.') || i.name;
37
- const result = this.callback(locale, i.file);
38
- if (result)
39
- this.values[locale] = result;
37
+ this.parse(i);
40
38
  }
41
39
  }
42
- setHandlers({ callback }) {
43
- this.callback = callback;
40
+ parse(file) {
41
+ const locale = file.name.split('.').slice(0, -1).join('.') || file.name;
42
+ const result = this.onFile(locale, file.file);
43
+ if ('path' in file)
44
+ this.__paths[locale] = file.path;
45
+ if (result)
46
+ this.values[locale] = result;
47
+ }
48
+ set(instances) {
49
+ for (const i of instances) {
50
+ this.parse(i);
51
+ }
52
+ }
53
+ async reload(lang) {
54
+ if ((0, common_1.isCloudfareWorker)()) {
55
+ throw new Error('Reload in cloudfare worker is not supported');
56
+ }
57
+ const value = this.__paths[lang];
58
+ if (!value)
59
+ return null;
60
+ delete require.cache[value];
61
+ return (this.values[lang] = await (0, common_1.magicImport)(value).then(x => this.onFile(lang, x)));
62
+ }
63
+ async reloadAll(stopIfFail = true) {
64
+ for (const i in this.__paths) {
65
+ try {
66
+ await this.reload(i);
67
+ }
68
+ catch (e) {
69
+ if (stopIfFail)
70
+ throw e;
71
+ }
72
+ }
73
+ }
74
+ onFile(_locale, file) {
75
+ return file.default ?? false;
44
76
  }
45
- callback = (_locale, file) => file;
46
77
  }
47
78
  exports.LangsHandler = LangsHandler;
@@ -1,15 +1,15 @@
1
- import type { APIAutoModerationRule, RESTPatchAPIAutoModerationRuleJSONBody, RESTPostAPIAutoModerationRuleJSONBody } from 'discord-api-types/v10';
2
1
  import type { UsingClient } from '../commands';
3
- import { type MethodContext, type ObjectToLower } from '../common';
2
+ import type { MethodContext, ObjectToLower } from '../common';
3
+ import type { APIAutoModerationRule, RESTPatchAPIAutoModerationRuleJSONBody, RESTPostAPIAutoModerationRuleJSONBody } from '../types';
4
4
  import { DiscordBase } from './extra/DiscordBase';
5
5
  export interface AutoModerationRule extends ObjectToLower<APIAutoModerationRule> {
6
6
  }
7
7
  export declare class AutoModerationRule extends DiscordBase<APIAutoModerationRule> {
8
8
  constructor(client: UsingClient, data: APIAutoModerationRule);
9
9
  fetchCreator(force?: boolean): Promise<import("./GuildMember").GuildMember>;
10
- guild(force?: boolean): Promise<import("./Guild").Guild<"cached"> | import("./Guild").Guild<"api">>;
10
+ guild(force?: boolean): Promise<import("./Guild").Guild<"api">>;
11
11
  fetch(): Promise<AutoModerationRule>;
12
- edit(body: ObjectToLower<RESTPatchAPIAutoModerationRuleJSONBody>, reason?: string): Promise<AutoModerationRule>;
12
+ edit(body: RESTPatchAPIAutoModerationRuleJSONBody, reason?: string): Promise<AutoModerationRule>;
13
13
  delete(reason?: string): Promise<never>;
14
14
  static methods({ client, guildId }: MethodContext<{
15
15
  guildId: string;
@@ -1,7 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.AutoModerationRule = void 0;
4
- const common_1 = require("../common");
5
4
  const DiscordBase_1 = require("./extra/DiscordBase");
6
5
  class AutoModerationRule extends DiscordBase_1.DiscordBase {
7
6
  constructor(client, data) {
@@ -28,7 +27,7 @@ class AutoModerationRule extends DiscordBase_1.DiscordBase {
28
27
  create: (body) => client.guilds.moderation.create(guildId, body),
29
28
  delete: (ruleId, reason) => client.guilds.moderation.delete(guildId, ruleId, reason),
30
29
  fetch: (ruleId) => client.guilds.moderation.fetch(guildId, ruleId),
31
- edit: (ruleId, body, reason) => client.guilds.moderation.edit(guildId, ruleId, (0, common_1.toCamelCase)(body), reason),
30
+ edit: (ruleId, body, reason) => client.guilds.moderation.edit(guildId, ruleId, body, reason),
32
31
  };
33
32
  }
34
33
  }
@@ -1,5 +1,5 @@
1
- import type { GatewayReadyDispatchData, RESTPatchAPICurrentUserJSONBody } from 'discord-api-types/v10';
2
1
  import type { UsingClient } from '../commands';
2
+ import type { GatewayReadyDispatchData, RESTPatchAPICurrentUserJSONBody } from '../types';
3
3
  import { User } from './User';
4
4
  export declare class ClientUser extends User {
5
5
  application: GatewayReadyDispatchData['application'];
@@ -0,0 +1,10 @@
1
+ import type { ObjectToLower } from '../common';
2
+ import type { APIEntitlement } from '../types';
3
+ import { DiscordBase } from './extra/DiscordBase';
4
+ export interface Entitlement extends ObjectToLower<APIEntitlement> {
5
+ }
6
+ export declare class Entitlement extends DiscordBase<APIEntitlement> {
7
+ get startsAtTimestamp(): number | null;
8
+ get endsAtTimestamp(): number | null;
9
+ consume(): Promise<never>;
10
+ }
@@ -0,0 +1,16 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Entitlement = void 0;
4
+ const DiscordBase_1 = require("./extra/DiscordBase");
5
+ class Entitlement extends DiscordBase_1.DiscordBase {
6
+ get startsAtTimestamp() {
7
+ return this.startsAt ? Date.parse(this.startsAt) : null;
8
+ }
9
+ get endsAtTimestamp() {
10
+ return this.endsAt ? Date.parse(this.endsAt) : null;
11
+ }
12
+ consume() {
13
+ return this.client.applications.consumeEntitlement(this.applicationId, this.id);
14
+ }
15
+ }
16
+ exports.Entitlement = Entitlement;
@@ -1,4 +1,3 @@
1
- import type { APIGuild, GatewayGuildCreateDispatchData } from 'discord-api-types/v10';
2
1
  import type { UsingClient } from '../commands';
3
2
  import type { ObjectToLower, StructPropState, StructStates, ToClass } from '../common/types/util';
4
3
  import { AutoModerationRule } from './AutoModerationRule';
@@ -10,9 +9,10 @@ import { Sticker } from './Sticker';
10
9
  import { BaseGuild } from './extra/BaseGuild';
11
10
  import type { DiscordBase } from './extra/DiscordBase';
12
11
  import { GuildBan } from './GuildBan';
12
+ import type { APIGuild, GatewayGuildCreateDispatchData, RESTPatchAPIGuildJSONBody } from '../types';
13
13
  export interface Guild extends ObjectToLower<Omit<APIGuild, 'stickers' | 'emojis' | 'roles'>>, DiscordBase {
14
14
  }
15
- declare const Guild_base: ToClass<Omit<BaseGuild, "name" | "id" | "description" | "icon" | "splash" | "banner" | "features" | "welcomeScreen" | "verificationLevel" | "vanityUrlCode">, Guild<"api">>;
15
+ declare const Guild_base: ToClass<Omit<BaseGuild, "id" | "name" | "description" | "icon" | "splash" | "banner" | "features" | "welcomeScreen" | "verificationLevel" | "vanityUrlCode">, Guild<"api">>;
16
16
  export declare class Guild<State extends StructStates = 'api'> extends Guild_base {
17
17
  joinedAt: StructPropState<number, State, 'create'>;
18
18
  memberCount: StructPropState<number, State, 'create'>;
@@ -24,70 +24,69 @@ export declare class Guild<State extends StructStates = 'api'> extends Guild_bas
24
24
  };
25
25
  get maxStickers(): MaxStickers;
26
26
  get maxEmojis(): MaxEmojis;
27
- fetchOwner(force?: boolean): Promise<null> | Promise<GuildMember>;
27
+ fetchOwner(force?: boolean): Promise<GuildMember | null>;
28
28
  templates: {
29
29
  fetch: (code: string) => Promise<GuildTemplate>;
30
30
  list: () => Promise<GuildTemplate[]>;
31
- create: (body: import("discord-api-types/v10").RESTPostAPIGuildTemplatesJSONBody) => Promise<GuildTemplate>;
31
+ create: (body: import("../types").RESTPostAPIGuildTemplatesJSONBody) => Promise<GuildTemplate>;
32
32
  sync: (code: string) => Promise<GuildTemplate>;
33
- edit: (code: string, body: import("discord-api-types/utils/internals").AddUndefinedToPossiblyUndefinedPropertiesOfInterface<Partial<import("discord-api-types/v10").RESTPostAPIGuildTemplatesJSONBody>>) => Promise<GuildTemplate>;
33
+ edit: (code: string, body: import("../types").RESTPatchAPIGuildTemplateJSONBody) => Promise<GuildTemplate>;
34
34
  delete: (code: string) => Promise<GuildTemplate>;
35
35
  };
36
36
  stickers: {
37
37
  list: () => Promise<Sticker[]>;
38
- create: (payload: import("./Sticker").CreateStickerBodyRequest, reason?: string | undefined) => Promise<Sticker>;
39
- edit: (stickerId: string, body: import("discord-api-types/v10").RESTPatchAPIGuildStickerJSONBody, reason?: string | undefined) => Promise<Sticker>;
38
+ create: (payload: import("./Sticker").CreateStickerBodyRequest, reason?: string) => Promise<Sticker>;
39
+ edit: (stickerId: string, body: import("../types").RESTPatchAPIGuildStickerJSONBody, reason?: string) => Promise<Sticker>;
40
40
  fetch: (stickerId: string, force?: boolean) => Promise<Sticker>;
41
- delete: (stickerId: string, reason?: string | undefined) => Promise<void>;
41
+ delete: (stickerId: string, reason?: string) => Promise<void>;
42
42
  };
43
43
  members: {
44
44
  resolve: (resolve: import("../common").GuildMemberResolvable) => Promise<GuildMember | undefined>;
45
- search: (query?: import("discord-api-types/v10").RESTGetAPIGuildMembersSearchQuery | undefined) => Promise<GuildMember[]>;
46
- unban: (id: string, body?: import("discord-api-types/v10").RESTPutAPIGuildBanJSONBody | undefined, reason?: string | undefined) => Promise<void>;
47
- ban: (id: string, body?: import("discord-api-types/v10").RESTPutAPIGuildBanJSONBody | undefined, reason?: string | undefined) => Promise<void>;
48
- kick: (id: string, reason?: string | undefined) => Promise<void>;
49
- edit: (id: string, body: import("discord-api-types/v10").RESTPatchAPIGuildMemberJSONBody, reason?: string | undefined) => Promise<GuildMember>;
50
- add: (id: string, body: import("discord-api-types/v10").RESTPutAPIGuildMemberJSONBody) => Promise<GuildMember | undefined>;
45
+ search: (query?: import("../types").RESTGetAPIGuildMembersSearchQuery) => Promise<GuildMember[]>;
46
+ unban: (id: string, body?: import("../types").RESTPutAPIGuildBanJSONBody, reason?: string) => Promise<void>;
47
+ ban: (id: string, body?: import("../types").RESTPutAPIGuildBanJSONBody, reason?: string) => Promise<void>;
48
+ kick: (id: string, reason?: string) => Promise<void>;
49
+ edit: (id: string, body: import("../types").RESTPatchAPIGuildMemberJSONBody, reason?: string) => Promise<GuildMember>;
50
+ add: (id: string, body: import("../types").RESTPutAPIGuildMemberJSONBody) => Promise<GuildMember | undefined>;
51
51
  fetch: (memberId: string, force?: boolean) => Promise<GuildMember>;
52
- list: (query?: import("discord-api-types/v10").RESTGetAPIGuildMembersQuery | undefined, force?: boolean) => Promise<GuildMember[]>;
52
+ list: (query?: import("../types").RESTGetAPIGuildMembersQuery, force?: boolean) => Promise<GuildMember[]>;
53
53
  };
54
54
  moderationRules: {
55
55
  list: () => Promise<AutoModerationRule[]>;
56
- create: (body: import("discord-api-types/v10").RESTPostAPIAutoModerationRuleJSONBody) => Promise<AutoModerationRule>;
57
- delete: (ruleId: string, reason?: string | undefined) => Promise<never>;
56
+ create: (body: import("../types").RESTPostAPIAutoModerationRuleJSONBody) => Promise<AutoModerationRule>;
57
+ delete: (ruleId: string, reason?: string) => Promise<never>;
58
58
  fetch: (ruleId: string) => Promise<AutoModerationRule>;
59
- edit: (ruleId: string, body: import("discord-api-types/v10").RESTPatchAPIAutoModerationRuleJSONBody, reason?: string | undefined) => Promise<AutoModerationRule>;
59
+ edit: (ruleId: string, body: import("../types").RESTPatchAPIAutoModerationRuleJSONBody, reason?: string) => Promise<AutoModerationRule>;
60
60
  };
61
61
  roles: {
62
- create: (body: import("discord-api-types/v10").RESTPostAPIGuildRoleJSONBody) => Promise<GuildRole>;
62
+ create: (body: import("../types").RESTPostAPIGuildRoleJSONBody) => Promise<GuildRole>;
63
63
  list: (force?: boolean) => Promise<GuildRole[]>;
64
- edit: (roleId: string, body: import("discord-api-types/v10").RESTPatchAPIGuildRoleJSONBody, reason?: string | undefined) => Promise<GuildRole>;
65
- delete: (roleId: string, reason?: string | undefined) => Promise<GuildRole>;
66
- editPositions: (body: import("discord-api-types/v10").RESTPatchAPIGuildRolePositionsJSONBody) => Promise<GuildRole[]>;
64
+ edit: (roleId: string, body: import("../types").RESTPatchAPIGuildRoleJSONBody, reason?: string) => Promise<GuildRole>;
65
+ delete: (roleId: string, reason?: string) => Promise<GuildRole>;
66
+ editPositions: (body: import("../types").RESTPatchAPIGuildRolePositionsJSONBody) => Promise<GuildRole[]>;
67
67
  };
68
68
  channels: {
69
69
  list: (force?: boolean) => Promise<import("./channels").AllChannels[]>;
70
70
  fetch: (id: string, force?: boolean) => Promise<import("./channels").AllChannels>;
71
- create: (body: import("discord-api-types/v10").RESTPostAPIGuildChannelJSONBody) => Promise<import("./channels").AllChannels>;
72
- delete: (id: string, reason?: string | undefined) => Promise<import("./channels").AllChannels>;
73
- edit: (id: string, body: import("discord-api-types/v10").RESTPatchAPIChannelJSONBody, reason?: string | undefined) => Promise<import("./channels").AllChannels>;
74
- editPositions: (body: import("discord-api-types/v10").RESTPatchAPIGuildChannelPositionsJSONBody) => Promise<never>;
71
+ create: (body: import("../types").RESTPostAPIGuildChannelJSONBody) => Promise<import("./channels").AllChannels>;
72
+ delete: (id: string, reason?: string) => Promise<import("./channels").AllChannels>;
73
+ edit: (id: string, body: import("../types").RESTPatchAPIChannelJSONBody, reason?: string) => Promise<import("./channels").AllChannels>;
74
+ editPositions: (body: import("../types").RESTPatchAPIGuildChannelPositionsJSONBody) => Promise<never>;
75
75
  };
76
76
  emojis: {
77
- edit: (emojiId: string, body: import("discord-api-types/v10").RESTPatchAPIGuildEmojiJSONBody, reason?: string | undefined) => Promise<GuildEmoji>;
78
- create: (body: Omit<import("discord-api-types/v10").RESTPostAPIGuildEmojiJSONBody, "image"> & {
79
- image: import("../common").ImageResolvable;
80
- }) => Promise<GuildEmoji>;
77
+ edit: (emojiId: string, body: import("../types").RESTPatchAPIGuildEmojiJSONBody, reason?: string) => Promise<GuildEmoji>;
78
+ create: (body: Parameters<import("../common").EmojiShorter["create"]>[1]) => Promise<GuildEmoji>;
81
79
  fetch: (emojiId: string, force?: boolean) => Promise<GuildEmoji>;
82
80
  list: (force?: boolean) => Promise<GuildEmoji[]>;
83
81
  };
84
82
  bans: {
85
83
  fetch: (userId: string, force?: boolean) => Promise<GuildBan>;
86
- list: (query?: import("discord-api-types/v10").RESTGetAPIGuildBansQuery | undefined, force?: boolean) => Promise<GuildBan[]>;
87
- create: (memberId: string, body?: import("discord-api-types/v10").RESTPutAPIGuildBanJSONBody | undefined, reason?: string | undefined) => Promise<void>;
88
- remove: (memberId: string, reason?: string | undefined) => Promise<void>;
89
- bulkCreate: (body: import("discord-api-types/v10").RESTPostAPIGuildBulkBanJSONBody, reason?: string | undefined) => Promise<import("discord-api-types/v10").RESTPostAPIGuildBulkBanResult>;
84
+ list: (query?: import("../types").RESTGetAPIGuildBansQuery, force?: boolean) => Promise<GuildBan[]>;
85
+ create: (memberId: string, body?: Parameters<import("../common/shorters/bans").BanShorter["create"]>[2], reason?: string) => Promise<void>;
86
+ remove: (memberId: string, reason?: string) => Promise<void>;
87
+ bulkCreate: (body: Parameters<import("../common/shorters/bans").BanShorter["bulkCreate"]>[1], reason?: string) => Promise<import("../types").RESTPostAPIGuildBulkBanResult>;
90
88
  };
89
+ edit(body: RESTPatchAPIGuildJSONBody, reason?: string): Promise<Guild<"api">>;
91
90
  }
92
91
  /** Maximun custom guild emojis per level */
93
92
  export type MaxEmojis = 50 | 100 | 150 | 250;
@@ -49,10 +49,10 @@ class Guild extends BaseGuild_1.BaseGuild {
49
49
  return 50;
50
50
  }
51
51
  }
52
- fetchOwner(force = false) {
52
+ async fetchOwner(force = false) {
53
53
  // For no reason, discord has some guilds without owner... 🤓
54
54
  if (!this.ownerId) {
55
- return Promise.resolve(null);
55
+ return null;
56
56
  }
57
57
  return this.members.fetch(this.ownerId, force);
58
58
  }
@@ -64,5 +64,8 @@ class Guild extends BaseGuild_1.BaseGuild {
64
64
  channels = channels_1.BaseChannel.allMethods({ client: this.client, guildId: this.id });
65
65
  emojis = GuildEmoji_1.GuildEmoji.methods({ client: this.client, guildId: this.id });
66
66
  bans = GuildBan_1.GuildBan.methods({ client: this.client, guildId: this.id });
67
+ edit(body, reason) {
68
+ return this.client.guilds.edit(this.id, body, reason);
69
+ }
67
70
  }
68
71
  exports.Guild = Guild;
@@ -1,8 +1,8 @@
1
- import type { APIBan, RESTGetAPIGuildBansQuery } from 'discord-api-types/v10';
2
1
  import type { UsingClient } from '../commands';
3
- import type { MethodContext, ObjectToLower } from '../common';
2
+ import { type MethodContext, type ObjectToLower } from '../common';
4
3
  import { DiscordBase } from './extra/DiscordBase';
5
4
  import type { BanShorter } from '../common/shorters/bans';
5
+ import type { APIBan, RESTGetAPIGuildBansQuery } from '../types';
6
6
  export interface GuildBan extends DiscordBase, ObjectToLower<Omit<APIBan, 'id'>> {
7
7
  }
8
8
  export declare class GuildBan extends DiscordBase {
@@ -10,16 +10,16 @@ export declare class GuildBan extends DiscordBase {
10
10
  constructor(client: UsingClient, data: APIBan, guildId: string);
11
11
  create(body?: Parameters<BanShorter['create']>[2], reason?: string): Promise<void>;
12
12
  remove(reason?: string): Promise<void>;
13
- guild(force?: boolean): Promise<import("./Guild").Guild<"cached"> | import("./Guild").Guild<"api">>;
13
+ guild(force?: boolean): Promise<import("./Guild").Guild<"api">>;
14
14
  fetch(force?: boolean): Promise<GuildBan>;
15
- toString(): string;
15
+ toString(): `<@${string}>`;
16
16
  static methods({ client, guildId }: MethodContext<{
17
17
  guildId: string;
18
18
  }>): {
19
19
  fetch: (userId: string, force?: boolean) => Promise<GuildBan>;
20
20
  list: (query?: RESTGetAPIGuildBansQuery, force?: boolean) => Promise<GuildBan[]>;
21
- create: (memberId: string, body?: Parameters<BanShorter['create']>[2], reason?: string) => Promise<void>;
21
+ create: (memberId: string, body?: Parameters<BanShorter["create"]>[2], reason?: string) => Promise<void>;
22
22
  remove: (memberId: string, reason?: string) => Promise<void>;
23
- bulkCreate: (body: Parameters<BanShorter['bulkCreate']>[1], reason?: string) => Promise<import("discord-api-types/v10").RESTPostAPIGuildBulkBanResult>;
23
+ bulkCreate: (body: Parameters<BanShorter["bulkCreate"]>[1], reason?: string) => Promise<import("../types").RESTPostAPIGuildBulkBanResult>;
24
24
  };
25
25
  }
@@ -1,6 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.GuildBan = void 0;
4
+ const common_1 = require("../common");
4
5
  const DiscordBase_1 = require("./extra/DiscordBase");
5
6
  class GuildBan extends DiscordBase_1.DiscordBase {
6
7
  guildId;
@@ -21,7 +22,7 @@ class GuildBan extends DiscordBase_1.DiscordBase {
21
22
  return this.client.bans.fetch(this.guildId, this.id, force);
22
23
  }
23
24
  toString() {
24
- return `<@${this.id}>`;
25
+ return common_1.Formatter.userMention(this.id);
25
26
  }
26
27
  static methods({ client, guildId }) {
27
28
  return {
@@ -1,14 +1,14 @@
1
- import type { APIEmoji, RESTPatchAPIChannelJSONBody, RESTPatchAPIGuildEmojiJSONBody } from 'discord-api-types/v10';
2
1
  import type { BaseCDNUrlOptions } from '../api';
3
2
  import type { UsingClient } from '../commands';
4
- import type { EmojiShorter, MethodContext, ObjectToLower } from '../common';
3
+ import { type EmojiShorter, type MethodContext, type ObjectToLower } from '../common';
4
+ import type { APIEmoji, RESTPatchAPIChannelJSONBody, RESTPatchAPIGuildEmojiJSONBody } from '../types';
5
5
  import { DiscordBase } from './extra/DiscordBase';
6
6
  export interface GuildEmoji extends DiscordBase, ObjectToLower<Omit<APIEmoji, 'id'>> {
7
7
  }
8
8
  export declare class GuildEmoji extends DiscordBase {
9
9
  readonly guildId: string;
10
10
  constructor(client: UsingClient, data: APIEmoji, guildId: string);
11
- guild(force?: boolean): Promise<import("./Guild").Guild<"cached"> | import("./Guild").Guild<"api">> | undefined;
11
+ guild(force?: boolean): Promise<import("./Guild").Guild<"api"> | undefined>;
12
12
  edit(body: RESTPatchAPIChannelJSONBody, reason?: string): Promise<GuildEmoji>;
13
13
  delete(reason?: string): Promise<void>;
14
14
  fetch(force?: boolean): Promise<GuildEmoji>;
@@ -23,7 +23,7 @@ export declare class GuildEmoji extends DiscordBase {
23
23
  guildId: string;
24
24
  }>): {
25
25
  edit: (emojiId: string, body: RESTPatchAPIGuildEmojiJSONBody, reason?: string) => Promise<GuildEmoji>;
26
- create: (body: Parameters<EmojiShorter['create']>[1]) => Promise<GuildEmoji>;
26
+ create: (body: Parameters<EmojiShorter["create"]>[1]) => Promise<GuildEmoji>;
27
27
  fetch: (emojiId: string, force?: boolean) => Promise<GuildEmoji>;
28
28
  list: (force?: boolean) => Promise<GuildEmoji[]>;
29
29
  };
@@ -1,6 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.GuildEmoji = void 0;
4
+ const common_1 = require("../common");
4
5
  const DiscordBase_1 = require("./extra/DiscordBase");
5
6
  class GuildEmoji extends DiscordBase_1.DiscordBase {
6
7
  guildId;
@@ -8,7 +9,7 @@ class GuildEmoji extends DiscordBase_1.DiscordBase {
8
9
  super(client, { ...data, id: data.id });
9
10
  this.guildId = guildId;
10
11
  }
11
- guild(force = false) {
12
+ async guild(force = false) {
12
13
  if (!this.guildId)
13
14
  return;
14
15
  return this.client.guilds.fetch(this.guildId, force);
@@ -26,7 +27,7 @@ class GuildEmoji extends DiscordBase_1.DiscordBase {
26
27
  return this.rest.cdn.emojis(this.id).get(options);
27
28
  }
28
29
  toString() {
29
- return `<${this.animated ? 'a' : ''}:${this.name}:${this.id}>`;
30
+ return common_1.Formatter.emojiMention(this.id, this.name, this.animated);
30
31
  }
31
32
  toJSON() {
32
33
  return {
@@ -1,15 +1,10 @@
1
1
  import { DiscordBase } from './extra/DiscordBase';
2
- export type GuildMemberData = APIGuildMember | GatewayGuildMemberUpdateDispatchData | GatewayGuildMemberAddDispatchData | APIInteractionDataResolvedGuildMember;
3
- import type { APIGuildMember, APIInteractionDataResolvedGuildMember, APIUser, GatewayGuildMemberAddDispatchData, GatewayGuildMemberUpdateDispatchData, RESTGetAPIGuildMembersQuery, RESTGetAPIGuildMembersSearchQuery, RESTPatchAPIGuildMemberJSONBody, RESTPutAPIGuildBanJSONBody, RESTPutAPIGuildMemberJSONBody } from 'discord-api-types/v10';
2
+ export type GuildMemberData = APIGuildMember | Omit<APIGuildMember, 'user'> | GatewayGuildMemberUpdateDispatchData | GatewayGuildMemberAddDispatchData | APIInteractionDataResolvedGuildMember;
3
+ import type { APIGuildMember, GatewayGuildMemberUpdateDispatchData, GatewayGuildMemberAddDispatchData, APIInteractionDataResolvedGuildMember, RESTPutAPIGuildBanJSONBody, RESTPatchAPIGuildMemberJSONBody, RESTGetAPIGuildMembersSearchQuery, RESTPutAPIGuildMemberJSONBody, RESTGetAPIGuildMembersQuery, APIUser } from '../types';
4
4
  import type { UsingClient } from '../commands';
5
- import type { MakeRequired, MessageCreateBodyRequest, ObjectToLower, ToClass } from '../common';
6
- import type { ImageOptions, MethodContext } from '../common/types/options';
7
- import type { GuildMemberResolvable } from '../common/types/resolvables';
8
- import { User } from './User';
9
5
  import { PermissionsBitField } from './extra/Permissions';
10
- export type GatewayGuildMemberAddDispatchDataFixed<Pending extends boolean> = Pending extends true ? Omit<GatewayGuildMemberAddDispatchData, 'user'> & {
11
- id: string;
12
- } : MakeRequired<GatewayGuildMemberAddDispatchData, 'user'>;
6
+ import { type MessageCreateBodyRequest, type ObjectToLower, type ToClass, type ImageOptions, type MethodContext, type GuildMemberResolvable } from '../common';
7
+ import { type UserStructure } from '../client/transformers';
13
8
  export interface BaseGuildMember extends DiscordBase, ObjectToLower<Omit<APIGuildMember, 'user' | 'roles'>> {
14
9
  }
15
10
  export declare class BaseGuildMember extends DiscordBase {
@@ -21,18 +16,21 @@ export declare class BaseGuildMember extends DiscordBase {
21
16
  constructor(client: UsingClient, data: GuildMemberData, id: string,
22
17
  /** the choosen guild id */
23
18
  guildId: string);
24
- guild(force?: boolean): Promise<import("./Guild").Guild<"cached"> | import("./Guild").Guild<"api">>;
19
+ guild(force?: boolean): Promise<import("./Guild").Guild<"api">>;
25
20
  fetch(force?: boolean): Promise<GuildMember>;
26
21
  ban(body?: RESTPutAPIGuildBanJSONBody, reason?: string): Promise<void>;
27
22
  kick(reason?: string): Promise<void>;
28
23
  edit(body: RESTPatchAPIGuildMemberJSONBody, reason?: string): Promise<GuildMember>;
29
- presence(): import("..").ReturnCache<(Omit<import("discord-api-types/v10").GatewayPresenceUpdate, "user"> & {
24
+ presence(): import("..").ReturnCache<(Omit<import("../types").GatewayPresenceUpdate, "user"> & {
30
25
  id: string;
26
+ user_id: string;
31
27
  } & {
32
28
  guild_id: string;
33
29
  }) | undefined>;
34
- voice(): import("..").ReturnCache<import("./VoiceState").VoiceState | undefined>;
35
- toString(): string;
30
+ voice(force?: boolean): Promise<import("./VoiceState").VoiceState>;
31
+ toString(): `<@${string}>`;
32
+ timeout(time: null | number, reason?: string): Promise<GuildMember>;
33
+ get hasTimeout(): false | number;
36
34
  private patch;
37
35
  get roles(): {
38
36
  keys: string[];
@@ -66,9 +64,9 @@ export interface GuildMember extends ObjectToLower<Omit<APIGuildMember, 'user' |
66
64
  export declare class GuildMember extends BaseGuildMember {
67
65
  /** the choosen guild id */
68
66
  readonly guildId: string;
69
- user: User;
67
+ user: UserStructure;
70
68
  private __me?;
71
- constructor(client: UsingClient, data: GuildMemberData, user: APIUser | User,
69
+ constructor(client: UsingClient, data: GuildMemberData, user: APIUser,
72
70
  /** the choosen guild id */
73
71
  guildId: string);
74
72
  get tag(): string;
@@ -87,7 +85,12 @@ export declare class GuildMember extends BaseGuildMember {
87
85
  avatarURL(options?: ImageOptions & {
88
86
  exclude?: false;
89
87
  }): string;
90
- bannerURL(options?: ImageOptions): string | undefined;
88
+ bannerURL(options: ImageOptions & {
89
+ exclude: true;
90
+ }): string | undefined | null;
91
+ bannerURL(options?: ImageOptions & {
92
+ exclude?: false;
93
+ }): string | undefined;
91
94
  fetchPermissions(force?: boolean): Promise<PermissionsBitField>;
92
95
  manageable(force?: boolean): Promise<boolean>;
93
96
  bannable(force?: boolean): Promise<boolean>;
@@ -108,7 +111,7 @@ declare const InteractionGuildMember_base: ToClass<Omit<GuildMember, "deaf" | "m
108
111
  */
109
112
  export declare class InteractionGuildMember extends InteractionGuildMember_base {
110
113
  permissions: PermissionsBitField;
111
- constructor(client: UsingClient, data: APIInteractionDataResolvedGuildMember, user: APIUser | User,
114
+ constructor(client: UsingClient, data: APIInteractionDataResolvedGuildMember, user: APIUser,
112
115
  /** the choosen guild id */
113
116
  guildId: string);
114
117
  }