@ovencord/discord.js 14.16.6 → 14.16.7

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 (74) hide show
  1. package/package.json +1 -1
  2. package/src/client/websocket/handlers/APPLICATION_COMMAND_PERMISSIONS_UPDATE.ts +0 -19
  3. package/src/client/websocket/handlers/AUTO_MODERATION_ACTION_EXECUTION.ts +0 -17
  4. package/src/client/websocket/handlers/AUTO_MODERATION_RULE_CREATE.ts +0 -18
  5. package/src/client/websocket/handlers/AUTO_MODERATION_RULE_DELETE.ts +0 -21
  6. package/src/client/websocket/handlers/AUTO_MODERATION_RULE_UPDATE.ts +0 -20
  7. package/src/client/websocket/handlers/CHANNEL_CREATE.ts +0 -4
  8. package/src/client/websocket/handlers/CHANNEL_DELETE.ts +0 -4
  9. package/src/client/websocket/handlers/CHANNEL_PINS_UPDATE.ts +0 -22
  10. package/src/client/websocket/handlers/CHANNEL_UPDATE.ts +0 -16
  11. package/src/client/websocket/handlers/ENTITLEMENT_CREATE.ts +0 -14
  12. package/src/client/websocket/handlers/ENTITLEMENT_DELETE.ts +0 -18
  13. package/src/client/websocket/handlers/ENTITLEMENT_UPDATE.ts +0 -16
  14. package/src/client/websocket/handlers/GUILD_AUDIT_LOG_ENTRY_CREATE.ts +0 -19
  15. package/src/client/websocket/handlers/GUILD_BAN_ADD.ts +0 -15
  16. package/src/client/websocket/handlers/GUILD_BAN_REMOVE.ts +0 -20
  17. package/src/client/websocket/handlers/GUILD_CREATE.ts +0 -34
  18. package/src/client/websocket/handlers/GUILD_DELETE.ts +0 -36
  19. package/src/client/websocket/handlers/GUILD_EMOJIS_UPDATE.ts +0 -4
  20. package/src/client/websocket/handlers/GUILD_INTEGRATIONS_UPDATE.ts +0 -15
  21. package/src/client/websocket/handlers/GUILD_MEMBERS_CHUNK.ts +0 -40
  22. package/src/client/websocket/handlers/GUILD_MEMBER_ADD.ts +0 -17
  23. package/src/client/websocket/handlers/GUILD_MEMBER_REMOVE.ts +0 -4
  24. package/src/client/websocket/handlers/GUILD_MEMBER_UPDATE.ts +0 -4
  25. package/src/client/websocket/handlers/GUILD_ROLE_CREATE.ts +0 -4
  26. package/src/client/websocket/handlers/GUILD_ROLE_DELETE.ts +0 -4
  27. package/src/client/websocket/handlers/GUILD_ROLE_UPDATE.ts +0 -21
  28. package/src/client/websocket/handlers/GUILD_SCHEDULED_EVENT_CREATE.ts +0 -17
  29. package/src/client/websocket/handlers/GUILD_SCHEDULED_EVENT_DELETE.ts +0 -4
  30. package/src/client/websocket/handlers/GUILD_SCHEDULED_EVENT_UPDATE.ts +0 -19
  31. package/src/client/websocket/handlers/GUILD_SCHEDULED_EVENT_USER_ADD.ts +0 -4
  32. package/src/client/websocket/handlers/GUILD_SCHEDULED_EVENT_USER_REMOVE.ts +0 -4
  33. package/src/client/websocket/handlers/GUILD_SOUNDBOARD_SOUNDS_UPDATE.ts +0 -24
  34. package/src/client/websocket/handlers/GUILD_SOUNDBOARD_SOUND_CREATE.ts +0 -18
  35. package/src/client/websocket/handlers/GUILD_SOUNDBOARD_SOUND_DELETE.ts +0 -4
  36. package/src/client/websocket/handlers/GUILD_SOUNDBOARD_SOUND_UPDATE.ts +0 -20
  37. package/src/client/websocket/handlers/GUILD_STICKERS_UPDATE.ts +0 -4
  38. package/src/client/websocket/handlers/GUILD_UPDATE.ts +0 -4
  39. package/src/client/websocket/handlers/INTERACTION_CREATE.ts +0 -4
  40. package/src/client/websocket/handlers/INVITE_CREATE.ts +0 -20
  41. package/src/client/websocket/handlers/INVITE_DELETE.ts +0 -23
  42. package/src/client/websocket/handlers/MESSAGE_CREATE.ts +0 -4
  43. package/src/client/websocket/handlers/MESSAGE_DELETE.ts +0 -4
  44. package/src/client/websocket/handlers/MESSAGE_DELETE_BULK.ts +0 -4
  45. package/src/client/websocket/handlers/MESSAGE_POLL_VOTE_ADD.ts +0 -4
  46. package/src/client/websocket/handlers/MESSAGE_POLL_VOTE_REMOVE.ts +0 -4
  47. package/src/client/websocket/handlers/MESSAGE_REACTION_ADD.ts +0 -4
  48. package/src/client/websocket/handlers/MESSAGE_REACTION_REMOVE.ts +0 -4
  49. package/src/client/websocket/handlers/MESSAGE_REACTION_REMOVE_ALL.ts +0 -4
  50. package/src/client/websocket/handlers/MESSAGE_REACTION_REMOVE_EMOJI.ts +0 -4
  51. package/src/client/websocket/handlers/MESSAGE_UPDATE.ts +0 -16
  52. package/src/client/websocket/handlers/PRESENCE_UPDATE.ts +0 -42
  53. package/src/client/websocket/handlers/RATE_LIMITED.ts +0 -23
  54. package/src/client/websocket/handlers/READY.ts +0 -29
  55. package/src/client/websocket/handlers/SOUNDBOARD_SOUNDS.ts +0 -24
  56. package/src/client/websocket/handlers/STAGE_INSTANCE_CREATE.ts +0 -4
  57. package/src/client/websocket/handlers/STAGE_INSTANCE_DELETE.ts +0 -4
  58. package/src/client/websocket/handlers/STAGE_INSTANCE_UPDATE.ts +0 -4
  59. package/src/client/websocket/handlers/SUBSCRIPTION_CREATE.ts +0 -14
  60. package/src/client/websocket/handlers/SUBSCRIPTION_DELETE.ts +0 -16
  61. package/src/client/websocket/handlers/SUBSCRIPTION_UPDATE.ts +0 -16
  62. package/src/client/websocket/handlers/THREAD_CREATE.ts +0 -4
  63. package/src/client/websocket/handlers/THREAD_DELETE.ts +0 -17
  64. package/src/client/websocket/handlers/THREAD_LIST_SYNC.ts +0 -50
  65. package/src/client/websocket/handlers/THREAD_MEMBERS_UPDATE.ts +0 -4
  66. package/src/client/websocket/handlers/THREAD_MEMBER_UPDATE.ts +0 -25
  67. package/src/client/websocket/handlers/THREAD_UPDATE.ts +0 -16
  68. package/src/client/websocket/handlers/TYPING_START.ts +0 -4
  69. package/src/client/websocket/handlers/USER_UPDATE.ts +0 -4
  70. package/src/client/websocket/handlers/VOICE_CHANNEL_EFFECT_SEND.ts +0 -16
  71. package/src/client/websocket/handlers/VOICE_SERVER_UPDATE.ts +0 -5
  72. package/src/client/websocket/handlers/VOICE_STATE_UPDATE.ts +0 -37
  73. package/src/client/websocket/handlers/WEBHOOKS_UPDATE.ts +0 -16
  74. package/src/client/websocket/handlers/index.ts +149 -74
@@ -1,23 +0,0 @@
1
-
2
- import { GuildInvite } from '../../../structures/GuildInvite.js';
3
- import { Events } from '../../../util/Events.js';
4
-
5
- module.exports = (client, { d: data }) => {
6
- const channel = client.channels.cache.get(data.channel_id);
7
- const guild = client.guilds.cache.get(data.guild_id);
8
- if (!channel) return;
9
-
10
- const inviteData = Object.assign(data, { channel, guild });
11
- const invite = new GuildInvite(client, inviteData);
12
-
13
- guild.invites.cache.delete(invite.code);
14
-
15
- /**
16
- * Emitted when an invite is deleted.
17
- * <info>This event requires the {@link PermissionFlagsBits.ManageChannels} permission for the channel.</info>
18
- *
19
- * @event Client#inviteDelete
20
- * @param {GuildInvite} invite The invite that was deleted
21
- */
22
- client.emit(Events.InviteDelete, invite);
23
- };
@@ -1,4 +0,0 @@
1
-
2
- module.exports = (client, packet) => {
3
- client.actions.MessageCreate.handle(packet.d);
4
- };
@@ -1,4 +0,0 @@
1
-
2
- module.exports = (client, packet) => {
3
- client.actions.MessageDelete.handle(packet.d);
4
- };
@@ -1,4 +0,0 @@
1
-
2
- module.exports = (client, packet) => {
3
- client.actions.MessageDeleteBulk.handle(packet.d);
4
- };
@@ -1,4 +0,0 @@
1
-
2
- module.exports = (client, packet) => {
3
- client.actions.MessagePollVoteAdd.handle(packet.d);
4
- };
@@ -1,4 +0,0 @@
1
-
2
- module.exports = (client, packet) => {
3
- client.actions.MessagePollVoteRemove.handle(packet.d);
4
- };
@@ -1,4 +0,0 @@
1
-
2
- module.exports = (client, packet) => {
3
- client.actions.MessageReactionAdd.handle(packet.d);
4
- };
@@ -1,4 +0,0 @@
1
-
2
- module.exports = (client, packet) => {
3
- client.actions.MessageReactionRemove.handle(packet.d);
4
- };
@@ -1,4 +0,0 @@
1
-
2
- module.exports = (client, packet) => {
3
- client.actions.MessageReactionRemoveAll.handle(packet.d);
4
- };
@@ -1,4 +0,0 @@
1
-
2
- module.exports = (client, packet) => {
3
- client.actions.MessageReactionRemoveEmoji.handle(packet.d);
4
- };
@@ -1,16 +0,0 @@
1
-
2
- import { Events } from '../../../util/Events.js';
3
-
4
- module.exports = (client, packet) => {
5
- const { old, updated } = client.actions.MessageUpdate.handle(packet.d);
6
- if (old && updated) {
7
- /**
8
- * Emitted whenever a message is updated - e.g. embed or content change.
9
- *
10
- * @event Client#messageUpdate
11
- * @param {Message} oldMessage The message before the update
12
- * @param {Message} newMessage The message after the update
13
- */
14
- client.emit(Events.MessageUpdate, old, updated);
15
- }
16
- };
@@ -1,42 +0,0 @@
1
-
2
- import { Events } from '../../../util/Events.js';
3
- import { Partials } from '../../../util/Partials.js';
4
-
5
- module.exports = (client, { d: data }) => {
6
- let user = client.users.cache.get(data.user.id);
7
- if (!user && ('username' in data.user || client.options.partials.includes(Partials.User))) {
8
- user = client.users._add(data.user);
9
- }
10
-
11
- if (!user) return;
12
-
13
- if (data.user.username && !user._equals(data.user)) client.actions.UserUpdate.handle(data.user);
14
-
15
- const guild = client.guilds.cache.get(data.guild_id);
16
- if (!guild) return;
17
-
18
- const oldPresence = guild.presences.cache.get(user.id)?._clone() ?? null;
19
-
20
- let member = guild.members.cache.get(user.id);
21
- if (!member && data.status !== 'offline') {
22
- member = guild.members._add({
23
- user,
24
- deaf: false,
25
- mute: false,
26
- });
27
-
28
- client.emit(Events.GuildMemberAvailable, member);
29
- }
30
-
31
- const newPresence = guild.presences._add(Object.assign(data, { guild }));
32
- if (client.listenerCount(Events.PresenceUpdate) > 0 && !newPresence.equals(oldPresence)) {
33
- /**
34
- * Emitted whenever a guild member's presence (e.g. status, activity) is changed.
35
- *
36
- * @event Client#presenceUpdate
37
- * @param {?Presence} oldPresence The presence before the update, if one at all
38
- * @param {Presence} newPresence The presence after the update
39
- */
40
- client.emit(Events.PresenceUpdate, oldPresence, newPresence);
41
- }
42
- };
@@ -1,23 +0,0 @@
1
-
2
- import process from 'node:process';
3
- import { GatewayOpcodes } from 'discord-api-types/v10';
4
-
5
- const emittedFor = new Set();
6
-
7
- module.exports = (client, { d: data }) => {
8
- switch (data.opcode) {
9
- case GatewayOpcodes.RequestGuildMembers: {
10
- break;
11
- }
12
-
13
- default: {
14
- if (!emittedFor.has(data.opcode)) {
15
- process.emitWarning(
16
- `Hit a gateway rate limit on opcode ${data.opcode} (${GatewayOpcodes[data.opcode]}). If the discord.js version you're using is up-to-date, please open an issue on GitHub.`,
17
- );
18
-
19
- emittedFor.add(data.opcode);
20
- }
21
- }
22
- }
23
- };
@@ -1,29 +0,0 @@
1
-
2
- import { ClientApplication } from '../../../structures/ClientApplication.js';
3
- import { Status } from '../../../util/Status.js';
4
-
5
- let ClientUser;
6
-
7
- module.exports = (client, { d: data }, shardId) => {
8
- if (client.user) {
9
- client.user._patch(data.user);
10
- } else {
11
- ClientUser ??= require('../../../structures/ClientUser.js').ClientUser;
12
- client.user = new ClientUser(client, data.user);
13
- client.users.cache.set(client.user.id, client.user);
14
- }
15
-
16
- for (const guild of data.guilds) {
17
- client.expectedGuilds.add(guild.id);
18
- guild.shardId = shardId;
19
- client.guilds._add(guild);
20
- }
21
-
22
- if (client.application) {
23
- client.application._patch(data.application);
24
- } else {
25
- client.application = new ClientApplication(client, data.application);
26
- }
27
-
28
- client.status = Status.WaitingForGuilds;
29
- };
@@ -1,24 +0,0 @@
1
-
2
- import { Collection } from '@ovencord/collection';
3
- import { Events } from '../../../util/Events.js';
4
-
5
- module.exports = (client, { d: data }) => {
6
- const guild = client.guilds.cache.get(data.guild_id);
7
-
8
- if (!guild) return;
9
-
10
- const soundboardSounds = new Collection();
11
-
12
- for (const soundboardSound of data.soundboard_sounds) {
13
- soundboardSounds.set(soundboardSound.sound_id, guild.soundboardSounds._add(soundboardSound));
14
- }
15
-
16
- /**
17
- * Emitted whenever soundboard sounds are received (all soundboard sounds come from the same guild).
18
- *
19
- * @event Client#soundboardSounds
20
- * @param {Collection<Snowflake, SoundboardSound>} soundboardSounds The sounds received
21
- * @param {Guild} guild The guild that the soundboard sounds are from
22
- */
23
- client.emit(Events.SoundboardSounds, soundboardSounds, guild);
24
- };
@@ -1,4 +0,0 @@
1
-
2
- module.exports = (client, packet) => {
3
- client.actions.StageInstanceCreate.handle(packet.d);
4
- };
@@ -1,4 +0,0 @@
1
-
2
- module.exports = (client, packet) => {
3
- client.actions.StageInstanceDelete.handle(packet.d);
4
- };
@@ -1,4 +0,0 @@
1
-
2
- module.exports = (client, packet) => {
3
- client.actions.StageInstanceUpdate.handle(packet.d);
4
- };
@@ -1,14 +0,0 @@
1
-
2
- import { Events } from '../../../util/Events.js';
3
-
4
- module.exports = (client, { d: data }) => {
5
- const subscription = client.application.subscriptions._add(data);
6
-
7
- /**
8
- * Emitted whenever a subscription is created.
9
- *
10
- * @event Client#subscriptionCreate
11
- * @param {Subscription} subscription The subscription that was created
12
- */
13
- client.emit(Events.SubscriptionCreate, subscription);
14
- };
@@ -1,16 +0,0 @@
1
-
2
- import { Events } from '../../../util/Events.js';
3
-
4
- module.exports = (client, { d: data }) => {
5
- const subscription = client.application.subscriptions._add(data, false);
6
-
7
- client.application.subscriptions.cache.delete(subscription.id);
8
-
9
- /**
10
- * Emitted whenever a subscription is deleted.
11
- *
12
- * @event Client#subscriptionDelete
13
- * @param {Subscription} subscription The subscription that was deleted
14
- */
15
- client.emit(Events.SubscriptionDelete, subscription);
16
- };
@@ -1,16 +0,0 @@
1
-
2
- import { Events } from '../../../util/Events.js';
3
-
4
- module.exports = (client, { d: data }) => {
5
- const oldSubscription = client.application.subscriptions.cache.get(data.id)?._clone() ?? null;
6
- const newSubscription = client.application.subscriptions._add(data);
7
-
8
- /**
9
- * Emitted whenever a subscription is updated - i.e. when a user's subscription renews.
10
- *
11
- * @event Client#subscriptionUpdate
12
- * @param {?Subscription} oldSubscription The subscription before the update
13
- * @param {Subscription} newSubscription The subscription after the update
14
- */
15
- client.emit(Events.SubscriptionUpdate, oldSubscription, newSubscription);
16
- };
@@ -1,4 +0,0 @@
1
-
2
- module.exports = (client, packet) => {
3
- client.actions.ThreadCreate.handle(packet.d);
4
- };
@@ -1,17 +0,0 @@
1
-
2
- import { Events } from '../../../util/Events.js';
3
-
4
- module.exports = (client, { d: data }) => {
5
- const thread = client.channels.cache.get(data.id);
6
- if (!thread) return;
7
-
8
- client.channels._remove(thread.id);
9
-
10
- /**
11
- * Emitted whenever a thread is deleted.
12
- *
13
- * @event Client#threadDelete
14
- * @param {ThreadChannel} thread The thread that was deleted
15
- */
16
- client.emit(Events.ThreadDelete, thread);
17
- };
@@ -1,50 +0,0 @@
1
- import { Collection } from '@ovencord/collection';
2
- import { Events } from '../../../util/Events.js';
3
-
4
- module.exports = (client, { d: data }) => {
5
- const guild = client.guilds.cache.get(data.guild_id);
6
- if (!guild) return;
7
-
8
- if (data.channel_ids) {
9
- for (const id of data.channel_ids) {
10
- const channel = client.channels.cache.get(id);
11
- if (channel) removeStaleThreads(client, channel);
12
- }
13
- } else {
14
- for (const channel of guild.channels.cache.values()) {
15
- removeStaleThreads(client, channel);
16
- }
17
- }
18
-
19
- const syncedThreads = data.threads.reduce((coll, rawThread) => {
20
- const thread = client.channels._add(rawThread);
21
- return coll.set(thread.id, thread);
22
- }, new Collection());
23
-
24
- for (const rawMember of Object.values(data.members)) {
25
- // Discord sends the thread id as id in this object
26
- const thread = client.channels.cache.get(rawMember.id);
27
- if (thread) {
28
- thread.members._add(rawMember);
29
- }
30
- }
31
-
32
- /**
33
- * Emitted whenever the client user gains access to a text or announcement channel that contains threads
34
- *
35
- * @event Client#threadListSync
36
- * @param {Collection<Snowflake, ThreadChannel>} threads The threads that were synced
37
- * @param {Guild} guild The guild that the threads were synced in
38
- */
39
- client.emit(Events.ThreadListSync, syncedThreads, guild);
40
- };
41
-
42
- export function removeStaleThreads(client, channel) {
43
- if (!channel.threads) return;
44
-
45
- for (const thread of channel.threads.cache.values()) {
46
- if (!thread.archived) {
47
- client.channels._remove(thread.id);
48
- }
49
- }
50
- }
@@ -1,4 +0,0 @@
1
-
2
- module.exports = (client, packet) => {
3
- client.actions.ThreadMembersUpdate.handle(packet.d);
4
- };
@@ -1,25 +0,0 @@
1
-
2
- import { Events } from '../../../util/Events.js';
3
-
4
- module.exports = (client, { d: data }) => {
5
- // Discord sends the thread id as id in this object
6
- const thread = client.channels.cache.get(data.id);
7
- if (!thread) return;
8
-
9
- const member = thread.members.cache.get(data.user_id);
10
- if (!member) {
11
- thread.members._add(data);
12
- return;
13
- }
14
-
15
- const old = member._update(data);
16
-
17
- /**
18
- * Emitted whenever the client user's thread member is updated.
19
- *
20
- * @event Client#threadMemberUpdate
21
- * @param {ThreadMember} oldMember The member before the update
22
- * @param {ThreadMember} newMember The member after the update
23
- */
24
- client.emit(Events.ThreadMemberUpdate, old, member);
25
- };
@@ -1,16 +0,0 @@
1
-
2
- import { Events } from '../../../util/Events.js';
3
-
4
- module.exports = (client, packet) => {
5
- const { old, updated } = client.actions.ChannelUpdate.handle(packet.d);
6
- if (old && updated) {
7
- /**
8
- * Emitted whenever a thread is updated - e.g. name change, archive state change, locked state change.
9
- *
10
- * @event Client#threadUpdate
11
- * @param {ThreadChannel} oldThread The thread before the update
12
- * @param {ThreadChannel} newThread The thread after the update
13
- */
14
- client.emit(Events.ThreadUpdate, old, updated);
15
- }
16
- };
@@ -1,4 +0,0 @@
1
-
2
- module.exports = (client, packet) => {
3
- client.actions.TypingStart.handle(packet.d);
4
- };
@@ -1,4 +0,0 @@
1
-
2
- module.exports = (client, packet) => {
3
- client.actions.UserUpdate.handle(packet.d);
4
- };
@@ -1,16 +0,0 @@
1
-
2
- import { VoiceChannelEffect } from '../../../structures/VoiceChannelEffect.js';
3
- import { Events } from '../../../util/Events.js';
4
-
5
- module.exports = (client, { d: data }) => {
6
- const guild = client.guilds.cache.get(data.guild_id);
7
- if (!guild) return;
8
-
9
- /**
10
- * Emitted when someone sends an effect, such as an emoji reaction, in a voice channel the client is connected to.
11
- *
12
- * @event Client#voiceChannelEffectSend
13
- * @param {VoiceChannelEffect} voiceChannelEffect The sent voice channel effect
14
- */
15
- client.emit(Events.VoiceChannelEffectSend, new VoiceChannelEffect(data, guild));
16
- };
@@ -1,5 +0,0 @@
1
-
2
- module.exports = (client, packet) => {
3
- client.emit('debug', `[VOICE] received voice server: ${JSON.stringify(packet)}`);
4
- client.voice.onVoiceServer(packet.d);
5
- };
@@ -1,37 +0,0 @@
1
-
2
- import { VoiceState } from '../../../structures/VoiceState.js';
3
- import { Events } from '../../../util/Events.js';
4
-
5
- module.exports = (client, { d: data }) => {
6
- const guild = client.guilds.cache.get(data.guild_id);
7
- if (!guild) return;
8
-
9
- // Update the state
10
- const oldState =
11
- guild.voiceStates.cache.get(data.user_id)?._clone() ?? new VoiceState(guild, { user_id: data.user_id });
12
-
13
- const newState = guild.voiceStates._add(data);
14
-
15
- // Get the member
16
- let member = guild.members.cache.get(data.user_id);
17
- if (member && data.member) {
18
- member._patch(data.member);
19
- } else if (data.member?.user && data.member.joined_at) {
20
- member = guild.members._add(data.member);
21
- }
22
-
23
- // Emit event
24
- if (member?.user.id === client.user.id) {
25
- client.emit('debug', `[VOICE] received voice state update: ${JSON.stringify(data)}`);
26
- client.voice.onVoiceStateUpdate(data);
27
- }
28
-
29
- /**
30
- * Emitted whenever a member changes voice state - e.g. joins/leaves a channel, mutes/unmutes.
31
- *
32
- * @event Client#voiceStateUpdate
33
- * @param {VoiceState} oldState The voice state before the update
34
- * @param {VoiceState} newState The voice state after the update
35
- */
36
- client.emit(Events.VoiceStateUpdate, oldState, newState);
37
- };
@@ -1,16 +0,0 @@
1
-
2
- import { Events } from '../../../util/Events.js';
3
-
4
- module.exports = (client, { d: data }) => {
5
- const channel = client.channels.cache.get(data.channel_id);
6
- if (!channel) return;
7
-
8
- /**
9
- * Emitted whenever a channel has its webhooks changed.
10
- *
11
- * @event Client#webhooksUpdate
12
- * @param {TextChannel|AnnouncementChannel|VoiceChannel|StageChannel|ForumChannel|MediaChannel} channel
13
- * The channel that had a webhook update
14
- */
15
- client.emit(Events.WebhooksUpdate, channel);
16
- };