disgroove 3.0.0-dev.72bf12 → 3.0.0-dev.7dc321a
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/dist/lib/Client.d.ts +43 -46
- package/dist/lib/Client.js +12 -6
- package/dist/lib/constants.d.ts +5 -3
- package/dist/lib/constants.js +5 -3
- package/dist/lib/gateway/Dispatcher.d.ts +104 -0
- package/dist/lib/gateway/Dispatcher.js +471 -0
- package/dist/lib/gateway/Shard.d.ts +10 -22
- package/dist/lib/gateway/Shard.js +100 -646
- package/dist/lib/gateway/Transmitter.d.ts +22 -0
- package/dist/lib/gateway/Transmitter.js +93 -0
- package/dist/lib/gateway/WebSocketManager.d.ts +22 -0
- package/dist/lib/gateway/WebSocketManager.js +93 -0
- package/dist/lib/transformers/Presences.d.ts +3 -3
- package/dist/lib/types/gateway-events.d.ts +201 -75
- package/dist/lib/utils/errors.d.ts +3 -1
- package/dist/lib/utils/errors.js +4 -0
- package/dist/lib/utils/index.d.ts +1 -0
- package/dist/lib/utils/index.js +1 -0
- package/dist/lib/utils/permissions.d.ts +2 -0
- package/dist/lib/utils/permissions.js +7 -0
- package/dist/package.json +1 -1
- package/package.json +2 -2
- package/d +0 -2268
package/dist/lib/Client.d.ts
CHANGED
|
@@ -11,7 +11,7 @@ import type { Channel, FollowedChannel, ThreadMember, Overwrite, DefaultReaction
|
|
|
11
11
|
import type { LocaleMap, snowflake, timestamp } from "./types/common";
|
|
12
12
|
import type { Emoji } from "./types/emoji";
|
|
13
13
|
import type { Entitlement } from "./types/entitlements";
|
|
14
|
-
import type {
|
|
14
|
+
import type { AutoModerationActionExecutionEvent, ChannelPinsUpdateEvent, ThreadListSyncEvent, ThreadMemberUpdateEventExtra, ThreadMembersUpdateEvent, GuildCreateEventExtra, GuildAuditLogEntryCreateExtra, GuildBanAddEvent, GuildBanRemoveEvent, GuildMemberAddEventExtra, GuildMemberRemoveEvent, GuildMemberUpdateEvent, GuildMembersChunkEvent, IntegrationCreateEventExtra, IntegrationUpdateEventExtra, IntegrationDeleteEvent, InviteCreateEvent, InviteDeleteEvent, MessageCreateEventExtra, MessageDeleteEvent, MessageDeleteBulkEvent, MessageReactionAddEvent, MessageReactionRemoveEvent, MessageReactionRemoveAllEvent, MessageReactionRemoveEmojiEvent, PresenceUpdateEvent, TypingStartEvent, VoiceServerUpdateEvent, MessagePollVoteAddEvent, MessagePollVoteRemoveEvent, GatewayPresenceUpdate, RawPayload, IdentifyConnectionProperties, VoiceChannelEffectSendEvent, GuildSoundboardSoundDeleteEvent, RateLimitedEvent } from "./types/gateway-events";
|
|
15
15
|
import type { Guild, GuildMember, WelcomeScreen, GuildWidgetSettings, Ban, Integration, GuildOnboarding, GuildPreview, GuildWidget, UnavailableGuild, OnboardingPrompt, WelcomeScreenChannel, IncidentsData } from "./types/guild";
|
|
16
16
|
import type { GuildScheduledEvent, GuildScheduledEventUser, GuildScheduledEventEntityMetadata, GuildScheduledEventRecurrenceRule } from "./types/guild-scheduled-event";
|
|
17
17
|
import type { GuildTemplate } from "./types/guild-template";
|
|
@@ -41,6 +41,7 @@ export interface GatewayOptions {
|
|
|
41
41
|
export interface ClientOptions {
|
|
42
42
|
shardsCount?: number | "auto";
|
|
43
43
|
auth?: "Bot" | "Bearer";
|
|
44
|
+
reconnect?: boolean;
|
|
44
45
|
gateway?: GatewayOptions;
|
|
45
46
|
ws?: WebSocketOptions;
|
|
46
47
|
}
|
|
@@ -53,9 +54,10 @@ export declare class Client extends EventEmitter {
|
|
|
53
54
|
intents: GatewayIntents | number;
|
|
54
55
|
shardsCount: number | "auto";
|
|
55
56
|
auth: "Bot" | "Bearer";
|
|
57
|
+
reconnect: boolean;
|
|
56
58
|
shards: Map<number, Shard>;
|
|
57
59
|
rest: RequestManager;
|
|
58
|
-
guildShardMap:
|
|
60
|
+
guildShardMap: Map<string, number>;
|
|
59
61
|
user: User | null;
|
|
60
62
|
guilds: Map<string, Guild>;
|
|
61
63
|
application: Pick<Application, "id" | "flags"> | null;
|
|
@@ -1115,13 +1117,14 @@ export declare interface Client extends EventEmitter {
|
|
|
1115
1117
|
}
|
|
1116
1118
|
export interface ClientEvents {
|
|
1117
1119
|
dispatch: [packet: RawPayload, shard: number];
|
|
1118
|
-
|
|
1120
|
+
heartbeat: [shard: number];
|
|
1121
|
+
reconnect: [shard: number];
|
|
1122
|
+
invalidSession: [shard: number];
|
|
1119
1123
|
hello: [interval: number, shard: number];
|
|
1120
|
-
|
|
1121
|
-
|
|
1122
|
-
|
|
1123
|
-
|
|
1124
|
-
invalidSession: [];
|
|
1124
|
+
heartbeatACK: [shard: number];
|
|
1125
|
+
ready: [shard: number];
|
|
1126
|
+
resumed: [shard: Number];
|
|
1127
|
+
rateLimited: [rateLimit: RateLimitedEvent, shard: number];
|
|
1125
1128
|
applicationCommandPermissionsUpdate: [
|
|
1126
1129
|
applicationCommandPermissions: GuildApplicationCommandPermissions
|
|
1127
1130
|
];
|
|
@@ -1129,40 +1132,38 @@ export interface ClientEvents {
|
|
|
1129
1132
|
autoModerationRuleUpdate: [autoModerationRule: AutoModerationRule];
|
|
1130
1133
|
autoModerationRuleDelete: [autoModerationRule: AutoModerationRule];
|
|
1131
1134
|
autoModerationActionExecution: [
|
|
1132
|
-
autoModerationExecution:
|
|
1135
|
+
autoModerationExecution: AutoModerationActionExecutionEvent
|
|
1133
1136
|
];
|
|
1134
1137
|
channelCreate: [channel: Channel];
|
|
1135
1138
|
channelUpdate: [channel: Channel];
|
|
1136
1139
|
channelDelete: [channel: Channel];
|
|
1137
|
-
channelPinsUpdate: [pins:
|
|
1140
|
+
channelPinsUpdate: [pins: ChannelPinsUpdateEvent];
|
|
1138
1141
|
threadCreate: [thread: Channel];
|
|
1139
1142
|
threadUpdate: [thread: Channel];
|
|
1140
1143
|
threadDelete: [thread: Channel];
|
|
1141
|
-
threadListSync: [sync:
|
|
1144
|
+
threadListSync: [sync: ThreadListSyncEvent];
|
|
1142
1145
|
threadMemberUpdate: [
|
|
1143
|
-
threadMember: ThreadMember &
|
|
1146
|
+
threadMember: ThreadMember & ThreadMemberUpdateEventExtra
|
|
1144
1147
|
];
|
|
1145
|
-
threadMembersUpdate: [thread:
|
|
1148
|
+
threadMembersUpdate: [thread: ThreadMembersUpdateEvent];
|
|
1146
1149
|
entitlementCreate: [entitlement: Entitlement];
|
|
1147
1150
|
entitlementUpdate: [entitlement: Entitlement];
|
|
1148
1151
|
entitlementDelete: [entitlement: Entitlement];
|
|
1149
|
-
guildCreate: [
|
|
1150
|
-
guild: (Guild & GuildCreateEventExtraFields) | UnavailableGuild
|
|
1151
|
-
];
|
|
1152
|
+
guildCreate: [guild: (Guild & GuildCreateEventExtra) | UnavailableGuild];
|
|
1152
1153
|
guildUpdate: [guild: Guild];
|
|
1153
1154
|
guildDelete: [guild: UnavailableGuild];
|
|
1154
1155
|
guildAuditLogEntryCreate: [
|
|
1155
|
-
auditLogEntry: AuditLogEntry &
|
|
1156
|
+
auditLogEntry: AuditLogEntry & GuildAuditLogEntryCreateExtra
|
|
1156
1157
|
];
|
|
1157
|
-
guildBanAdd: [ban:
|
|
1158
|
-
guildBanRemove: [ban:
|
|
1158
|
+
guildBanAdd: [ban: GuildBanAddEvent];
|
|
1159
|
+
guildBanRemove: [ban: GuildBanRemoveEvent];
|
|
1159
1160
|
guildEmojisUpdate: [emojis: Array<Emoji>, guildId: snowflake];
|
|
1160
1161
|
guildStickersUpdate: [stickers: Array<Sticker>, guildId: snowflake];
|
|
1161
1162
|
guildIntegrationsUpdate: [guildId: snowflake];
|
|
1162
|
-
guildMemberAdd: [guildMember: GuildMember &
|
|
1163
|
-
guildMemberRemove: [guildMember:
|
|
1164
|
-
guildMemberUpdate: [guildMember:
|
|
1165
|
-
guildMembersChunk: [request:
|
|
1163
|
+
guildMemberAdd: [guildMember: GuildMember & GuildMemberAddEventExtra];
|
|
1164
|
+
guildMemberRemove: [guildMember: GuildMemberRemoveEvent];
|
|
1165
|
+
guildMemberUpdate: [guildMember: GuildMemberUpdateEvent];
|
|
1166
|
+
guildMembersChunk: [request: GuildMembersChunkEvent];
|
|
1166
1167
|
guildRoleCreate: [role: Role, guildId: snowflake];
|
|
1167
1168
|
guildRoleUpdate: [role: Role, guildId: snowflake];
|
|
1168
1169
|
guildRoleDelete: [roleId: snowflake, guildId: snowflake];
|
|
@@ -1181,43 +1182,39 @@ export interface ClientEvents {
|
|
|
1181
1182
|
];
|
|
1182
1183
|
guildSoundboardSoundCreate: [sound: SoundboardSound];
|
|
1183
1184
|
guildSoundboardSoundUpdate: [sound: SoundboardSound];
|
|
1184
|
-
guildSoundboardSoundDelete: [sound:
|
|
1185
|
+
guildSoundboardSoundDelete: [sound: GuildSoundboardSoundDeleteEvent];
|
|
1185
1186
|
guildSoundboardSoundsUpdate: [
|
|
1186
1187
|
sounds: Array<SoundboardSound>,
|
|
1187
1188
|
guildId: snowflake
|
|
1188
1189
|
];
|
|
1189
1190
|
soundboardSounds: [sounds: Array<SoundboardSound>, guildId: snowflake];
|
|
1190
|
-
integrationCreate: [
|
|
1191
|
-
|
|
1192
|
-
];
|
|
1193
|
-
integrationUpdate: [
|
|
1194
|
-
integration: Integration & IntegrationUpdateEventExtraFields
|
|
1195
|
-
];
|
|
1196
|
-
integrationDelete: [integration: IntegrationDeleteEventFields];
|
|
1191
|
+
integrationCreate: [integration: Integration & IntegrationCreateEventExtra];
|
|
1192
|
+
integrationUpdate: [integration: Integration & IntegrationUpdateEventExtra];
|
|
1193
|
+
integrationDelete: [integration: IntegrationDeleteEvent];
|
|
1197
1194
|
interactionCreate: [interaction: Interaction];
|
|
1198
|
-
inviteCreate: [invite:
|
|
1199
|
-
inviteDelete: [invite:
|
|
1200
|
-
messageCreate: [message: Message &
|
|
1195
|
+
inviteCreate: [invite: InviteCreateEvent];
|
|
1196
|
+
inviteDelete: [invite: InviteDeleteEvent];
|
|
1197
|
+
messageCreate: [message: Message & MessageCreateEventExtra];
|
|
1201
1198
|
messageUpdate: [message: Message];
|
|
1202
|
-
messageDelete: [message:
|
|
1203
|
-
messageDeleteBulk: [bulk:
|
|
1204
|
-
messageReactionAdd: [reaction:
|
|
1205
|
-
messageReactionRemove: [reaction:
|
|
1206
|
-
messageReactionRemoveAll: [reaction:
|
|
1207
|
-
messageReactionRemoveEmoji: [reaction:
|
|
1208
|
-
presenceUpdate: [presence:
|
|
1199
|
+
messageDelete: [message: MessageDeleteEvent];
|
|
1200
|
+
messageDeleteBulk: [bulk: MessageDeleteBulkEvent];
|
|
1201
|
+
messageReactionAdd: [reaction: MessageReactionAddEvent];
|
|
1202
|
+
messageReactionRemove: [reaction: MessageReactionRemoveEvent];
|
|
1203
|
+
messageReactionRemoveAll: [reaction: MessageReactionRemoveAllEvent];
|
|
1204
|
+
messageReactionRemoveEmoji: [reaction: MessageReactionRemoveEmojiEvent];
|
|
1205
|
+
presenceUpdate: [presence: PresenceUpdateEvent];
|
|
1209
1206
|
stageInstanceCreate: [stageInstance: StageInstance];
|
|
1210
1207
|
stageInstanceUpdate: [stageInstance: StageInstance];
|
|
1211
1208
|
stageInstanceDelete: [stageInstance: StageInstance];
|
|
1212
1209
|
subscriptionCreate: [subscription: Subscription];
|
|
1213
1210
|
subscriptionUpdate: [subscription: Subscription];
|
|
1214
1211
|
subscriptionDelete: [subscription: Subscription];
|
|
1215
|
-
typingStart: [typing:
|
|
1212
|
+
typingStart: [typing: TypingStartEvent];
|
|
1216
1213
|
userUpdate: [user: User];
|
|
1217
|
-
voiceChannelEffectSend: [voiceEffect:
|
|
1214
|
+
voiceChannelEffectSend: [voiceEffect: VoiceChannelEffectSendEvent];
|
|
1218
1215
|
voiceStateUpdate: [voiceState: VoiceState];
|
|
1219
|
-
voiceServerUpdate: [voiceServer:
|
|
1216
|
+
voiceServerUpdate: [voiceServer: VoiceServerUpdateEvent];
|
|
1220
1217
|
webhooksUpdate: [channelId: snowflake, guildId: snowflake];
|
|
1221
|
-
messagePollVoteAdd: [vote:
|
|
1222
|
-
messagePollVoteRemove: [vote:
|
|
1218
|
+
messagePollVoteAdd: [vote: MessagePollVoteAddEvent];
|
|
1219
|
+
messagePollVoteRemove: [vote: MessagePollVoteRemoveEvent];
|
|
1223
1220
|
}
|
package/dist/lib/Client.js
CHANGED
|
@@ -18,6 +18,7 @@ class Client extends node_events_1.default {
|
|
|
18
18
|
intents;
|
|
19
19
|
shardsCount;
|
|
20
20
|
auth;
|
|
21
|
+
reconnect;
|
|
21
22
|
shards;
|
|
22
23
|
rest;
|
|
23
24
|
guildShardMap;
|
|
@@ -40,9 +41,10 @@ class Client extends node_events_1.default {
|
|
|
40
41
|
: 0;
|
|
41
42
|
this.shardsCount = options?.shardsCount ?? "auto";
|
|
42
43
|
this.auth = options?.auth ?? "Bot";
|
|
44
|
+
this.reconnect = options?.reconnect ?? true;
|
|
43
45
|
this.shards = new Map();
|
|
44
46
|
this.rest = new rest_1.RequestManager(token, this.auth);
|
|
45
|
-
this.guildShardMap =
|
|
47
|
+
this.guildShardMap = new Map();
|
|
46
48
|
this.user = null;
|
|
47
49
|
this.guilds = new Map();
|
|
48
50
|
this.application = null;
|
|
@@ -165,7 +167,7 @@ class Client extends node_events_1.default {
|
|
|
165
167
|
: this.shardsCount;
|
|
166
168
|
for (let i = 0; i < this.shardsCount; i++)
|
|
167
169
|
this.shards.set(i, new gateway_1.Shard(i, this));
|
|
168
|
-
this.shards.forEach((shard) => shard.connect(
|
|
170
|
+
this.shards.forEach((shard) => shard.connect());
|
|
169
171
|
}
|
|
170
172
|
/** https://discord.com/developers/docs/resources/entitlement#consume-an-entitlement */
|
|
171
173
|
consumeEntitlement(applicationId, entitlementId) {
|
|
@@ -876,7 +878,7 @@ class Client extends node_events_1.default {
|
|
|
876
878
|
}
|
|
877
879
|
/** https://discord.com/developers/docs/events/gateway#initiating-a-disconnect */
|
|
878
880
|
disconnect() {
|
|
879
|
-
this.shards.forEach((shard) => shard.disconnect());
|
|
881
|
+
this.shards.forEach((shard) => shard.disconnect(false));
|
|
880
882
|
}
|
|
881
883
|
/** https://discord.com/developers/docs/resources/auto-moderation#modify-auto-moderation-rule */
|
|
882
884
|
async editAutoModerationRule(guildId, autoModerationRuleId, options, reason) {
|
|
@@ -2361,7 +2363,9 @@ class Client extends node_events_1.default {
|
|
|
2361
2363
|
}
|
|
2362
2364
|
/** https://discord.com/developers/docs/topics/gateway-events#update-voice-state */
|
|
2363
2365
|
joinVoiceChannel(guildId, channelId, options) {
|
|
2364
|
-
this.shards
|
|
2366
|
+
this.shards
|
|
2367
|
+
.get(this.guildShardMap.get(guildId))
|
|
2368
|
+
.transmitter.updateVoiceState({
|
|
2365
2369
|
guildId,
|
|
2366
2370
|
channelId,
|
|
2367
2371
|
selfMute: !!options?.selfMute,
|
|
@@ -2382,7 +2386,9 @@ class Client extends node_events_1.default {
|
|
|
2382
2386
|
}
|
|
2383
2387
|
/** https://discord.com/developers/docs/topics/gateway-events#update-voice-state */
|
|
2384
2388
|
leaveVoiceChannel(guildId) {
|
|
2385
|
-
this.shards
|
|
2389
|
+
this.shards
|
|
2390
|
+
.get(this.guildShardMap.get(guildId))
|
|
2391
|
+
.transmitter.updateVoiceState({
|
|
2386
2392
|
guildId,
|
|
2387
2393
|
channelId: null,
|
|
2388
2394
|
selfMute: false,
|
|
@@ -2455,7 +2461,7 @@ class Client extends node_events_1.default {
|
|
|
2455
2461
|
}
|
|
2456
2462
|
/** https://discord.com/developers/docs/topics/gateway-events#update-presence */
|
|
2457
2463
|
setPresence(options) {
|
|
2458
|
-
this.shards.forEach((shard) => shard.updatePresence(options));
|
|
2464
|
+
this.shards.forEach((shard) => shard.transmitter.updatePresence(options));
|
|
2459
2465
|
}
|
|
2460
2466
|
/** https://discord.com/developers/docs/resources/guild-template#sync-guild-template */
|
|
2461
2467
|
async syncGuildTemplate(guildId, code) {
|
package/dist/lib/constants.d.ts
CHANGED
|
@@ -1,11 +1,13 @@
|
|
|
1
1
|
/** https://discord.com/developers/docs/reference#message-formatting-timestamp-styles */
|
|
2
2
|
export declare enum TimestampStyles {
|
|
3
3
|
ShortTime = "t",
|
|
4
|
-
|
|
4
|
+
MediumTime = "T",
|
|
5
5
|
ShortDate = "d",
|
|
6
6
|
LongDate = "D",
|
|
7
|
-
|
|
8
|
-
|
|
7
|
+
LongDateShortTime = "f",
|
|
8
|
+
FullDateShortTime = "F",
|
|
9
|
+
ShortDateShortTime = "s",
|
|
10
|
+
ShortDateMediumTime = "S",
|
|
9
11
|
RelativeTime = "R"
|
|
10
12
|
}
|
|
11
13
|
/** https://discord.com/developers/docs/reference#message-formatting-guild-navigation-types */
|
package/dist/lib/constants.js
CHANGED
|
@@ -6,11 +6,13 @@ exports.EntitlementTypes = exports.SKUFlags = exports.SKUTypes = exports.Members
|
|
|
6
6
|
var TimestampStyles;
|
|
7
7
|
(function (TimestampStyles) {
|
|
8
8
|
TimestampStyles["ShortTime"] = "t";
|
|
9
|
-
TimestampStyles["
|
|
9
|
+
TimestampStyles["MediumTime"] = "T";
|
|
10
10
|
TimestampStyles["ShortDate"] = "d";
|
|
11
11
|
TimestampStyles["LongDate"] = "D";
|
|
12
|
-
TimestampStyles["
|
|
13
|
-
TimestampStyles["
|
|
12
|
+
TimestampStyles["LongDateShortTime"] = "f";
|
|
13
|
+
TimestampStyles["FullDateShortTime"] = "F";
|
|
14
|
+
TimestampStyles["ShortDateShortTime"] = "s";
|
|
15
|
+
TimestampStyles["ShortDateMediumTime"] = "S";
|
|
14
16
|
TimestampStyles["RelativeTime"] = "R";
|
|
15
17
|
})(TimestampStyles || (exports.TimestampStyles = TimestampStyles = {}));
|
|
16
18
|
/** https://discord.com/developers/docs/reference#message-formatting-guild-navigation-types */
|
|
@@ -0,0 +1,104 @@
|
|
|
1
|
+
import { GatewayEvents } from "../constants";
|
|
2
|
+
import type { RawGuildApplicationCommandPermissions } from "../types/application-command";
|
|
3
|
+
import type { RawAuditLogEntry } from "../types/audit-log";
|
|
4
|
+
import type { RawAutoModerationRule } from "../types/auto-moderation";
|
|
5
|
+
import type { RawChannel, RawThreadMember } from "../types/channel";
|
|
6
|
+
import type { RawEntitlement } from "../types/entitlements";
|
|
7
|
+
import type { RawRateLimitedEvent, RawAutoModerationActionExecutionEvent, RawChannelPinsUpdateEvent, RawThreadListSyncEvent, RawThreadMemberUpdateEventExtra, RawThreadMembersUpdateEvent, RawGuildCreateEventExtra, RawGuildAuditLogEntryCreateExtra, RawGuildBanAddEvent, RawGuildBanRemoveEvent, RawGuildEmojisUpdateEvent, RawGuildStickersUpdateEvent, RawGuildIntegrationsUpdateEvent, RawGuildMemberAddEventExtra, RawGuildMemberRemoveEvent, RawGuildMemberUpdateEvent, RawGuildMembersChunkEvent, RawGuildRoleCreateEvent, RawGuildRoleUpdateEvent, RawGuildRoleDeleteEvent, RawGuildScheduledEventUserAddEvent, RawGuildScheduledEventUserRemoveEvent, RawGuildSoundboardSoundDeleteEvent, RawGuildSoundboardSoundsUpdateEvent, RawGuildSoundboardSoundsEvent, RawIntegrationCreateEventExtra, RawIntegrationUpdateEventExtra, RawIntegrationDeleteEvent, RawInviteCreateEvent, RawInviteDeleteEvent, RawMessageCreateEventExtra, RawMessageDeleteEvent, RawMessageDeleteBulkEvent, RawMessageReactionAddEvent, RawMessageReactionRemoveEvent, RawMessageReactionRemoveAllEvent, RawMessageReactionRemoveEmojiEvent, RawPresenceUpdateEvent, RawTypingStartEvent, RawVoiceChannelEffectSendEvent, RawVoiceServerUpdateEvent, RawWebhooksUpdateEvent, RawMessagePollVoteAddEvent, RawMessagePollVoteRemoveEvent, RawReadyEvent } from "../types/gateway-events";
|
|
8
|
+
import type { RawGuild, RawUnavailableGuild, RawGuildMember, RawIntegration } from "../types/guild";
|
|
9
|
+
import type { RawGuildScheduledEvent } from "../types/guild-scheduled-event";
|
|
10
|
+
import type { RawInteraction } from "../types/interaction";
|
|
11
|
+
import type { RawMessage } from "../types/message";
|
|
12
|
+
import type { RawSoundboardSound } from "../types/soundboard";
|
|
13
|
+
import type { RawStageInstance } from "../types/stage-instance";
|
|
14
|
+
import type { RawSubscription } from "../types/subscription";
|
|
15
|
+
import type { RawUser } from "../types/user";
|
|
16
|
+
import type { RawVoiceState } from "../types/voice";
|
|
17
|
+
import { Shard } from "./Shard";
|
|
18
|
+
export type DispatchHandler<T extends GatewayEvents> = (shard: Shard, data: DispatchEvents[T]) => void;
|
|
19
|
+
export declare class Dispatcher {
|
|
20
|
+
private shard;
|
|
21
|
+
constructor(shard: Shard);
|
|
22
|
+
dispatch<T extends GatewayEvents>(event: T, data: DispatchEvents[T]): void;
|
|
23
|
+
}
|
|
24
|
+
export declare const Handlers: {
|
|
25
|
+
[K in GatewayEvents]?: DispatchHandler<K>;
|
|
26
|
+
};
|
|
27
|
+
export interface DispatchEvents {
|
|
28
|
+
[GatewayEvents.Ready]: RawReadyEvent;
|
|
29
|
+
[GatewayEvents.Resumed]: [];
|
|
30
|
+
[GatewayEvents.RateLimited]: RawRateLimitedEvent;
|
|
31
|
+
[GatewayEvents.ApplicationCommandPermissionsUpdate]: RawGuildApplicationCommandPermissions;
|
|
32
|
+
[GatewayEvents.AutoModerationRuleCreate]: RawAutoModerationRule;
|
|
33
|
+
[GatewayEvents.AutoModerationRuleUpdate]: RawAutoModerationRule;
|
|
34
|
+
[GatewayEvents.AutoModerationRuleDelete]: RawAutoModerationRule;
|
|
35
|
+
[GatewayEvents.AutoModerationActionExecution]: RawAutoModerationActionExecutionEvent;
|
|
36
|
+
[GatewayEvents.ChannelCreate]: RawChannel;
|
|
37
|
+
[GatewayEvents.ChannelUpdate]: RawChannel;
|
|
38
|
+
[GatewayEvents.ChannelDelete]: RawChannel;
|
|
39
|
+
[GatewayEvents.ChannelPinsUpdate]: RawChannelPinsUpdateEvent;
|
|
40
|
+
[GatewayEvents.ThreadCreate]: RawChannel;
|
|
41
|
+
[GatewayEvents.ThreadUpdate]: RawChannel;
|
|
42
|
+
[GatewayEvents.ThreadDelete]: RawChannel;
|
|
43
|
+
[GatewayEvents.ThreadListSync]: RawThreadListSyncEvent;
|
|
44
|
+
[GatewayEvents.ThreadMemberUpdate]: RawThreadMember & RawThreadMemberUpdateEventExtra;
|
|
45
|
+
[GatewayEvents.ThreadMembersUpdate]: RawThreadMembersUpdateEvent;
|
|
46
|
+
[GatewayEvents.EntitlementCreate]: RawEntitlement;
|
|
47
|
+
[GatewayEvents.EntitlementUpdate]: RawEntitlement;
|
|
48
|
+
[GatewayEvents.EntitlementDelete]: RawEntitlement;
|
|
49
|
+
[GatewayEvents.GuildCreate]: (RawGuild & RawGuildCreateEventExtra) | RawUnavailableGuild;
|
|
50
|
+
[GatewayEvents.GuildUpdate]: RawGuild;
|
|
51
|
+
[GatewayEvents.GuildDelete]: RawUnavailableGuild;
|
|
52
|
+
[GatewayEvents.GuildAuditLogEntryCreate]: RawAuditLogEntry & RawGuildAuditLogEntryCreateExtra;
|
|
53
|
+
[GatewayEvents.GuildBanAdd]: RawGuildBanAddEvent;
|
|
54
|
+
[GatewayEvents.GuildBanRemove]: RawGuildBanRemoveEvent;
|
|
55
|
+
[GatewayEvents.GuildEmojisUpdate]: RawGuildEmojisUpdateEvent;
|
|
56
|
+
[GatewayEvents.GuildStickersUpdate]: RawGuildStickersUpdateEvent;
|
|
57
|
+
[GatewayEvents.GuildIntegrationsUpdate]: RawGuildIntegrationsUpdateEvent;
|
|
58
|
+
[GatewayEvents.GuildMemberAdd]: RawGuildMember & RawGuildMemberAddEventExtra;
|
|
59
|
+
[GatewayEvents.GuildMemberRemove]: RawGuildMemberRemoveEvent;
|
|
60
|
+
[GatewayEvents.GuildMemberUpdate]: RawGuildMemberUpdateEvent;
|
|
61
|
+
[GatewayEvents.GuildMembersChunk]: RawGuildMembersChunkEvent;
|
|
62
|
+
[GatewayEvents.GuildRoleCreate]: RawGuildRoleCreateEvent;
|
|
63
|
+
[GatewayEvents.GuildRoleUpdate]: RawGuildRoleUpdateEvent;
|
|
64
|
+
[GatewayEvents.GuildRoleDelete]: RawGuildRoleDeleteEvent;
|
|
65
|
+
[GatewayEvents.GuildScheduledEventCreate]: RawGuildScheduledEvent;
|
|
66
|
+
[GatewayEvents.GuildScheduledEventUpdate]: RawGuildScheduledEvent;
|
|
67
|
+
[GatewayEvents.GuildScheduledEventDelete]: RawGuildScheduledEvent;
|
|
68
|
+
[GatewayEvents.GuildScheduledEventUserAdd]: RawGuildScheduledEventUserAddEvent;
|
|
69
|
+
[GatewayEvents.GuildScheduledEventUserRemove]: RawGuildScheduledEventUserRemoveEvent;
|
|
70
|
+
[GatewayEvents.GuildSoundboardSoundCreate]: RawSoundboardSound;
|
|
71
|
+
[GatewayEvents.GuildSoundboardSoundUpdate]: RawSoundboardSound;
|
|
72
|
+
[GatewayEvents.GuildSoundboardSoundDelete]: RawGuildSoundboardSoundDeleteEvent;
|
|
73
|
+
[GatewayEvents.GuildSoundboardSoundsUpdate]: RawGuildSoundboardSoundsUpdateEvent;
|
|
74
|
+
[GatewayEvents.SoundboardSounds]: RawGuildSoundboardSoundsEvent;
|
|
75
|
+
[GatewayEvents.IntegrationCreate]: RawIntegration & RawIntegrationCreateEventExtra;
|
|
76
|
+
[GatewayEvents.IntegrationUpdate]: RawIntegration & RawIntegrationUpdateEventExtra;
|
|
77
|
+
[GatewayEvents.IntegrationDelete]: RawIntegrationDeleteEvent;
|
|
78
|
+
[GatewayEvents.InteractionCreate]: RawInteraction;
|
|
79
|
+
[GatewayEvents.InviteCreate]: RawInviteCreateEvent;
|
|
80
|
+
[GatewayEvents.InviteDelete]: RawInviteDeleteEvent;
|
|
81
|
+
[GatewayEvents.MessageCreate]: RawMessage & RawMessageCreateEventExtra;
|
|
82
|
+
[GatewayEvents.MessageUpdate]: RawMessage;
|
|
83
|
+
[GatewayEvents.MessageDelete]: RawMessageDeleteEvent;
|
|
84
|
+
[GatewayEvents.MessageDeleteBulk]: RawMessageDeleteBulkEvent;
|
|
85
|
+
[GatewayEvents.MessageReactionAdd]: RawMessageReactionAddEvent;
|
|
86
|
+
[GatewayEvents.MessageReactionRemove]: RawMessageReactionRemoveEvent;
|
|
87
|
+
[GatewayEvents.MessageReactionRemoveAll]: RawMessageReactionRemoveAllEvent;
|
|
88
|
+
[GatewayEvents.MessageReactionRemoveEmoji]: RawMessageReactionRemoveEmojiEvent;
|
|
89
|
+
[GatewayEvents.PresenceUpdate]: RawPresenceUpdateEvent;
|
|
90
|
+
[GatewayEvents.StageInstanceCreate]: RawStageInstance;
|
|
91
|
+
[GatewayEvents.StageInstanceUpdate]: RawStageInstance;
|
|
92
|
+
[GatewayEvents.StageInstanceDelete]: RawStageInstance;
|
|
93
|
+
[GatewayEvents.SubscriptionCreate]: RawSubscription;
|
|
94
|
+
[GatewayEvents.SubscriptionUpdate]: RawSubscription;
|
|
95
|
+
[GatewayEvents.SubscriptionDelete]: RawSubscription;
|
|
96
|
+
[GatewayEvents.TypingStart]: RawTypingStartEvent;
|
|
97
|
+
[GatewayEvents.UserUpdate]: RawUser;
|
|
98
|
+
[GatewayEvents.VoiceChannelEffectSend]: RawVoiceChannelEffectSendEvent;
|
|
99
|
+
[GatewayEvents.VoiceStateUpdate]: RawVoiceState;
|
|
100
|
+
[GatewayEvents.VoiceServerUpdate]: RawVoiceServerUpdateEvent;
|
|
101
|
+
[GatewayEvents.WebhooksUpdate]: RawWebhooksUpdateEvent;
|
|
102
|
+
[GatewayEvents.MessagePollVoteAdd]: RawMessagePollVoteAddEvent;
|
|
103
|
+
[GatewayEvents.MessagePollVoteRemove]: RawMessagePollVoteRemoveEvent;
|
|
104
|
+
}
|