detritus

ClusterClientclass

Runs several ShardClients inside one process and forwards all of their events, adding the shard each one came from.

On this page
import { ClusterClient } from 'detritus-client';
EventEmitterEventSpewerClusterClient
15 properties14 methodssrc/clusterclient.ts:36

Constructor

Properties

_refresh
{ applicationEmojis: { data: { … } | null; forced: boolean; last: number; promise: Promise<{ … }> | null; time: number }; applications: { data: any[] | null; forced: boolean; last: number; promise: Promise<…[]> | null; time: number }; oauth2Application: { data: any; last: number; promise: Promise<any> | null; time: number } }
readonly
_shardsIdentifyAttempt
BaseCollection<number, number>
readonly
_shardsWaiting
BaseCollection<number, { reject: Function; resolve: Function }>
readonly
buckets
BaseCollection<number, Bucket>
commandClient
readonly
Default null
interactionCommandClient
readonly
Default null
manager
ClusterProcessChild | null
readonly
Default null
maxConcurrency
number
Default 1
ran
boolean
Default false
rest
readonly
shardCount
number
Default 0
shardEnd
number
Default -1
shardOptions
Default {}
shards
shardStart
number
Default 0
token
string
readonly

Accessors

applicationId
string
get
clusterId
number
get

Methods

fillApplicationEmojis()

async src/clusterclient.ts:197
fillApplicationEmojis(force?: boolean): Promise<void>
force?
boolean
Default false

fillApplications()

async src/clusterclient.ts:249
fillApplications(force?: boolean): Promise<void>
force?
boolean
Default false

fillOauth2Application()

async src/clusterclient.ts:298
fillOauth2Application(force?: boolean): Promise<void>
force?
boolean
Default false

on()

src/clusterclient.ts:497
on(event: string | symbol, listener: (...args: any[]) => void): this

Adds the listener function to the end of the listeners array for the event named eventName. No checks are made to see if the listener has already been added. Multiple calls passing the same combination of eventName and listener will result in the listener being added, and called, multiple times.

server.on('connection', (stream) => {
  console.log('someone connected!');
});

Returns a reference to the EventEmitter, so that calls can be chained.

By default, event listeners are invoked in the order they are added. The emitter.prependListener() method can be used as an alternative to add the event listener to the beginning of the listeners array.

import { EventEmitter } from 'node:events';
const myEE = new EventEmitter();
myEE.on('foo', () => console.log('a'));
myEE.prependListener('foo', () => console.log('b'));
myEE.emit('foo');
// Prints:
//   b
//   a

Since v0.1.101

event
string | symbol
listener
(...args: any[]) => void

The callback function

on(
  event: ACTIVITY_JOIN_INVITE,
  listener: (payload: ClusterEvent & ActivityJoinInvite) => any,
): this
on(
  event: "activityJoinInvite",
  listener: (payload: ClusterEvent & ActivityJoinInvite) => any,
): this
on(
  event: ACTIVITY_JOIN_REQUEST,
  listener: (payload: ClusterEvent & ActivityJoinRequest) => any,
): this
on(
  event: "activityJoinRequest",
  listener: (payload: ClusterEvent & ActivityJoinRequest) => any,
): this
on(event: ACTIVITY_START, listener: (payload: ClusterEvent & ActivityStart) => any): this
on(event: "activityStart", listener: (payload: ClusterEvent & ActivityStart) => any): this
on(
  event: APPLICATION_COMMAND_CREATE,
  listener: (payload: ClusterEvent & ApplicationCommandCreate) => any,
): this
on(
  event: "applicationCommandCreate",
  listener: (payload: ClusterEvent & ApplicationCommandCreate) => any,
): this
on(
  event: APPLICATION_COMMAND_DELETE,
  listener: (payload: ClusterEvent & ApplicationCommandDelete) => any,
): this
on(
  event: "applicationCommandDelete",
  listener: (payload: ClusterEvent & ApplicationCommandDelete) => any,
): this
on(
  event: APPLICATION_COMMAND_UPDATE,
  listener: (payload: ClusterEvent & ApplicationCommandUpdate) => any,
): this
on(
  event: "applicationCommandUpdate",
  listener: (payload: ClusterEvent & ApplicationCommandUpdate) => any,
): this
on(
  event: BRAINTREE_POPUP_BRIDGE_CALLBACK,
  listener: (payload: ClusterEvent & BraintreePopupBridgeCallback) => any,
): this
on(
  event: "braintreePopupBridgeCallback",
  listener: (payload: ClusterEvent & BraintreePopupBridgeCallback) => any,
): this
on(
  event: AUTO_MODERATION_ACTION_EXECUTION,
  listener: (payload: ClusterEvent & AutoModerationActionExecution) => any,
): this
on(
  event: "autoModerationActionExecution",
  listener: (payload: ClusterEvent & AutoModerationActionExecution) => any,
): this
on(
  event: AUTO_MODERATION_RULE_CREATE,
  listener: (payload: ClusterEvent & AutoModerationRuleCreate) => any,
): this
on(
  event: "autoModerationRuleCreate",
  listener: (payload: ClusterEvent & AutoModerationRuleCreate) => any,
): this
on(
  event: AUTO_MODERATION_RULE_DELETE,
  listener: (payload: ClusterEvent & AutoModerationRuleDelete) => any,
): this
on(
  event: "autoModerationRuleDelete",
  listener: (payload: ClusterEvent & AutoModerationRuleDelete) => any,
): this
on(
  event: AUTO_MODERATION_RULE_UPDATE,
  listener: (payload: ClusterEvent & AutoModerationRuleUpdate) => any,
): this
on(
  event: "autoModerationRuleUpdate",
  listener: (payload: ClusterEvent & AutoModerationRuleUpdate) => any,
): this
on(event: CALL_CREATE, listener: (payload: ClusterEvent & CallCreate) => any): this
on(event: "callCreate", listener: (payload: ClusterEvent & CallCreate) => any): this
on(event: CALL_DELETE, listener: (payload: ClusterEvent & CallDelete) => any): this
on(event: "callDelete", listener: (payload: ClusterEvent & CallDelete) => any): this
on(event: CALL_UPDATE, listener: (payload: ClusterEvent & CallUpdate) => any): this
on(event: "callUpdate", listener: (payload: ClusterEvent & CallUpdate) => any): this
on(event: CHANNEL_CREATE, listener: (payload: ClusterEvent & ChannelCreate) => any): this
on(event: "channelCreate", listener: (payload: ClusterEvent & ChannelCreate) => any): this
on(event: CHANNEL_DELETE, listener: (payload: ClusterEvent & ChannelDelete) => any): this
on(event: "channelDelete", listener: (payload: ClusterEvent & ChannelDelete) => any): this
on(event: CHANNEL_UPDATE, listener: (payload: ClusterEvent & ChannelUpdate) => any): this
on(event: "channelUpdate", listener: (payload: ClusterEvent & ChannelUpdate) => any): this
on(
  event: CHANNEL_PINS_ACK,
  listener: (payload: ClusterEvent & ChannelPinsAck) => any,
): this
on(
  event: "channelPinsAck",
  listener: (payload: ClusterEvent & ChannelPinsAck) => any,
): this
on(event: CHANNEL_INFO, listener: (payload: ClusterEvent & ChannelInfo) => any): this
on(event: "channelInfo", listener: (payload: ClusterEvent & ChannelInfo) => any): this
on(
  event: CHANNEL_PINS_UPDATE,
  listener: (payload: ClusterEvent & ChannelPinsUpdate) => any,
): this
on(
  event: "channelPinsUpdate",
  listener: (payload: ClusterEvent & ChannelPinsUpdate) => any,
): this
on(
  event: CHANNEL_RECIPIENT_ADD,
  listener: (payload: ClusterEvent & ChannelRecipientAdd) => any,
): this
on(
  event: "channelRecipientAdd",
  listener: (payload: ClusterEvent & ChannelRecipientAdd) => any,
): this
on(
  event: CHANNEL_RECIPIENT_REMOVE,
  listener: (payload: ClusterEvent & ChannelRecipientRemove) => any,
): this
on(
  event: "channelRecipientRemove",
  listener: (payload: ClusterEvent & ChannelRecipientRemove) => any,
): this
on(
  event: ENTITLEMENT_CREATE,
  listener: (payload: ClusterEvent & EntitlementCreate) => any,
): this
on(
  event: "entitlementCreate",
  listener: (payload: ClusterEvent & EntitlementCreate) => any,
): this
on(
  event: ENTITLEMENT_DELETE,
  listener: (payload: ClusterEvent & EntitlementDelete) => any,
): this
on(
  event: "entitlementDelete",
  listener: (payload: ClusterEvent & EntitlementDelete) => any,
): this
on(
  event: ENTITLEMENT_UPDATE,
  listener: (payload: ClusterEvent & EntitlementUpdate) => any,
): this
on(
  event: "entitlementUpdate",
  listener: (payload: ClusterEvent & EntitlementUpdate) => any,
): this
on(
  event: FRIEND_SUGGESTION_CREATE,
  listener: (payload: ClusterEvent & FriendSuggestionCreate) => any,
): this
on(
  event: "friendSuggestionCreate",
  listener: (payload: ClusterEvent & FriendSuggestionCreate) => any,
): this
on(
  event: FRIEND_SUGGESTION_DELETE,
  listener: (payload: ClusterEvent & FriendSuggestionDelete) => any,
): this
on(
  event: "friendSuggestionDelete",
  listener: (payload: ClusterEvent & FriendSuggestionDelete) => any,
): this
on(event: GATEWAY_READY, listener: (payload: ClusterEvent & GatewayReady) => any): this
on(event: "gatewayReady", listener: (payload: ClusterEvent & GatewayReady) => any): this
on(
  event: GATEWAY_RESUMED,
  listener: (payload: ClusterEvent & GatewayResumed) => any,
): this
on(
  event: "gatewayResumed",
  listener: (payload: ClusterEvent & GatewayResumed) => any,
): this
on(
  event: GIFT_CODE_UPDATE,
  listener: (payload: ClusterEvent & GiftCodeUpdate) => any,
): this
on(
  event: "giftCodeUpdate",
  listener: (payload: ClusterEvent & GiftCodeUpdate) => any,
): this
on(event: GUILD_BAN_ADD, listener: (payload: ClusterEvent & GuildBanAdd) => any): this
on(event: "guildBanAdd", listener: (payload: ClusterEvent & GuildBanAdd) => any): this
on(
  event: GUILD_BAN_REMOVE,
  listener: (payload: ClusterEvent & GuildBanRemove) => any,
): this
on(
  event: "guildBanRemove",
  listener: (payload: ClusterEvent & GuildBanRemove) => any,
): this
on(event: GUILD_CREATE, listener: (payload: ClusterEvent & GuildCreate) => any): this
on(event: "guildCreate", listener: (payload: ClusterEvent & GuildCreate) => any): this
on(event: GUILD_DELETE, listener: (payload: ClusterEvent & GuildDelete) => any): this
on(event: "guildDelete", listener: (payload: ClusterEvent & GuildDelete) => any): this
on(
  event: GUILD_EMOJIS_UPDATE,
  listener: (payload: ClusterEvent & GuildEmojisUpdate) => any,
): this
on(
  event: "guildEmojisUpdate",
  listener: (payload: ClusterEvent & GuildEmojisUpdate) => any,
): this
on(
  event: GUILD_INTEGRATIONS_UPDATE,
  listener: (payload: ClusterEvent & GuildIntegrationsUpdate) => any,
): this
on(
  event: "guildIntegrationsUpdate",
  listener: (payload: ClusterEvent & GuildIntegrationsUpdate) => any,
): this
on(
  event: GUILD_MEMBER_ADD,
  listener: (payload: ClusterEvent & GuildMemberAdd) => any,
): this
on(
  event: "guildMemberAdd",
  listener: (payload: ClusterEvent & GuildMemberAdd) => any,
): this
on(
  event: GUILD_MEMBER_LIST_UPDATE,
  listener: (payload: ClusterEvent & GuildMemberListUpdate) => any,
): this
on(
  event: "guildMemberListUpdate",
  listener: (payload: ClusterEvent & GuildMemberListUpdate) => any,
): this
on(
  event: GUILD_MEMBER_REMOVE,
  listener: (payload: ClusterEvent & GuildMemberRemove) => any,
): this
on(
  event: "guildMemberRemove",
  listener: (payload: ClusterEvent & GuildMemberRemove) => any,
): this
on(
  event: GUILD_MEMBER_UPDATE,
  listener: (payload: ClusterEvent & GuildMemberUpdate) => any,
): this
on(
  event: "guildMemberUpdate",
  listener: (payload: ClusterEvent & GuildMemberUpdate) => any,
): this
on(
  event: GUILD_MEMBERS_CHUNK,
  listener: (payload: ClusterEvent & GuildMembersChunk) => any,
): this
on(
  event: "guildMembersChunk",
  listener: (payload: ClusterEvent & GuildMembersChunk) => any,
): this
on(event: GUILD_READY, listener: (payload: ClusterEvent & GuildReady) => any): this
on(event: "guildReady", listener: (payload: ClusterEvent & GuildReady) => any): this
on(
  event: GUILD_ROLE_CREATE,
  listener: (payload: ClusterEvent & GuildRoleCreate) => any,
): this
on(
  event: "guildRoleCreate",
  listener: (payload: ClusterEvent & GuildRoleCreate) => any,
): this
on(
  event: GUILD_ROLE_DELETE,
  listener: (payload: ClusterEvent & GuildRoleDelete) => any,
): this
on(
  event: "guildRoleDelete",
  listener: (payload: ClusterEvent & GuildRoleDelete) => any,
): this
on(
  event: GUILD_ROLE_UPDATE,
  listener: (payload: ClusterEvent & GuildRoleUpdate) => any,
): this
on(
  event: "guildRoleUpdate",
  listener: (payload: ClusterEvent & GuildRoleUpdate) => any,
): this
on(
  event: GUILD_SOUNDBOARD_SOUND_CREATE,
  listener: (payload: ClusterEvent & GuildSoundboardSoundCreate) => any,
): this
on(
  event: "guildSoundboardSoundCreate",
  listener: (payload: ClusterEvent & GuildSoundboardSoundCreate) => any,
): this
on(
  event: GUILD_SOUNDBOARD_SOUND_DELETE,
  listener: (payload: ClusterEvent & GuildSoundboardSoundDelete) => any,
): this
on(
  event: "guildSoundboardSoundDelete",
  listener: (payload: ClusterEvent & GuildSoundboardSoundDelete) => any,
): this
on(
  event: GUILD_SOUNDBOARD_SOUND_UPDATE,
  listener: (payload: ClusterEvent & GuildSoundboardSoundUpdate) => any,
): this
on(
  event: "guildSoundboardSoundUpdate",
  listener: (payload: ClusterEvent & GuildSoundboardSoundUpdate) => any,
): this
on(
  event: GUILD_SOUNDBOARD_SOUNDS_UPDATE,
  listener: (payload: ClusterEvent & GuildSoundboardSoundsUpdate) => any,
): this
on(
  event: "guildSoundboardSoundsUpdate",
  listener: (payload: ClusterEvent & GuildSoundboardSoundsUpdate) => any,
): this
on(
  event: SOUNDBOARD_SOUNDS,
  listener: (payload: ClusterEvent & SoundboardSounds) => any,
): this
on(
  event: "soundboardSounds",
  listener: (payload: ClusterEvent & SoundboardSounds) => any,
): this
on(
  event: GUILD_STICKERS_UPDATE,
  listener: (payload: ClusterEvent & GuildStickersUpdate) => any,
): this
on(
  event: "guildStickersUpdate",
  listener: (payload: ClusterEvent & GuildStickersUpdate) => any,
): this
on(event: GUILD_UPDATE, listener: (payload: ClusterEvent & GuildUpdate) => any): this
on(event: "guildUpdate", listener: (payload: ClusterEvent & GuildUpdate) => any): this
on(
  event: INTERACTION_CREATE,
  listener: (payload: ClusterEvent & InteractionCreate) => any,
): this
on(
  event: "interactionCreate",
  listener: (payload: ClusterEvent & InteractionCreate) => any,
): this
on(event: INVITE_CREATE, listener: (payload: ClusterEvent & InviteCreate) => any): this
on(event: "inviteCreate", listener: (payload: ClusterEvent & InviteCreate) => any): this
on(event: INVITE_DELETE, listener: (payload: ClusterEvent & InviteDelete) => any): this
on(event: "inviteDelete", listener: (payload: ClusterEvent & InviteDelete) => any): this
on(
  event: LIBRARY_APPLICATION_UPDATE,
  listener: (payload: ClusterEvent & LibraryApplicationUpdate) => any,
): this
on(
  event: "libraryApplicationUpdate",
  listener: (payload: ClusterEvent & LibraryApplicationUpdate) => any,
): this
on(event: LOBBY_CREATE, listener: (payload: ClusterEvent & LobbyCreate) => any): this
on(event: "lobbyCreate", listener: (payload: ClusterEvent & LobbyCreate) => any): this
on(event: LOBBY_DELETE, listener: (payload: ClusterEvent & LobbyDelete) => any): this
on(event: "lobbyDelete", listener: (payload: ClusterEvent & LobbyDelete) => any): this
on(event: LOBBY_UPDATE, listener: (payload: ClusterEvent & LobbyUpdate) => any): this
on(event: "lobbyUpdate", listener: (payload: ClusterEvent & LobbyUpdate) => any): this
on(
  event: LOBBY_MEMBER_CONNECT,
  listener: (payload: ClusterEvent & LobbyMemberConnect) => any,
): this
on(
  event: "lobbyMemberConnect",
  listener: (payload: ClusterEvent & LobbyMemberConnect) => any,
): this
on(
  event: LOBBY_MEMBER_DISCONNECT,
  listener: (payload: ClusterEvent & LobbyMemberDisconnect) => any,
): this
on(
  event: "lobbyMemberDisconnect",
  listener: (payload: ClusterEvent & LobbyMemberDisconnect) => any,
): this
on(
  event: LOBBY_MEMBER_UPDATE,
  listener: (payload: ClusterEvent & LobbyMemberUpdate) => any,
): this
on(
  event: "lobbyMemberUpdate",
  listener: (payload: ClusterEvent & LobbyMemberUpdate) => any,
): this
on(event: LOBBY_MESSAGE, listener: (payload: ClusterEvent & LobbyMessage) => any): this
on(event: "lobbyMessage", listener: (payload: ClusterEvent & LobbyMessage) => any): this
on(
  event: LOBBY_VOICE_SERVER_UPDATE,
  listener: (payload: ClusterEvent & LobbyVoiceServerUpdate) => any,
): this
on(
  event: "lobbyVoiceServerUpdate",
  listener: (payload: ClusterEvent & LobbyVoiceServerUpdate) => any,
): this
on(
  event: LOBBY_VOICE_STATE_UPDATE,
  listener: (payload: ClusterEvent & LobbyVoiceStateUpdate) => any,
): this
on(
  event: "lobbyVoiceStateUpdate",
  listener: (payload: ClusterEvent & LobbyVoiceStateUpdate) => any,
): this
on(event: MESSAGE_ACK, listener: (payload: ClusterEvent & MessageAck) => any): this
on(event: "messageAck", listener: (payload: ClusterEvent & MessageAck) => any): this
on(event: MESSAGE_CREATE, listener: (payload: ClusterEvent & MessageCreate) => any): this
on(event: "messageCreate", listener: (payload: ClusterEvent & MessageCreate) => any): this
on(event: MESSAGE_DELETE, listener: (payload: ClusterEvent & MessageDelete) => any): this
on(event: "messageDelete", listener: (payload: ClusterEvent & MessageDelete) => any): this
on(
  event: MESSAGE_DELETE_BULK,
  listener: (payload: ClusterEvent & MessageDeleteBulk) => any,
): this
on(
  event: "messageDeleteBulk",
  listener: (payload: ClusterEvent & MessageDeleteBulk) => any,
): this
on(
  event: MESSAGE_REACTION_ADD,
  listener: (payload: ClusterEvent & MessageReactionAdd) => any,
): this
on(
  event: "messageReactionAdd",
  listener: (payload: ClusterEvent & MessageReactionAdd) => any,
): this
on(
  event: MESSAGE_REACTION_REMOVE,
  listener: (payload: ClusterEvent & MessageReactionRemove) => any,
): this
on(
  event: "messageReactionRemove",
  listener: (payload: ClusterEvent & MessageReactionRemove) => any,
): this
on(
  event: MESSAGE_REACTION_REMOVE_ALL,
  listener: (payload: ClusterEvent & MessageReactionRemoveAll) => any,
): this
on(
  event: "messageReactionRemoveAll",
  listener: (payload: ClusterEvent & MessageReactionRemoveAll) => any,
): this
on(
  event: MESSAGE_REACTION_REMOVE_EMOJI,
  listener: (payload: ClusterEvent & MessageReactionRemoveEmoji) => any,
): this
on(
  event: "messageReactionRemoveEmoji",
  listener: (payload: ClusterEvent & MessageReactionRemoveEmoji) => any,
): this
on(event: MESSAGE_UPDATE, listener: (payload: ClusterEvent & MessageUpdate) => any): this
on(event: "messageUpdate", listener: (payload: ClusterEvent & MessageUpdate) => any): this
on(
  event: PRESENCES_REPLACE,
  listener: (payload: ClusterEvent & PresencesReplace) => any,
): this
on(
  event: "presencesReplace",
  listener: (payload: ClusterEvent & PresencesReplace) => any,
): this
on(
  event: PRESENCE_UPDATE,
  listener: (payload: ClusterEvent & PresenceUpdate) => any,
): this
on(
  event: "presenceUpdate",
  listener: (payload: ClusterEvent & PresenceUpdate) => any,
): this
on(event: RATE_LIMITED, listener: (payload: ClusterEvent & RateLimited) => any): this
on(event: "rateLimited", listener: (payload: ClusterEvent & RateLimited) => any): this
on(
  event: RECENT_MENTION_DELETE,
  listener: (payload: ClusterEvent & RecentMentionDelete) => any,
): this
on(
  event: "recentMentionDelete",
  listener: (payload: ClusterEvent & RecentMentionDelete) => any,
): this
on(
  event: RELATIONSHIP_ADD,
  listener: (payload: ClusterEvent & RelationshipAdd) => any,
): this
on(
  event: "relationshipAdd",
  listener: (payload: ClusterEvent & RelationshipAdd) => any,
): this
on(
  event: RELATIONSHIP_REMOVE,
  listener: (payload: ClusterEvent & RelationshipRemove) => any,
): this
on(
  event: "relationshipRemove",
  listener: (payload: ClusterEvent & RelationshipRemove) => any,
): this
on(
  event: SESSIONS_REPLACE,
  listener: (payload: ClusterEvent & SessionsReplace) => any,
): this
on(
  event: "sessionsReplace",
  listener: (payload: ClusterEvent & SessionsReplace) => any,
): this
on(
  event: STAGE_INSTANCE_CREATE,
  listener: (payload: ClusterEvent & StageInstanceCreate) => any,
): this
on(
  event: "stageInstanceCreate",
  listener: (payload: ClusterEvent & StageInstanceCreate) => any,
): this
on(
  event: STAGE_INSTANCE_DELETE,
  listener: (payload: ClusterEvent & StageInstanceDelete) => any,
): this
on(
  event: "stageInstanceDelete",
  listener: (payload: ClusterEvent & StageInstanceDelete) => any,
): this
on(
  event: STAGE_INSTANCE_UPDATE,
  listener: (payload: ClusterEvent & StageInstanceUpdate) => any,
): this
on(
  event: "stageInstanceUpdate",
  listener: (payload: ClusterEvent & StageInstanceUpdate) => any,
): this
on(event: STREAM_CREATE, listener: (payload: ClusterEvent & StreamCreate) => any): this
on(event: "streamCreate", listener: (payload: ClusterEvent & StreamCreate) => any): this
on(event: STREAM_DELETE, listener: (payload: ClusterEvent & StreamDelete) => any): this
on(event: "streamDelete", listener: (payload: ClusterEvent & StreamDelete) => any): this
on(
  event: STREAM_SERVER_UPDATE,
  listener: (payload: ClusterEvent & StreamServerUpdate) => any,
): this
on(
  event: "streamServerUpdate",
  listener: (payload: ClusterEvent & StreamServerUpdate) => any,
): this
on(event: STREAM_UPDATE, listener: (payload: ClusterEvent & StreamUpdate) => any): this
on(event: "streamUpdate", listener: (payload: ClusterEvent & StreamUpdate) => any): this
on(
  event: SUBSCRIPTION_CREATE,
  listener: (payload: ClusterEvent & SubscriptionCreate) => any,
): this
on(
  event: "subscriptionCreate",
  listener: (payload: ClusterEvent & SubscriptionCreate) => any,
): this
on(
  event: SUBSCRIPTION_DELETE,
  listener: (payload: ClusterEvent & SubscriptionDelete) => any,
): this
on(
  event: "subscriptionDelete",
  listener: (payload: ClusterEvent & SubscriptionDelete) => any,
): this
on(
  event: SUBSCRIPTION_UPDATE,
  listener: (payload: ClusterEvent & SubscriptionUpdate) => any,
): this
on(
  event: "subscriptionUpdate",
  listener: (payload: ClusterEvent & SubscriptionUpdate) => any,
): this
on(event: THREAD_CREATE, listener: (payload: ClusterEvent & ThreadCreate) => any): this
on(event: "threadCreate", listener: (payload: ClusterEvent & ThreadCreate) => any): this
on(event: THREAD_DELETE, listener: (payload: ClusterEvent & ThreadDelete) => any): this
on(event: "threadDelete", listener: (payload: ClusterEvent & ThreadDelete) => any): this
on(
  event: THREAD_LIST_SYNC,
  listener: (payload: ClusterEvent & ThreadListSync) => any,
): this
on(
  event: "threadListSync",
  listener: (payload: ClusterEvent & ThreadListSync) => any,
): this
on(
  event: THREAD_MEMBER_UPDATE,
  listener: (payload: ClusterEvent & ThreadMemberUpdate) => any,
): this
on(
  event: "threadMemberUpdate",
  listener: (payload: ClusterEvent & ThreadMemberUpdate) => any,
): this
on(
  event: THREAD_MEMBERS_UPDATE,
  listener: (payload: ClusterEvent & ThreadMembersUpdate) => any,
): this
on(
  event: "threadMembersUpdate",
  listener: (payload: ClusterEvent & ThreadMembersUpdate) => any,
): this
on(event: THREAD_UPDATE, listener: (payload: ClusterEvent & ThreadUpdate) => any): this
on(event: "threadUpdate", listener: (payload: ClusterEvent & ThreadUpdate) => any): this
on(event: TYPING_START, listener: (payload: ClusterEvent & TypingStart) => any): this
on(event: "typingStart", listener: (payload: ClusterEvent & TypingStart) => any): this
on(event: TYPING_STOP, listener: (payload: ClusterEvent & TypingStop) => any): this
on(event: "typingStop", listener: (payload: ClusterEvent & TypingStop) => any): this
on(
  event: USER_ACHIEVEMENT_UPDATE,
  listener: (payload: ClusterEvent & UserAchievementUpdate) => any,
): this
on(
  event: "userAchievementUpdate",
  listener: (payload: ClusterEvent & UserAchievementUpdate) => any,
): this
on(
  event: USER_CONNECTIONS_UPDATE,
  listener: (payload: ClusterEvent & UserConnectionsUpdate) => any,
): this
on(
  event: "userConnectionsUpdate",
  listener: (payload: ClusterEvent & UserConnectionsUpdate) => any,
): this
on(
  event: USER_FEED_SETTINGS_UPDATE,
  listener: (payload: ClusterEvent & UserFeedSettingsUpdate) => any,
): this
on(
  event: "userFeedSettingsUpdate",
  listener: (payload: ClusterEvent & UserFeedSettingsUpdate) => any,
): this
on(
  event: USER_GUILD_SETTINGS_UPDATE,
  listener: (payload: ClusterEvent & UserGuildSettingsUpdate) => any,
): this
on(
  event: "userGuildSettingsUpdate",
  listener: (payload: ClusterEvent & UserGuildSettingsUpdate) => any,
): this
on(
  event: USER_PAYMENT_SOURCES_UPDATE,
  listener: (payload: ClusterEvent & UserPaymentSourcesUpdate) => any,
): this
on(
  event: "userPaymentSourcesUpdate",
  listener: (payload: ClusterEvent & UserPaymentSourcesUpdate) => any,
): this
on(
  event: USER_PAYMENTS_UPDATE,
  listener: (payload: ClusterEvent & UserPaymentsUpdate) => any,
): this
on(
  event: "userPaymentsUpdate",
  listener: (payload: ClusterEvent & UserPaymentsUpdate) => any,
): this
on(
  event: USER_REQUIRED_ACTION_UPDATE,
  listener: (payload: ClusterEvent & UserRequiredActionUpdate) => any,
): this
on(
  event: "userRequiredActionUpdate",
  listener: (payload: ClusterEvent & UserRequiredActionUpdate) => any,
): this
on(event: USER_UPDATE, listener: (payload: ClusterEvent & UserUpdate) => any): this
on(event: "userUpdate", listener: (payload: ClusterEvent & UserUpdate) => any): this
on(event: USERS_UPDATE, listener: (payload: ClusterEvent & UsersUpdate) => any): this
on(event: "usersUpdate", listener: (payload: ClusterEvent & UsersUpdate) => any): this
on(
  event: VOICE_CHANNEL_EFFECT_SEND,
  listener: (payload: ClusterEvent & VoiceChannelEffectSend) => any,
): this
on(
  event: "voiceChannelEffectSend",
  listener: (payload: ClusterEvent & VoiceChannelEffectSend) => any,
): this
on(
  event: VOICE_CHANNEL_START_TIME_UPDATE,
  listener: (payload: ClusterEvent & VoiceChannelStartTimeUpdate) => any,
): this
on(
  event: "voiceChannelStartTimeUpdate",
  listener: (payload: ClusterEvent & VoiceChannelStartTimeUpdate) => any,
): this
on(
  event: VOICE_CHANNEL_STATUS_UPDATE,
  listener: (payload: ClusterEvent & VoiceChannelStatusUpdate) => any,
): this
on(
  event: "voiceChannelStatusUpdate",
  listener: (payload: ClusterEvent & VoiceChannelStatusUpdate) => any,
): this
on(
  event: VOICE_SERVER_UPDATE,
  listener: (payload: ClusterEvent & VoiceServerUpdate) => any,
): this
on(
  event: "voiceServerUpdate",
  listener: (payload: ClusterEvent & VoiceServerUpdate) => any,
): this
on(
  event: VOICE_STATE_UPDATE,
  listener: (payload: ClusterEvent & VoiceStateUpdate) => any,
): this
on(
  event: "voiceStateUpdate",
  listener: (payload: ClusterEvent & VoiceStateUpdate) => any,
): this
on(
  event: WEBHOOKS_UPDATE,
  listener: (payload: ClusterEvent & WebhooksUpdate) => any,
): this
on(
  event: "webhooksUpdate",
  listener: (payload: ClusterEvent & WebhooksUpdate) => any,
): this
on(event: RAW, listener: (payload: ClusterEvent & Raw) => any): this
on(event: "raw", listener: (payload: ClusterEvent & Raw) => any): this
on(event: REST_REQUEST, listener: (payload: ClusterEvent & RestRequest) => any): this
on(event: "restRequest", listener: (payload: ClusterEvent & RestRequest) => any): this
on(event: REST_RESPONSE, listener: (payload: ClusterEvent & RestResponse) => any): this
on(event: "restResponse", listener: (payload: ClusterEvent & RestResponse) => any): this
on(event: UNKNOWN, listener: (payload: ClusterEvent & Unknown) => any): this
on(event: "unknown", listener: (payload: ClusterEvent & Unknown) => any): this
on(event: WARN, listener: (payload: Warn | ClusterEvent & Warn) => any): this
on(event: "warn", listener: (payload: Warn | ClusterEvent & Warn) => any): this
on(event: KILLED, listener: (payload: Killed | ClusterEvent & Killed) => any): this
on(event: "killed", listener: (payload: Killed | ClusterEvent & Killed) => any): this
on(event: READY, listener: () => any): this
on(event: "ready", listener: () => any): this
on(event: SHARD, listener: (payload: ClusterEvent) => any): this
on(event: "shard", listener: (payload: ClusterEvent) => any): this
Overrides EventSpewer.on

once()

src/clusterclient.ts:747
once(event: string | symbol, listener: (...args: any[]) => void): this

Adds a one-time listener function for the event named eventName. The next time eventName is triggered, this listener is removed and then invoked.

server.once('connection', (stream) => {
  console.log('Ah, we have our first user!');
});

Returns a reference to the EventEmitter, so that calls can be chained.

By default, event listeners are invoked in the order they are added. The emitter.prependOnceListener() method can be used as an alternative to add the event listener to the beginning of the listeners array.

import { EventEmitter } from 'node:events';
const myEE = new EventEmitter();
myEE.once('foo', () => console.log('a'));
myEE.prependOnceListener('foo', () => console.log('b'));
myEE.emit('foo');
// Prints:
//   b
//   a

Since v0.3.0

event
string | symbol
listener
(...args: any[]) => void

The callback function

once(
  event: ACTIVITY_JOIN_INVITE,
  listener: (payload: ClusterEvent & ActivityJoinInvite) => any,
): this
once(
  event: "activityJoinInvite",
  listener: (payload: ClusterEvent & ActivityJoinInvite) => any,
): this
once(
  event: ACTIVITY_JOIN_REQUEST,
  listener: (payload: ClusterEvent & ActivityJoinRequest) => any,
): this
once(
  event: "activityJoinRequest",
  listener: (payload: ClusterEvent & ActivityJoinRequest) => any,
): this
once(
  event: ACTIVITY_START,
  listener: (payload: ClusterEvent & ActivityStart) => any,
): this
once(
  event: "activityStart",
  listener: (payload: ClusterEvent & ActivityStart) => any,
): this
once(
  event: APPLICATION_COMMAND_CREATE,
  listener: (payload: ClusterEvent & ApplicationCommandCreate) => any,
): this
once(
  event: "applicationCommandCreate",
  listener: (payload: ClusterEvent & ApplicationCommandCreate) => any,
): this
once(
  event: APPLICATION_COMMAND_DELETE,
  listener: (payload: ClusterEvent & ApplicationCommandDelete) => any,
): this
once(
  event: "applicationCommandDelete",
  listener: (payload: ClusterEvent & ApplicationCommandDelete) => any,
): this
once(
  event: APPLICATION_COMMAND_UPDATE,
  listener: (payload: ClusterEvent & ApplicationCommandUpdate) => any,
): this
once(
  event: "applicationCommandUpdate",
  listener: (payload: ClusterEvent & ApplicationCommandUpdate) => any,
): this
once(
  event: BRAINTREE_POPUP_BRIDGE_CALLBACK,
  listener: (payload: ClusterEvent & BraintreePopupBridgeCallback) => any,
): this
once(
  event: "braintreePopupBridgeCallback",
  listener: (payload: ClusterEvent & BraintreePopupBridgeCallback) => any,
): this
once(
  event: AUTO_MODERATION_ACTION_EXECUTION,
  listener: (payload: ClusterEvent & AutoModerationActionExecution) => any,
): this
once(
  event: "autoModerationActionExecution",
  listener: (payload: ClusterEvent & AutoModerationActionExecution) => any,
): this
once(
  event: AUTO_MODERATION_RULE_CREATE,
  listener: (payload: ClusterEvent & AutoModerationRuleCreate) => any,
): this
once(
  event: "autoModerationRuleCreate",
  listener: (payload: ClusterEvent & AutoModerationRuleCreate) => any,
): this
once(
  event: AUTO_MODERATION_RULE_DELETE,
  listener: (payload: ClusterEvent & AutoModerationRuleDelete) => any,
): this
once(
  event: "autoModerationRuleDelete",
  listener: (payload: ClusterEvent & AutoModerationRuleDelete) => any,
): this
once(
  event: AUTO_MODERATION_RULE_UPDATE,
  listener: (payload: ClusterEvent & AutoModerationRuleUpdate) => any,
): this
once(
  event: "autoModerationRuleUpdate",
  listener: (payload: ClusterEvent & AutoModerationRuleUpdate) => any,
): this
once(event: CALL_CREATE, listener: (payload: ClusterEvent & CallCreate) => any): this
once(event: "callCreate", listener: (payload: ClusterEvent & CallCreate) => any): this
once(event: CALL_DELETE, listener: (payload: ClusterEvent & CallDelete) => any): this
once(event: "callDelete", listener: (payload: ClusterEvent & CallDelete) => any): this
once(event: CALL_UPDATE, listener: (payload: ClusterEvent & CallUpdate) => any): this
once(event: "callUpdate", listener: (payload: ClusterEvent & CallUpdate) => any): this
once(
  event: CHANNEL_CREATE,
  listener: (payload: ClusterEvent & ChannelCreate) => any,
): this
once(
  event: "channelCreate",
  listener: (payload: ClusterEvent & ChannelCreate) => any,
): this
once(
  event: CHANNEL_DELETE,
  listener: (payload: ClusterEvent & ChannelDelete) => any,
): this
once(
  event: "channelDelete",
  listener: (payload: ClusterEvent & ChannelDelete) => any,
): this
once(
  event: CHANNEL_UPDATE,
  listener: (payload: ClusterEvent & ChannelUpdate) => any,
): this
once(
  event: "channelUpdate",
  listener: (payload: ClusterEvent & ChannelUpdate) => any,
): this
once(
  event: CHANNEL_PINS_ACK,
  listener: (payload: ClusterEvent & ChannelPinsAck) => any,
): this
once(
  event: "channelPinsAck",
  listener: (payload: ClusterEvent & ChannelPinsAck) => any,
): this
once(event: CHANNEL_INFO, listener: (payload: ClusterEvent & ChannelInfo) => any): this
once(event: "channelInfo", listener: (payload: ClusterEvent & ChannelInfo) => any): this
once(
  event: CHANNEL_PINS_UPDATE,
  listener: (payload: ClusterEvent & ChannelPinsUpdate) => any,
): this
once(
  event: "channelPinsUpdate",
  listener: (payload: ClusterEvent & ChannelPinsUpdate) => any,
): this
once(
  event: CHANNEL_RECIPIENT_ADD,
  listener: (payload: ClusterEvent & ChannelRecipientAdd) => any,
): this
once(
  event: "channelRecipientAdd",
  listener: (payload: ClusterEvent & ChannelRecipientAdd) => any,
): this
once(
  event: CHANNEL_RECIPIENT_REMOVE,
  listener: (payload: ClusterEvent & ChannelRecipientRemove) => any,
): this
once(
  event: "channelRecipientRemove",
  listener: (payload: ClusterEvent & ChannelRecipientRemove) => any,
): this
once(
  event: ENTITLEMENT_CREATE,
  listener: (payload: ClusterEvent & EntitlementCreate) => any,
): this
once(
  event: "entitlementCreate",
  listener: (payload: ClusterEvent & EntitlementCreate) => any,
): this
once(
  event: ENTITLEMENT_DELETE,
  listener: (payload: ClusterEvent & EntitlementDelete) => any,
): this
once(
  event: "entitlementDelete",
  listener: (payload: ClusterEvent & EntitlementDelete) => any,
): this
once(
  event: ENTITLEMENT_UPDATE,
  listener: (payload: ClusterEvent & EntitlementUpdate) => any,
): this
once(
  event: "entitlementUpdate",
  listener: (payload: ClusterEvent & EntitlementUpdate) => any,
): this
once(
  event: FRIEND_SUGGESTION_CREATE,
  listener: (payload: ClusterEvent & FriendSuggestionCreate) => any,
): this
once(
  event: "friendSuggestionCreate",
  listener: (payload: ClusterEvent & FriendSuggestionCreate) => any,
): this
once(
  event: FRIEND_SUGGESTION_DELETE,
  listener: (payload: ClusterEvent & FriendSuggestionDelete) => any,
): this
once(
  event: "friendSuggestionDelete",
  listener: (payload: ClusterEvent & FriendSuggestionDelete) => any,
): this
once(event: GATEWAY_READY, listener: (payload: ClusterEvent & GatewayReady) => any): this
once(event: "gatewayReady", listener: (payload: ClusterEvent & GatewayReady) => any): this
once(
  event: GATEWAY_RESUMED,
  listener: (payload: ClusterEvent & GatewayResumed) => any,
): this
once(
  event: "gatewayResumed",
  listener: (payload: ClusterEvent & GatewayResumed) => any,
): this
once(
  event: GIFT_CODE_UPDATE,
  listener: (payload: ClusterEvent & GiftCodeUpdate) => any,
): this
once(
  event: "giftCodeUpdate",
  listener: (payload: ClusterEvent & GiftCodeUpdate) => any,
): this
once(event: GUILD_BAN_ADD, listener: (payload: ClusterEvent & GuildBanAdd) => any): this
once(event: "guildBanAdd", listener: (payload: ClusterEvent & GuildBanAdd) => any): this
once(
  event: GUILD_BAN_REMOVE,
  listener: (payload: ClusterEvent & GuildBanRemove) => any,
): this
once(
  event: "guildBanRemove",
  listener: (payload: ClusterEvent & GuildBanRemove) => any,
): this
once(event: GUILD_CREATE, listener: (payload: ClusterEvent & GuildCreate) => any): this
once(event: "guildCreate", listener: (payload: ClusterEvent & GuildCreate) => any): this
once(event: GUILD_DELETE, listener: (payload: ClusterEvent & GuildDelete) => any): this
once(event: "guildDelete", listener: (payload: ClusterEvent & GuildDelete) => any): this
once(
  event: GUILD_EMOJIS_UPDATE,
  listener: (payload: ClusterEvent & GuildEmojisUpdate) => any,
): this
once(
  event: "guildEmojisUpdate",
  listener: (payload: ClusterEvent & GuildEmojisUpdate) => any,
): this
once(
  event: GUILD_INTEGRATIONS_UPDATE,
  listener: (payload: ClusterEvent & GuildIntegrationsUpdate) => any,
): this
once(
  event: "guildIntegrationsUpdate",
  listener: (payload: ClusterEvent & GuildIntegrationsUpdate) => any,
): this
once(
  event: GUILD_MEMBER_ADD,
  listener: (payload: ClusterEvent & GuildMemberAdd) => any,
): this
once(
  event: "guildMemberAdd",
  listener: (payload: ClusterEvent & GuildMemberAdd) => any,
): this
once(
  event: GUILD_MEMBER_LIST_UPDATE,
  listener: (payload: ClusterEvent & GuildMemberListUpdate) => any,
): this
once(
  event: "guildMemberListUpdate",
  listener: (payload: ClusterEvent & GuildMemberListUpdate) => any,
): this
once(
  event: GUILD_MEMBER_REMOVE,
  listener: (payload: ClusterEvent & GuildMemberRemove) => any,
): this
once(
  event: "guildMemberRemove",
  listener: (payload: ClusterEvent & GuildMemberRemove) => any,
): this
once(
  event: GUILD_MEMBER_UPDATE,
  listener: (payload: ClusterEvent & GuildMemberUpdate) => any,
): this
once(
  event: "guildMemberUpdate",
  listener: (payload: ClusterEvent & GuildMemberUpdate) => any,
): this
once(
  event: GUILD_MEMBERS_CHUNK,
  listener: (payload: ClusterEvent & GuildMembersChunk) => any,
): this
once(
  event: "guildMembersChunk",
  listener: (payload: ClusterEvent & GuildMembersChunk) => any,
): this
once(event: GUILD_READY, listener: (payload: ClusterEvent & GuildReady) => any): this
once(event: "guildReady", listener: (payload: ClusterEvent & GuildReady) => any): this
once(
  event: GUILD_ROLE_CREATE,
  listener: (payload: ClusterEvent & GuildRoleCreate) => any,
): this
once(
  event: "guildRoleCreate",
  listener: (payload: ClusterEvent & GuildRoleCreate) => any,
): this
once(
  event: GUILD_ROLE_DELETE,
  listener: (payload: ClusterEvent & GuildRoleDelete) => any,
): this
once(
  event: "guildRoleDelete",
  listener: (payload: ClusterEvent & GuildRoleDelete) => any,
): this
once(
  event: GUILD_ROLE_UPDATE,
  listener: (payload: ClusterEvent & GuildRoleUpdate) => any,
): this
once(
  event: "guildRoleUpdate",
  listener: (payload: ClusterEvent & GuildRoleUpdate) => any,
): this
once(
  event: GUILD_SOUNDBOARD_SOUND_CREATE,
  listener: (payload: ClusterEvent & GuildSoundboardSoundCreate) => any,
): this
once(
  event: "guildSoundboardSoundCreate",
  listener: (payload: ClusterEvent & GuildSoundboardSoundCreate) => any,
): this
once(
  event: GUILD_SOUNDBOARD_SOUND_DELETE,
  listener: (payload: ClusterEvent & GuildSoundboardSoundDelete) => any,
): this
once(
  event: "guildSoundboardSoundDelete",
  listener: (payload: ClusterEvent & GuildSoundboardSoundDelete) => any,
): this
once(
  event: GUILD_SOUNDBOARD_SOUND_UPDATE,
  listener: (payload: ClusterEvent & GuildSoundboardSoundUpdate) => any,
): this
once(
  event: "guildSoundboardSoundUpdate",
  listener: (payload: ClusterEvent & GuildSoundboardSoundUpdate) => any,
): this
once(
  event: GUILD_SOUNDBOARD_SOUNDS_UPDATE,
  listener: (payload: ClusterEvent & GuildSoundboardSoundsUpdate) => any,
): this
once(
  event: "guildSoundboardSoundsUpdate",
  listener: (payload: ClusterEvent & GuildSoundboardSoundsUpdate) => any,
): this
once(
  event: SOUNDBOARD_SOUNDS,
  listener: (payload: ClusterEvent & SoundboardSounds) => any,
): this
once(
  event: "soundboardSounds",
  listener: (payload: ClusterEvent & SoundboardSounds) => any,
): this
once(
  event: GUILD_STICKERS_UPDATE,
  listener: (payload: ClusterEvent & GuildStickersUpdate) => any,
): this
once(
  event: "guildStickersUpdate",
  listener: (payload: ClusterEvent & GuildStickersUpdate) => any,
): this
once(event: GUILD_UPDATE, listener: (payload: ClusterEvent & GuildUpdate) => any): this
once(event: "guildUpdate", listener: (payload: ClusterEvent & GuildUpdate) => any): this
once(event: INVITE_CREATE, listener: (payload: ClusterEvent & InviteCreate) => any): this
once(event: "inviteCreate", listener: (payload: ClusterEvent & InviteCreate) => any): this
once(event: INVITE_DELETE, listener: (payload: ClusterEvent & InviteDelete) => any): this
once(event: "inviteDelete", listener: (payload: ClusterEvent & InviteDelete) => any): this
once(
  event: LIBRARY_APPLICATION_UPDATE,
  listener: (payload: ClusterEvent & LibraryApplicationUpdate) => any,
): this
once(
  event: "libraryApplicationUpdate",
  listener: (payload: ClusterEvent & LibraryApplicationUpdate) => any,
): this
once(event: LOBBY_CREATE, listener: (payload: ClusterEvent & LobbyCreate) => any): this
once(event: "lobbyCreate", listener: (payload: ClusterEvent & LobbyCreate) => any): this
once(event: LOBBY_DELETE, listener: (payload: ClusterEvent & LobbyDelete) => any): this
once(event: "lobbyDelete", listener: (payload: ClusterEvent & LobbyDelete) => any): this
once(event: LOBBY_UPDATE, listener: (payload: ClusterEvent & LobbyUpdate) => any): this
once(event: "lobbyUpdate", listener: (payload: ClusterEvent & LobbyUpdate) => any): this
once(
  event: LOBBY_MEMBER_CONNECT,
  listener: (payload: ClusterEvent & LobbyMemberConnect) => any,
): this
once(
  event: "lobbyMemberConnect",
  listener: (payload: ClusterEvent & LobbyMemberConnect) => any,
): this
once(
  event: LOBBY_MEMBER_DISCONNECT,
  listener: (payload: ClusterEvent & LobbyMemberDisconnect) => any,
): this
once(
  event: "lobbyMemberDisconnect",
  listener: (payload: ClusterEvent & LobbyMemberDisconnect) => any,
): this
once(
  event: LOBBY_MEMBER_UPDATE,
  listener: (payload: ClusterEvent & LobbyMemberUpdate) => any,
): this
once(
  event: "lobbyMemberUpdate",
  listener: (payload: ClusterEvent & LobbyMemberUpdate) => any,
): this
once(event: LOBBY_MESSAGE, listener: (payload: ClusterEvent & LobbyMessage) => any): this
once(event: "lobbyMessage", listener: (payload: ClusterEvent & LobbyMessage) => any): this
once(
  event: LOBBY_VOICE_SERVER_UPDATE,
  listener: (payload: ClusterEvent & LobbyVoiceServerUpdate) => any,
): this
once(
  event: "lobbyVoiceServerUpdate",
  listener: (payload: ClusterEvent & LobbyVoiceServerUpdate) => any,
): this
once(
  event: LOBBY_VOICE_STATE_UPDATE,
  listener: (payload: ClusterEvent & LobbyVoiceStateUpdate) => any,
): this
once(
  event: "lobbyVoiceStateUpdate",
  listener: (payload: ClusterEvent & LobbyVoiceStateUpdate) => any,
): this
once(event: MESSAGE_ACK, listener: (payload: ClusterEvent & MessageAck) => any): this
once(event: "messageAck", listener: (payload: ClusterEvent & MessageAck) => any): this
once(
  event: MESSAGE_CREATE,
  listener: (payload: ClusterEvent & MessageCreate) => any,
): this
once(
  event: "messageCreate",
  listener: (payload: ClusterEvent & MessageCreate) => any,
): this
once(
  event: MESSAGE_DELETE,
  listener: (payload: ClusterEvent & MessageDelete) => any,
): this
once(
  event: "messageDelete",
  listener: (payload: ClusterEvent & MessageDelete) => any,
): this
once(
  event: MESSAGE_DELETE_BULK,
  listener: (payload: ClusterEvent & MessageDeleteBulk) => any,
): this
once(
  event: "messageDeleteBulk",
  listener: (payload: ClusterEvent & MessageDeleteBulk) => any,
): this
once(
  event: MESSAGE_REACTION_ADD,
  listener: (payload: ClusterEvent & MessageReactionAdd) => any,
): this
once(
  event: "messageReactionAdd",
  listener: (payload: ClusterEvent & MessageReactionAdd) => any,
): this
once(
  event: MESSAGE_REACTION_REMOVE,
  listener: (payload: ClusterEvent & MessageReactionRemove) => any,
): this
once(
  event: "messageReactionRemove",
  listener: (payload: ClusterEvent & MessageReactionRemove) => any,
): this
once(
  event: MESSAGE_REACTION_REMOVE_ALL,
  listener: (payload: ClusterEvent & MessageReactionRemoveAll) => any,
): this
once(
  event: "messageReactionRemoveAll",
  listener: (payload: ClusterEvent & MessageReactionRemoveAll) => any,
): this
once(
  event: MESSAGE_REACTION_REMOVE_EMOJI,
  listener: (payload: ClusterEvent & MessageReactionRemoveEmoji) => any,
): this
once(
  event: "messageReactionRemoveEmoji",
  listener: (payload: ClusterEvent & MessageReactionRemoveEmoji) => any,
): this
once(
  event: MESSAGE_UPDATE,
  listener: (payload: ClusterEvent & MessageUpdate) => any,
): this
once(
  event: "messageUpdate",
  listener: (payload: ClusterEvent & MessageUpdate) => any,
): this
once(
  event: PRESENCES_REPLACE,
  listener: (payload: ClusterEvent & PresencesReplace) => any,
): this
once(
  event: "presencesReplace",
  listener: (payload: ClusterEvent & PresencesReplace) => any,
): this
once(
  event: PRESENCE_UPDATE,
  listener: (payload: ClusterEvent & PresenceUpdate) => any,
): this
once(
  event: "presenceUpdate",
  listener: (payload: ClusterEvent & PresenceUpdate) => any,
): this
once(event: RATE_LIMITED, listener: (payload: ClusterEvent & RateLimited) => any): this
once(event: "rateLimited", listener: (payload: ClusterEvent & RateLimited) => any): this
once(
  event: RECENT_MENTION_DELETE,
  listener: (payload: ClusterEvent & RecentMentionDelete) => any,
): this
once(
  event: "recentMentionDelete",
  listener: (payload: ClusterEvent & RecentMentionDelete) => any,
): this
once(
  event: RELATIONSHIP_ADD,
  listener: (payload: ClusterEvent & RelationshipAdd) => any,
): this
once(
  event: "relationshipAdd",
  listener: (payload: ClusterEvent & RelationshipAdd) => any,
): this
once(
  event: RELATIONSHIP_REMOVE,
  listener: (payload: ClusterEvent & RelationshipRemove) => any,
): this
once(
  event: "relationshipRemove",
  listener: (payload: ClusterEvent & RelationshipRemove) => any,
): this
once(
  event: SESSIONS_REPLACE,
  listener: (payload: ClusterEvent & SessionsReplace) => any,
): this
once(
  event: "sessionsReplace",
  listener: (payload: ClusterEvent & SessionsReplace) => any,
): this
once(
  event: STAGE_INSTANCE_CREATE,
  listener: (payload: ClusterEvent & StageInstanceCreate) => any,
): this
once(
  event: "stageInstanceCreate",
  listener: (payload: ClusterEvent & StageInstanceCreate) => any,
): this
once(
  event: STAGE_INSTANCE_DELETE,
  listener: (payload: ClusterEvent & StageInstanceDelete) => any,
): this
once(
  event: "stageInstanceDelete",
  listener: (payload: ClusterEvent & StageInstanceDelete) => any,
): this
once(
  event: STAGE_INSTANCE_UPDATE,
  listener: (payload: ClusterEvent & StageInstanceUpdate) => any,
): this
once(
  event: "stageInstanceUpdate",
  listener: (payload: ClusterEvent & StageInstanceUpdate) => any,
): this
once(event: STREAM_CREATE, listener: (payload: ClusterEvent & StreamCreate) => any): this
once(event: "streamCreate", listener: (payload: ClusterEvent & StreamCreate) => any): this
once(event: STREAM_DELETE, listener: (payload: ClusterEvent & StreamDelete) => any): this
once(event: "streamDelete", listener: (payload: ClusterEvent & StreamDelete) => any): this
once(
  event: STREAM_SERVER_UPDATE,
  listener: (payload: ClusterEvent & StreamServerUpdate) => any,
): this
once(
  event: "streamServerUpdate",
  listener: (payload: ClusterEvent & StreamServerUpdate) => any,
): this
once(event: STREAM_UPDATE, listener: (payload: ClusterEvent & StreamUpdate) => any): this
once(event: "streamUpdate", listener: (payload: ClusterEvent & StreamUpdate) => any): this
once(
  event: SUBSCRIPTION_CREATE,
  listener: (payload: ClusterEvent & SubscriptionCreate) => any,
): this
once(
  event: "subscriptionCreate",
  listener: (payload: ClusterEvent & SubscriptionCreate) => any,
): this
once(
  event: SUBSCRIPTION_DELETE,
  listener: (payload: ClusterEvent & SubscriptionDelete) => any,
): this
once(
  event: "subscriptionDelete",
  listener: (payload: ClusterEvent & SubscriptionDelete) => any,
): this
once(
  event: SUBSCRIPTION_UPDATE,
  listener: (payload: ClusterEvent & SubscriptionUpdate) => any,
): this
once(
  event: "subscriptionUpdate",
  listener: (payload: ClusterEvent & SubscriptionUpdate) => any,
): this
once(event: THREAD_CREATE, listener: (payload: ClusterEvent & ThreadCreate) => any): this
once(event: "threadCreate", listener: (payload: ClusterEvent & ThreadCreate) => any): this
once(event: THREAD_DELETE, listener: (payload: ClusterEvent & ThreadDelete) => any): this
once(event: "threadDelete", listener: (payload: ClusterEvent & ThreadDelete) => any): this
once(
  event: THREAD_LIST_SYNC,
  listener: (payload: ClusterEvent & ThreadListSync) => any,
): this
once(
  event: "threadListSync",
  listener: (payload: ClusterEvent & ThreadListSync) => any,
): this
once(
  event: THREAD_MEMBER_UPDATE,
  listener: (payload: ClusterEvent & ThreadMemberUpdate) => any,
): this
once(
  event: "threadMemberUpdate",
  listener: (payload: ClusterEvent & ThreadMemberUpdate) => any,
): this
once(
  event: THREAD_MEMBERS_UPDATE,
  listener: (payload: ClusterEvent & ThreadMembersUpdate) => any,
): this
once(
  event: "threadMembersUpdate",
  listener: (payload: ClusterEvent & ThreadMembersUpdate) => any,
): this
once(event: THREAD_UPDATE, listener: (payload: ClusterEvent & ThreadUpdate) => any): this
once(event: "threadUpdate", listener: (payload: ClusterEvent & ThreadUpdate) => any): this
once(event: TYPING_START, listener: (payload: ClusterEvent & TypingStart) => any): this
once(event: "typingStart", listener: (payload: ClusterEvent & TypingStart) => any): this
once(event: TYPING_STOP, listener: (payload: ClusterEvent & TypingStop) => any): this
once(event: "typingStop", listener: (payload: ClusterEvent & TypingStop) => any): this
once(
  event: USER_ACHIEVEMENT_UPDATE,
  listener: (payload: ClusterEvent & UserAchievementUpdate) => any,
): this
once(
  event: "userAchievementUpdate",
  listener: (payload: ClusterEvent & UserAchievementUpdate) => any,
): this
once(
  event: USER_CONNECTIONS_UPDATE,
  listener: (payload: ClusterEvent & UserConnectionsUpdate) => any,
): this
once(
  event: "userConnectionsUpdate",
  listener: (payload: ClusterEvent & UserConnectionsUpdate) => any,
): this
once(
  event: USER_FEED_SETTINGS_UPDATE,
  listener: (payload: ClusterEvent & UserFeedSettingsUpdate) => any,
): this
once(
  event: "userFeedSettingsUpdate",
  listener: (payload: ClusterEvent & UserFeedSettingsUpdate) => any,
): this
once(
  event: USER_GUILD_SETTINGS_UPDATE,
  listener: (payload: ClusterEvent & UserGuildSettingsUpdate) => any,
): this
once(
  event: "userGuildSettingsUpdate",
  listener: (payload: ClusterEvent & UserGuildSettingsUpdate) => any,
): this
once(
  event: USER_PAYMENT_SOURCES_UPDATE,
  listener: (payload: ClusterEvent & UserPaymentSourcesUpdate) => any,
): this
once(
  event: "userPaymentSourcesUpdate",
  listener: (payload: ClusterEvent & UserPaymentSourcesUpdate) => any,
): this
once(
  event: USER_PAYMENTS_UPDATE,
  listener: (payload: ClusterEvent & UserPaymentsUpdate) => any,
): this
once(
  event: "userPaymentsUpdate",
  listener: (payload: ClusterEvent & UserPaymentsUpdate) => any,
): this
once(
  event: USER_REQUIRED_ACTION_UPDATE,
  listener: (payload: ClusterEvent & UserRequiredActionUpdate) => any,
): this
once(
  event: "userRequiredActionUpdate",
  listener: (payload: ClusterEvent & UserRequiredActionUpdate) => any,
): this
once(event: USER_UPDATE, listener: (payload: ClusterEvent & UserUpdate) => any): this
once(event: "userUpdate", listener: (payload: ClusterEvent & UserUpdate) => any): this
once(event: USERS_UPDATE, listener: (payload: ClusterEvent & UsersUpdate) => any): this
once(event: "usersUpdate", listener: (payload: ClusterEvent & UsersUpdate) => any): this
once(
  event: VOICE_CHANNEL_EFFECT_SEND,
  listener: (payload: ClusterEvent & VoiceChannelEffectSend) => any,
): this
once(
  event: "voiceChannelEffectSend",
  listener: (payload: ClusterEvent & VoiceChannelEffectSend) => any,
): this
once(
  event: VOICE_CHANNEL_START_TIME_UPDATE,
  listener: (payload: ClusterEvent & VoiceChannelStartTimeUpdate) => any,
): this
once(
  event: "voiceChannelStartTimeUpdate",
  listener: (payload: ClusterEvent & VoiceChannelStartTimeUpdate) => any,
): this
once(
  event: VOICE_CHANNEL_STATUS_UPDATE,
  listener: (payload: ClusterEvent & VoiceChannelStatusUpdate) => any,
): this
once(
  event: "voiceChannelStatusUpdate",
  listener: (payload: ClusterEvent & VoiceChannelStatusUpdate) => any,
): this
once(
  event: VOICE_SERVER_UPDATE,
  listener: (payload: ClusterEvent & VoiceServerUpdate) => any,
): this
once(
  event: "voiceServerUpdate",
  listener: (payload: ClusterEvent & VoiceServerUpdate) => any,
): this
once(
  event: VOICE_STATE_UPDATE,
  listener: (payload: ClusterEvent & VoiceStateUpdate) => any,
): this
once(
  event: "voiceStateUpdate",
  listener: (payload: ClusterEvent & VoiceStateUpdate) => any,
): this
once(
  event: WEBHOOKS_UPDATE,
  listener: (payload: ClusterEvent & WebhooksUpdate) => any,
): this
once(
  event: "webhooksUpdate",
  listener: (payload: ClusterEvent & WebhooksUpdate) => any,
): this
once(event: RAW, listener: (payload: ClusterEvent & Raw) => any): this
once(event: "raw", listener: (payload: ClusterEvent & Raw) => any): this
once(event: REST_REQUEST, listener: (payload: ClusterEvent & RestRequest) => any): this
once(event: "restRequest", listener: (payload: ClusterEvent & RestRequest) => any): this
once(event: REST_RESPONSE, listener: (payload: ClusterEvent & RestResponse) => any): this
once(event: "restResponse", listener: (payload: ClusterEvent & RestResponse) => any): this
once(event: UNKNOWN, listener: (payload: ClusterEvent & Unknown) => any): this
once(event: "unknown", listener: (payload: ClusterEvent & Unknown) => any): this
once(event: WARN, listener: (payload: Warn | ClusterEvent & Warn) => any): this
once(event: "warn", listener: (payload: Warn | ClusterEvent & Warn) => any): this
once(event: KILLED, listener: (payload: Killed | ClusterEvent & Killed) => any): this
once(event: "killed", listener: (payload: Killed | ClusterEvent & Killed) => any): this
once(event: READY, listener: () => any): this
once(event: "ready", listener: () => any): this
once(event: SHARD, listener: (payload: ClusterEvent) => any): this
once(event: "shard", listener: (payload: ClusterEvent) => any): this
Overrides EventSpewer.once

subscribe()

src/clusterclient.ts:995
subscribe(event: string | symbol, listener: (...args: any[]) => void): EventSubscription
subscribe(
  event: ACTIVITY_JOIN_INVITE,
  listener: (payload: ClusterEvent & ActivityJoinInvite) => any,
): EventSubscription
subscribe(
  event: "activityJoinInvite",
  listener: (payload: ClusterEvent & ActivityJoinInvite) => any,
): EventSubscription
subscribe(
  event: ACTIVITY_JOIN_REQUEST,
  listener: (payload: ClusterEvent & ActivityJoinRequest) => any,
): EventSubscription
subscribe(
  event: "activityJoinRequest",
  listener: (payload: ClusterEvent & ActivityJoinRequest) => any,
): EventSubscription
subscribe(
  event: ACTIVITY_START,
  listener: (payload: ClusterEvent & ActivityStart) => any,
): EventSubscription
subscribe(
  event: "activityStart",
  listener: (payload: ClusterEvent & ActivityStart) => any,
): EventSubscription
subscribe(
  event: APPLICATION_COMMAND_CREATE,
  listener: (payload: ClusterEvent & ApplicationCommandCreate) => any,
): EventSubscription
subscribe(
  event: "applicationCommandCreate",
  listener: (payload: ClusterEvent & ApplicationCommandCreate) => any,
): EventSubscription
subscribe(
  event: APPLICATION_COMMAND_DELETE,
  listener: (payload: ClusterEvent & ApplicationCommandDelete) => any,
): EventSubscription
subscribe(
  event: "applicationCommandDelete",
  listener: (payload: ClusterEvent & ApplicationCommandDelete) => any,
): EventSubscription
subscribe(
  event: APPLICATION_COMMAND_UPDATE,
  listener: (payload: ClusterEvent & ApplicationCommandUpdate) => any,
): EventSubscription
subscribe(
  event: "applicationCommandUpdate",
  listener: (payload: ClusterEvent & ApplicationCommandUpdate) => any,
): EventSubscription
subscribe(
  event: "braintreePopupBridgeCallback",
  listener: (payload: ClusterEvent & BraintreePopupBridgeCallback) => any,
): EventSubscription
subscribe(
  event: "autoModerationActionExecution",
  listener: (payload: ClusterEvent & AutoModerationActionExecution) => any,
): EventSubscription
subscribe(
  event: AUTO_MODERATION_RULE_CREATE,
  listener: (payload: ClusterEvent & AutoModerationRuleCreate) => any,
): EventSubscription
subscribe(
  event: "autoModerationRuleCreate",
  listener: (payload: ClusterEvent & AutoModerationRuleCreate) => any,
): EventSubscription
subscribe(
  event: AUTO_MODERATION_RULE_DELETE,
  listener: (payload: ClusterEvent & AutoModerationRuleDelete) => any,
): EventSubscription
subscribe(
  event: "autoModerationRuleDelete",
  listener: (payload: ClusterEvent & AutoModerationRuleDelete) => any,
): EventSubscription
subscribe(
  event: AUTO_MODERATION_RULE_UPDATE,
  listener: (payload: ClusterEvent & AutoModerationRuleUpdate) => any,
): EventSubscription
subscribe(
  event: "autoModerationRuleUpdate",
  listener: (payload: ClusterEvent & AutoModerationRuleUpdate) => any,
): EventSubscription
subscribe(
  event: CALL_CREATE,
  listener: (payload: ClusterEvent & CallCreate) => any,
): EventSubscription
subscribe(
  event: "callCreate",
  listener: (payload: ClusterEvent & CallCreate) => any,
): EventSubscription
subscribe(
  event: CALL_DELETE,
  listener: (payload: ClusterEvent & CallDelete) => any,
): EventSubscription
subscribe(
  event: "callDelete",
  listener: (payload: ClusterEvent & CallDelete) => any,
): EventSubscription
subscribe(
  event: CALL_UPDATE,
  listener: (payload: ClusterEvent & CallUpdate) => any,
): EventSubscription
subscribe(
  event: "callUpdate",
  listener: (payload: ClusterEvent & CallUpdate) => any,
): EventSubscription
subscribe(
  event: CHANNEL_CREATE,
  listener: (payload: ClusterEvent & ChannelCreate) => any,
): EventSubscription
subscribe(
  event: "channelCreate",
  listener: (payload: ClusterEvent & ChannelCreate) => any,
): EventSubscription
subscribe(
  event: CHANNEL_DELETE,
  listener: (payload: ClusterEvent & ChannelDelete) => any,
): EventSubscription
subscribe(
  event: "channelDelete",
  listener: (payload: ClusterEvent & ChannelDelete) => any,
): EventSubscription
subscribe(
  event: CHANNEL_UPDATE,
  listener: (payload: ClusterEvent & ChannelUpdate) => any,
): EventSubscription
subscribe(
  event: "channelUpdate",
  listener: (payload: ClusterEvent & ChannelUpdate) => any,
): EventSubscription
subscribe(
  event: CHANNEL_PINS_ACK,
  listener: (payload: ClusterEvent & ChannelPinsAck) => any,
): EventSubscription
subscribe(
  event: "channelPinsAck",
  listener: (payload: ClusterEvent & ChannelPinsAck) => any,
): EventSubscription
subscribe(
  event: CHANNEL_INFO,
  listener: (payload: ClusterEvent & ChannelInfo) => any,
): EventSubscription
subscribe(
  event: "channelInfo",
  listener: (payload: ClusterEvent & ChannelInfo) => any,
): EventSubscription
subscribe(
  event: CHANNEL_PINS_UPDATE,
  listener: (payload: ClusterEvent & ChannelPinsUpdate) => any,
): EventSubscription
subscribe(
  event: "channelPinsUpdate",
  listener: (payload: ClusterEvent & ChannelPinsUpdate) => any,
): EventSubscription
subscribe(
  event: CHANNEL_RECIPIENT_ADD,
  listener: (payload: ClusterEvent & ChannelRecipientAdd) => any,
): EventSubscription
subscribe(
  event: "channelRecipientAdd",
  listener: (payload: ClusterEvent & ChannelRecipientAdd) => any,
): EventSubscription
subscribe(
  event: CHANNEL_RECIPIENT_REMOVE,
  listener: (payload: ClusterEvent & ChannelRecipientRemove) => any,
): EventSubscription
subscribe(
  event: "channelRecipientRemove",
  listener: (payload: ClusterEvent & ChannelRecipientRemove) => any,
): EventSubscription
subscribe(
  event: ENTITLEMENT_CREATE,
  listener: (payload: ClusterEvent & EntitlementCreate) => any,
): EventSubscription
subscribe(
  event: "entitlementCreate",
  listener: (payload: ClusterEvent & EntitlementCreate) => any,
): EventSubscription
subscribe(
  event: ENTITLEMENT_DELETE,
  listener: (payload: ClusterEvent & EntitlementDelete) => any,
): EventSubscription
subscribe(
  event: "entitlementDelete",
  listener: (payload: ClusterEvent & EntitlementDelete) => any,
): EventSubscription
subscribe(
  event: ENTITLEMENT_UPDATE,
  listener: (payload: ClusterEvent & EntitlementUpdate) => any,
): EventSubscription
subscribe(
  event: "entitlementUpdate",
  listener: (payload: ClusterEvent & EntitlementUpdate) => any,
): EventSubscription
subscribe(
  event: FRIEND_SUGGESTION_CREATE,
  listener: (payload: ClusterEvent & FriendSuggestionCreate) => any,
): EventSubscription
subscribe(
  event: "friendSuggestionCreate",
  listener: (payload: ClusterEvent & FriendSuggestionCreate) => any,
): EventSubscription
subscribe(
  event: FRIEND_SUGGESTION_DELETE,
  listener: (payload: ClusterEvent & FriendSuggestionDelete) => any,
): EventSubscription
subscribe(
  event: "friendSuggestionDelete",
  listener: (payload: ClusterEvent & FriendSuggestionDelete) => any,
): EventSubscription
subscribe(
  event: GATEWAY_READY,
  listener: (payload: ClusterEvent & GatewayReady) => any,
): EventSubscription
subscribe(
  event: "gatewayReady",
  listener: (payload: ClusterEvent & GatewayReady) => any,
): EventSubscription
subscribe(
  event: GATEWAY_RESUMED,
  listener: (payload: ClusterEvent & GatewayResumed) => any,
): EventSubscription
subscribe(
  event: "gatewayResumed",
  listener: (payload: ClusterEvent & GatewayResumed) => any,
): EventSubscription
subscribe(
  event: GIFT_CODE_UPDATE,
  listener: (payload: ClusterEvent & GiftCodeUpdate) => any,
): EventSubscription
subscribe(
  event: "giftCodeUpdate",
  listener: (payload: ClusterEvent & GiftCodeUpdate) => any,
): EventSubscription
subscribe(
  event: GUILD_BAN_ADD,
  listener: (payload: ClusterEvent & GuildBanAdd) => any,
): EventSubscription
subscribe(
  event: "guildBanAdd",
  listener: (payload: ClusterEvent & GuildBanAdd) => any,
): EventSubscription
subscribe(
  event: GUILD_BAN_REMOVE,
  listener: (payload: ClusterEvent & GuildBanRemove) => any,
): EventSubscription
subscribe(
  event: "guildBanRemove",
  listener: (payload: ClusterEvent & GuildBanRemove) => any,
): EventSubscription
subscribe(
  event: GUILD_CREATE,
  listener: (payload: ClusterEvent & GuildCreate) => any,
): EventSubscription
subscribe(
  event: "guildCreate",
  listener: (payload: ClusterEvent & GuildCreate) => any,
): EventSubscription
subscribe(
  event: GUILD_DELETE,
  listener: (payload: ClusterEvent & GuildDelete) => any,
): EventSubscription
subscribe(
  event: "guildDelete",
  listener: (payload: ClusterEvent & GuildDelete) => any,
): EventSubscription
subscribe(
  event: GUILD_EMOJIS_UPDATE,
  listener: (payload: ClusterEvent & GuildEmojisUpdate) => any,
): EventSubscription
subscribe(
  event: "guildEmojisUpdate",
  listener: (payload: ClusterEvent & GuildEmojisUpdate) => any,
): EventSubscription
subscribe(
  event: GUILD_INTEGRATIONS_UPDATE,
  listener: (payload: ClusterEvent & GuildIntegrationsUpdate) => any,
): EventSubscription
subscribe(
  event: "guildIntegrationsUpdate",
  listener: (payload: ClusterEvent & GuildIntegrationsUpdate) => any,
): EventSubscription
subscribe(
  event: GUILD_MEMBER_ADD,
  listener: (payload: ClusterEvent & GuildMemberAdd) => any,
): EventSubscription
subscribe(
  event: "guildMemberAdd",
  listener: (payload: ClusterEvent & GuildMemberAdd) => any,
): EventSubscription
subscribe(
  event: GUILD_MEMBER_LIST_UPDATE,
  listener: (payload: ClusterEvent & GuildMemberListUpdate) => any,
): EventSubscription
subscribe(
  event: "guildMemberListUpdate",
  listener: (payload: ClusterEvent & GuildMemberListUpdate) => any,
): EventSubscription
subscribe(
  event: GUILD_MEMBER_REMOVE,
  listener: (payload: ClusterEvent & GuildMemberRemove) => any,
): EventSubscription
subscribe(
  event: "guildMemberRemove",
  listener: (payload: ClusterEvent & GuildMemberRemove) => any,
): EventSubscription
subscribe(
  event: GUILD_MEMBER_UPDATE,
  listener: (payload: ClusterEvent & GuildMemberUpdate) => any,
): EventSubscription
subscribe(
  event: "guildMemberUpdate",
  listener: (payload: ClusterEvent & GuildMemberUpdate) => any,
): EventSubscription
subscribe(
  event: GUILD_MEMBERS_CHUNK,
  listener: (payload: ClusterEvent & GuildMembersChunk) => any,
): EventSubscription
subscribe(
  event: "guildMembersChunk",
  listener: (payload: ClusterEvent & GuildMembersChunk) => any,
): EventSubscription
subscribe(
  event: GUILD_READY,
  listener: (payload: ClusterEvent & GuildReady) => any,
): EventSubscription
subscribe(
  event: "guildReady",
  listener: (payload: ClusterEvent & GuildReady) => any,
): EventSubscription
subscribe(
  event: GUILD_ROLE_CREATE,
  listener: (payload: ClusterEvent & GuildRoleCreate) => any,
): EventSubscription
subscribe(
  event: "guildRoleCreate",
  listener: (payload: ClusterEvent & GuildRoleCreate) => any,
): EventSubscription
subscribe(
  event: GUILD_ROLE_DELETE,
  listener: (payload: ClusterEvent & GuildRoleDelete) => any,
): EventSubscription
subscribe(
  event: "guildRoleDelete",
  listener: (payload: ClusterEvent & GuildRoleDelete) => any,
): EventSubscription
subscribe(
  event: GUILD_ROLE_UPDATE,
  listener: (payload: ClusterEvent & GuildRoleUpdate) => any,
): EventSubscription
subscribe(
  event: "guildRoleUpdate",
  listener: (payload: ClusterEvent & GuildRoleUpdate) => any,
): EventSubscription
subscribe(
  event: GUILD_SOUNDBOARD_SOUND_CREATE,
  listener: (payload: ClusterEvent & GuildSoundboardSoundCreate) => any,
): EventSubscription
subscribe(
  event: "guildSoundboardSoundCreate",
  listener: (payload: ClusterEvent & GuildSoundboardSoundCreate) => any,
): EventSubscription
subscribe(
  event: GUILD_SOUNDBOARD_SOUND_DELETE,
  listener: (payload: ClusterEvent & GuildSoundboardSoundDelete) => any,
): EventSubscription
subscribe(
  event: "guildSoundboardSoundDelete",
  listener: (payload: ClusterEvent & GuildSoundboardSoundDelete) => any,
): EventSubscription
subscribe(
  event: GUILD_SOUNDBOARD_SOUND_UPDATE,
  listener: (payload: ClusterEvent & GuildSoundboardSoundUpdate) => any,
): EventSubscription
subscribe(
  event: "guildSoundboardSoundUpdate",
  listener: (payload: ClusterEvent & GuildSoundboardSoundUpdate) => any,
): EventSubscription
subscribe(
  event: "guildSoundboardSoundsUpdate",
  listener: (payload: ClusterEvent & GuildSoundboardSoundsUpdate) => any,
): EventSubscription
subscribe(
  event: SOUNDBOARD_SOUNDS,
  listener: (payload: ClusterEvent & SoundboardSounds) => any,
): EventSubscription
subscribe(
  event: "soundboardSounds",
  listener: (payload: ClusterEvent & SoundboardSounds) => any,
): EventSubscription
subscribe(
  event: GUILD_STICKERS_UPDATE,
  listener: (payload: ClusterEvent & GuildStickersUpdate) => any,
): EventSubscription
subscribe(
  event: "guildStickersUpdate",
  listener: (payload: ClusterEvent & GuildStickersUpdate) => any,
): EventSubscription
subscribe(
  event: GUILD_UPDATE,
  listener: (payload: ClusterEvent & GuildUpdate) => any,
): EventSubscription
subscribe(
  event: "guildUpdate",
  listener: (payload: ClusterEvent & GuildUpdate) => any,
): EventSubscription
subscribe(
  event: INVITE_CREATE,
  listener: (payload: ClusterEvent & InviteCreate) => any,
): EventSubscription
subscribe(
  event: "inviteCreate",
  listener: (payload: ClusterEvent & InviteCreate) => any,
): EventSubscription
subscribe(
  event: INVITE_DELETE,
  listener: (payload: ClusterEvent & InviteDelete) => any,
): EventSubscription
subscribe(
  event: "inviteDelete",
  listener: (payload: ClusterEvent & InviteDelete) => any,
): EventSubscription
subscribe(
  event: LIBRARY_APPLICATION_UPDATE,
  listener: (payload: ClusterEvent & LibraryApplicationUpdate) => any,
): EventSubscription
subscribe(
  event: "libraryApplicationUpdate",
  listener: (payload: ClusterEvent & LibraryApplicationUpdate) => any,
): EventSubscription
subscribe(
  event: LOBBY_CREATE,
  listener: (payload: ClusterEvent & LobbyCreate) => any,
): EventSubscription
subscribe(
  event: "lobbyCreate",
  listener: (payload: ClusterEvent & LobbyCreate) => any,
): EventSubscription
subscribe(
  event: LOBBY_DELETE,
  listener: (payload: ClusterEvent & LobbyDelete) => any,
): EventSubscription
subscribe(
  event: "lobbyDelete",
  listener: (payload: ClusterEvent & LobbyDelete) => any,
): EventSubscription
subscribe(
  event: LOBBY_UPDATE,
  listener: (payload: ClusterEvent & LobbyUpdate) => any,
): EventSubscription
subscribe(
  event: "lobbyUpdate",
  listener: (payload: ClusterEvent & LobbyUpdate) => any,
): EventSubscription
subscribe(
  event: LOBBY_MEMBER_CONNECT,
  listener: (payload: ClusterEvent & LobbyMemberConnect) => any,
): EventSubscription
subscribe(
  event: "lobbyMemberConnect",
  listener: (payload: ClusterEvent & LobbyMemberConnect) => any,
): EventSubscription
subscribe(
  event: LOBBY_MEMBER_DISCONNECT,
  listener: (payload: ClusterEvent & LobbyMemberDisconnect) => any,
): EventSubscription
subscribe(
  event: "lobbyMemberDisconnect",
  listener: (payload: ClusterEvent & LobbyMemberDisconnect) => any,
): EventSubscription
subscribe(
  event: LOBBY_MEMBER_UPDATE,
  listener: (payload: ClusterEvent & LobbyMemberUpdate) => any,
): EventSubscription
subscribe(
  event: "lobbyMemberUpdate",
  listener: (payload: ClusterEvent & LobbyMemberUpdate) => any,
): EventSubscription
subscribe(
  event: LOBBY_MESSAGE,
  listener: (payload: ClusterEvent & LobbyMessage) => any,
): EventSubscription
subscribe(
  event: "lobbyMessage",
  listener: (payload: ClusterEvent & LobbyMessage) => any,
): EventSubscription
subscribe(
  event: LOBBY_VOICE_SERVER_UPDATE,
  listener: (payload: ClusterEvent & LobbyVoiceServerUpdate) => any,
): EventSubscription
subscribe(
  event: "lobbyVoiceServerUpdate",
  listener: (payload: ClusterEvent & LobbyVoiceServerUpdate) => any,
): EventSubscription
subscribe(
  event: LOBBY_VOICE_STATE_UPDATE,
  listener: (payload: ClusterEvent & LobbyVoiceStateUpdate) => any,
): EventSubscription
subscribe(
  event: "lobbyVoiceStateUpdate",
  listener: (payload: ClusterEvent & LobbyVoiceStateUpdate) => any,
): EventSubscription
subscribe(
  event: MESSAGE_ACK,
  listener: (payload: ClusterEvent & MessageAck) => any,
): EventSubscription
subscribe(
  event: "messageAck",
  listener: (payload: ClusterEvent & MessageAck) => any,
): EventSubscription
subscribe(
  event: MESSAGE_CREATE,
  listener: (payload: ClusterEvent & MessageCreate) => any,
): EventSubscription
subscribe(
  event: "messageCreate",
  listener: (payload: ClusterEvent & MessageCreate) => any,
): EventSubscription
subscribe(
  event: MESSAGE_DELETE,
  listener: (payload: ClusterEvent & MessageDelete) => any,
): EventSubscription
subscribe(
  event: "messageDelete",
  listener: (payload: ClusterEvent & MessageDelete) => any,
): EventSubscription
subscribe(
  event: MESSAGE_DELETE_BULK,
  listener: (payload: ClusterEvent & MessageDeleteBulk) => any,
): EventSubscription
subscribe(
  event: "messageDeleteBulk",
  listener: (payload: ClusterEvent & MessageDeleteBulk) => any,
): EventSubscription
subscribe(
  event: MESSAGE_REACTION_ADD,
  listener: (payload: ClusterEvent & MessageReactionAdd) => any,
): EventSubscription
subscribe(
  event: "messageReactionAdd",
  listener: (payload: ClusterEvent & MessageReactionAdd) => any,
): EventSubscription
subscribe(
  event: MESSAGE_REACTION_REMOVE,
  listener: (payload: ClusterEvent & MessageReactionRemove) => any,
): EventSubscription
subscribe(
  event: "messageReactionRemove",
  listener: (payload: ClusterEvent & MessageReactionRemove) => any,
): EventSubscription
subscribe(
  event: MESSAGE_REACTION_REMOVE_ALL,
  listener: (payload: ClusterEvent & MessageReactionRemoveAll) => any,
): EventSubscription
subscribe(
  event: "messageReactionRemoveAll",
  listener: (payload: ClusterEvent & MessageReactionRemoveAll) => any,
): EventSubscription
subscribe(
  event: MESSAGE_REACTION_REMOVE_EMOJI,
  listener: (payload: ClusterEvent & MessageReactionRemoveEmoji) => any,
): EventSubscription
subscribe(
  event: "messageReactionRemoveEmoji",
  listener: (payload: ClusterEvent & MessageReactionRemoveEmoji) => any,
): EventSubscription
subscribe(
  event: MESSAGE_UPDATE,
  listener: (payload: ClusterEvent & MessageUpdate) => any,
): EventSubscription
subscribe(
  event: "messageUpdate",
  listener: (payload: ClusterEvent & MessageUpdate) => any,
): EventSubscription
subscribe(
  event: PRESENCES_REPLACE,
  listener: (payload: ClusterEvent & PresencesReplace) => any,
): EventSubscription
subscribe(
  event: "presencesReplace",
  listener: (payload: ClusterEvent & PresencesReplace) => any,
): EventSubscription
subscribe(
  event: PRESENCE_UPDATE,
  listener: (payload: ClusterEvent & PresenceUpdate) => any,
): EventSubscription
subscribe(
  event: "presenceUpdate",
  listener: (payload: ClusterEvent & PresenceUpdate) => any,
): EventSubscription
subscribe(
  event: RATE_LIMITED,
  listener: (payload: ClusterEvent & RateLimited) => any,
): EventSubscription
subscribe(
  event: "rateLimited",
  listener: (payload: ClusterEvent & RateLimited) => any,
): EventSubscription
subscribe(
  event: RECENT_MENTION_DELETE,
  listener: (payload: ClusterEvent & RecentMentionDelete) => any,
): EventSubscription
subscribe(
  event: "recentMentionDelete",
  listener: (payload: ClusterEvent & RecentMentionDelete) => any,
): EventSubscription
subscribe(
  event: RELATIONSHIP_ADD,
  listener: (payload: ClusterEvent & RelationshipAdd) => any,
): EventSubscription
subscribe(
  event: "relationshipAdd",
  listener: (payload: ClusterEvent & RelationshipAdd) => any,
): EventSubscription
subscribe(
  event: RELATIONSHIP_REMOVE,
  listener: (payload: ClusterEvent & RelationshipRemove) => any,
): EventSubscription
subscribe(
  event: "relationshipRemove",
  listener: (payload: ClusterEvent & RelationshipRemove) => any,
): EventSubscription
subscribe(
  event: SESSIONS_REPLACE,
  listener: (payload: ClusterEvent & SessionsReplace) => any,
): EventSubscription
subscribe(
  event: "sessionsReplace",
  listener: (payload: ClusterEvent & SessionsReplace) => any,
): EventSubscription
subscribe(
  event: STAGE_INSTANCE_CREATE,
  listener: (payload: ClusterEvent & StageInstanceCreate) => any,
): EventSubscription
subscribe(
  event: "stageInstanceCreate",
  listener: (payload: ClusterEvent & StageInstanceCreate) => any,
): EventSubscription
subscribe(
  event: STAGE_INSTANCE_DELETE,
  listener: (payload: ClusterEvent & StageInstanceDelete) => any,
): EventSubscription
subscribe(
  event: "stageInstanceDelete",
  listener: (payload: ClusterEvent & StageInstanceDelete) => any,
): EventSubscription
subscribe(
  event: STAGE_INSTANCE_UPDATE,
  listener: (payload: ClusterEvent & StageInstanceUpdate) => any,
): EventSubscription
subscribe(
  event: "stageInstanceUpdate",
  listener: (payload: ClusterEvent & StageInstanceUpdate) => any,
): EventSubscription
subscribe(
  event: STREAM_CREATE,
  listener: (payload: ClusterEvent & StreamCreate) => any,
): EventSubscription
subscribe(
  event: "streamCreate",
  listener: (payload: ClusterEvent & StreamCreate) => any,
): EventSubscription
subscribe(
  event: STREAM_DELETE,
  listener: (payload: ClusterEvent & StreamDelete) => any,
): EventSubscription
subscribe(
  event: "streamDelete",
  listener: (payload: ClusterEvent & StreamDelete) => any,
): EventSubscription
subscribe(
  event: STREAM_SERVER_UPDATE,
  listener: (payload: ClusterEvent & StreamServerUpdate) => any,
): EventSubscription
subscribe(
  event: "streamServerUpdate",
  listener: (payload: ClusterEvent & StreamServerUpdate) => any,
): EventSubscription
subscribe(
  event: STREAM_UPDATE,
  listener: (payload: ClusterEvent & StreamUpdate) => any,
): EventSubscription
subscribe(
  event: "streamUpdate",
  listener: (payload: ClusterEvent & StreamUpdate) => any,
): EventSubscription
subscribe(
  event: SUBSCRIPTION_CREATE,
  listener: (payload: ClusterEvent & SubscriptionCreate) => any,
): EventSubscription
subscribe(
  event: "subscriptionCreate",
  listener: (payload: ClusterEvent & SubscriptionCreate) => any,
): EventSubscription
subscribe(
  event: SUBSCRIPTION_DELETE,
  listener: (payload: ClusterEvent & SubscriptionDelete) => any,
): EventSubscription
subscribe(
  event: "subscriptionDelete",
  listener: (payload: ClusterEvent & SubscriptionDelete) => any,
): EventSubscription
subscribe(
  event: SUBSCRIPTION_UPDATE,
  listener: (payload: ClusterEvent & SubscriptionUpdate) => any,
): EventSubscription
subscribe(
  event: "subscriptionUpdate",
  listener: (payload: ClusterEvent & SubscriptionUpdate) => any,
): EventSubscription
subscribe(
  event: THREAD_CREATE,
  listener: (payload: ClusterEvent & ThreadCreate) => any,
): EventSubscription
subscribe(
  event: "threadCreate",
  listener: (payload: ClusterEvent & ThreadCreate) => any,
): EventSubscription
subscribe(
  event: THREAD_DELETE,
  listener: (payload: ClusterEvent & ThreadDelete) => any,
): EventSubscription
subscribe(
  event: "threadDelete",
  listener: (payload: ClusterEvent & ThreadDelete) => any,
): EventSubscription
subscribe(
  event: THREAD_LIST_SYNC,
  listener: (payload: ClusterEvent & ThreadListSync) => any,
): EventSubscription
subscribe(
  event: "threadListSync",
  listener: (payload: ClusterEvent & ThreadListSync) => any,
): EventSubscription
subscribe(
  event: THREAD_MEMBER_UPDATE,
  listener: (payload: ClusterEvent & ThreadMemberUpdate) => any,
): EventSubscription
subscribe(
  event: "threadMemberUpdate",
  listener: (payload: ClusterEvent & ThreadMemberUpdate) => any,
): EventSubscription
subscribe(
  event: THREAD_MEMBERS_UPDATE,
  listener: (payload: ClusterEvent & ThreadMembersUpdate) => any,
): EventSubscription
subscribe(
  event: "threadMembersUpdate",
  listener: (payload: ClusterEvent & ThreadMembersUpdate) => any,
): EventSubscription
subscribe(
  event: THREAD_UPDATE,
  listener: (payload: ClusterEvent & ThreadUpdate) => any,
): EventSubscription
subscribe(
  event: "threadUpdate",
  listener: (payload: ClusterEvent & ThreadUpdate) => any,
): EventSubscription
subscribe(
  event: TYPING_START,
  listener: (payload: ClusterEvent & TypingStart) => any,
): EventSubscription
subscribe(
  event: "typingStart",
  listener: (payload: ClusterEvent & TypingStart) => any,
): EventSubscription
subscribe(
  event: TYPING_STOP,
  listener: (payload: ClusterEvent & TypingStop) => any,
): EventSubscription
subscribe(
  event: "typingStop",
  listener: (payload: ClusterEvent & TypingStop) => any,
): EventSubscription
subscribe(
  event: USER_ACHIEVEMENT_UPDATE,
  listener: (payload: ClusterEvent & UserAchievementUpdate) => any,
): EventSubscription
subscribe(
  event: "userAchievementUpdate",
  listener: (payload: ClusterEvent & UserAchievementUpdate) => any,
): EventSubscription
subscribe(
  event: USER_CONNECTIONS_UPDATE,
  listener: (payload: ClusterEvent & UserConnectionsUpdate) => any,
): EventSubscription
subscribe(
  event: "userConnectionsUpdate",
  listener: (payload: ClusterEvent & UserConnectionsUpdate) => any,
): EventSubscription
subscribe(
  event: USER_FEED_SETTINGS_UPDATE,
  listener: (payload: ClusterEvent & UserFeedSettingsUpdate) => any,
): EventSubscription
subscribe(
  event: "userFeedSettingsUpdate",
  listener: (payload: ClusterEvent & UserFeedSettingsUpdate) => any,
): EventSubscription
subscribe(
  event: USER_GUILD_SETTINGS_UPDATE,
  listener: (payload: ClusterEvent & UserGuildSettingsUpdate) => any,
): EventSubscription
subscribe(
  event: "userGuildSettingsUpdate",
  listener: (payload: ClusterEvent & UserGuildSettingsUpdate) => any,
): EventSubscription
subscribe(
  event: USER_PAYMENT_SOURCES_UPDATE,
  listener: (payload: ClusterEvent & UserPaymentSourcesUpdate) => any,
): EventSubscription
subscribe(
  event: "userPaymentSourcesUpdate",
  listener: (payload: ClusterEvent & UserPaymentSourcesUpdate) => any,
): EventSubscription
subscribe(
  event: USER_PAYMENTS_UPDATE,
  listener: (payload: ClusterEvent & UserPaymentsUpdate) => any,
): EventSubscription
subscribe(
  event: "userPaymentsUpdate",
  listener: (payload: ClusterEvent & UserPaymentsUpdate) => any,
): EventSubscription
subscribe(
  event: USER_REQUIRED_ACTION_UPDATE,
  listener: (payload: ClusterEvent & UserRequiredActionUpdate) => any,
): EventSubscription
subscribe(
  event: "userRequiredActionUpdate",
  listener: (payload: ClusterEvent & UserRequiredActionUpdate) => any,
): EventSubscription
subscribe(
  event: USER_UPDATE,
  listener: (payload: ClusterEvent & UserUpdate) => any,
): EventSubscription
subscribe(
  event: "userUpdate",
  listener: (payload: ClusterEvent & UserUpdate) => any,
): EventSubscription
subscribe(
  event: USERS_UPDATE,
  listener: (payload: ClusterEvent & UsersUpdate) => any,
): EventSubscription
subscribe(
  event: "usersUpdate",
  listener: (payload: ClusterEvent & UsersUpdate) => any,
): EventSubscription
subscribe(
  event: VOICE_CHANNEL_EFFECT_SEND,
  listener: (payload: ClusterEvent & VoiceChannelEffectSend) => any,
): EventSubscription
subscribe(
  event: "voiceChannelEffectSend",
  listener: (payload: ClusterEvent & VoiceChannelEffectSend) => any,
): EventSubscription
subscribe(
  event: "voiceChannelStartTimeUpdate",
  listener: (payload: ClusterEvent & VoiceChannelStartTimeUpdate) => any,
): EventSubscription
subscribe(
  event: VOICE_CHANNEL_STATUS_UPDATE,
  listener: (payload: ClusterEvent & VoiceChannelStatusUpdate) => any,
): EventSubscription
subscribe(
  event: "voiceChannelStatusUpdate",
  listener: (payload: ClusterEvent & VoiceChannelStatusUpdate) => any,
): EventSubscription
subscribe(
  event: VOICE_SERVER_UPDATE,
  listener: (payload: ClusterEvent & VoiceServerUpdate) => any,
): EventSubscription
subscribe(
  event: "voiceServerUpdate",
  listener: (payload: ClusterEvent & VoiceServerUpdate) => any,
): EventSubscription
subscribe(
  event: VOICE_STATE_UPDATE,
  listener: (payload: ClusterEvent & VoiceStateUpdate) => any,
): EventSubscription
subscribe(
  event: "voiceStateUpdate",
  listener: (payload: ClusterEvent & VoiceStateUpdate) => any,
): EventSubscription
subscribe(
  event: WEBHOOKS_UPDATE,
  listener: (payload: ClusterEvent & WebhooksUpdate) => any,
): EventSubscription
subscribe(
  event: "webhooksUpdate",
  listener: (payload: ClusterEvent & WebhooksUpdate) => any,
): EventSubscription
subscribe(event: RAW, listener: (payload: ClusterEvent & Raw) => any): EventSubscription
subscribe(event: "raw", listener: (payload: ClusterEvent & Raw) => any): EventSubscription
subscribe(
  event: REST_REQUEST,
  listener: (payload: ClusterEvent & RestRequest) => any,
): EventSubscription
subscribe(
  event: "restRequest",
  listener: (payload: ClusterEvent & RestRequest) => any,
): EventSubscription
subscribe(
  event: REST_RESPONSE,
  listener: (payload: ClusterEvent & RestResponse) => any,
): EventSubscription
subscribe(
  event: "restResponse",
  listener: (payload: ClusterEvent & RestResponse) => any,
): EventSubscription
subscribe(
  event: UNKNOWN,
  listener: (payload: ClusterEvent & Unknown) => any,
): EventSubscription
subscribe(
  event: "unknown",
  listener: (payload: ClusterEvent & Unknown) => any,
): EventSubscription
subscribe(
  event: WARN,
  listener: (payload: Warn | ClusterEvent & Warn) => any,
): EventSubscription
subscribe(
  event: "warn",
  listener: (payload: Warn | ClusterEvent & Warn) => any,
): EventSubscription
subscribe(
  event: KILLED,
  listener: (payload: Killed | ClusterEvent & Killed) => any,
): EventSubscription
subscribe(
  event: "killed",
  listener: (payload: Killed | ClusterEvent & Killed) => any,
): EventSubscription
subscribe(event: READY, listener: () => any): EventSubscription
subscribe(event: "ready", listener: () => any): EventSubscription
subscribe(event: SHARD, listener: (payload: ClusterEvent) => any): EventSubscription
subscribe(event: "shard", listener: (payload: ClusterEvent) => any): EventSubscription
Overrides EventSpewer.subscribe