seyfert 1.5.0 → 2.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (439) hide show
  1. package/LICENSE +21 -190
  2. package/README.md +18 -10
  3. package/lib/api/Router.js +2 -2
  4. package/lib/api/Routes/applications.d.ts +23 -1
  5. package/lib/api/Routes/channels.d.ts +1 -1
  6. package/lib/api/Routes/gateway.d.ts +1 -1
  7. package/lib/api/Routes/guilds.d.ts +5 -2
  8. package/lib/api/Routes/interactions.d.ts +8 -2
  9. package/lib/api/Routes/invites.d.ts +1 -1
  10. package/lib/api/Routes/skus.d.ts +11 -0
  11. package/lib/api/Routes/skus.js +2 -0
  12. package/lib/api/Routes/stage-instances.d.ts +1 -1
  13. package/lib/api/Routes/stickers.d.ts +2 -2
  14. package/lib/api/Routes/users.d.ts +1 -1
  15. package/lib/api/Routes/voice.d.ts +1 -1
  16. package/lib/api/Routes/webhooks.d.ts +2 -2
  17. package/lib/api/api.d.ts +3 -3
  18. package/lib/api/api.js +15 -25
  19. package/lib/api/bucket.d.ts +0 -1
  20. package/lib/api/shared.d.ts +1 -2
  21. package/lib/api/utils/constants.d.ts +2 -5
  22. package/lib/api/utils/constants.js +3 -7
  23. package/lib/api/utils/utils.d.ts +1 -2
  24. package/lib/api/utils/utils.js +2 -3
  25. package/lib/builders/ActionRow.d.ts +1 -1
  26. package/lib/builders/ActionRow.js +3 -3
  27. package/lib/builders/Attachment.d.ts +3 -4
  28. package/lib/builders/Attachment.js +24 -25
  29. package/lib/builders/Base.d.ts +2 -2
  30. package/lib/builders/Base.js +1 -1
  31. package/lib/builders/Button.d.ts +7 -7
  32. package/lib/builders/Button.js +11 -9
  33. package/lib/builders/Embed.d.ts +1 -1
  34. package/lib/builders/Modal.d.ts +1 -1
  35. package/lib/builders/Modal.js +2 -2
  36. package/lib/builders/Poll.d.ts +2 -2
  37. package/lib/builders/Poll.js +5 -6
  38. package/lib/builders/SelectMenu.d.ts +1 -1
  39. package/lib/builders/SelectMenu.js +17 -18
  40. package/lib/builders/index.d.ts +1 -1
  41. package/lib/builders/index.js +10 -11
  42. package/lib/cache/adapters/default.d.ts +16 -9
  43. package/lib/cache/adapters/default.js +42 -31
  44. package/lib/cache/adapters/index.d.ts +0 -1
  45. package/lib/cache/adapters/index.js +0 -1
  46. package/lib/cache/adapters/limited.d.ts +17 -12
  47. package/lib/cache/adapters/limited.js +80 -36
  48. package/lib/cache/adapters/types.d.ts +6 -7
  49. package/lib/cache/adapters/workeradapter.d.ts +6 -6
  50. package/lib/cache/adapters/workeradapter.js +13 -0
  51. package/lib/cache/index.d.ts +20 -8
  52. package/lib/cache/index.js +328 -22
  53. package/lib/cache/resources/bans.d.ts +9 -6
  54. package/lib/cache/resources/bans.js +13 -4
  55. package/lib/cache/resources/channels.d.ts +6 -4
  56. package/lib/cache/resources/channels.js +13 -7
  57. package/lib/cache/resources/default/base.d.ts +7 -7
  58. package/lib/cache/resources/default/base.js +2 -2
  59. package/lib/cache/resources/default/guild-based.d.ts +6 -6
  60. package/lib/cache/resources/default/guild-based.js +6 -6
  61. package/lib/cache/resources/default/guild-related.d.ts +7 -7
  62. package/lib/cache/resources/default/guild-related.js +10 -8
  63. package/lib/cache/resources/emojis.d.ts +15 -6
  64. package/lib/cache/resources/emojis.js +13 -4
  65. package/lib/cache/resources/guilds.d.ts +9 -6
  66. package/lib/cache/resources/guilds.js +27 -6
  67. package/lib/cache/resources/members.d.ts +9 -6
  68. package/lib/cache/resources/members.js +22 -6
  69. package/lib/cache/resources/messages.d.ts +11 -7
  70. package/lib/cache/resources/messages.js +19 -7
  71. package/lib/cache/resources/overwrites.d.ts +11 -2
  72. package/lib/cache/resources/overwrites.js +9 -0
  73. package/lib/cache/resources/presence.d.ts +3 -2
  74. package/lib/cache/resources/roles.d.ts +9 -6
  75. package/lib/cache/resources/roles.js +13 -4
  76. package/lib/cache/resources/stage-instances.d.ts +2 -2
  77. package/lib/cache/resources/stickers.d.ts +9 -6
  78. package/lib/cache/resources/stickers.js +13 -4
  79. package/lib/cache/resources/threads.d.ts +9 -6
  80. package/lib/cache/resources/threads.js +13 -4
  81. package/lib/cache/resources/users.d.ts +9 -6
  82. package/lib/cache/resources/users.js +13 -4
  83. package/lib/cache/resources/voice-states.d.ts +11 -8
  84. package/lib/cache/resources/voice-states.js +15 -4
  85. package/lib/client/base.d.ts +29 -21
  86. package/lib/client/base.js +64 -57
  87. package/lib/client/client.d.ts +11 -16
  88. package/lib/client/client.js +51 -37
  89. package/lib/client/collectors.d.ts +10 -10
  90. package/lib/client/collectors.js +26 -1
  91. package/lib/client/httpclient.d.ts +8 -13
  92. package/lib/client/httpclient.js +27 -218
  93. package/lib/client/index.d.ts +1 -0
  94. package/lib/client/index.js +1 -0
  95. package/lib/client/transformers.d.ts +68 -0
  96. package/lib/client/transformers.js +99 -0
  97. package/lib/client/types.d.ts +5 -0
  98. package/lib/client/types.js +2 -0
  99. package/lib/client/workerclient.d.ts +16 -15
  100. package/lib/client/workerclient.js +130 -72
  101. package/lib/commands/applications/chat.d.ts +35 -34
  102. package/lib/commands/applications/chat.js +5 -9
  103. package/lib/commands/applications/chatcontext.d.ts +17 -17
  104. package/lib/commands/applications/chatcontext.js +5 -5
  105. package/lib/commands/applications/entryPoint.d.ts +46 -0
  106. package/lib/commands/applications/entryPoint.js +56 -0
  107. package/lib/commands/applications/entrycontext.d.ts +40 -0
  108. package/lib/commands/applications/entrycontext.js +85 -0
  109. package/lib/commands/applications/menu.d.ts +2 -3
  110. package/lib/commands/applications/menu.js +2 -5
  111. package/lib/commands/applications/menucontext.d.ts +14 -13
  112. package/lib/commands/applications/menucontext.js +9 -9
  113. package/lib/commands/applications/options.d.ts +4 -3
  114. package/lib/commands/applications/options.js +20 -21
  115. package/lib/commands/applications/shared.d.ts +3 -1
  116. package/lib/commands/decorators.d.ts +47 -35
  117. package/lib/commands/decorators.js +20 -18
  118. package/lib/commands/handle.d.ts +65 -0
  119. package/lib/commands/handle.js +727 -0
  120. package/lib/commands/handler.d.ts +29 -18
  121. package/lib/commands/handler.js +295 -164
  122. package/lib/commands/index.d.ts +2 -0
  123. package/lib/commands/index.js +2 -0
  124. package/lib/commands/optionresolver.d.ts +13 -13
  125. package/lib/commands/optionresolver.js +24 -29
  126. package/lib/common/bot/watcher.d.ts +4 -33
  127. package/lib/common/bot/watcher.js +0 -109
  128. package/lib/common/index.d.ts +1 -0
  129. package/lib/common/index.js +1 -0
  130. package/lib/common/it/colors.js +48 -49
  131. package/lib/common/it/formatter.d.ts +32 -0
  132. package/lib/common/it/formatter.js +42 -0
  133. package/lib/common/it/logger.d.ts +0 -1
  134. package/lib/common/it/logger.js +3 -3
  135. package/lib/common/it/utils.d.ts +24 -4
  136. package/lib/common/it/utils.js +88 -17
  137. package/lib/common/shorters/application.d.ts +56 -0
  138. package/lib/common/shorters/application.js +81 -0
  139. package/lib/common/shorters/bans.d.ts +4 -5
  140. package/lib/common/shorters/bans.js +3 -3
  141. package/lib/common/shorters/channels.d.ts +7 -6
  142. package/lib/common/shorters/channels.js +19 -15
  143. package/lib/common/shorters/emojis.d.ts +5 -6
  144. package/lib/common/shorters/emojis.js +5 -5
  145. package/lib/common/shorters/guilds.d.ts +18 -16
  146. package/lib/common/shorters/guilds.js +31 -26
  147. package/lib/common/shorters/interaction.d.ts +7 -7
  148. package/lib/common/shorters/interaction.js +3 -2
  149. package/lib/common/shorters/members.d.ts +29 -12
  150. package/lib/common/shorters/members.js +55 -16
  151. package/lib/common/shorters/messages.d.ts +7 -8
  152. package/lib/common/shorters/messages.js +8 -7
  153. package/lib/common/shorters/reactions.d.ts +3 -3
  154. package/lib/common/shorters/reactions.js +11 -11
  155. package/lib/common/shorters/roles.d.ts +9 -7
  156. package/lib/common/shorters/roles.js +26 -7
  157. package/lib/common/shorters/templates.d.ts +7 -8
  158. package/lib/common/shorters/templates.js +7 -7
  159. package/lib/common/shorters/threads.d.ts +6 -7
  160. package/lib/common/shorters/threads.js +6 -9
  161. package/lib/common/shorters/users.d.ts +4 -4
  162. package/lib/common/shorters/users.js +8 -4
  163. package/lib/common/shorters/webhook.d.ts +10 -10
  164. package/lib/common/shorters/webhook.js +10 -9
  165. package/lib/common/types/resolvables.d.ts +2 -2
  166. package/lib/common/types/util.d.ts +4 -2
  167. package/lib/common/types/write.d.ts +3 -3
  168. package/lib/components/ActionRow.d.ts +1 -1
  169. package/lib/components/BaseComponent.d.ts +1 -1
  170. package/lib/components/BaseComponent.js +1 -1
  171. package/lib/components/BaseSelectMenuComponent.d.ts +1 -1
  172. package/lib/components/ButtonComponent.d.ts +17 -7
  173. package/lib/components/ButtonComponent.js +19 -2
  174. package/lib/components/ChannelSelectMenuComponent.d.ts +3 -3
  175. package/lib/components/MentionableSelectMenuComponent.d.ts +2 -2
  176. package/lib/components/RoleSelectMenuComponent.d.ts +2 -2
  177. package/lib/components/StringSelectMenuComponent.d.ts +2 -2
  178. package/lib/components/TextInputComponent.d.ts +2 -2
  179. package/lib/components/UserSelectMenuComponent.d.ts +2 -2
  180. package/lib/components/componentcommand.js +2 -2
  181. package/lib/components/componentcontext.d.ts +10 -9
  182. package/lib/components/componentcontext.js +8 -8
  183. package/lib/components/handler.d.ts +15 -14
  184. package/lib/components/handler.js +89 -93
  185. package/lib/components/index.d.ts +3 -3
  186. package/lib/components/index.js +12 -10
  187. package/lib/components/modalcontext.d.ts +12 -11
  188. package/lib/components/modalcontext.js +2 -2
  189. package/lib/deps/mixer.d.ts +8 -0
  190. package/lib/deps/mixer.js +71 -0
  191. package/lib/events/handler.d.ts +35 -13
  192. package/lib/events/handler.js +57 -24
  193. package/lib/events/hooks/application_command.d.ts +2 -2
  194. package/lib/events/hooks/auto_moderation.d.ts +6 -7
  195. package/lib/events/hooks/auto_moderation.js +4 -4
  196. package/lib/events/hooks/channel.d.ts +2 -2
  197. package/lib/events/hooks/channel.js +4 -7
  198. package/lib/events/hooks/custom.d.ts +4 -3
  199. package/lib/events/hooks/custom.js +5 -1
  200. package/lib/events/hooks/dispatch.d.ts +3 -4
  201. package/lib/events/hooks/dispatch.js +2 -2
  202. package/lib/events/hooks/entitlement.d.ts +5 -37
  203. package/lib/events/hooks/entitlement.js +7 -7
  204. package/lib/events/hooks/guild.d.ts +125 -125
  205. package/lib/events/hooks/guild.js +13 -15
  206. package/lib/events/hooks/integration.d.ts +27 -28
  207. package/lib/events/hooks/integration.js +3 -3
  208. package/lib/events/hooks/interactions.d.ts +2 -2
  209. package/lib/events/hooks/invite.d.ts +18 -17
  210. package/lib/events/hooks/message.d.ts +69 -54
  211. package/lib/events/hooks/message.js +4 -8
  212. package/lib/events/hooks/presence.d.ts +17 -16
  213. package/lib/events/hooks/stage.d.ts +4 -4
  214. package/lib/events/hooks/subscriptions.d.ts +35 -0
  215. package/lib/events/hooks/subscriptions.js +16 -0
  216. package/lib/events/hooks/thread.d.ts +132 -63
  217. package/lib/events/hooks/thread.js +4 -4
  218. package/lib/events/hooks/typing.d.ts +28 -6
  219. package/lib/events/hooks/typing.js +2 -2
  220. package/lib/events/hooks/user.d.ts +3 -3
  221. package/lib/events/hooks/user.js +2 -2
  222. package/lib/events/hooks/voice.d.ts +28 -3
  223. package/lib/events/hooks/voice.js +8 -4
  224. package/lib/events/hooks/webhook.d.ts +1 -1
  225. package/lib/index.d.ts +5 -14
  226. package/lib/index.js +7 -12
  227. package/lib/langs/handler.d.ts +14 -10
  228. package/lib/langs/handler.js +40 -9
  229. package/lib/structures/AutoModerationRule.d.ts +4 -4
  230. package/lib/structures/AutoModerationRule.js +1 -2
  231. package/lib/structures/ClientUser.d.ts +1 -1
  232. package/lib/structures/Entitlement.d.ts +10 -0
  233. package/lib/structures/Entitlement.js +16 -0
  234. package/lib/structures/Guild.d.ts +33 -34
  235. package/lib/structures/Guild.js +5 -2
  236. package/lib/structures/GuildBan.d.ts +6 -6
  237. package/lib/structures/GuildBan.js +2 -1
  238. package/lib/structures/GuildEmoji.d.ts +4 -4
  239. package/lib/structures/GuildEmoji.js +3 -2
  240. package/lib/structures/GuildMember.d.ts +20 -17
  241. package/lib/structures/GuildMember.js +18 -8
  242. package/lib/structures/GuildPreview.d.ts +1 -1
  243. package/lib/structures/GuildRole.d.ts +5 -3
  244. package/lib/structures/GuildRole.js +8 -1
  245. package/lib/structures/GuildTemplate.d.ts +2 -2
  246. package/lib/structures/GuildTemplate.js +1 -1
  247. package/lib/structures/Interaction.d.ts +76 -39
  248. package/lib/structures/Interaction.js +179 -94
  249. package/lib/structures/Message.d.ts +29 -33
  250. package/lib/structures/Message.js +8 -12
  251. package/lib/structures/Poll.d.ts +4 -3
  252. package/lib/structures/Poll.js +6 -2
  253. package/lib/structures/Sticker.d.ts +7 -7
  254. package/lib/structures/Sticker.js +7 -7
  255. package/lib/structures/User.d.ts +5 -4
  256. package/lib/structures/User.js +2 -1
  257. package/lib/structures/VoiceState.d.ts +15 -11
  258. package/lib/structures/VoiceState.js +35 -17
  259. package/lib/structures/Webhook.d.ts +6 -7
  260. package/lib/structures/Webhook.js +6 -7
  261. package/lib/structures/channels.d.ts +11 -10
  262. package/lib/structures/channels.js +70 -65
  263. package/lib/structures/extra/BaseGuild.d.ts +12 -2
  264. package/lib/structures/extra/BaseGuild.js +30 -3
  265. package/lib/structures/extra/BitField.d.ts +1 -1
  266. package/lib/structures/extra/BitField.js +3 -2
  267. package/lib/structures/extra/DiscordBase.js +2 -2
  268. package/lib/structures/extra/Permissions.d.ts +3 -1
  269. package/lib/structures/extra/Permissions.js +8 -3
  270. package/lib/types/gateway.d.ts +1554 -0
  271. package/lib/types/gateway.js +4 -0
  272. package/lib/types/index.d.ts +9 -1
  273. package/lib/types/index.js +28 -1
  274. package/lib/types/payloads/_interactions/_applicationCommands/_chatInput/attachment.d.ts +5 -0
  275. package/lib/types/payloads/_interactions/_applicationCommands/_chatInput/attachment.js +2 -0
  276. package/lib/types/payloads/_interactions/_applicationCommands/_chatInput/base.d.ts +22 -0
  277. package/lib/types/payloads/_interactions/_applicationCommands/_chatInput/base.js +2 -0
  278. package/lib/types/payloads/_interactions/_applicationCommands/_chatInput/boolean.d.ts +4 -0
  279. package/lib/types/payloads/_interactions/_applicationCommands/_chatInput/boolean.js +2 -0
  280. package/lib/types/payloads/_interactions/_applicationCommands/_chatInput/channel.d.ts +7 -0
  281. package/lib/types/payloads/_interactions/_applicationCommands/_chatInput/channel.js +2 -0
  282. package/lib/types/payloads/_interactions/_applicationCommands/_chatInput/integer.d.ts +17 -0
  283. package/lib/types/payloads/_interactions/_applicationCommands/_chatInput/integer.js +2 -0
  284. package/lib/types/payloads/_interactions/_applicationCommands/_chatInput/mentionable.d.ts +5 -0
  285. package/lib/types/payloads/_interactions/_applicationCommands/_chatInput/mentionable.js +2 -0
  286. package/lib/types/payloads/_interactions/_applicationCommands/_chatInput/number.d.ts +17 -0
  287. package/lib/types/payloads/_interactions/_applicationCommands/_chatInput/number.js +2 -0
  288. package/lib/types/payloads/_interactions/_applicationCommands/_chatInput/role.d.ts +5 -0
  289. package/lib/types/payloads/_interactions/_applicationCommands/_chatInput/role.js +2 -0
  290. package/lib/types/payloads/_interactions/_applicationCommands/_chatInput/shared.d.ts +25 -0
  291. package/lib/types/payloads/_interactions/_applicationCommands/_chatInput/shared.js +20 -0
  292. package/lib/types/payloads/_interactions/_applicationCommands/_chatInput/string.d.ts +17 -0
  293. package/lib/types/payloads/_interactions/_applicationCommands/_chatInput/string.js +2 -0
  294. package/lib/types/payloads/_interactions/_applicationCommands/_chatInput/subcommand.d.ts +11 -0
  295. package/lib/types/payloads/_interactions/_applicationCommands/_chatInput/subcommand.js +2 -0
  296. package/lib/types/payloads/_interactions/_applicationCommands/_chatInput/subcommandGroup.d.ts +11 -0
  297. package/lib/types/payloads/_interactions/_applicationCommands/_chatInput/subcommandGroup.js +2 -0
  298. package/lib/types/payloads/_interactions/_applicationCommands/_chatInput/user.d.ts +5 -0
  299. package/lib/types/payloads/_interactions/_applicationCommands/_chatInput/user.js +2 -0
  300. package/lib/types/payloads/_interactions/_applicationCommands/chatInput.d.ts +65 -0
  301. package/lib/types/payloads/_interactions/_applicationCommands/chatInput.js +29 -0
  302. package/lib/types/payloads/_interactions/_applicationCommands/contextMenu.d.ts +65 -0
  303. package/lib/types/payloads/_interactions/_applicationCommands/contextMenu.js +2 -0
  304. package/lib/types/payloads/_interactions/_applicationCommands/internals.d.ts +8 -0
  305. package/lib/types/payloads/_interactions/_applicationCommands/internals.js +2 -0
  306. package/lib/types/payloads/_interactions/_applicationCommands/permissions.d.ts +54 -0
  307. package/lib/types/payloads/_interactions/_applicationCommands/permissions.js +20 -0
  308. package/lib/types/payloads/_interactions/applicationCommands.d.ts +188 -0
  309. package/lib/types/payloads/_interactions/applicationCommands.js +88 -0
  310. package/lib/types/payloads/_interactions/autocomplete.d.ts +10 -0
  311. package/lib/types/payloads/_interactions/autocomplete.js +2 -0
  312. package/lib/types/payloads/_interactions/base.d.ts +197 -0
  313. package/lib/types/payloads/_interactions/base.js +2 -0
  314. package/lib/types/payloads/_interactions/messageComponents.d.ts +41 -0
  315. package/lib/types/payloads/_interactions/messageComponents.js +2 -0
  316. package/lib/types/payloads/_interactions/modalSubmit.d.ts +35 -0
  317. package/lib/types/payloads/_interactions/modalSubmit.js +2 -0
  318. package/lib/types/payloads/_interactions/ping.d.ts +3 -0
  319. package/lib/types/payloads/_interactions/ping.js +2 -0
  320. package/lib/types/payloads/_interactions/responses.d.ts +184 -0
  321. package/lib/types/payloads/_interactions/responses.js +58 -0
  322. package/lib/types/payloads/application.d.ts +292 -0
  323. package/lib/types/payloads/application.js +117 -0
  324. package/lib/types/payloads/auditLog.d.ts +644 -0
  325. package/lib/types/payloads/auditLog.js +80 -0
  326. package/lib/types/payloads/autoModeration.d.ts +219 -0
  327. package/lib/types/payloads/autoModeration.js +87 -0
  328. package/lib/types/payloads/channel.d.ts +1748 -0
  329. package/lib/types/payloads/channel.js +376 -0
  330. package/lib/types/payloads/emoji.d.ts +48 -0
  331. package/lib/types/payloads/emoji.js +5 -0
  332. package/lib/types/payloads/gateway.d.ts +373 -0
  333. package/lib/types/payloads/gateway.js +82 -0
  334. package/lib/types/payloads/guild.d.ts +1060 -0
  335. package/lib/types/payloads/guild.js +324 -0
  336. package/lib/types/payloads/guildScheduledEvent.d.ts +138 -0
  337. package/lib/types/payloads/guildScheduledEvent.js +32 -0
  338. package/lib/types/payloads/index.d.ts +64 -0
  339. package/lib/types/payloads/index.js +37 -0
  340. package/lib/types/payloads/interactions.d.ts +24 -0
  341. package/lib/types/payloads/interactions.js +23 -0
  342. package/lib/types/payloads/invite.d.ts +121 -0
  343. package/lib/types/payloads/invite.js +23 -0
  344. package/lib/types/payloads/monetization.d.ts +178 -0
  345. package/lib/types/payloads/monetization.js +88 -0
  346. package/lib/types/payloads/oauth2.d.ts +131 -0
  347. package/lib/types/payloads/oauth2.js +135 -0
  348. package/lib/types/payloads/permissions.d.ts +97 -0
  349. package/lib/types/payloads/permissions.js +16 -0
  350. package/lib/types/payloads/poll.d.ts +104 -0
  351. package/lib/types/payloads/poll.js +16 -0
  352. package/lib/types/payloads/stageInstance.d.ts +77 -0
  353. package/lib/types/payloads/stageInstance.js +19 -0
  354. package/lib/types/payloads/sticker.d.ts +123 -0
  355. package/lib/types/payloads/sticker.js +30 -0
  356. package/lib/types/payloads/teams.d.ts +78 -0
  357. package/lib/types/payloads/teams.js +23 -0
  358. package/lib/types/payloads/template.d.ts +62 -0
  359. package/lib/types/payloads/template.js +5 -0
  360. package/lib/types/payloads/user.d.ts +337 -0
  361. package/lib/types/payloads/user.js +167 -0
  362. package/lib/types/payloads/voice.d.ts +89 -0
  363. package/lib/types/payloads/voice.js +5 -0
  364. package/lib/types/payloads/webhook.d.ts +76 -0
  365. package/lib/types/payloads/webhook.js +21 -0
  366. package/lib/types/rest/application.d.ts +57 -0
  367. package/lib/types/rest/application.js +2 -0
  368. package/lib/types/rest/auditLog.d.ts +30 -0
  369. package/lib/types/rest/auditLog.js +2 -0
  370. package/lib/types/rest/autoModeration.d.ts +66 -0
  371. package/lib/types/rest/autoModeration.js +2 -0
  372. package/lib/types/rest/channel.d.ts +699 -0
  373. package/lib/types/rest/channel.js +11 -0
  374. package/lib/types/rest/emoji.d.ts +54 -0
  375. package/lib/types/rest/emoji.js +2 -0
  376. package/lib/types/rest/gateway.d.ts +9 -0
  377. package/lib/types/rest/gateway.js +2 -0
  378. package/lib/types/rest/guild.d.ts +865 -0
  379. package/lib/types/rest/guild.js +2 -0
  380. package/lib/types/rest/guildScheduledEvent.d.ts +126 -0
  381. package/lib/types/rest/guildScheduledEvent.js +2 -0
  382. package/lib/types/rest/index.d.ts +296 -0
  383. package/lib/types/rest/index.js +292 -0
  384. package/lib/types/rest/interactions.d.ts +216 -0
  385. package/lib/types/rest/interactions.js +2 -0
  386. package/lib/types/rest/invite.d.ts +24 -0
  387. package/lib/types/rest/invite.js +2 -0
  388. package/lib/types/rest/monetization.d.ts +103 -0
  389. package/lib/types/rest/monetization.js +11 -0
  390. package/lib/types/rest/oauth2.d.ts +172 -0
  391. package/lib/types/rest/oauth2.js +2 -0
  392. package/lib/types/rest/poll.d.ts +44 -0
  393. package/lib/types/rest/poll.js +2 -0
  394. package/lib/types/rest/stageInstance.d.ts +58 -0
  395. package/lib/types/rest/stageInstance.js +2 -0
  396. package/lib/types/rest/sticker.d.ts +77 -0
  397. package/lib/types/rest/sticker.js +2 -0
  398. package/lib/types/rest/template.d.ts +62 -0
  399. package/lib/types/rest/template.js +2 -0
  400. package/lib/types/rest/user.d.ts +120 -0
  401. package/lib/types/rest/user.js +2 -0
  402. package/lib/types/rest/voice.d.ts +17 -0
  403. package/lib/types/rest/voice.js +2 -0
  404. package/lib/types/rest/webhook.d.ts +250 -0
  405. package/lib/types/rest/webhook.js +2 -0
  406. package/lib/types/utils/index.d.ts +808 -0
  407. package/lib/types/utils/index.js +810 -0
  408. package/lib/websocket/SharedTypes.d.ts +12 -5
  409. package/lib/websocket/SharedTypes.js +1 -1
  410. package/lib/websocket/constants/index.d.ts +3 -3
  411. package/lib/websocket/constants/index.js +11 -1
  412. package/lib/websocket/discord/basesocket.d.ts +7 -7
  413. package/lib/websocket/discord/basesocket.js +34 -22
  414. package/lib/websocket/discord/events/memberUpdate.d.ts +1 -6
  415. package/lib/websocket/discord/events/memberUpdate.js +2 -1
  416. package/lib/websocket/discord/events/presenceUpdate.d.ts +5 -18
  417. package/lib/websocket/discord/events/presenceUpdate.js +5 -6
  418. package/lib/websocket/discord/shard.d.ts +9 -8
  419. package/lib/websocket/discord/shard.js +83 -57
  420. package/lib/websocket/discord/sharder.d.ts +6 -5
  421. package/lib/websocket/discord/sharder.js +70 -11
  422. package/lib/websocket/discord/shared.d.ts +34 -6
  423. package/lib/websocket/discord/socket/custom.d.ts +52 -0
  424. package/lib/websocket/discord/socket/custom.js +300 -0
  425. package/lib/websocket/discord/worker.d.ts +6 -10
  426. package/lib/websocket/discord/workermanager.d.ts +10 -16
  427. package/lib/websocket/discord/workermanager.js +63 -50
  428. package/lib/websocket/structures/index.d.ts +0 -1
  429. package/lib/websocket/structures/index.js +1 -1
  430. package/lib/websocket/structures/timeout.d.ts +0 -1
  431. package/package.json +70 -74
  432. package/lib/cache/adapters/redis.d.ts +0 -37
  433. package/lib/cache/adapters/redis.js +0 -218
  434. package/lib/client/oninteractioncreate.d.ts +0 -4
  435. package/lib/client/oninteractioncreate.js +0 -198
  436. package/lib/client/onmessagecreate.d.ts +0 -13
  437. package/lib/client/onmessagecreate.js +0 -410
  438. package/lib/structures/extra/functions.d.ts +0 -12
  439. package/lib/structures/extra/functions.js +0 -70
@@ -1,21 +1,28 @@
1
1
  import type { Adapter } from './types';
2
- export declare class MemoryAdapter implements Adapter {
2
+ export interface MemoryAdapterOptions<T> {
3
+ encode(data: any): T;
4
+ decode(data: T): unknown;
5
+ }
6
+ export declare class MemoryAdapter<T> implements Adapter {
7
+ options: MemoryAdapterOptions<T>;
3
8
  isAsync: boolean;
4
- readonly storage: Map<string, string>;
9
+ readonly storage: Map<string, T>;
5
10
  readonly relationships: Map<string, string[]>;
11
+ constructor(options?: MemoryAdapterOptions<T>);
12
+ start(): void;
6
13
  scan(query: string, keys?: false): any[];
7
14
  scan(query: string, keys: true): string[];
8
- get(keys: string): any;
9
- get(keys: string[]): any[];
10
- set(keys: string, data: any): void;
11
- set(keys: [string, any][]): void;
15
+ bulkGet(keys: string[]): unknown[];
16
+ get(keys: string): unknown;
17
+ bulkSet(keys: [string, any][]): void;
18
+ set(key: string, data: any): void;
19
+ bulkPatch(updateOnly: boolean, keys: [string, any][]): void;
12
20
  patch(updateOnly: boolean, keys: string, data: any): void;
13
- patch(updateOnly: boolean, keys: [string, any][]): void;
14
21
  values(to: string): any[];
15
22
  keys(to: string): string[];
16
23
  count(to: string): number;
17
- remove(keys: string): void;
18
- remove(keys: string[]): void;
24
+ bulkRemove(keys: string[]): void;
25
+ remove(key: string): void;
19
26
  flush(): void;
20
27
  contains(to: string, keys: string): boolean;
21
28
  getToRelationship(to: string): string[];
@@ -2,59 +2,67 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.MemoryAdapter = void 0;
4
4
  class MemoryAdapter {
5
+ options;
5
6
  isAsync = false;
6
7
  storage = new Map();
7
8
  relationships = new Map();
9
+ constructor(options = {
10
+ encode(data) {
11
+ return JSON.stringify(data);
12
+ },
13
+ decode(data) {
14
+ return JSON.parse(data);
15
+ },
16
+ }) {
17
+ this.options = options;
18
+ }
19
+ start() { }
8
20
  scan(query, keys = false) {
9
21
  const values = [];
10
22
  const sq = query.split('.');
11
23
  for (const [key, value] of this.storage.entries()) {
12
24
  if (key.split('.').every((value, i) => (sq[i] === '*' ? !!value : sq[i] === value))) {
13
- values.push(keys ? key : JSON.parse(value));
25
+ values.push(keys ? key : this.options.decode(value));
14
26
  }
15
27
  }
16
28
  return values;
17
29
  }
18
- get(keys) {
19
- if (!Array.isArray(keys)) {
20
- const data = this.storage.get(keys);
21
- return data ? JSON.parse(data) : null;
22
- }
30
+ bulkGet(keys) {
23
31
  return keys
24
32
  .map(x => {
25
33
  const data = this.storage.get(x);
26
- return data ? JSON.parse(data) : null;
34
+ return data ? this.options.decode(data) : null;
27
35
  })
28
36
  .filter(x => x);
29
37
  }
30
- set(keys, data) {
31
- if (Array.isArray(keys)) {
32
- for (const [key, value] of keys) {
33
- this.storage.set(key, JSON.stringify(value));
34
- }
35
- }
36
- else {
37
- this.storage.set(keys, JSON.stringify(data));
38
- }
38
+ get(keys) {
39
+ const data = this.storage.get(keys);
40
+ return data ? this.options.decode(data) : null;
39
41
  }
40
- patch(updateOnly, keys, data) {
41
- if (Array.isArray(keys)) {
42
- for (const [key, value] of keys) {
43
- const oldData = this.get(key);
44
- if (updateOnly && !oldData) {
45
- continue;
46
- }
47
- this.storage.set(key, Array.isArray(value) ? JSON.stringify(value) : JSON.stringify({ ...(oldData ?? {}), ...value }));
48
- }
42
+ bulkSet(keys) {
43
+ for (const [key, value] of keys) {
44
+ this.storage.set(key, this.options.encode(value));
49
45
  }
50
- else {
51
- const oldData = this.get(keys);
46
+ }
47
+ set(key, data) {
48
+ this.storage.set(key, this.options.encode(data));
49
+ }
50
+ bulkPatch(updateOnly, keys) {
51
+ for (const [key, value] of keys) {
52
+ const oldData = this.get(key);
52
53
  if (updateOnly && !oldData) {
53
- return;
54
+ continue;
54
55
  }
55
- this.storage.set(keys, Array.isArray(data) ? JSON.stringify(data) : JSON.stringify({ ...(oldData ?? {}), ...data }));
56
+ this.storage.set(key, Array.isArray(value) ? this.options.encode(value) : this.options.encode({ ...(oldData ?? {}), ...value }));
56
57
  }
57
58
  }
59
+ patch(updateOnly, keys, data) {
60
+ const oldData = this.get(keys);
61
+ if (updateOnly && !oldData) {
62
+ return;
63
+ }
64
+ this.storage.set(keys, Array.isArray(data) ? this.options.encode(data) : this.options.encode({ ...(oldData ?? {}), ...data }));
65
+ }
58
66
  values(to) {
59
67
  const array = [];
60
68
  const data = this.keys(to);
@@ -72,11 +80,14 @@ class MemoryAdapter {
72
80
  count(to) {
73
81
  return this.getToRelationship(to).length;
74
82
  }
75
- remove(keys) {
76
- for (const i of Array.isArray(keys) ? keys : [keys]) {
83
+ bulkRemove(keys) {
84
+ for (const i of keys) {
77
85
  this.storage.delete(i);
78
86
  }
79
87
  }
88
+ remove(key) {
89
+ this.storage.delete(key);
90
+ }
80
91
  flush() {
81
92
  this.storage.clear();
82
93
  this.relationships.clear();
@@ -1,5 +1,4 @@
1
1
  export * from './default';
2
2
  export * from './limited';
3
- export * from './redis';
4
3
  export * from './types';
5
4
  export * from './workeradapter';
@@ -16,6 +16,5 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
17
  __exportStar(require("./default"), exports);
18
18
  __exportStar(require("./limited"), exports);
19
- __exportStar(require("./redis"), exports);
20
19
  __exportStar(require("./types"), exports);
21
20
  __exportStar(require("./workeradapter"), exports);
@@ -5,41 +5,46 @@ export interface ResourceLimitedMemoryAdapter {
5
5
  expire?: number;
6
6
  limit?: number;
7
7
  }
8
- export interface LimitedMemoryAdapterOptions {
8
+ export interface LimitedMemoryAdapterOptions<T> {
9
9
  default?: ResourceLimitedMemoryAdapter;
10
10
  guild?: ResourceLimitedMemoryAdapter;
11
11
  user?: ResourceLimitedMemoryAdapter;
12
+ ban?: ResourceLimitedMemoryAdapter;
12
13
  member?: ResourceLimitedMemoryAdapter;
13
14
  voice_state?: ResourceLimitedMemoryAdapter;
14
15
  channel?: ResourceLimitedMemoryAdapter;
15
16
  emoji?: ResourceLimitedMemoryAdapter;
16
- overwrite?: ResourceLimitedMemoryAdapter;
17
17
  presence?: ResourceLimitedMemoryAdapter;
18
18
  role?: ResourceLimitedMemoryAdapter;
19
19
  stage_instance?: ResourceLimitedMemoryAdapter;
20
20
  sticker?: ResourceLimitedMemoryAdapter;
21
21
  thread?: ResourceLimitedMemoryAdapter;
22
+ overwrite?: ResourceLimitedMemoryAdapter;
23
+ message?: ResourceLimitedMemoryAdapter;
24
+ encode?(data: any): T;
25
+ decode?(data: T): unknown;
22
26
  }
23
- export declare class LimitedMemoryAdapter implements Adapter {
27
+ export declare class LimitedMemoryAdapter<T> implements Adapter {
24
28
  isAsync: boolean;
25
- readonly storage: Map<string, LimitedCollection<string, string>>;
29
+ readonly storage: Map<string, LimitedCollection<string, T>>;
26
30
  readonly relationships: Map<string, Map<string, string[]>>;
27
- options: MakeRequired<LimitedMemoryAdapterOptions, 'default'>;
28
- constructor(options: LimitedMemoryAdapterOptions);
31
+ options: MakeRequired<LimitedMemoryAdapterOptions<T>, 'default' | 'encode' | 'decode'>;
32
+ constructor(options?: LimitedMemoryAdapterOptions<T>);
33
+ start(): void;
29
34
  scan(query: string, keys?: false): any[];
30
35
  scan(query: string, keys: true): string[];
31
- get(keys: string): any;
32
- get(keys: string[]): any[];
36
+ bulkGet(keys: string[]): unknown[];
37
+ get(keys: string): unknown;
33
38
  private __set;
39
+ bulkSet(keys: [string, any][]): void;
34
40
  set(keys: string, data: any): void;
35
- set(keys: [string, any][]): void;
41
+ bulkPatch(updateOnly: boolean, keys: [string, any][]): void;
36
42
  patch(updateOnly: boolean, keys: string, data: any): void;
37
- patch(updateOnly: boolean, keys: [string, any][]): void;
38
43
  values(to: string): any[];
39
44
  keys(to: string): string[];
40
45
  count(to: string): number;
41
- remove(keys: string): void;
42
- remove(keys: string[]): void;
46
+ bulkRemove(keys: string[]): void;
47
+ remove(key: string): void;
43
48
  flush(): void;
44
49
  contains(to: string, keys: string): boolean;
45
50
  getToRelationship(to: string): string[];
@@ -14,50 +14,60 @@ class LimitedMemoryAdapter {
14
14
  expire: undefined,
15
15
  limit: Number.POSITIVE_INFINITY,
16
16
  },
17
+ encode(data) {
18
+ return JSON.stringify(data);
19
+ },
20
+ decode(data) {
21
+ return JSON.parse(data);
22
+ },
17
23
  }, options);
18
24
  }
25
+ start() { }
19
26
  scan(query, keys = false) {
20
27
  const values = [];
21
28
  const sq = query.split('.');
22
29
  for (const iterator of [...this.storage.values()].flatMap(x => x.entries()))
23
30
  for (const [key, value] of iterator) {
24
31
  if (key.split('.').every((value, i) => (sq[i] === '*' ? !!value : sq[i] === value))) {
25
- values.push(keys ? key : JSON.parse(value.value));
32
+ values.push(keys ? key : this.options.decode(value.value));
26
33
  }
27
34
  }
28
35
  return values;
29
36
  }
30
- get(keys) {
31
- if (!Array.isArray(keys)) {
32
- const data = [...this.storage.values()].find(x => x.has(keys))?.get(keys);
33
- return data ? JSON.parse(data) : null;
34
- }
37
+ bulkGet(keys) {
35
38
  const iterator = [...this.storage.values()];
36
39
  return keys
37
40
  .map(key => {
38
41
  const data = iterator.find(x => x.has(key))?.get(key);
39
- return data ? JSON.parse(data) : null;
42
+ return data ? this.options.decode(data) : null;
40
43
  })
41
44
  .filter(x => x);
42
45
  }
46
+ get(keys) {
47
+ const data = [...this.storage.values()].find(x => x.has(keys))?.get(keys);
48
+ return data ? this.options.decode(data) : null;
49
+ }
43
50
  __set(key, data) {
44
51
  const __guildId = Array.isArray(data) ? data[0].guild_id : data.guild_id;
45
52
  const namespace = `${key.split('.')[0]}${__guildId ? `.${__guildId}` : ''}`;
46
53
  const self = this;
47
54
  if (!this.storage.has(namespace)) {
48
55
  this.storage.set(namespace, new __1.LimitedCollection({
49
- expire: this.options[key.split('.')[0]]?.expire ?? this.options.default.expire,
50
- limit: this.options[key.split('.')[0]]?.limit ?? this.options.default.limit,
56
+ expire: this.options[key.split('.')[0]]
57
+ ?.expire ?? this.options.default.expire,
58
+ limit: this.options[key.split('.')[0]]
59
+ ?.limit ?? this.options.default.limit,
51
60
  resetOnDemand: true,
52
61
  onDelete(k) {
53
62
  const relationshipNamespace = key.split('.')[0];
54
- const relation = self.relationships.get(relationshipNamespace);
55
- if (relation) {
63
+ const existsRelation = self.relationships.has(relationshipNamespace);
64
+ if (existsRelation) {
56
65
  switch (relationshipNamespace) {
57
66
  case 'guild':
58
67
  case 'user':
59
68
  self.removeToRelationship(namespace, k.split('.')[1]);
60
69
  break;
70
+ case 'ban':
61
71
  case 'member':
62
72
  case 'voice_state':
63
73
  {
@@ -81,35 +91,31 @@ class LimitedMemoryAdapter {
81
91
  },
82
92
  }));
83
93
  }
84
- this.storage.get(namespace).set(key, JSON.stringify(data));
94
+ this.storage.get(namespace).set(key, this.options.encode(data));
95
+ }
96
+ bulkSet(keys) {
97
+ for (const [key, value] of keys) {
98
+ this.__set(key, value);
99
+ }
85
100
  }
86
101
  set(keys, data) {
87
- if (Array.isArray(keys)) {
88
- for (const [key, value] of keys) {
89
- this.__set(key, value);
102
+ this.__set(keys, data);
103
+ }
104
+ bulkPatch(updateOnly, keys) {
105
+ for (const [key, value] of keys) {
106
+ const oldData = this.get(key);
107
+ if (updateOnly && !oldData) {
108
+ continue;
90
109
  }
91
- }
92
- else {
93
- this.__set(keys, data);
110
+ this.__set(key, Array.isArray(value) ? value : { ...(oldData ?? {}), ...value });
94
111
  }
95
112
  }
96
113
  patch(updateOnly, keys, data) {
97
- if (Array.isArray(keys)) {
98
- for (const [key, value] of keys) {
99
- const oldData = this.get(key);
100
- if (updateOnly && !oldData) {
101
- continue;
102
- }
103
- this.__set(key, Array.isArray(value) ? value : { ...(oldData ?? {}), ...value });
104
- }
105
- }
106
- else {
107
- const oldData = this.get(keys);
108
- if (updateOnly && !oldData) {
109
- return;
110
- }
111
- this.__set(keys, Array.isArray(data) ? data : { ...(oldData ?? {}), ...data });
114
+ const oldData = this.get(keys);
115
+ if (updateOnly && !oldData) {
116
+ return;
112
117
  }
118
+ this.__set(keys, Array.isArray(data) ? data : { ...(oldData ?? {}), ...data });
113
119
  }
114
120
  values(to) {
115
121
  const array = [];
@@ -128,9 +134,47 @@ class LimitedMemoryAdapter {
128
134
  count(to) {
129
135
  return this.getToRelationship(to).length;
130
136
  }
131
- remove(keys) {
132
- for (const i of Array.isArray(keys) ? keys : [keys]) {
133
- this.storage.get(i.split('.')[0])?.delete(i);
137
+ bulkRemove(keys) {
138
+ for (const i of keys) {
139
+ this.remove(i);
140
+ }
141
+ }
142
+ remove(key) {
143
+ const keySplit = key.split('.');
144
+ const parentNamespace = keySplit.at(0);
145
+ switch (parentNamespace) {
146
+ case 'ban':
147
+ case 'member':
148
+ case 'voice_state':
149
+ {
150
+ this.storage
151
+ .get(`${parentNamespace}.${keySplit.at(1)}`)
152
+ ?.delete(`${parentNamespace}.${keySplit.at(1)}.${keySplit.at(2)}`);
153
+ }
154
+ break;
155
+ case 'user':
156
+ case 'guild':
157
+ this.storage.get(parentNamespace)?.delete(`${parentNamespace}.${keySplit.at(1)}`);
158
+ break;
159
+ case 'channel':
160
+ case 'emoji':
161
+ case 'presence':
162
+ case 'role':
163
+ case 'stage_instance':
164
+ case 'sticker':
165
+ case 'thread':
166
+ case 'overwrite':
167
+ case 'message':
168
+ for (const keyStorage of this.storage.keys()) {
169
+ if (keyStorage.startsWith(parentNamespace)) {
170
+ const storage = this.storage.get(keyStorage);
171
+ if (storage.has(key)) {
172
+ storage.delete(key);
173
+ break;
174
+ }
175
+ }
176
+ }
177
+ break;
134
178
  }
135
179
  }
136
180
  flush() {
@@ -1,22 +1,21 @@
1
1
  import type { Awaitable } from '../../common';
2
2
  export interface Adapter {
3
3
  isAsync: boolean;
4
+ start(): Awaitable<void>;
4
5
  scan(query: string, keys?: false): Awaitable<any[]>;
5
6
  scan(query: string, keys: true): Awaitable<string[]>;
6
7
  scan(query: string, keys?: boolean): Awaitable<(any | string)[]>;
7
- get(keys: string[]): Awaitable<any[]>;
8
+ bulkGet(keys: string[]): Awaitable<any[]>;
8
9
  get(keys: string): Awaitable<any | null>;
9
- get(keys: string | string[]): Awaitable<any | null>;
10
- set(keyValue: [string, any][]): Awaitable<void>;
10
+ bulkSet(keyValue: [string, any][]): Awaitable<void>;
11
11
  set(id: string, data: any): Awaitable<void>;
12
- set(id: string | [string, any][], data?: any): Awaitable<void>;
13
- patch(updateOnly: boolean, keyValue: [string, any][]): Awaitable<void>;
12
+ bulkPatch(updateOnly: boolean, keyValue: [string, any][]): Awaitable<void>;
14
13
  patch(updateOnly: boolean, id: string, data: any): Awaitable<void>;
15
- patch(updateOnly: boolean, id: string | [string, any][], data?: any): Awaitable<void>;
16
14
  values(to: string): Awaitable<any[]>;
17
15
  keys(to: string): Awaitable<string[]>;
18
16
  count(to: string): Awaitable<number>;
19
- remove(keys: string | string[]): Awaitable<void>;
17
+ bulkRemove(keys: string[]): Awaitable<void>;
18
+ remove(keys: string): Awaitable<void>;
20
19
  flush(): Awaitable<void>;
21
20
  contains(to: string, keys: string): Awaitable<boolean>;
22
21
  getToRelationship(to: string): Awaitable<string[]>;
@@ -1,8 +1,3 @@
1
- /// <reference types="node" />
2
- /// <reference types="node" />
3
- /// <reference types="node" />
4
- /// <reference types="node" />
5
- /// <reference types="node" />
6
1
  import type { WorkerData } from '../../websocket';
7
2
  import type { WorkerSendCacheRequest } from '../../websocket/discord/worker';
8
3
  import type { Adapter } from './types';
@@ -14,15 +9,20 @@ export declare class WorkerAdapter implements Adapter {
14
9
  timeout: NodeJS.Timeout;
15
10
  }>;
16
11
  constructor(workerData: WorkerData);
17
- postMessage(body: any): boolean | void;
12
+ start(): void;
13
+ postMessage(body: any): unknown;
18
14
  protected send(method: WorkerSendCacheRequest['method'], ...args: any[]): Promise<any>;
19
15
  scan(...rest: any[]): Promise<any>;
16
+ bulkGet(...rest: any[]): Promise<any>;
20
17
  get(...rest: any[]): Promise<any>;
18
+ bulkSet(...rest: any[]): Promise<any>;
21
19
  set(...rest: any[]): Promise<any>;
20
+ bulkPatch(...rest: any[]): Promise<any>;
22
21
  patch(...rest: any[]): Promise<any>;
23
22
  values(...rest: any[]): Promise<any>;
24
23
  keys(...rest: any[]): Promise<any>;
25
24
  count(...rest: any[]): Promise<any>;
25
+ bulkRemove(...rest: any[]): Promise<any>;
26
26
  remove(...rest: any[]): Promise<any>;
27
27
  flush(): Promise<any>;
28
28
  contains(...rest: any[]): Promise<any>;
@@ -14,6 +14,7 @@ class WorkerAdapter {
14
14
  if (worker_threads?.parentPort)
15
15
  parentPort = worker_threads.parentPort;
16
16
  }
17
+ start() { }
17
18
  postMessage(body) {
18
19
  if (parentPort)
19
20
  return parentPort.postMessage(body);
@@ -41,12 +42,21 @@ class WorkerAdapter {
41
42
  scan(...rest) {
42
43
  return this.send('scan', ...rest);
43
44
  }
45
+ bulkGet(...rest) {
46
+ return this.send('bulkGet', ...rest);
47
+ }
44
48
  get(...rest) {
45
49
  return this.send('get', ...rest);
46
50
  }
51
+ bulkSet(...rest) {
52
+ return this.send('bulkSet', ...rest);
53
+ }
47
54
  set(...rest) {
48
55
  return this.send('set', ...rest);
49
56
  }
57
+ bulkPatch(...rest) {
58
+ return this.send('bulkPatch', ...rest);
59
+ }
50
60
  patch(...rest) {
51
61
  return this.send('patch', ...rest);
52
62
  }
@@ -59,6 +69,9 @@ class WorkerAdapter {
59
69
  count(...rest) {
60
70
  return this.send('count', ...rest);
61
71
  }
72
+ bulkRemove(...rest) {
73
+ return this.send('bulkRemove', ...rest);
74
+ }
62
75
  remove(...rest) {
63
76
  return this.send('remove', ...rest);
64
77
  }
@@ -1,4 +1,4 @@
1
- import type { If } from '../common';
1
+ import { Logger, type If } from '../common';
2
2
  import type { Adapter } from './adapters';
3
3
  import { Guilds } from './resources/guilds';
4
4
  import { Users } from './resources/users';
@@ -12,10 +12,13 @@ import { Stickers } from './resources/stickers';
12
12
  import { Threads } from './resources/threads';
13
13
  import { VoiceStates } from './resources/voice-states';
14
14
  import { Bans } from './resources/bans';
15
- import { GatewayIntentBits, type GatewayDispatchPayload } from 'discord-api-types/v10';
15
+ import { GatewayIntentBits, type GatewayDispatchPayload } from '../types';
16
16
  import type { InternalOptions, UsingClient } from '../commands';
17
17
  import { Overwrites } from './resources/overwrites';
18
18
  import { Messages } from './resources/messages';
19
+ export { BaseResource } from './resources/default/base';
20
+ export { GuildRelatedResource } from './resources/default/guild-related';
21
+ export { GuildBasedResource } from './resources/default/guild-based';
19
22
  export type InferAsyncCache = InternalOptions extends {
20
23
  asyncCache: infer P;
21
24
  } ? P : false;
@@ -23,12 +26,16 @@ export type ReturnCache<T> = If<InferAsyncCache, Promise<T>, T>;
23
26
  export type GuildBased = 'members' | 'voiceStates';
24
27
  export type GuildRelated = 'emojis' | 'roles' | 'threads' | 'channels' | 'stickers' | 'presences' | 'stageInstances' | 'overwrites' | 'messages' | 'bans';
25
28
  export type NonGuildBased = 'users' | 'guilds';
29
+ export type SeyfertBased = 'onPacket';
26
30
  export * from './adapters/index';
27
31
  export type CachedEvents = 'READY' | 'GUILD_CREATE' | 'GUILD_UPDATE' | 'GUILD_DELETE' | 'CHANNEL_CREATE' | 'CHANNEL_UPDATE' | 'CHANNEL_DELETE' | 'GUILD_ROLE_CREATE' | 'GUILD_ROLE_UPDATE' | 'GUILD_ROLE_DELETE' | 'GUILD_BAN_ADD' | 'GUILD_BAN_REMOVE' | 'GUILD_EMOJIS_UPDATE' | 'GUILD_STICKERS_UPDATE' | 'GUILD_MEMBER_ADD' | 'GUILD_MEMBER_UPDATE' | 'GUILD_MEMBER_REMOVE' | 'MESSAGE_CREATE' | 'PRESENCE_UPDATE' | 'THREAD_DELETE' | 'THREAD_CREATE' | 'THREAD_UPDATE' | 'USER_UPDATE' | 'VOICE_STATE_UPDATE' | 'STAGE_INSTANCE_CREATE' | 'STAGE_INSTANCE_UPDATE' | 'STAGE_INSTANCE_DELETE';
32
+ export type DisabledCache = {
33
+ [P in NonGuildBased | GuildBased | GuildRelated | SeyfertBased]?: boolean;
34
+ };
28
35
  export declare class Cache {
29
36
  intents: number;
30
37
  adapter: Adapter;
31
- readonly disabledCache: (NonGuildBased | GuildBased | GuildRelated)[];
38
+ readonly disabledCache: DisabledCache;
32
39
  users?: Users;
33
40
  guilds?: Guilds;
34
41
  members?: Members;
@@ -43,7 +50,8 @@ export declare class Cache {
43
50
  stageInstances?: StageInstances;
44
51
  messages?: Messages;
45
52
  bans?: Bans;
46
- constructor(intents: number, adapter: Adapter, disabledCache?: (NonGuildBased | GuildBased | GuildRelated)[], client?: UsingClient);
53
+ __logger__?: Logger;
54
+ constructor(intents: number, adapter: Adapter, disabledCache?: DisabledCache, client?: UsingClient);
47
55
  flush(): ReturnCache<void>;
48
56
  hasIntent(intent: keyof typeof GatewayIntentBits): boolean;
49
57
  get hasGuildsIntent(): boolean;
@@ -67,19 +75,20 @@ export declare class Cache {
67
75
  roles: import("..").GuildRole[];
68
76
  emojis: import("..").GuildEmoji[];
69
77
  stickers: import("..").Sticker[];
70
- channels: NonNullable<ReturnCache<import("..").AllChannels | undefined>>[];
71
78
  members: import("..").GuildMember[];
72
79
  users: import("..").User[];
80
+ channels: NonNullable<ReturnCache<import("..").AllChannels | undefined>>[];
81
+ threads: import("..").ThreadChannel[];
73
82
  messages: import("..").Message[];
74
- presences: (Omit<import("discord-api-types/v10").GatewayPresenceUpdate, "user"> & {
83
+ presences: (Omit<import("../types").GatewayPresenceUpdate, "user"> & {
75
84
  id: string;
85
+ user_id: string;
76
86
  } & {
77
87
  guild_id: string;
78
88
  })[];
79
- threads: import("..").ThreadChannel[];
80
89
  bans: import("../structures/GuildBan").GuildBan[];
81
90
  voiceStates: import("..").VoiceState[];
82
- stageInstances: (import("discord-api-types/v10").APIStageInstance & {
91
+ stageInstances: (import("../types").APIStageInstance & {
83
92
  guild_id: string;
84
93
  })[];
85
94
  overwrites: {
@@ -111,4 +120,7 @@ export declare class Cache {
111
120
  string
112
121
  ])[]): Promise<void>;
113
122
  onPacket(event: GatewayDispatchPayload): Promise<void>;
123
+ testAdapter(): Promise<void>;
124
+ private testUsersAndMembers;
125
+ private testChannelsAndOverwrites;
114
126
  }