seyfert 0.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.
- package/LICENSE +190 -0
- package/README.md +57 -0
- package/lib/api/CDN.d.ts +220 -0
- package/lib/api/CDN.js +236 -0
- package/lib/api/REST.d.ts +127 -0
- package/lib/api/REST.js +424 -0
- package/lib/api/Router.d.ts +17 -0
- package/lib/api/Router.js +63 -0
- package/lib/api/Routes/applications.d.ts +46 -0
- package/lib/api/Routes/applications.js +2 -0
- package/lib/api/Routes/cdn.d.ts +66 -0
- package/lib/api/Routes/cdn.js +2 -0
- package/lib/api/Routes/channels.d.ts +109 -0
- package/lib/api/Routes/channels.js +2 -0
- package/lib/api/Routes/gateway.d.ts +11 -0
- package/lib/api/Routes/gateway.js +2 -0
- package/lib/api/Routes/guilds.d.ts +171 -0
- package/lib/api/Routes/guilds.js +2 -0
- package/lib/api/Routes/index.d.ts +13 -0
- package/lib/api/Routes/index.js +17 -0
- package/lib/api/Routes/interactions.d.ts +14 -0
- package/lib/api/Routes/interactions.js +2 -0
- package/lib/api/Routes/invites.d.ts +9 -0
- package/lib/api/Routes/invites.js +2 -0
- package/lib/api/Routes/stage-instances.d.ts +13 -0
- package/lib/api/Routes/stage-instances.js +2 -0
- package/lib/api/Routes/stickers.d.ts +11 -0
- package/lib/api/Routes/stickers.js +2 -0
- package/lib/api/Routes/users.d.ts +35 -0
- package/lib/api/Routes/users.js +2 -0
- package/lib/api/Routes/voice.d.ts +10 -0
- package/lib/api/Routes/voice.js +2 -0
- package/lib/api/Routes/webhooks.d.ts +29 -0
- package/lib/api/Routes/webhooks.js +2 -0
- package/lib/api/errors/DiscordAPIError.d.ts +51 -0
- package/lib/api/errors/DiscordAPIError.js +81 -0
- package/lib/api/errors/HTTPError.d.ts +20 -0
- package/lib/api/errors/HTTPError.js +28 -0
- package/lib/api/errors/RateLimitError.d.ts +19 -0
- package/lib/api/errors/RateLimitError.js +37 -0
- package/lib/api/handlers/BurstHandler.d.ts +51 -0
- package/lib/api/handlers/BurstHandler.js +124 -0
- package/lib/api/handlers/SequentialHandler.d.ts +81 -0
- package/lib/api/handlers/SequentialHandler.js +365 -0
- package/lib/api/handlers/Shared.d.ts +14 -0
- package/lib/api/handlers/Shared.js +125 -0
- package/lib/api/index.d.ts +5 -0
- package/lib/api/index.js +21 -0
- package/lib/api/interfaces/Handler.d.ts +21 -0
- package/lib/api/interfaces/Handler.js +2 -0
- package/lib/api/shared.d.ts +7 -0
- package/lib/api/shared.js +27 -0
- package/lib/api/utils/constants.d.ts +39 -0
- package/lib/api/utils/constants.js +50 -0
- package/lib/api/utils/types.d.ts +335 -0
- package/lib/api/utils/types.js +14 -0
- package/lib/api/utils/utils.d.ts +52 -0
- package/lib/api/utils/utils.js +159 -0
- package/lib/builders/ActionRow.d.ts +40 -0
- package/lib/builders/ActionRow.js +58 -0
- package/lib/builders/Attachment.d.ts +106 -0
- package/lib/builders/Attachment.js +196 -0
- package/lib/builders/Base.d.ts +10 -0
- package/lib/builders/Base.js +13 -0
- package/lib/builders/Button.d.ts +59 -0
- package/lib/builders/Button.js +94 -0
- package/lib/builders/MessageEmbed.d.ts +116 -0
- package/lib/builders/MessageEmbed.js +159 -0
- package/lib/builders/Modal.d.ts +111 -0
- package/lib/builders/Modal.js +162 -0
- package/lib/builders/SelectMenu.d.ts +201 -0
- package/lib/builders/SelectMenu.js +293 -0
- package/lib/builders/index.d.ts +12 -0
- package/lib/builders/index.js +54 -0
- package/lib/builders/types.d.ts +21 -0
- package/lib/builders/types.js +2 -0
- package/lib/cache/adapters/default.d.ts +24 -0
- package/lib/cache/adapters/default.js +118 -0
- package/lib/cache/adapters/index.d.ts +4 -0
- package/lib/cache/adapters/index.js +20 -0
- package/lib/cache/adapters/redis.d.ts +35 -0
- package/lib/cache/adapters/redis.js +180 -0
- package/lib/cache/adapters/types.d.ts +25 -0
- package/lib/cache/adapters/types.js +2 -0
- package/lib/cache/adapters/workeradapter.d.ts +24 -0
- package/lib/cache/adapters/workeradapter.js +76 -0
- package/lib/cache/index.d.ts +97 -0
- package/lib/cache/index.js +394 -0
- package/lib/cache/resources/channels.d.ts +7 -0
- package/lib/cache/resources/channels.js +20 -0
- package/lib/cache/resources/default/base.d.ts +25 -0
- package/lib/cache/resources/default/base.js +75 -0
- package/lib/cache/resources/default/guild-based.d.ts +33 -0
- package/lib/cache/resources/default/guild-based.js +91 -0
- package/lib/cache/resources/default/guild-related.d.ts +32 -0
- package/lib/cache/resources/default/guild-related.js +102 -0
- package/lib/cache/resources/emojis.d.ts +7 -0
- package/lib/cache/resources/emojis.js +17 -0
- package/lib/cache/resources/guilds.d.ts +10 -0
- package/lib/cache/resources/guilds.js +117 -0
- package/lib/cache/resources/members.d.ts +10 -0
- package/lib/cache/resources/members.js +41 -0
- package/lib/cache/resources/presence.d.ts +9 -0
- package/lib/cache/resources/presence.js +14 -0
- package/lib/cache/resources/roles.d.ts +7 -0
- package/lib/cache/resources/roles.js +17 -0
- package/lib/cache/resources/stage-instances.d.ts +5 -0
- package/lib/cache/resources/stage-instances.js +8 -0
- package/lib/cache/resources/stickers.d.ts +7 -0
- package/lib/cache/resources/stickers.js +17 -0
- package/lib/cache/resources/threads.d.ts +7 -0
- package/lib/cache/resources/threads.js +17 -0
- package/lib/cache/resources/users.d.ts +7 -0
- package/lib/cache/resources/users.js +17 -0
- package/lib/cache/resources/voice-states.d.ts +9 -0
- package/lib/cache/resources/voice-states.js +13 -0
- package/lib/client/base.d.ts +244 -0
- package/lib/client/base.js +178 -0
- package/lib/client/client.d.ts +32 -0
- package/lib/client/client.js +156 -0
- package/lib/client/httpclient.d.ts +21 -0
- package/lib/client/httpclient.js +143 -0
- package/lib/client/index.d.ts +4 -0
- package/lib/client/index.js +19 -0
- package/lib/client/oninteraction.d.ts +4 -0
- package/lib/client/oninteraction.js +180 -0
- package/lib/client/workerclient.d.ts +28 -0
- package/lib/client/workerclient.js +213 -0
- package/lib/collection.d.ts +233 -0
- package/lib/collection.js +371 -0
- package/lib/commands/applications/chat.d.ts +139 -0
- package/lib/commands/applications/chat.js +173 -0
- package/lib/commands/applications/chatcontext.d.ts +28 -0
- package/lib/commands/applications/chatcontext.js +53 -0
- package/lib/commands/applications/menu.d.ts +39 -0
- package/lib/commands/applications/menu.js +87 -0
- package/lib/commands/applications/menucontext.d.ts +25 -0
- package/lib/commands/applications/menucontext.js +64 -0
- package/lib/commands/applications/options.d.ts +67 -0
- package/lib/commands/applications/options.js +44 -0
- package/lib/commands/applications/shared.d.ts +35 -0
- package/lib/commands/applications/shared.js +2 -0
- package/lib/commands/decorators.d.ts +107 -0
- package/lib/commands/decorators.js +85 -0
- package/lib/commands/handler.d.ts +15 -0
- package/lib/commands/handler.js +140 -0
- package/lib/commands/index.d.ts +8 -0
- package/lib/commands/index.js +24 -0
- package/lib/commands/optionresolver.d.ts +49 -0
- package/lib/commands/optionresolver.js +146 -0
- package/lib/common/bot/watcher.d.ts +53 -0
- package/lib/common/bot/watcher.js +104 -0
- package/lib/common/index.d.ts +13 -0
- package/lib/common/index.js +30 -0
- package/lib/common/it/colors.d.ts +274 -0
- package/lib/common/it/colors.js +453 -0
- package/lib/common/it/constants.d.ts +36 -0
- package/lib/common/it/constants.js +40 -0
- package/lib/common/it/logger.d.ts +114 -0
- package/lib/common/it/logger.js +189 -0
- package/lib/common/it/utils.d.ts +107 -0
- package/lib/common/it/utils.js +275 -0
- package/lib/common/shorters/base.d.ts +5 -0
- package/lib/common/shorters/base.js +10 -0
- package/lib/common/shorters/channels.d.ts +90 -0
- package/lib/common/shorters/channels.js +95 -0
- package/lib/common/shorters/guilds.d.ts +389 -0
- package/lib/common/shorters/guilds.js +350 -0
- package/lib/common/shorters/members.d.ts +115 -0
- package/lib/common/shorters/members.js +179 -0
- package/lib/common/shorters/messages.d.ts +27 -0
- package/lib/common/shorters/messages.js +117 -0
- package/lib/common/shorters/roles.d.ts +12 -0
- package/lib/common/shorters/roles.js +51 -0
- package/lib/common/shorters/templates.d.ts +12 -0
- package/lib/common/shorters/templates.js +29 -0
- package/lib/common/shorters/users.d.ts +11 -0
- package/lib/common/shorters/users.js +42 -0
- package/lib/common/shorters/webhook.d.ts +33 -0
- package/lib/common/shorters/webhook.js +69 -0
- package/lib/common/types/options.d.ts +10 -0
- package/lib/common/types/options.js +2 -0
- package/lib/common/types/resolvables.d.ts +10 -0
- package/lib/common/types/resolvables.js +2 -0
- package/lib/common/types/util.d.ts +90 -0
- package/lib/common/types/util.js +2 -0
- package/lib/common/types/write.d.ts +21 -0
- package/lib/common/types/write.js +2 -0
- package/lib/components/ActionRow.d.ts +10 -0
- package/lib/components/ActionRow.js +13 -0
- package/lib/components/ButtonComponent.d.ts +19 -0
- package/lib/components/ButtonComponent.js +34 -0
- package/lib/components/ChannelSelectMenuComponent.d.ts +6 -0
- package/lib/components/ChannelSelectMenuComponent.js +12 -0
- package/lib/components/MentionableSelectMenuComponent.d.ts +4 -0
- package/lib/components/MentionableSelectMenuComponent.js +7 -0
- package/lib/components/RoleSelectMenuComponent.d.ts +4 -0
- package/lib/components/RoleSelectMenuComponent.js +7 -0
- package/lib/components/StringSelectMenuComponent.d.ts +6 -0
- package/lib/components/StringSelectMenuComponent.js +12 -0
- package/lib/components/TextInputComponent.d.ts +7 -0
- package/lib/components/TextInputComponent.js +14 -0
- package/lib/components/UserSelectMenuComponent.d.ts +4 -0
- package/lib/components/UserSelectMenuComponent.js +7 -0
- package/lib/components/command.d.ts +23 -0
- package/lib/components/command.js +15 -0
- package/lib/components/handler.d.ts +48 -0
- package/lib/components/handler.js +231 -0
- package/lib/components/index.d.ts +20 -0
- package/lib/components/index.js +55 -0
- package/lib/components/listener.d.ts +11 -0
- package/lib/components/listener.js +18 -0
- package/lib/events/event.d.ts +23 -0
- package/lib/events/event.js +2 -0
- package/lib/events/handler.d.ts +19 -0
- package/lib/events/handler.js +112 -0
- package/lib/events/hooks/application_command.d.ts +12 -0
- package/lib/events/hooks/application_command.js +8 -0
- package/lib/events/hooks/auto_moderation.d.ts +22 -0
- package/lib/events/hooks/auto_moderation.js +21 -0
- package/lib/events/hooks/channel.d.ts +11 -0
- package/lib/events/hooks/channel.js +24 -0
- package/lib/events/hooks/custom.d.ts +4 -0
- package/lib/events/hooks/custom.js +11 -0
- package/lib/events/hooks/dispatch.d.ts +5 -0
- package/lib/events/hooks/dispatch.js +12 -0
- package/lib/events/hooks/entitlement.d.ts +35 -0
- package/lib/events/hooks/entitlement.js +16 -0
- package/lib/events/hooks/guild.d.ts +228 -0
- package/lib/events/hooks/guild.js +101 -0
- package/lib/events/hooks/index.d.ts +23 -0
- package/lib/events/hooks/index.js +34 -0
- package/lib/events/hooks/integration.d.ts +94 -0
- package/lib/events/hooks/integration.js +27 -0
- package/lib/events/hooks/interactions.d.ts +4 -0
- package/lib/events/hooks/interactions.js +8 -0
- package/lib/events/hooks/invite.d.ts +21 -0
- package/lib/events/hooks/invite.js +12 -0
- package/lib/events/hooks/message.d.ts +69 -0
- package/lib/events/hooks/message.js +37 -0
- package/lib/events/hooks/presence.d.ts +27 -0
- package/lib/events/hooks/presence.js +8 -0
- package/lib/events/hooks/stage.d.ts +29 -0
- package/lib/events/hooks/stage.js +16 -0
- package/lib/events/hooks/thread.d.ts +198 -0
- package/lib/events/hooks/thread.js +29 -0
- package/lib/events/hooks/typing.d.ts +16 -0
- package/lib/events/hooks/typing.js +14 -0
- package/lib/events/hooks/user.d.ts +4 -0
- package/lib/events/hooks/user.js +8 -0
- package/lib/events/hooks/voice.d.ts +37 -0
- package/lib/events/hooks/voice.js +18 -0
- package/lib/events/hooks/webhook.d.ts +6 -0
- package/lib/events/hooks/webhook.js +8 -0
- package/lib/events/index.d.ts +2 -0
- package/lib/events/index.js +18 -0
- package/lib/index.d.ts +79 -0
- package/lib/index.js +104 -0
- package/lib/langs/handler.d.ts +11 -0
- package/lib/langs/handler.js +34 -0
- package/lib/langs/index.d.ts +2 -0
- package/lib/langs/index.js +18 -0
- package/lib/langs/router.d.ts +18 -0
- package/lib/langs/router.js +42 -0
- package/lib/structures/AnonymousGuild.d.ts +7 -0
- package/lib/structures/AnonymousGuild.js +11 -0
- package/lib/structures/AutoModerationRule.d.ts +22 -0
- package/lib/structures/AutoModerationRule.js +34 -0
- package/lib/structures/ClientUser.d.ts +25 -0
- package/lib/structures/ClientUser.js +52 -0
- package/lib/structures/Guild.d.ts +86 -0
- package/lib/structures/Guild.js +66 -0
- package/lib/structures/GuildEmoji.d.ts +29 -0
- package/lib/structures/GuildEmoji.js +47 -0
- package/lib/structures/GuildMember.d.ts +92 -0
- package/lib/structures/GuildMember.js +137 -0
- package/lib/structures/GuildPreview.d.ts +10 -0
- package/lib/structures/GuildPreview.js +14 -0
- package/lib/structures/GuildRole.d.ts +21 -0
- package/lib/structures/GuildRole.js +32 -0
- package/lib/structures/GuildTemplate.d.ts +23 -0
- package/lib/structures/GuildTemplate.js +36 -0
- package/lib/structures/Interaction.d.ts +152 -0
- package/lib/structures/Interaction.js +409 -0
- package/lib/structures/Message.d.ts +53 -0
- package/lib/structures/Message.js +123 -0
- package/lib/structures/Sticker.d.ts +27 -0
- package/lib/structures/Sticker.js +44 -0
- package/lib/structures/User.d.ts +20 -0
- package/lib/structures/User.js +37 -0
- package/lib/structures/Webhook.d.ts +42 -0
- package/lib/structures/Webhook.js +63 -0
- package/lib/structures/channels.d.ts +232 -0
- package/lib/structures/channels.js +366 -0
- package/lib/structures/extra/Base.d.ts +7 -0
- package/lib/structures/extra/Base.js +39 -0
- package/lib/structures/extra/BaseComponent.d.ts +9 -0
- package/lib/structures/extra/BaseComponent.js +12 -0
- package/lib/structures/extra/BaseGuild.d.ts +40 -0
- package/lib/structures/extra/BaseGuild.js +71 -0
- package/lib/structures/extra/BaseSelectMenuComponent.d.ts +9 -0
- package/lib/structures/extra/BaseSelectMenuComponent.js +13 -0
- package/lib/structures/extra/BitField.d.ts +14 -0
- package/lib/structures/extra/BitField.js +56 -0
- package/lib/structures/extra/DiscordBase.d.ts +18 -0
- package/lib/structures/extra/DiscordBase.js +28 -0
- package/lib/structures/extra/Permissions.d.ts +54 -0
- package/lib/structures/extra/Permissions.js +9 -0
- package/lib/structures/extra/functions.d.ts +11 -0
- package/lib/structures/extra/functions.js +69 -0
- package/lib/structures/index.d.ts +15 -0
- package/lib/structures/index.js +31 -0
- package/lib/websocket/SharedTypes.d.ts +128 -0
- package/lib/websocket/SharedTypes.js +2 -0
- package/lib/websocket/constants/index.d.ts +26 -0
- package/lib/websocket/constants/index.js +31 -0
- package/lib/websocket/discord/basesocket.d.ts +12 -0
- package/lib/websocket/discord/basesocket.js +37 -0
- package/lib/websocket/discord/events/memberUpdate.d.ts +16 -0
- package/lib/websocket/discord/events/memberUpdate.js +47 -0
- package/lib/websocket/discord/events/presenceUpdate.d.ts +24 -0
- package/lib/websocket/discord/events/presenceUpdate.js +46 -0
- package/lib/websocket/discord/handlemessage.d.ts +0 -0
- package/lib/websocket/discord/handlemessage.js +1 -0
- package/lib/websocket/discord/index.d.ts +4 -0
- package/lib/websocket/discord/index.js +20 -0
- package/lib/websocket/discord/memberUpdate.d.ts +16 -0
- package/lib/websocket/discord/memberUpdate.js +47 -0
- package/lib/websocket/discord/shard.d.ts +46 -0
- package/lib/websocket/discord/shard.js +278 -0
- package/lib/websocket/discord/sharder.d.ts +25 -0
- package/lib/websocket/discord/sharder.js +153 -0
- package/lib/websocket/discord/shared.d.ts +99 -0
- package/lib/websocket/discord/shared.js +8 -0
- package/lib/websocket/discord/worker.d.ts +43 -0
- package/lib/websocket/discord/worker.js +2 -0
- package/lib/websocket/discord/workermanager.d.ts +69 -0
- package/lib/websocket/discord/workermanager.js +273 -0
- package/lib/websocket/index.d.ts +3 -0
- package/lib/websocket/index.js +19 -0
- package/lib/websocket/structures/index.d.ts +117 -0
- package/lib/websocket/structures/index.js +261 -0
- package/lib/websocket/structures/timeout.d.ts +20 -0
- package/lib/websocket/structures/timeout.js +75 -0
- package/package.json +70 -0
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.DiscordBase = void 0;
|
|
4
|
+
const Base_1 = require("./Base");
|
|
5
|
+
const functions_1 = require("./functions");
|
|
6
|
+
class DiscordBase extends Base_1.Base {
|
|
7
|
+
id;
|
|
8
|
+
constructor(client,
|
|
9
|
+
/** Unique ID of the object */
|
|
10
|
+
data) {
|
|
11
|
+
super(client);
|
|
12
|
+
this.id = data.id;
|
|
13
|
+
this.__patchThis(data);
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* Create a timestamp for the current object.
|
|
17
|
+
*/
|
|
18
|
+
get createdTimestamp() {
|
|
19
|
+
return Number((0, functions_1.snowflakeToTimestamp)(this.id));
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* createdAt gets the creation Date instace of the current object.
|
|
23
|
+
*/
|
|
24
|
+
get createdAt() {
|
|
25
|
+
return new Date(this.createdTimestamp);
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
exports.DiscordBase = DiscordBase;
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
import { PermissionFlagsBits } from 'discord-api-types/v10';
|
|
2
|
+
import { BitField } from './BitField';
|
|
3
|
+
export declare class PermissionsBitField extends BitField<typeof PermissionFlagsBits> {
|
|
4
|
+
Flags: {
|
|
5
|
+
readonly CreateInstantInvite: bigint;
|
|
6
|
+
readonly KickMembers: bigint;
|
|
7
|
+
readonly BanMembers: bigint;
|
|
8
|
+
readonly Administrator: bigint;
|
|
9
|
+
readonly ManageChannels: bigint;
|
|
10
|
+
readonly ManageGuild: bigint;
|
|
11
|
+
readonly AddReactions: bigint;
|
|
12
|
+
readonly ViewAuditLog: bigint;
|
|
13
|
+
readonly PrioritySpeaker: bigint;
|
|
14
|
+
readonly Stream: bigint;
|
|
15
|
+
readonly ViewChannel: bigint;
|
|
16
|
+
readonly SendMessages: bigint;
|
|
17
|
+
readonly SendTTSMessages: bigint;
|
|
18
|
+
readonly ManageMessages: bigint;
|
|
19
|
+
readonly EmbedLinks: bigint;
|
|
20
|
+
readonly AttachFiles: bigint;
|
|
21
|
+
readonly ReadMessageHistory: bigint;
|
|
22
|
+
readonly MentionEveryone: bigint;
|
|
23
|
+
readonly UseExternalEmojis: bigint;
|
|
24
|
+
readonly ViewGuildInsights: bigint;
|
|
25
|
+
readonly Connect: bigint;
|
|
26
|
+
readonly Speak: bigint;
|
|
27
|
+
readonly MuteMembers: bigint;
|
|
28
|
+
readonly DeafenMembers: bigint;
|
|
29
|
+
readonly MoveMembers: bigint;
|
|
30
|
+
readonly UseVAD: bigint;
|
|
31
|
+
readonly ChangeNickname: bigint;
|
|
32
|
+
readonly ManageNicknames: bigint;
|
|
33
|
+
readonly ManageRoles: bigint;
|
|
34
|
+
readonly ManageWebhooks: bigint;
|
|
35
|
+
readonly ManageEmojisAndStickers: bigint;
|
|
36
|
+
readonly ManageGuildExpressions: bigint;
|
|
37
|
+
readonly UseApplicationCommands: bigint;
|
|
38
|
+
readonly RequestToSpeak: bigint;
|
|
39
|
+
readonly ManageEvents: bigint;
|
|
40
|
+
readonly ManageThreads: bigint;
|
|
41
|
+
readonly CreatePublicThreads: bigint;
|
|
42
|
+
readonly CreatePrivateThreads: bigint;
|
|
43
|
+
readonly UseExternalStickers: bigint;
|
|
44
|
+
readonly SendMessagesInThreads: bigint;
|
|
45
|
+
readonly UseEmbeddedActivities: bigint;
|
|
46
|
+
readonly ModerateMembers: bigint;
|
|
47
|
+
readonly ViewCreatorMonetizationAnalytics: bigint;
|
|
48
|
+
readonly UseSoundboard: bigint;
|
|
49
|
+
readonly CreateGuildExpressions: bigint;
|
|
50
|
+
readonly CreateEvents: bigint;
|
|
51
|
+
readonly UseExternalSounds: bigint;
|
|
52
|
+
readonly SendVoiceMessages: bigint;
|
|
53
|
+
};
|
|
54
|
+
}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.PermissionsBitField = void 0;
|
|
4
|
+
const v10_1 = require("discord-api-types/v10");
|
|
5
|
+
const BitField_1 = require("./BitField");
|
|
6
|
+
class PermissionsBitField extends BitField_1.BitField {
|
|
7
|
+
Flags = v10_1.PermissionFlagsBits;
|
|
8
|
+
}
|
|
9
|
+
exports.PermissionsBitField = PermissionsBitField;
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { Cache } from '../../cache';
|
|
2
|
+
import type { APIPartialEmoji, TypeArray } from '../../common';
|
|
3
|
+
import type { EmojiResolvable } from '../../common/types/resolvables';
|
|
4
|
+
/** * Convert a timestamp to a snowflake. * @param timestamp The timestamp to convert. * @returns The snowflake. */
|
|
5
|
+
export declare function snowflakeToTimestamp(id: string): bigint;
|
|
6
|
+
export declare function channelLink(channelId: string, guildId?: string): string;
|
|
7
|
+
export declare function messageLink(channelId: string, messageId: string, guildId?: string): string;
|
|
8
|
+
export declare function resolvePartialEmoji(emoji: EmojiResolvable): APIPartialEmoji | undefined;
|
|
9
|
+
export declare function resolveEmoji(emoji: EmojiResolvable, cache: Cache): Promise<APIPartialEmoji | undefined>;
|
|
10
|
+
export declare function encodeEmoji(rawEmoji: APIPartialEmoji): string;
|
|
11
|
+
export declare function hasProps<T extends Record<any, any>>(target: T, props: TypeArray<keyof T>): boolean;
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.hasProps = exports.encodeEmoji = exports.resolveEmoji = exports.resolvePartialEmoji = exports.messageLink = exports.channelLink = exports.snowflakeToTimestamp = void 0;
|
|
4
|
+
const common_1 = require("../../common");
|
|
5
|
+
/** * Convert a timestamp to a snowflake. * @param timestamp The timestamp to convert. * @returns The snowflake. */
|
|
6
|
+
function snowflakeToTimestamp(id) {
|
|
7
|
+
return (BigInt(id) >> 22n) + common_1.DiscordEpoch;
|
|
8
|
+
}
|
|
9
|
+
exports.snowflakeToTimestamp = snowflakeToTimestamp;
|
|
10
|
+
function channelLink(channelId, guildId) {
|
|
11
|
+
return `https://discord.com/channels/${guildId ?? '@me'}/${channelId}`;
|
|
12
|
+
}
|
|
13
|
+
exports.channelLink = channelLink;
|
|
14
|
+
function messageLink(channelId, messageId, guildId) {
|
|
15
|
+
return `${channelLink(channelId, guildId)}/${messageId}`;
|
|
16
|
+
}
|
|
17
|
+
exports.messageLink = messageLink;
|
|
18
|
+
function resolvePartialEmoji(emoji) {
|
|
19
|
+
if (typeof emoji === 'string') {
|
|
20
|
+
const groups = emoji.match(common_1.FormattingPatterns.Emoji)?.groups;
|
|
21
|
+
if (groups) {
|
|
22
|
+
return { animated: !!groups.animated, name: groups.name, id: groups.id };
|
|
23
|
+
}
|
|
24
|
+
if (emoji.includes('%')) {
|
|
25
|
+
emoji = encodeURIComponent(emoji);
|
|
26
|
+
}
|
|
27
|
+
if (!emoji.includes(':') && !emoji.match(/\d{17,20}/g)) {
|
|
28
|
+
return { name: emoji, id: null };
|
|
29
|
+
}
|
|
30
|
+
return;
|
|
31
|
+
}
|
|
32
|
+
if (!(emoji.id && emoji.name))
|
|
33
|
+
return;
|
|
34
|
+
return { id: emoji.id, name: emoji.name, animated: !!emoji.animated };
|
|
35
|
+
}
|
|
36
|
+
exports.resolvePartialEmoji = resolvePartialEmoji;
|
|
37
|
+
async function resolveEmoji(emoji, cache) {
|
|
38
|
+
const partial = resolvePartialEmoji(emoji);
|
|
39
|
+
if (partial)
|
|
40
|
+
return partial;
|
|
41
|
+
if (typeof emoji === 'string') {
|
|
42
|
+
if (!emoji.match(/\d{17,20}/g))
|
|
43
|
+
return;
|
|
44
|
+
const fromCache = await cache.emojis?.get(emoji);
|
|
45
|
+
return fromCache && { animated: fromCache.animated, id: fromCache.id, name: fromCache.name };
|
|
46
|
+
}
|
|
47
|
+
const fromCache = await cache.emojis?.get(emoji.id);
|
|
48
|
+
if (fromCache)
|
|
49
|
+
return { animated: fromCache.animated, id: fromCache.id, name: fromCache.name };
|
|
50
|
+
return;
|
|
51
|
+
}
|
|
52
|
+
exports.resolveEmoji = resolveEmoji;
|
|
53
|
+
function encodeEmoji(rawEmoji) {
|
|
54
|
+
return rawEmoji.id ? `${rawEmoji.name}:${rawEmoji.id}` : `${rawEmoji.name}`;
|
|
55
|
+
}
|
|
56
|
+
exports.encodeEmoji = encodeEmoji;
|
|
57
|
+
function hasProps(target, props) {
|
|
58
|
+
if (Array.isArray(props)) {
|
|
59
|
+
return props.every(x => hasProps(target, x));
|
|
60
|
+
}
|
|
61
|
+
if (!(props in target)) {
|
|
62
|
+
return false;
|
|
63
|
+
}
|
|
64
|
+
if (typeof target[props] === 'string' && !target[props].length) {
|
|
65
|
+
return false;
|
|
66
|
+
}
|
|
67
|
+
return true;
|
|
68
|
+
}
|
|
69
|
+
exports.hasProps = hasProps;
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
export * from './AnonymousGuild';
|
|
2
|
+
export * from './AutoModerationRule';
|
|
3
|
+
export * from './ClientUser';
|
|
4
|
+
export * from './Guild';
|
|
5
|
+
export * from './GuildEmoji';
|
|
6
|
+
export * from './GuildMember';
|
|
7
|
+
export * from './GuildPreview';
|
|
8
|
+
export * from './GuildRole';
|
|
9
|
+
export * from './GuildTemplate';
|
|
10
|
+
export * from './Interaction';
|
|
11
|
+
export * from './Message';
|
|
12
|
+
export * from './Sticker';
|
|
13
|
+
export * from './User';
|
|
14
|
+
export * from './Webhook';
|
|
15
|
+
export * from './channels';
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./AnonymousGuild"), exports);
|
|
18
|
+
__exportStar(require("./AutoModerationRule"), exports);
|
|
19
|
+
__exportStar(require("./ClientUser"), exports);
|
|
20
|
+
__exportStar(require("./Guild"), exports);
|
|
21
|
+
__exportStar(require("./GuildEmoji"), exports);
|
|
22
|
+
__exportStar(require("./GuildMember"), exports);
|
|
23
|
+
__exportStar(require("./GuildPreview"), exports);
|
|
24
|
+
__exportStar(require("./GuildRole"), exports);
|
|
25
|
+
__exportStar(require("./GuildTemplate"), exports);
|
|
26
|
+
__exportStar(require("./Interaction"), exports);
|
|
27
|
+
__exportStar(require("./Message"), exports);
|
|
28
|
+
__exportStar(require("./Sticker"), exports);
|
|
29
|
+
__exportStar(require("./User"), exports);
|
|
30
|
+
__exportStar(require("./Webhook"), exports);
|
|
31
|
+
__exportStar(require("./channels"), exports);
|
|
@@ -0,0 +1,128 @@
|
|
|
1
|
+
import type { APIAuditLogEntry, APIAutoModerationRule, APIChannel, APIEntitlement, APIGuild, APIGuildMember, APIGuildScheduledEvent, APIStageInstance, APIUser, GatewayActivity, GatewayAutoModerationActionExecutionDispatchData, GatewayChannelPinsUpdateDispatchData, GatewayChannelUpdateDispatchData, GatewayDispatchEvents, GatewayGuildBanAddDispatchData, GatewayGuildBanRemoveDispatchData, GatewayGuildCreateDispatchData, GatewayGuildDeleteDispatchData, GatewayGuildEmojisUpdateDispatchData, GatewayGuildIntegrationsUpdateDispatchData, GatewayGuildMemberRemoveDispatchData, GatewayGuildMemberUpdateDispatchData, GatewayGuildMembersChunkDispatchData, GatewayGuildRoleCreateDispatchData, GatewayGuildRoleDeleteDispatchData, GatewayGuildRoleUpdateDispatchData, GatewayGuildScheduledEventUserRemoveDispatchData, GatewayGuildStickersUpdateDispatchData, GatewayIntegrationCreateDispatchData, GatewayIntegrationDeleteDispatchData, GatewayInteractionCreateDispatchData, GatewayInviteCreateDispatchData, GatewayInviteDeleteDispatchData, GatewayMessageCreateDispatchData, GatewayMessageDeleteBulkDispatchData, GatewayMessageDeleteDispatchData, GatewayMessageReactionAddDispatchData, GatewayMessageReactionRemoveAllDispatchData, GatewayMessageReactionRemoveDispatchData, GatewayMessageReactionRemoveEmojiDispatchData, GatewayMessageUpdateDispatchData, GatewayPresenceUpdateData, GatewayPresenceUpdateDispatchData, GatewayReadyDispatchData, GatewayRequestGuildMembersDataWithQuery, GatewayRequestGuildMembersDataWithUserIds, GatewayThreadCreateDispatchData, GatewayThreadDeleteDispatchData, GatewayThreadListSyncDispatchData, GatewayThreadMemberUpdateDispatchData, GatewayThreadMembersUpdateDispatchData, GatewayTypingStartDispatchData, GatewayUserUpdateDispatchData, GatewayVoiceServerUpdateDispatchData, GatewayVoiceStateUpdateData, GatewayWebhooksUpdateDispatchData, PresenceUpdateStatus, RestToKeys } from '../common';
|
|
2
|
+
import type { GatewayGuildMemberAddDispatchDataFixed } from '../structures';
|
|
3
|
+
/** https://discord.com/developers/docs/topics/gateway-events#update-presence */
|
|
4
|
+
export interface StatusUpdate {
|
|
5
|
+
/** The user's activities */
|
|
6
|
+
activities?: Omit<GatewayActivity, 'created_at' | 'id'>[];
|
|
7
|
+
/** The user's new status */
|
|
8
|
+
status: PresenceUpdateStatus;
|
|
9
|
+
}
|
|
10
|
+
/** https://discord.com/developers/docs/topics/gateway#update-voice-state */
|
|
11
|
+
export interface UpdateVoiceState {
|
|
12
|
+
/** id of the guild */
|
|
13
|
+
guild_id: string;
|
|
14
|
+
/** id of the voice channel client wants to join (null if disconnecting) */
|
|
15
|
+
channel_id: string | null;
|
|
16
|
+
/** Is the client muted */
|
|
17
|
+
self_mute: boolean;
|
|
18
|
+
/** Is the client deafened */
|
|
19
|
+
self_deaf: boolean;
|
|
20
|
+
}
|
|
21
|
+
export type ShardStatusUpdate = Pick<GatewayPresenceUpdateData, 'activities' | 'status'>;
|
|
22
|
+
export interface RequestGuildMembersOptions extends GatewayRequestGuildMembersDataWithQuery, GatewayRequestGuildMembersDataWithUserIds {
|
|
23
|
+
}
|
|
24
|
+
export interface GatewayMemberRequest {
|
|
25
|
+
/** The unique nonce for this request. */
|
|
26
|
+
nonce: string;
|
|
27
|
+
/** The resolver handler to run when all members arrive. */
|
|
28
|
+
resolve: (value: APIGuildMember[] | PromiseLike<APIGuildMember[]>) => void;
|
|
29
|
+
/** The members that have already arrived for this request. */
|
|
30
|
+
members: APIGuildMember[];
|
|
31
|
+
}
|
|
32
|
+
export type RawClientUser = {
|
|
33
|
+
bot: true;
|
|
34
|
+
} & APIUser;
|
|
35
|
+
export interface Events {
|
|
36
|
+
[GatewayDispatchEvents.Ready]: GatewayReadyDispatchData & {
|
|
37
|
+
user: RawClientUser;
|
|
38
|
+
};
|
|
39
|
+
[GatewayDispatchEvents.ChannelUpdate]: GatewayChannelUpdateDispatchData;
|
|
40
|
+
[GatewayDispatchEvents.AutoModerationActionExecution]: GatewayAutoModerationActionExecutionDispatchData;
|
|
41
|
+
[GatewayDispatchEvents.ThreadCreate]: GatewayThreadCreateDispatchData;
|
|
42
|
+
[GatewayDispatchEvents.ThreadDelete]: GatewayThreadDeleteDispatchData;
|
|
43
|
+
[GatewayDispatchEvents.ThreadUpdate]: GatewayThreadDeleteDispatchData;
|
|
44
|
+
[GatewayDispatchEvents.ThreadListSync]: GatewayThreadListSyncDispatchData;
|
|
45
|
+
[GatewayDispatchEvents.ThreadMemberUpdate]: GatewayThreadMemberUpdateDispatchData;
|
|
46
|
+
[GatewayDispatchEvents.ThreadMembersUpdate]: GatewayThreadMembersUpdateDispatchData;
|
|
47
|
+
[GatewayDispatchEvents.ChannelPinsUpdate]: GatewayChannelPinsUpdateDispatchData;
|
|
48
|
+
[GatewayDispatchEvents.GuildCreate]: GatewayGuildCreateDispatchData;
|
|
49
|
+
[GatewayDispatchEvents.GuildUpdate]: APIGuild;
|
|
50
|
+
[GatewayDispatchEvents.GuildDelete]: GatewayGuildDeleteDispatchData;
|
|
51
|
+
[GatewayDispatchEvents.GuildAuditLogEntryCreate]: APIAuditLogEntry;
|
|
52
|
+
[GatewayDispatchEvents.GuildBanAdd]: GatewayGuildBanAddDispatchData;
|
|
53
|
+
[GatewayDispatchEvents.GuildBanRemove]: GatewayGuildBanRemoveDispatchData;
|
|
54
|
+
[GatewayDispatchEvents.GuildEmojisUpdate]: GatewayGuildEmojisUpdateDispatchData;
|
|
55
|
+
[GatewayDispatchEvents.GuildStickersUpdate]: GatewayGuildStickersUpdateDispatchData;
|
|
56
|
+
[GatewayDispatchEvents.GuildIntegrationsUpdate]: GatewayGuildIntegrationsUpdateDispatchData;
|
|
57
|
+
[GatewayDispatchEvents.GuildMemberAdd]: GatewayGuildMemberAddDispatchDataFixed<boolean>;
|
|
58
|
+
[GatewayDispatchEvents.GuildMemberRemove]: GatewayGuildMemberRemoveDispatchData;
|
|
59
|
+
[GatewayDispatchEvents.GuildMemberUpdate]: GatewayGuildMemberUpdateDispatchData;
|
|
60
|
+
[GatewayDispatchEvents.GuildMembersChunk]: GatewayGuildMembersChunkDispatchData;
|
|
61
|
+
[GatewayDispatchEvents.GuildRoleCreate]: GatewayGuildRoleCreateDispatchData;
|
|
62
|
+
[GatewayDispatchEvents.GuildRoleUpdate]: GatewayGuildRoleUpdateDispatchData;
|
|
63
|
+
[GatewayDispatchEvents.GuildRoleDelete]: GatewayGuildRoleDeleteDispatchData;
|
|
64
|
+
[GatewayDispatchEvents.IntegrationDelete]: GatewayIntegrationDeleteDispatchData;
|
|
65
|
+
[GatewayDispatchEvents.InviteCreate]: GatewayInviteCreateDispatchData;
|
|
66
|
+
[GatewayDispatchEvents.InviteDelete]: GatewayInviteDeleteDispatchData;
|
|
67
|
+
[GatewayDispatchEvents.MessageCreate]: GatewayMessageCreateDispatchData;
|
|
68
|
+
[GatewayDispatchEvents.MessageUpdate]: GatewayMessageUpdateDispatchData;
|
|
69
|
+
[GatewayDispatchEvents.MessageDelete]: GatewayMessageDeleteDispatchData;
|
|
70
|
+
[GatewayDispatchEvents.MessageDeleteBulk]: GatewayMessageDeleteBulkDispatchData;
|
|
71
|
+
[GatewayDispatchEvents.MessageReactionAdd]: GatewayMessageReactionAddDispatchData;
|
|
72
|
+
[GatewayDispatchEvents.MessageReactionRemove]: GatewayMessageReactionRemoveDispatchData;
|
|
73
|
+
[GatewayDispatchEvents.MessageReactionRemoveAll]: GatewayMessageReactionRemoveAllDispatchData;
|
|
74
|
+
[GatewayDispatchEvents.MessageReactionRemoveEmoji]: GatewayMessageReactionRemoveEmojiDispatchData;
|
|
75
|
+
[GatewayDispatchEvents.PresenceUpdate]: GatewayPresenceUpdateDispatchData;
|
|
76
|
+
[GatewayDispatchEvents.TypingStart]: GatewayTypingStartDispatchData;
|
|
77
|
+
[GatewayDispatchEvents.UserUpdate]: GatewayUserUpdateDispatchData;
|
|
78
|
+
[GatewayDispatchEvents.VoiceStateUpdate]: GatewayVoiceStateUpdateData;
|
|
79
|
+
[GatewayDispatchEvents.VoiceServerUpdate]: GatewayVoiceServerUpdateDispatchData;
|
|
80
|
+
[GatewayDispatchEvents.WebhooksUpdate]: GatewayWebhooksUpdateDispatchData;
|
|
81
|
+
[GatewayDispatchEvents.InteractionCreate]: GatewayInteractionCreateDispatchData;
|
|
82
|
+
}
|
|
83
|
+
export type StageSameEvents = RestToKeys<[
|
|
84
|
+
APIStageInstance,
|
|
85
|
+
GatewayDispatchEvents.StageInstanceCreate,
|
|
86
|
+
GatewayDispatchEvents.StageInstanceUpdate,
|
|
87
|
+
GatewayDispatchEvents.StageInstanceDelete
|
|
88
|
+
]>;
|
|
89
|
+
export type IntegrationSameEvents = RestToKeys<[
|
|
90
|
+
GatewayIntegrationCreateDispatchData,
|
|
91
|
+
GatewayDispatchEvents.IntegrationCreate,
|
|
92
|
+
GatewayDispatchEvents.IntegrationUpdate
|
|
93
|
+
]>;
|
|
94
|
+
export type GuildScheduledUserSameEvents = RestToKeys<[
|
|
95
|
+
GatewayGuildScheduledEventUserRemoveDispatchData,
|
|
96
|
+
GatewayDispatchEvents.GuildScheduledEventUserRemove,
|
|
97
|
+
GatewayDispatchEvents.GuildScheduledEventUserAdd
|
|
98
|
+
]>;
|
|
99
|
+
export type GuildScheduledSameEvents = RestToKeys<[
|
|
100
|
+
APIGuildScheduledEvent,
|
|
101
|
+
GatewayDispatchEvents.GuildScheduledEventCreate,
|
|
102
|
+
GatewayDispatchEvents.GuildScheduledEventDelete,
|
|
103
|
+
GatewayDispatchEvents.GuildScheduledEventUpdate
|
|
104
|
+
]>;
|
|
105
|
+
export type ChannelSameEvents = RestToKeys<[
|
|
106
|
+
APIChannel,
|
|
107
|
+
GatewayDispatchEvents.ChannelCreate,
|
|
108
|
+
GatewayDispatchEvents.ChannelDelete,
|
|
109
|
+
GatewayDispatchEvents.ChannelUpdate
|
|
110
|
+
]>;
|
|
111
|
+
export type AutoModetaractionRuleEvents = RestToKeys<[
|
|
112
|
+
APIAutoModerationRule,
|
|
113
|
+
GatewayDispatchEvents.AutoModerationRuleCreate,
|
|
114
|
+
GatewayDispatchEvents.AutoModerationRuleDelete,
|
|
115
|
+
GatewayDispatchEvents.AutoModerationRuleUpdate
|
|
116
|
+
]>;
|
|
117
|
+
export type EntitlementEvents = RestToKeys<[
|
|
118
|
+
APIEntitlement,
|
|
119
|
+
GatewayDispatchEvents.EntitlementCreate,
|
|
120
|
+
GatewayDispatchEvents.EntitlementDelete,
|
|
121
|
+
GatewayDispatchEvents.EntitlementUpdate
|
|
122
|
+
]>;
|
|
123
|
+
export type NormalizeEvents = Events & AutoModetaractionRuleEvents & ChannelSameEvents & GuildScheduledSameEvents & GuildScheduledUserSameEvents & IntegrationSameEvents & EntitlementEvents & StageSameEvents & {
|
|
124
|
+
RAW: GatewayDispatchEvents;
|
|
125
|
+
};
|
|
126
|
+
export type GatewayEvents = {
|
|
127
|
+
[x in keyof NormalizeEvents]: NormalizeEvents[x];
|
|
128
|
+
};
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
/// <reference types="node" />
|
|
2
|
+
import type { ShardManagerOptions, WorkerManagerOptions } from '../discord';
|
|
3
|
+
declare const COMPRESS = false;
|
|
4
|
+
declare const properties: {
|
|
5
|
+
os: NodeJS.Platform;
|
|
6
|
+
browser: string;
|
|
7
|
+
device: string;
|
|
8
|
+
};
|
|
9
|
+
declare const ShardManagerDefaults: Partial<ShardManagerOptions>;
|
|
10
|
+
declare const WorkerManagerDefaults: Partial<WorkerManagerOptions>;
|
|
11
|
+
export interface IdentifyProperties {
|
|
12
|
+
/**
|
|
13
|
+
* Operating system the shard runs on.
|
|
14
|
+
* @default "darwin" | "linux" | "windows"
|
|
15
|
+
*/
|
|
16
|
+
os: string;
|
|
17
|
+
/**
|
|
18
|
+
* The "browser" where this shard is running on.
|
|
19
|
+
*/
|
|
20
|
+
browser: string;
|
|
21
|
+
/**
|
|
22
|
+
* The device on which the shard is running.
|
|
23
|
+
*/
|
|
24
|
+
device: string;
|
|
25
|
+
}
|
|
26
|
+
export { COMPRESS, ShardManagerDefaults, WorkerManagerDefaults, properties };
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.properties = exports.WorkerManagerDefaults = exports.ShardManagerDefaults = exports.COMPRESS = void 0;
|
|
4
|
+
const COMPRESS = false;
|
|
5
|
+
exports.COMPRESS = COMPRESS;
|
|
6
|
+
const properties = {
|
|
7
|
+
os: process.platform,
|
|
8
|
+
browser: 'Seyfert',
|
|
9
|
+
device: 'Seyfert',
|
|
10
|
+
};
|
|
11
|
+
exports.properties = properties;
|
|
12
|
+
const ShardManagerDefaults = {
|
|
13
|
+
totalShards: 1,
|
|
14
|
+
spawnShardDelay: 5300,
|
|
15
|
+
debug: false,
|
|
16
|
+
intents: 0,
|
|
17
|
+
properties,
|
|
18
|
+
version: 10,
|
|
19
|
+
handlePayload: (shardId, packet) => {
|
|
20
|
+
console.info(`Packet ${packet.t} on shard ${shardId}`);
|
|
21
|
+
},
|
|
22
|
+
};
|
|
23
|
+
exports.ShardManagerDefaults = ShardManagerDefaults;
|
|
24
|
+
const WorkerManagerDefaults = {
|
|
25
|
+
...ShardManagerDefaults,
|
|
26
|
+
shardsPerWorker: 32,
|
|
27
|
+
handlePayload: (shardId, workerId, packet) => {
|
|
28
|
+
console.info(`Packet ${packet.t} on shard ${shardId} worker ${workerId}`);
|
|
29
|
+
},
|
|
30
|
+
};
|
|
31
|
+
exports.WorkerManagerDefaults = WorkerManagerDefaults;
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import NodeWebSocket from 'ws';
|
|
2
|
+
export declare class BaseSocket {
|
|
3
|
+
private internal;
|
|
4
|
+
constructor(kind: 'ws' | 'bun', url: string);
|
|
5
|
+
set onopen(callback: NodeWebSocket['onopen']);
|
|
6
|
+
set onmessage(callback: NodeWebSocket['onmessage']);
|
|
7
|
+
set onclose(callback: NodeWebSocket['onclose']);
|
|
8
|
+
set onerror(callback: NodeWebSocket['onerror']);
|
|
9
|
+
send(data: string): void;
|
|
10
|
+
close(...args: Parameters<NodeWebSocket['close']>): void;
|
|
11
|
+
get readyState(): number;
|
|
12
|
+
}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.BaseSocket = void 0;
|
|
7
|
+
const ws_1 = __importDefault(require("ws"));
|
|
8
|
+
// import UWebSocket from 'uWebSockets.js';
|
|
9
|
+
class BaseSocket {
|
|
10
|
+
internal;
|
|
11
|
+
constructor(kind, url) {
|
|
12
|
+
this.internal = kind === 'ws' ? new ws_1.default(url) : new WebSocket(url);
|
|
13
|
+
}
|
|
14
|
+
set onopen(callback) {
|
|
15
|
+
this.internal.onopen = callback;
|
|
16
|
+
}
|
|
17
|
+
set onmessage(callback) {
|
|
18
|
+
this.internal.onmessage = callback;
|
|
19
|
+
}
|
|
20
|
+
set onclose(callback) {
|
|
21
|
+
this.internal.onclose = callback;
|
|
22
|
+
}
|
|
23
|
+
set onerror(callback) {
|
|
24
|
+
this.internal.onerror = callback;
|
|
25
|
+
}
|
|
26
|
+
send(data) {
|
|
27
|
+
return this.internal.send(data);
|
|
28
|
+
}
|
|
29
|
+
close(...args) {
|
|
30
|
+
// @ts-expect-error
|
|
31
|
+
return this.internal.close(...args);
|
|
32
|
+
}
|
|
33
|
+
get readyState() {
|
|
34
|
+
return this.internal.readyState;
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
exports.BaseSocket = BaseSocket;
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
/// <reference types="node" />
|
|
2
|
+
/// <reference types="node" />
|
|
3
|
+
/// <reference types="node" />
|
|
4
|
+
/// <reference types="node" />
|
|
5
|
+
/// <reference types="node" />
|
|
6
|
+
import type { APIUser, GatewayGuildMemberUpdateDispatchData } from 'discord-api-types/v10';
|
|
7
|
+
export declare class MemberUpdateHandler {
|
|
8
|
+
guildMemberUpdate: Map<string, {
|
|
9
|
+
timeout: NodeJS.Timeout;
|
|
10
|
+
member: GatewayGuildMemberUpdateDispatchData;
|
|
11
|
+
}>;
|
|
12
|
+
check(member: GatewayGuildMemberUpdateDispatchData): boolean;
|
|
13
|
+
setMember(member: GatewayGuildMemberUpdateDispatchData): void;
|
|
14
|
+
membersEquals(old: GatewayGuildMemberUpdateDispatchData, member: GatewayGuildMemberUpdateDispatchData): boolean;
|
|
15
|
+
usersEqual(old: APIUser, user: APIUser): boolean;
|
|
16
|
+
}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.MemberUpdateHandler = void 0;
|
|
4
|
+
class MemberUpdateHandler {
|
|
5
|
+
guildMemberUpdate = new Map();
|
|
6
|
+
check(member) {
|
|
7
|
+
if (!this.guildMemberUpdate.has(member.user.id)) {
|
|
8
|
+
this.setMember(member);
|
|
9
|
+
return true;
|
|
10
|
+
}
|
|
11
|
+
const data = this.guildMemberUpdate.get(member.user.id);
|
|
12
|
+
if (this.usersEqual(data.member.user, member.user)) {
|
|
13
|
+
return this.membersEquals(data.member, member);
|
|
14
|
+
}
|
|
15
|
+
clearTimeout(data.timeout);
|
|
16
|
+
this.setMember(member);
|
|
17
|
+
return true;
|
|
18
|
+
}
|
|
19
|
+
setMember(member) {
|
|
20
|
+
this.guildMemberUpdate.set(member.user.id, {
|
|
21
|
+
member,
|
|
22
|
+
timeout: setTimeout(() => {
|
|
23
|
+
this.guildMemberUpdate.delete(member.user.id);
|
|
24
|
+
}, 1.5e3),
|
|
25
|
+
});
|
|
26
|
+
}
|
|
27
|
+
membersEquals(old, member) {
|
|
28
|
+
return (old.joined_at === member.joined_at &&
|
|
29
|
+
old.nick === member.nick &&
|
|
30
|
+
old.avatar === member.avatar &&
|
|
31
|
+
old.pending === member.pending &&
|
|
32
|
+
old.communication_disabled_until === member.communication_disabled_until &&
|
|
33
|
+
old.flags === member.flags &&
|
|
34
|
+
(old.roles === member.roles ||
|
|
35
|
+
(old.roles.length === member.roles.length && old.roles.every((role, i) => role === member.roles[i]))));
|
|
36
|
+
}
|
|
37
|
+
usersEqual(old, user) {
|
|
38
|
+
return (old.username === user.username &&
|
|
39
|
+
old.discriminator === user.discriminator &&
|
|
40
|
+
old.global_name === user.global_name &&
|
|
41
|
+
old.avatar === user.avatar &&
|
|
42
|
+
old.public_flags === user.public_flags &&
|
|
43
|
+
old.banner === user.banner &&
|
|
44
|
+
old.accent_color === user.accent_color);
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
exports.MemberUpdateHandler = MemberUpdateHandler;
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
/// <reference types="node" />
|
|
2
|
+
/// <reference types="node" />
|
|
3
|
+
/// <reference types="node" />
|
|
4
|
+
/// <reference types="node" />
|
|
5
|
+
/// <reference types="node" />
|
|
6
|
+
import type { APIUser, GatewayActivity, GatewayPresenceUpdateDispatchData } from 'discord-api-types/v10';
|
|
7
|
+
type FixedGatewayPresenceUpdateDispatchData = (Omit<GatewayPresenceUpdateDispatchData, 'user'> & {
|
|
8
|
+
user_id: string;
|
|
9
|
+
user: undefined;
|
|
10
|
+
}) | (Omit<GatewayPresenceUpdateDispatchData, 'user'> & {
|
|
11
|
+
user: Partial<APIUser> & Pick<APIUser, 'id'>;
|
|
12
|
+
user_id: undefined;
|
|
13
|
+
});
|
|
14
|
+
export declare class PresenceUpdateHandler {
|
|
15
|
+
presenceUpdate: Map<string, {
|
|
16
|
+
timeout: NodeJS.Timeout;
|
|
17
|
+
presence: FixedGatewayPresenceUpdateDispatchData;
|
|
18
|
+
}>;
|
|
19
|
+
check(presence: FixedGatewayPresenceUpdateDispatchData): boolean;
|
|
20
|
+
setPresence(presence: FixedGatewayPresenceUpdateDispatchData): void;
|
|
21
|
+
presenceEquals(oldPresence: FixedGatewayPresenceUpdateDispatchData, newPresence: FixedGatewayPresenceUpdateDispatchData): boolean | undefined;
|
|
22
|
+
activityEquals(oldActivity: GatewayActivity, newActivity: GatewayActivity): boolean;
|
|
23
|
+
}
|
|
24
|
+
export {};
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.PresenceUpdateHandler = void 0;
|
|
4
|
+
class PresenceUpdateHandler {
|
|
5
|
+
presenceUpdate = new Map();
|
|
6
|
+
check(presence) {
|
|
7
|
+
if (!this.presenceUpdate.has(presence.user?.id ?? presence.user_id)) {
|
|
8
|
+
this.setPresence(presence);
|
|
9
|
+
return true;
|
|
10
|
+
}
|
|
11
|
+
const data = this.presenceUpdate.get(presence.user?.id ?? presence.user_id);
|
|
12
|
+
if (this.presenceEquals(data.presence, presence)) {
|
|
13
|
+
return false;
|
|
14
|
+
}
|
|
15
|
+
clearTimeout(data.timeout);
|
|
16
|
+
this.setPresence(presence);
|
|
17
|
+
return true;
|
|
18
|
+
}
|
|
19
|
+
setPresence(presence) {
|
|
20
|
+
this.presenceUpdate.set(presence.user?.id ?? presence.user_id, {
|
|
21
|
+
presence,
|
|
22
|
+
timeout: setTimeout(() => {
|
|
23
|
+
this.presenceUpdate.delete(presence.user?.id ?? presence.user_id);
|
|
24
|
+
}, 1.5e3),
|
|
25
|
+
});
|
|
26
|
+
}
|
|
27
|
+
presenceEquals(oldPresence, newPresence) {
|
|
28
|
+
return (newPresence &&
|
|
29
|
+
oldPresence.status === newPresence.status &&
|
|
30
|
+
oldPresence.activities?.length === newPresence.activities?.length &&
|
|
31
|
+
oldPresence.activities?.every((activity, index) => this.activityEquals(activity, newPresence.activities?.[index])) &&
|
|
32
|
+
oldPresence.client_status?.web === newPresence.client_status?.web &&
|
|
33
|
+
oldPresence.client_status?.mobile === newPresence.client_status?.mobile &&
|
|
34
|
+
oldPresence.client_status?.desktop === newPresence.client_status?.desktop);
|
|
35
|
+
}
|
|
36
|
+
activityEquals(oldActivity, newActivity) {
|
|
37
|
+
return (oldActivity.name === newActivity.name &&
|
|
38
|
+
oldActivity.type === newActivity.type &&
|
|
39
|
+
oldActivity.url === newActivity.url &&
|
|
40
|
+
oldActivity.state === newActivity.state &&
|
|
41
|
+
oldActivity.details === newActivity.details &&
|
|
42
|
+
oldActivity.emoji?.id === newActivity.emoji?.id &&
|
|
43
|
+
oldActivity.emoji?.name === newActivity.emoji?.name);
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
exports.PresenceUpdateHandler = PresenceUpdateHandler;
|
|
File without changes
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./shard"), exports);
|
|
18
|
+
__exportStar(require("./sharder"), exports);
|
|
19
|
+
__exportStar(require("./shared"), exports);
|
|
20
|
+
__exportStar(require("./workermanager"), exports);
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
/// <reference types="node" />
|
|
2
|
+
/// <reference types="node" />
|
|
3
|
+
/// <reference types="node" />
|
|
4
|
+
/// <reference types="node" />
|
|
5
|
+
/// <reference types="node" />
|
|
6
|
+
import type { APIUser, GatewayGuildMemberUpdateDispatchData } from 'discord-api-types/v10';
|
|
7
|
+
export declare class MemberUpdateHandler {
|
|
8
|
+
guildMemberUpdate: Map<string, {
|
|
9
|
+
timeout: NodeJS.Timeout;
|
|
10
|
+
member: GatewayGuildMemberUpdateDispatchData;
|
|
11
|
+
}>;
|
|
12
|
+
check(member: GatewayGuildMemberUpdateDispatchData): boolean;
|
|
13
|
+
setMember(member: GatewayGuildMemberUpdateDispatchData): void;
|
|
14
|
+
membersEquals(old: GatewayGuildMemberUpdateDispatchData, member: GatewayGuildMemberUpdateDispatchData): boolean;
|
|
15
|
+
usersEqual(old: APIUser, user: APIUser): boolean;
|
|
16
|
+
}
|