djs-selfbot-v13 3.1.8 → 3.7.1

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 (364) hide show
  1. package/LICENSE +1 -1
  2. package/README.md +48 -37
  3. package/package.json +44 -26
  4. package/src/WebSocket.js +39 -39
  5. package/src/client/BaseClient.js +86 -86
  6. package/src/client/Client.js +934 -765
  7. package/src/client/WebhookClient.js +61 -61
  8. package/src/client/actions/Action.js +116 -120
  9. package/src/client/actions/ActionsManager.js +80 -78
  10. package/src/client/actions/ApplicationCommandPermissionsUpdate.js +34 -34
  11. package/src/client/actions/AutoModerationActionExecution.js +27 -27
  12. package/src/client/actions/AutoModerationRuleCreate.js +28 -28
  13. package/src/client/actions/AutoModerationRuleDelete.js +32 -32
  14. package/src/client/actions/AutoModerationRuleUpdate.js +30 -30
  15. package/src/client/actions/ChannelCreate.js +23 -23
  16. package/src/client/actions/ChannelDelete.js +39 -39
  17. package/src/client/actions/ChannelUpdate.js +43 -43
  18. package/src/client/actions/GuildAuditLogEntryCreate.js +29 -29
  19. package/src/client/actions/GuildBanAdd.js +20 -20
  20. package/src/client/actions/GuildBanRemove.js +25 -25
  21. package/src/client/actions/GuildChannelsPositionUpdate.js +21 -21
  22. package/src/client/actions/GuildDelete.js +65 -65
  23. package/src/client/actions/GuildEmojiCreate.js +20 -20
  24. package/src/client/actions/GuildEmojiDelete.js +21 -21
  25. package/src/client/actions/GuildEmojiUpdate.js +20 -20
  26. package/src/client/actions/GuildEmojisUpdate.js +34 -34
  27. package/src/client/actions/GuildIntegrationsUpdate.js +19 -19
  28. package/src/client/actions/GuildMemberRemove.js +33 -33
  29. package/src/client/actions/GuildMemberUpdate.js +44 -44
  30. package/src/client/actions/GuildRoleCreate.js +25 -25
  31. package/src/client/actions/GuildRoleDelete.js +31 -31
  32. package/src/client/actions/GuildRoleUpdate.js +39 -39
  33. package/src/client/actions/GuildRolesPositionUpdate.js +21 -21
  34. package/src/client/actions/GuildScheduledEventCreate.js +27 -27
  35. package/src/client/actions/GuildScheduledEventDelete.js +31 -31
  36. package/src/client/actions/GuildScheduledEventUpdate.js +30 -30
  37. package/src/client/actions/GuildScheduledEventUserAdd.js +32 -32
  38. package/src/client/actions/GuildScheduledEventUserRemove.js +32 -32
  39. package/src/client/actions/GuildStickerCreate.js +20 -20
  40. package/src/client/actions/GuildStickerDelete.js +21 -21
  41. package/src/client/actions/GuildStickerUpdate.js +20 -20
  42. package/src/client/actions/GuildStickersUpdate.js +34 -34
  43. package/src/client/actions/GuildUpdate.js +33 -33
  44. package/src/client/actions/InviteCreate.js +28 -28
  45. package/src/client/actions/InviteDelete.js +30 -30
  46. package/src/client/actions/MessageCreate.js +50 -46
  47. package/src/client/actions/MessageDelete.js +32 -32
  48. package/src/client/actions/MessageDeleteBulk.js +46 -46
  49. package/src/client/actions/MessagePollVoteAdd.js +33 -0
  50. package/src/client/actions/MessagePollVoteRemove.js +33 -0
  51. package/src/client/actions/MessageReactionAdd.js +68 -56
  52. package/src/client/actions/MessageReactionRemove.js +50 -45
  53. package/src/client/actions/MessageReactionRemoveAll.js +33 -33
  54. package/src/client/actions/MessageReactionRemoveEmoji.js +28 -28
  55. package/src/client/actions/MessageUpdate.js +26 -26
  56. package/src/client/actions/PresenceUpdate.js +50 -46
  57. package/src/client/actions/StageInstanceCreate.js +28 -28
  58. package/src/client/actions/StageInstanceDelete.js +33 -33
  59. package/src/client/actions/StageInstanceUpdate.js +30 -30
  60. package/src/client/actions/ThreadCreate.js +24 -24
  61. package/src/client/actions/ThreadDelete.js +32 -32
  62. package/src/client/actions/ThreadListSync.js +59 -59
  63. package/src/client/actions/ThreadMemberUpdate.js +30 -30
  64. package/src/client/actions/ThreadMembersUpdate.js +34 -34
  65. package/src/client/actions/TypingStart.js +29 -29
  66. package/src/client/actions/UserUpdate.js +35 -35
  67. package/src/client/actions/VoiceStateUpdate.js +50 -57
  68. package/src/client/actions/WebhooksUpdate.js +20 -20
  69. package/src/client/voice/ClientVoiceManager.js +151 -51
  70. package/src/client/voice/VoiceConnection.js +1249 -0
  71. package/src/client/voice/dispatcher/AnnexBDispatcher.js +120 -0
  72. package/src/client/voice/dispatcher/AudioDispatcher.js +145 -0
  73. package/src/client/voice/dispatcher/BaseDispatcher.js +459 -0
  74. package/src/client/voice/dispatcher/VPxDispatcher.js +54 -0
  75. package/src/client/voice/dispatcher/VideoDispatcher.js +68 -0
  76. package/src/client/voice/networking/VoiceUDPClient.js +173 -0
  77. package/src/client/voice/networking/VoiceWebSocket.js +286 -0
  78. package/src/client/voice/player/MediaPlayer.js +321 -0
  79. package/src/client/voice/player/processing/AnnexBNalSplitter.js +244 -0
  80. package/src/client/voice/player/processing/IvfSplitter.js +106 -0
  81. package/src/client/voice/player/processing/PCMInsertSilence.js +37 -0
  82. package/src/client/voice/receiver/PacketHandler.js +260 -0
  83. package/src/client/voice/receiver/Receiver.js +96 -0
  84. package/src/client/voice/receiver/Recorder.js +173 -0
  85. package/src/client/voice/util/Function.js +116 -0
  86. package/src/client/voice/util/PlayInterface.js +122 -0
  87. package/src/client/voice/util/Secretbox.js +64 -0
  88. package/src/client/voice/util/Silence.js +16 -0
  89. package/src/client/voice/util/Socket.js +62 -0
  90. package/src/client/voice/util/VolumeInterface.js +104 -0
  91. package/src/client/websocket/WebSocketManager.js +392 -392
  92. package/src/client/websocket/WebSocketShard.js +907 -906
  93. package/src/client/websocket/handlers/APPLICATION_COMMAND_CREATE.js +18 -18
  94. package/src/client/websocket/handlers/APPLICATION_COMMAND_DELETE.js +20 -20
  95. package/src/client/websocket/handlers/APPLICATION_COMMAND_PERMISSIONS_UPDATE.js +5 -5
  96. package/src/client/websocket/handlers/APPLICATION_COMMAND_UPDATE.js +20 -20
  97. package/src/client/websocket/handlers/AUTO_MODERATION_ACTION_EXECUTION.js +5 -5
  98. package/src/client/websocket/handlers/AUTO_MODERATION_RULE_CREATE.js +5 -5
  99. package/src/client/websocket/handlers/AUTO_MODERATION_RULE_DELETE.js +5 -5
  100. package/src/client/websocket/handlers/AUTO_MODERATION_RULE_UPDATE.js +5 -5
  101. package/src/client/websocket/handlers/CALL_CREATE.js +14 -14
  102. package/src/client/websocket/handlers/CALL_DELETE.js +11 -11
  103. package/src/client/websocket/handlers/CALL_UPDATE.js +11 -11
  104. package/src/client/websocket/handlers/CHANNEL_CREATE.js +5 -5
  105. package/src/client/websocket/handlers/CHANNEL_DELETE.js +5 -5
  106. package/src/client/websocket/handlers/CHANNEL_PINS_UPDATE.js +22 -22
  107. package/src/client/websocket/handlers/CHANNEL_RECIPIENT_ADD.js +19 -19
  108. package/src/client/websocket/handlers/CHANNEL_RECIPIENT_REMOVE.js +16 -16
  109. package/src/client/websocket/handlers/CHANNEL_UPDATE.js +16 -16
  110. package/src/client/websocket/handlers/GUILD_AUDIT_LOG_ENTRY_CREATE.js +5 -5
  111. package/src/client/websocket/handlers/GUILD_BAN_ADD.js +5 -5
  112. package/src/client/websocket/handlers/GUILD_BAN_REMOVE.js +5 -5
  113. package/src/client/websocket/handlers/GUILD_CREATE.js +52 -53
  114. package/src/client/websocket/handlers/GUILD_DELETE.js +5 -5
  115. package/src/client/websocket/handlers/GUILD_EMOJIS_UPDATE.js +5 -5
  116. package/src/client/websocket/handlers/GUILD_INTEGRATIONS_UPDATE.js +5 -5
  117. package/src/client/websocket/handlers/GUILD_MEMBERS_CHUNK.js +39 -39
  118. package/src/client/websocket/handlers/GUILD_MEMBER_ADD.js +20 -20
  119. package/src/client/websocket/handlers/GUILD_MEMBER_REMOVE.js +5 -5
  120. package/src/client/websocket/handlers/GUILD_MEMBER_UPDATE.js +5 -5
  121. package/src/client/websocket/handlers/GUILD_ROLE_CREATE.js +5 -5
  122. package/src/client/websocket/handlers/GUILD_ROLE_DELETE.js +5 -5
  123. package/src/client/websocket/handlers/GUILD_ROLE_UPDATE.js +5 -5
  124. package/src/client/websocket/handlers/GUILD_SCHEDULED_EVENT_CREATE.js +5 -5
  125. package/src/client/websocket/handlers/GUILD_SCHEDULED_EVENT_DELETE.js +5 -5
  126. package/src/client/websocket/handlers/GUILD_SCHEDULED_EVENT_UPDATE.js +5 -5
  127. package/src/client/websocket/handlers/GUILD_SCHEDULED_EVENT_USER_ADD.js +5 -5
  128. package/src/client/websocket/handlers/GUILD_SCHEDULED_EVENT_USER_REMOVE.js +5 -5
  129. package/src/client/websocket/handlers/GUILD_STICKERS_UPDATE.js +5 -5
  130. package/src/client/websocket/handlers/GUILD_UPDATE.js +5 -5
  131. package/src/client/websocket/handlers/INTERACTION_MODAL_CREATE.js +12 -12
  132. package/src/client/websocket/handlers/INVITE_CREATE.js +5 -5
  133. package/src/client/websocket/handlers/INVITE_DELETE.js +5 -5
  134. package/src/client/websocket/handlers/MESSAGE_CREATE.js +5 -5
  135. package/src/client/websocket/handlers/MESSAGE_DELETE.js +5 -5
  136. package/src/client/websocket/handlers/MESSAGE_DELETE_BULK.js +5 -5
  137. package/src/client/websocket/handlers/MESSAGE_POLL_VOTE_ADD.js +5 -0
  138. package/src/client/websocket/handlers/MESSAGE_POLL_VOTE_REMOVE.js +5 -0
  139. package/src/client/websocket/handlers/MESSAGE_REACTION_ADD.js +5 -5
  140. package/src/client/websocket/handlers/MESSAGE_REACTION_REMOVE.js +5 -5
  141. package/src/client/websocket/handlers/MESSAGE_REACTION_REMOVE_ALL.js +5 -5
  142. package/src/client/websocket/handlers/MESSAGE_REACTION_REMOVE_EMOJI.js +5 -5
  143. package/src/client/websocket/handlers/MESSAGE_UPDATE.js +16 -16
  144. package/src/client/websocket/handlers/PRESENCE_UPDATE.js +5 -5
  145. package/src/client/websocket/handlers/READY.js +121 -80
  146. package/src/client/websocket/handlers/RELATIONSHIP_ADD.js +19 -19
  147. package/src/client/websocket/handlers/RELATIONSHIP_REMOVE.js +17 -17
  148. package/src/client/websocket/handlers/RELATIONSHIP_UPDATE.js +41 -41
  149. package/src/client/websocket/handlers/RESUMED.js +14 -14
  150. package/src/client/websocket/handlers/STAGE_INSTANCE_CREATE.js +5 -5
  151. package/src/client/websocket/handlers/STAGE_INSTANCE_DELETE.js +5 -5
  152. package/src/client/websocket/handlers/STAGE_INSTANCE_UPDATE.js +5 -5
  153. package/src/client/websocket/handlers/THREAD_CREATE.js +5 -5
  154. package/src/client/websocket/handlers/THREAD_DELETE.js +5 -5
  155. package/src/client/websocket/handlers/THREAD_LIST_SYNC.js +5 -5
  156. package/src/client/websocket/handlers/THREAD_MEMBERS_UPDATE.js +5 -5
  157. package/src/client/websocket/handlers/THREAD_MEMBER_UPDATE.js +5 -5
  158. package/src/client/websocket/handlers/THREAD_UPDATE.js +16 -16
  159. package/src/client/websocket/handlers/TYPING_START.js +5 -5
  160. package/src/client/websocket/handlers/USER_GUILD_SETTINGS_UPDATE.js +6 -6
  161. package/src/client/websocket/handlers/USER_NOTE_UPDATE.js +5 -5
  162. package/src/client/websocket/handlers/USER_REQUIRED_ACTION_UPDATE.js +78 -78
  163. package/src/client/websocket/handlers/USER_SETTINGS_UPDATE.js +5 -5
  164. package/src/client/websocket/handlers/USER_UPDATE.js +5 -5
  165. package/src/client/websocket/handlers/VOICE_CHANNEL_EFFECT_SEND.js +16 -0
  166. package/src/client/websocket/handlers/VOICE_CHANNEL_STATUS_UPDATE.js +12 -12
  167. package/src/client/websocket/handlers/VOICE_SERVER_UPDATE.js +6 -6
  168. package/src/client/websocket/handlers/VOICE_STATE_UPDATE.js +5 -5
  169. package/src/client/websocket/handlers/WEBHOOKS_UPDATE.js +5 -5
  170. package/src/client/websocket/handlers/index.js +84 -81
  171. package/src/errors/DJSError.js +61 -61
  172. package/src/errors/Messages.js +217 -182
  173. package/src/errors/index.js +4 -4
  174. package/src/index.js +172 -158
  175. package/src/managers/ApplicationCommandManager.js +264 -264
  176. package/src/managers/ApplicationCommandPermissionsManager.js +417 -417
  177. package/src/managers/AutoModerationRuleManager.js +296 -296
  178. package/src/managers/BaseGuildEmojiManager.js +80 -80
  179. package/src/managers/BaseManager.js +19 -19
  180. package/src/managers/BillingManager.js +66 -66
  181. package/src/managers/CachedManager.js +71 -71
  182. package/src/managers/ChannelManager.js +148 -138
  183. package/src/managers/ClientUserSettingManager.js +372 -372
  184. package/src/managers/DataManager.js +61 -61
  185. package/src/managers/GuildBanManager.js +250 -204
  186. package/src/managers/GuildChannelManager.js +488 -504
  187. package/src/managers/GuildEmojiManager.js +171 -171
  188. package/src/managers/GuildEmojiRoleManager.js +118 -118
  189. package/src/managers/GuildForumThreadManager.js +108 -108
  190. package/src/managers/GuildInviteManager.js +213 -213
  191. package/src/managers/GuildManager.js +338 -304
  192. package/src/managers/GuildMemberManager.js +599 -593
  193. package/src/managers/GuildMemberRoleManager.js +195 -191
  194. package/src/managers/GuildScheduledEventManager.js +314 -296
  195. package/src/managers/GuildSettingManager.js +155 -155
  196. package/src/managers/GuildStickerManager.js +179 -179
  197. package/src/managers/GuildTextThreadManager.js +98 -98
  198. package/src/managers/InteractionManager.js +39 -39
  199. package/src/managers/MessageManager.js +423 -391
  200. package/src/managers/PermissionOverwriteManager.js +164 -166
  201. package/src/managers/PresenceManager.js +71 -58
  202. package/src/managers/ReactionManager.js +67 -67
  203. package/src/managers/ReactionUserManager.js +73 -71
  204. package/src/managers/RelationshipManager.js +278 -265
  205. package/src/managers/RoleManager.js +448 -352
  206. package/src/managers/SessionManager.js +66 -0
  207. package/src/managers/StageInstanceManager.js +162 -162
  208. package/src/managers/ThreadManager.js +175 -174
  209. package/src/managers/ThreadMemberManager.js +186 -186
  210. package/src/managers/UserManager.js +136 -146
  211. package/src/managers/UserNoteManager.js +53 -53
  212. package/src/managers/VoiceStateManager.js +59 -37
  213. package/src/rest/APIRequest.js +154 -154
  214. package/src/rest/APIRouter.js +53 -53
  215. package/src/rest/DiscordAPIError.js +119 -104
  216. package/src/rest/HTTPError.js +62 -62
  217. package/src/rest/RESTManager.js +67 -62
  218. package/src/rest/RateLimitError.js +55 -55
  219. package/src/rest/RequestHandler.js +466 -444
  220. package/src/sharding/Shard.js +444 -443
  221. package/src/sharding/ShardClientUtil.js +279 -275
  222. package/src/sharding/ShardingManager.js +319 -318
  223. package/src/structures/AnonymousGuild.js +98 -98
  224. package/src/structures/ApplicationCommand.js +593 -593
  225. package/src/structures/ApplicationRoleConnectionMetadata.js +48 -48
  226. package/src/structures/AutoModerationActionExecution.js +89 -89
  227. package/src/structures/AutoModerationRule.js +294 -294
  228. package/src/structures/AutocompleteInteraction.js +107 -107
  229. package/src/structures/Base.js +43 -43
  230. package/src/structures/BaseCommandInteraction.js +211 -211
  231. package/src/structures/BaseGuild.js +116 -116
  232. package/src/structures/BaseGuildEmoji.js +56 -56
  233. package/src/structures/BaseGuildTextChannel.js +191 -191
  234. package/src/structures/BaseGuildVoiceChannel.js +241 -241
  235. package/src/structures/BaseMessageComponent.js +181 -114
  236. package/src/structures/ButtonInteraction.js +11 -11
  237. package/src/structures/CallState.js +63 -63
  238. package/src/structures/CategoryChannel.js +85 -85
  239. package/src/structures/Channel.js +284 -270
  240. package/src/structures/ClientPresence.js +77 -88
  241. package/src/structures/ClientUser.js +479 -450
  242. package/src/structures/CommandInteraction.js +41 -41
  243. package/src/structures/CommandInteractionOptionResolver.js +276 -276
  244. package/src/structures/ContainerComponent.js +68 -0
  245. package/src/structures/ContextMenuInteraction.js +65 -65
  246. package/src/structures/DMChannel.js +219 -217
  247. package/src/structures/DirectoryChannel.js +20 -20
  248. package/src/structures/Emoji.js +148 -148
  249. package/src/structures/FileComponent.js +49 -0
  250. package/src/structures/ForumChannel.js +31 -261
  251. package/src/structures/GroupDMChannel.js +394 -387
  252. package/src/structures/Guild.js +1643 -1608
  253. package/src/structures/GuildAuditLogs.js +746 -729
  254. package/src/structures/GuildBan.js +59 -59
  255. package/src/structures/GuildBoost.js +108 -108
  256. package/src/structures/GuildChannel.js +470 -468
  257. package/src/structures/GuildEmoji.js +161 -161
  258. package/src/structures/GuildMember.js +636 -568
  259. package/src/structures/GuildPreview.js +191 -191
  260. package/src/structures/GuildPreviewEmoji.js +27 -27
  261. package/src/structures/GuildScheduledEvent.js +536 -441
  262. package/src/structures/GuildTemplate.js +236 -236
  263. package/src/structures/Integration.js +188 -188
  264. package/src/structures/IntegrationApplication.js +96 -96
  265. package/src/structures/Interaction.js +290 -290
  266. package/src/structures/InteractionCollector.js +248 -248
  267. package/src/structures/InteractionWebhook.js +43 -43
  268. package/src/structures/Invite.js +358 -358
  269. package/src/structures/InviteGuild.js +23 -23
  270. package/src/structures/InviteStageInstance.js +86 -86
  271. package/src/structures/MediaChannel.js +11 -0
  272. package/src/structures/MediaGalleryComponent.js +41 -0
  273. package/src/structures/MediaGalleryItem.js +47 -0
  274. package/src/structures/Message.js +1252 -1236
  275. package/src/structures/MessageActionRow.js +105 -103
  276. package/src/structures/MessageAttachment.js +216 -204
  277. package/src/structures/MessageButton.js +166 -165
  278. package/src/structures/MessageCollector.js +146 -146
  279. package/src/structures/MessageComponentInteraction.js +120 -120
  280. package/src/structures/MessageContextMenuInteraction.js +20 -20
  281. package/src/structures/MessageEmbed.js +596 -586
  282. package/src/structures/MessageMentions.js +273 -273
  283. package/src/structures/MessagePayload.js +354 -316
  284. package/src/structures/MessageReaction.js +181 -171
  285. package/src/structures/MessageSelectMenu.js +141 -140
  286. package/src/structures/Modal.js +161 -174
  287. package/src/structures/ModalSubmitFieldsResolver.js +53 -53
  288. package/src/structures/ModalSubmitInteraction.js +119 -119
  289. package/src/structures/NewsChannel.js +32 -32
  290. package/src/structures/OAuth2Guild.js +28 -28
  291. package/src/structures/PermissionOverwrites.js +198 -196
  292. package/src/structures/Poll.js +108 -0
  293. package/src/structures/PollAnswer.js +88 -0
  294. package/src/structures/Presence.js +1105 -443
  295. package/src/structures/ReactionCollector.js +229 -229
  296. package/src/structures/ReactionEmoji.js +31 -31
  297. package/src/structures/Role.js +590 -531
  298. package/src/structures/SectionComponent.js +48 -0
  299. package/src/structures/SelectMenuInteraction.js +21 -21
  300. package/src/structures/SeparatorComponent.js +48 -0
  301. package/src/structures/Session.js +81 -0
  302. package/src/structures/StageChannel.js +104 -104
  303. package/src/structures/StageInstance.js +208 -208
  304. package/src/structures/Sticker.js +310 -310
  305. package/src/structures/StickerPack.js +95 -95
  306. package/src/structures/StoreChannel.js +56 -56
  307. package/src/structures/Team.js +118 -118
  308. package/src/structures/TeamMember.js +80 -71
  309. package/src/structures/TextChannel.js +33 -33
  310. package/src/structures/TextDisplayComponent.js +40 -0
  311. package/src/structures/TextInputComponent.js +132 -131
  312. package/src/structures/ThreadChannel.js +605 -607
  313. package/src/structures/ThreadMember.js +105 -105
  314. package/src/structures/ThreadOnlyChannel.js +249 -0
  315. package/src/structures/ThumbnailComponent.js +57 -0
  316. package/src/structures/Typing.js +74 -74
  317. package/src/structures/UnfurledMediaItem.js +29 -0
  318. package/src/structures/User.js +640 -509
  319. package/src/structures/UserContextMenuInteraction.js +29 -29
  320. package/src/structures/VoiceChannel.js +110 -110
  321. package/src/structures/VoiceChannelEffect.js +69 -0
  322. package/src/structures/VoiceRegion.js +53 -53
  323. package/src/structures/VoiceState.js +354 -341
  324. package/src/structures/WebEmbed.js +373 -373
  325. package/src/structures/Webhook.js +478 -467
  326. package/src/structures/WelcomeChannel.js +60 -60
  327. package/src/structures/WelcomeScreen.js +48 -48
  328. package/src/structures/Widget.js +87 -87
  329. package/src/structures/WidgetMember.js +99 -99
  330. package/src/structures/interfaces/Application.js +825 -313
  331. package/src/structures/interfaces/Collector.js +300 -300
  332. package/src/structures/interfaces/InteractionResponses.js +313 -313
  333. package/src/structures/interfaces/TextBasedChannel.js +759 -721
  334. package/src/util/APITypes.js +59 -0
  335. package/src/util/ActivityFlags.js +44 -44
  336. package/src/util/ApplicationFlags.js +76 -76
  337. package/src/util/AttachmentFlags.js +38 -38
  338. package/src/util/BitField.js +170 -170
  339. package/src/util/ChannelFlags.js +45 -45
  340. package/src/util/Constants.js +1914 -1760
  341. package/src/util/DataResolver.js +146 -145
  342. package/src/util/Formatters.js +228 -228
  343. package/src/util/GuildMemberFlags.js +43 -43
  344. package/src/util/Intents.js +74 -74
  345. package/src/util/InviteFlags.js +34 -29
  346. package/src/util/LimitedCollection.js +131 -131
  347. package/src/util/MessageFlags.js +63 -54
  348. package/src/util/Options.js +358 -342
  349. package/src/util/Permissions.js +202 -192
  350. package/src/util/PremiumUsageFlags.js +31 -31
  351. package/src/util/PurchasedFlags.js +33 -33
  352. package/src/util/RemoteAuth.js +382 -379
  353. package/src/util/RoleFlags.js +37 -37
  354. package/src/util/SnowflakeUtil.js +92 -92
  355. package/src/util/Speaking.js +33 -0
  356. package/src/util/Sweepers.js +466 -466
  357. package/src/util/SystemChannelFlags.js +55 -55
  358. package/src/util/ThreadMemberFlags.js +30 -30
  359. package/src/util/UserFlags.js +104 -104
  360. package/src/util/Util.js +1048 -803
  361. package/typings/enums.d.ts +439 -291
  362. package/typings/index.d.ts +8247 -7390
  363. package/typings/rawDataTypes.d.ts +403 -342
  364. package/src/structures/RichPresence.js +0 -702
package/LICENSE CHANGED
@@ -1,7 +1,7 @@
1
1
  GNU GENERAL PUBLIC LICENSE
2
2
  Version 3, 29 June 2007
3
3
 
4
- Copyright (C) 2022 aiko-chan-ai and discordjs and 002-sans
4
+ Copyright (C) 2022 aiko-chan-ai and discordjs
5
5
  Everyone is permitted to copy and distribute verbatim copies
6
6
  of this license document, but changing it is not allowed.
7
7
 
package/README.md CHANGED
@@ -1,3 +1,6 @@
1
+ > [!IMPORTANT]
2
+ > **This project is a fork of the [discord.js-selfbot-v13](https://github.com/aiko-chan-ai/discord.js-selfbot-v13) archived project.**
3
+
1
4
  <div align="center">
2
5
  <br />
3
6
  <p>
@@ -7,54 +10,52 @@
7
10
 
8
11
  ## About
9
12
 
10
- <strong>Welcome to `djs-selfbot-v13`, based on `discord.js@13.17`</strong>
13
+ <strong>Welcome to `discord.js-selfbot-v13@v3.7`, based on `discord.js@13.17` and backport `discord.js@14.21.0`</strong>
11
14
 
12
- - djs-selfbot-v13 is a [Node.js](https://nodejs.org) module that allows user accounts to interact with the Discord API v9.
15
+ - discord.js-selfbot-v13 is a [Node.js](https://nodejs.org) module that allows user accounts to interact with the Discord API v9.
13
16
 
14
17
 
15
18
  <div align="center">
16
19
  <p>
17
- <a href="https://www.npmjs.com/package/djs-selfbot-v13"><img src="https://img.shields.io/npm/v/djs-selfbot-v13.svg" alt="npm version" /></a>
18
- <a href="https://www.npmjs.com/package/djs-selfbot-v13"><img src="https://img.shields.io/npm/dt/djs-selfbot-v13.svg" alt="npm downloads" /></a>
20
+ <a href="https://www.npmjs.com/package/discord.js-selfbot-v13"><img src="https://img.shields.io/npm/v/discord.js-selfbot-v13.svg" alt="npm version" /></a>
21
+ <a href="https://www.npmjs.com/package/discord.js-selfbot-v13"><img src="https://img.shields.io/npm/dt/discord.js-selfbot-v13.svg" alt="npm downloads" /></a>
19
22
  <a href="https://github.com/aiko-chan-ai/discord.js-selfbot-v13/actions"><img src="https://github.com/aiko-chan-ai/discord.js-selfbot-v13/actions/workflows/lint.yml/badge.svg" alt="Tests status" /></a>
20
23
  </p>
21
24
  </div>
22
25
 
23
- ### <strong>I don't take any responsibility for blocked Discord accounts that used this module.</strong>
24
- ### <strong>Using this on a user account is prohibited by the [Discord TOS](https://discord.com/terms) and can lead to the account block.</strong>
25
-
26
- ## Project Status
26
+ > [!WARNING]
27
+ > **I don't take any responsibility for blocked Discord accounts that used this module.**
27
28
 
28
- `discord.js-selfbot-v13` is currently in maintenance mode. New features are not actively being added but existing features and new versions of discord are supported as possible. There are some major architectural changes which need to be added to improve the stability and security of the project. I don't have as much spare time as I did when I started this project, so there is not currently any plan for these improvements.
29
+ > [!CAUTION]
30
+ > **Using this on a user account is prohibited by the [Discord TOS](https://discord.com/terms) and can lead to the account block.**
29
31
 
30
32
  ### <strong>[Document Website](https://discordjs-self-v13.netlify.app/)</strong>
31
33
 
32
34
  ### <strong>[Example Code](https://github.com/aiko-chan-ai/discord.js-selfbot-v13/tree/main/examples)</strong>
33
35
 
34
36
  ## Features (User)
35
- - [x] Message: Embeds (WebEmbed)
36
- - [x] User: Status, Activity, RemoteAuth, etc.
37
- - [X] Guild: Fetch Members, Join / Leave, Top emojis, ...
38
- - [X] Interactions: Slash Commands, Buttons, Menu, Modal
39
- - [X] Captcha Handler (2captcha, capmonster, custom)
40
- - [X] Documentation
41
- - [x] Voice & Video stream
37
+ - [x] Message
38
+ - [x] ClientUser: Status, Activity, RemoteAuth, etc.
39
+ - [X] Guild: Fetch Members, Join / Leave, Top emojis, etc.
40
+ - [X] Interactions: Slash Commands, Buttons, Menu, Modal.
41
+ - [ ] Captcha & TOTP Handler
42
+ - [ ] Documentation
43
+ - [ ] Voice & Video
42
44
  - [ ] Everything
43
45
 
44
46
  ## Installation
45
47
 
46
- **Node.js 16.6.0 or newer is required**
47
-
48
- > Recommended Node.js version: 18+ (LTS)
48
+ > [!NOTE]
49
+ > **Node.js 20.18.0 or newer is required**
49
50
 
50
51
  ```sh-session
51
- npm install djs-selfbot-v13
52
+ npm install discord.js-selfbot-v13-next@latest
52
53
  ```
53
54
 
54
55
  ## Example
55
56
 
56
57
  ```js
57
- const { Client } = require('djs-selfbot-v13');
58
+ const { Client } = require('discord.js-selfbot-v13-next');
58
59
  const client = new Client();
59
60
 
60
61
  client.on('ready', async () => {
@@ -66,26 +67,29 @@ client.login('token');
66
67
 
67
68
  ## Get Token ?
68
69
 
70
+ - Based: [findByProps](https://discord.com/channels/603970300668805120/1085682686607249478/1085682686607249478)
71
+
69
72
  <strong>Run code (Discord Console - [Ctrl + Shift + I])</strong>
70
73
 
71
74
  ```js
72
75
  window.webpackChunkdiscord_app.push([
73
- [Math.random()],
74
- {},
75
- req => {
76
- if (!req.c) return;
77
- for (const m of Object.keys(req.c)
78
- .map(x => req.c[x].exports)
79
- .filter(x => x)) {
80
- if (m.default && m.default.getToken !== undefined) {
81
- return copy(m.default.getToken());
82
- }
83
- if (m.getToken !== undefined) {
84
- return copy(m.getToken());
85
- }
86
- }
87
- },
76
+ [Symbol()],
77
+ {},
78
+ req => {
79
+ if (!req.c) return;
80
+ for (let m of Object.values(req.c)) {
81
+ try {
82
+ if (!m.exports || m.exports === window) continue;
83
+ if (m.exports?.getToken) return copy(m.exports.getToken());
84
+ for (let ex in m.exports) {
85
+ if (m.exports?.[ex]?.getToken && m.exports[ex][Symbol.toStringTag] !== 'IntlMessagesProxy') return copy(m.exports[ex].getToken());
86
+ }
87
+ } catch {}
88
+ }
89
+ },
88
90
  ]);
91
+
92
+ window.webpackChunkdiscord_app.pop();
89
93
  console.log('%cWorked!', 'font-size: 50px');
90
94
  console.log(`%cYou now have your token in the clipboard!`, 'font-size: 16px');
91
95
  ```
@@ -102,4 +106,11 @@ Github Discussion: [Here](https://github.com/aiko-chan-ai/discord.js-selfbot-v13
102
106
  ## Credits
103
107
  - [Discord.js](https://github.com/discordjs/discord.js)
104
108
 
105
- ## <strong><img src="https://cdn.discordapp.com/attachments/820557032016969751/952436539118456882/flag-vietnam_1f1fb-1f1f3.png" alt="." width="20" height="20"/> Other project(s)
109
+ ## <strong>Other project(s)
110
+
111
+ - 📘 [***aiko-chan-ai/DiscordBotClient***](https://github.com/aiko-chan-ai/DiscordBotClient) <br/>
112
+ A patched version of discord, with bot login support
113
+
114
+ ## Star History
115
+
116
+ [![Star History Chart](https://api.star-history.com/svg?repos=aiko-chan-ai/discord.js-selfbot-v13&type=Date)](https://star-history.com/#aiko-chan-ai/discord.js-selfbot-v13&Date)
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "djs-selfbot-v13",
3
- "version": "3.1.8",
4
- "description": "A unofficial discord.js fork for creating selfbots [Based on discord.js v13]",
3
+ "version": "3.7.1",
4
+ "description": "An unofficial discord.js fork for creating selfbots",
5
5
  "main": "./src/index.js",
6
6
  "types": "./typings/index.d.ts",
7
7
  "scripts": {
@@ -27,45 +27,63 @@
27
27
  "lib": "src",
28
28
  "test": "test"
29
29
  },
30
+ "repository": {
31
+ "type": "git",
32
+ "url": "git+https://github.com/aiko-chan-ai/discord.js-selfbot-v13.git"
33
+ },
34
+ "keywords": [
35
+ "discord.js",
36
+ "discord.js v13",
37
+ "selfbot",
38
+ "selfbot v13",
39
+ "djs",
40
+ "api",
41
+ "bot",
42
+ "node",
43
+ "discord",
44
+ "client",
45
+ "discordapp"
46
+ ],
47
+ "author": "aiko-chan-ai",
30
48
  "license": "GNU General Public License v3.0",
49
+ "bugs": {
50
+ "url": "https://github.com/aiko-chan-ai/discord.js-selfbot-v13/issues"
51
+ },
52
+ "homepage": "https://github.com/aiko-chan-ai/discord.js-selfbot-v13#readme",
31
53
  "dependencies": {
32
- "@aikochan2k6/qrcode-terminal": "^0.12.1",
33
54
  "@discordjs/builders": "^1.6.3",
34
- "@discordjs/collection": "^1.5.3",
35
- "@sapphire/async-queue": "^1.5.1",
36
- "@sapphire/shapeshift": "^3.9.5",
37
- "@types/node-fetch": "^2.6.10",
38
- "@types/ws": "^8.5.10",
39
- "discord-api-types": "^0.37.61",
40
- "fetch-cookie": "^2.1.0",
41
- "form-data": "^4.0.0",
42
- "node-fetch": "^2.6.9",
43
- "tough-cookie": "^4.1.3",
55
+ "@discordjs/collection": "^2.1.1",
56
+ "@sapphire/async-queue": "^1.5.5",
57
+ "@sapphire/shapeshift": "^4.0.0",
58
+ "discord-api-types": "^0.38.15",
59
+ "fetch-cookie": "^3.1.0",
60
+ "find-process": "^2.0.0",
61
+ "otplib": "^12.0.1",
62
+ "prism-media": "^1.3.5",
63
+ "qrcode": "^1.5.4",
64
+ "tough-cookie": "^5.1.2",
65
+ "tree-kill": "^1.2.2",
66
+ "undici": "^7.11.0",
67
+ "werift-rtp": "^0.8.4",
44
68
  "ws": "^8.16.0"
45
69
  },
46
70
  "engines": {
47
- "node": ">=16.6.0",
48
- "npm": ">=7.0.0"
71
+ "node": ">=20.18"
49
72
  },
50
73
  "devDependencies": {
51
- "@commitlint/cli": "^16.0.1",
52
- "@commitlint/config-angular": "^16.0.0",
53
74
  "@discordjs/docgen": "^0.11.1",
54
- "@favware/npm-deprecate": "^1.0.7",
55
- "@types/node": "^18.16.0",
56
- "conventional-changelog-cli": "^2.2.2",
75
+ "@types/debug": "^4.1.12",
76
+ "@types/node": "^22.10.7",
77
+ "@types/ws": "^8.5.10",
57
78
  "dtslint": "^4.2.1",
58
79
  "eslint": "^8.39.0",
59
80
  "eslint-config-prettier": "^8.8.0",
60
81
  "eslint-plugin-import": "^2.27.5",
61
82
  "eslint-plugin-prettier": "^4.2.1",
62
- "husky": "^7.0.4",
63
- "is-ci": "^3.0.1",
64
- "jest": "^28.1.3",
65
- "lint-staged": "^12.1.4",
83
+ "patch-package": "^8.0.0",
66
84
  "prettier": "^2.8.8",
67
- "tsd": "^0.28.1",
85
+ "tsd": "^0.32.0",
68
86
  "tslint": "^6.1.3",
69
- "typescript": "^4.9.5"
87
+ "typescript": "^5.5.4"
70
88
  }
71
89
  }
package/src/WebSocket.js CHANGED
@@ -1,39 +1,39 @@
1
- 'use strict';
2
-
3
- let erlpack;
4
- const { Buffer } = require('node:buffer');
5
-
6
- try {
7
- erlpack = require('erlpack');
8
- if (!erlpack.pack) erlpack = null;
9
- } catch {} // eslint-disable-line no-empty
10
-
11
- exports.WebSocket = require('ws');
12
-
13
- const ab = new TextDecoder();
14
-
15
- exports.encoding = erlpack ? 'etf' : 'json';
16
-
17
- exports.pack = erlpack ? erlpack.pack : JSON.stringify;
18
-
19
- exports.unpack = (data, type) => {
20
- if (exports.encoding === 'json' || type === 'json') {
21
- if (typeof data !== 'string') {
22
- data = ab.decode(data);
23
- }
24
- return JSON.parse(data);
25
- }
26
- if (!Buffer.isBuffer(data)) data = Buffer.from(new Uint8Array(data));
27
- return erlpack.unpack(data);
28
- };
29
-
30
- exports.create = (gateway, query = {}, ...args) => {
31
- const [g, q] = gateway.split('?');
32
- query.encoding = exports.encoding;
33
- query = new URLSearchParams(query);
34
- if (q) new URLSearchParams(q).forEach((v, k) => query.set(k, v));
35
- const ws = new exports.WebSocket(`${g}?${query}`, ...args);
36
- return ws;
37
- };
38
-
39
- for (const state of ['CONNECTING', 'OPEN', 'CLOSING', 'CLOSED']) exports[state] = exports.WebSocket[state];
1
+ 'use strict';
2
+
3
+ let erlpack;
4
+ const { Buffer } = require('node:buffer');
5
+
6
+ try {
7
+ erlpack = require('erlpack');
8
+ if (!erlpack.pack) erlpack = null;
9
+ } catch {} // eslint-disable-line no-empty
10
+
11
+ exports.WebSocket = require('ws');
12
+
13
+ const ab = new TextDecoder();
14
+
15
+ exports.encoding = erlpack ? 'etf' : 'json';
16
+
17
+ exports.pack = erlpack ? erlpack.pack : JSON.stringify;
18
+
19
+ exports.unpack = (data, type) => {
20
+ if (exports.encoding === 'json' || type === 'json') {
21
+ if (typeof data !== 'string') {
22
+ data = ab.decode(data);
23
+ }
24
+ return JSON.parse(data);
25
+ }
26
+ if (!Buffer.isBuffer(data)) data = Buffer.from(new Uint8Array(data));
27
+ return erlpack.unpack(data);
28
+ };
29
+
30
+ exports.create = (gateway, query = {}, ...args) => {
31
+ const [g, q] = gateway.split('?');
32
+ query.encoding = exports.encoding;
33
+ query = new URLSearchParams(query);
34
+ if (q) new URLSearchParams(q).forEach((v, k) => query.set(k, v));
35
+ const ws = new exports.WebSocket(`${g}?${query}`, ...args);
36
+ return ws;
37
+ };
38
+
39
+ for (const state of ['CONNECTING', 'OPEN', 'CLOSING', 'CLOSED']) exports[state] = exports.WebSocket[state];
@@ -1,86 +1,86 @@
1
- 'use strict';
2
-
3
- const EventEmitter = require('node:events');
4
- const process = require('node:process');
5
- const RESTManager = require('../rest/RESTManager');
6
- const Options = require('../util/Options');
7
- const Util = require('../util/Util');
8
-
9
- /**
10
- * The base class for all clients.
11
- * @extends {EventEmitter}
12
- */
13
- class BaseClient extends EventEmitter {
14
- constructor(options = {}) {
15
- super();
16
-
17
- if (options.intents) {
18
- process.emitWarning('Intents is not available.', 'DeprecationWarning');
19
- }
20
-
21
- /**
22
- * The options the client was instantiated with
23
- * @type {ClientOptions}
24
- */
25
- this.options = Util.mergeDefault(Options.createDefault(), options);
26
-
27
- /**
28
- * The REST manager of the client
29
- * @type {RESTManager}
30
- * @private
31
- */
32
- this.rest = new RESTManager(this);
33
- }
34
-
35
- /**
36
- * API shortcut
37
- * @type {Object}
38
- * @readonly
39
- * @private
40
- */
41
- get api() {
42
- return this.rest.api;
43
- }
44
-
45
- /**
46
- * Destroys all assets used by the base client.
47
- * @returns {void}
48
- */
49
- destroy() {
50
- if (this.rest.sweepInterval) clearInterval(this.rest.sweepInterval);
51
- }
52
-
53
- /**
54
- * Increments max listeners by one, if they are not zero.
55
- * @private
56
- */
57
- incrementMaxListeners() {
58
- const maxListeners = this.getMaxListeners();
59
- if (maxListeners !== 0) {
60
- this.setMaxListeners(maxListeners + 1);
61
- }
62
- }
63
-
64
- /**
65
- * Decrements max listeners by one, if they are not zero.
66
- * @private
67
- */
68
- decrementMaxListeners() {
69
- const maxListeners = this.getMaxListeners();
70
- if (maxListeners !== 0) {
71
- this.setMaxListeners(maxListeners - 1);
72
- }
73
- }
74
-
75
- toJSON(...props) {
76
- return Util.flatten(this, { domain: false }, ...props);
77
- }
78
- }
79
-
80
- module.exports = BaseClient;
81
-
82
- /**
83
- * Emitted for general debugging information.
84
- * @event BaseClient#debug
85
- * @param {string} info The debug information
86
- */
1
+ 'use strict';
2
+
3
+ const EventEmitter = require('node:events');
4
+ const process = require('node:process');
5
+ const RESTManager = require('../rest/RESTManager');
6
+ const Options = require('../util/Options');
7
+ const Util = require('../util/Util');
8
+
9
+ /**
10
+ * The base class for all clients.
11
+ * @extends {EventEmitter}
12
+ */
13
+ class BaseClient extends EventEmitter {
14
+ constructor(options = {}) {
15
+ super({ captureRejections: true });
16
+
17
+ if (options.intents) {
18
+ process.emitWarning('Intents is not available.', 'DeprecationWarning');
19
+ }
20
+
21
+ /**
22
+ * The options the client was instantiated with
23
+ * @type {ClientOptions}
24
+ */
25
+ this.options = Util.mergeDefault(Options.createDefault(), options);
26
+
27
+ /**
28
+ * The REST manager of the client
29
+ * @type {RESTManager}
30
+ * @private
31
+ */
32
+ this.rest = new RESTManager(this);
33
+ }
34
+
35
+ /**
36
+ * API shortcut
37
+ * @type {Object}
38
+ * @readonly
39
+ * @private
40
+ */
41
+ get api() {
42
+ return this.rest.api;
43
+ }
44
+
45
+ /**
46
+ * Destroys all assets used by the base client.
47
+ * @returns {void}
48
+ */
49
+ destroy() {
50
+ if (this.rest.sweepInterval) clearInterval(this.rest.sweepInterval);
51
+ }
52
+
53
+ /**
54
+ * Increments max listeners by one, if they are not zero.
55
+ * @private
56
+ */
57
+ incrementMaxListeners() {
58
+ const maxListeners = this.getMaxListeners();
59
+ if (maxListeners !== 0) {
60
+ this.setMaxListeners(maxListeners + 1);
61
+ }
62
+ }
63
+
64
+ /**
65
+ * Decrements max listeners by one, if they are not zero.
66
+ * @private
67
+ */
68
+ decrementMaxListeners() {
69
+ const maxListeners = this.getMaxListeners();
70
+ if (maxListeners !== 0) {
71
+ this.setMaxListeners(maxListeners - 1);
72
+ }
73
+ }
74
+
75
+ toJSON(...props) {
76
+ return Util.flatten(this, { domain: false }, ...props);
77
+ }
78
+ }
79
+
80
+ module.exports = BaseClient;
81
+
82
+ /**
83
+ * Emitted for general debugging information.
84
+ * @event BaseClient#debug
85
+ * @param {string} info The debug information
86
+ */