detritus-client
Version:
A Typescript NodeJS library to interact with Discord's API, both Rest and Gateway.
385 lines • 100 kB
TypeScript
import { Client as DetritusRestClient } from 'detritus-client-rest';
import { EventSpewer, EventSubscription } from 'detritus-utils';
import { Bucket } from './bucket';
import { ShardClient, ShardClientOptions, ShardClientRunOptions } from './client';
import { ClusterProcessChild } from './cluster/processchild';
import { BaseCollection } from './collections/basecollection';
import { CommandClient } from './commandclient';
import { ClientEvents } from './constants';
import { GatewayClientEvents } from './gateway/clientevents';
import { InteractionCommandClient } from './interactioncommandclient';
export interface ClusterClientOptions extends ShardClientOptions {
maxConcurrency?: number;
shardCount?: number;
shards?: [number, number];
}
export interface ClusterClientRunOptions extends ShardClientRunOptions {
delay?: number;
maxConcurrency?: number;
shardCount?: number;
}
export declare class ClusterClient extends EventSpewer {
readonly _refresh: {
applications: {
last: number;
time: number;
};
oauth2Application: {
last: number;
time: number;
};
};
readonly _shardsWaiting: BaseCollection<number, {
resolve: Function;
reject: Function;
}>;
readonly token: string;
readonly commandClient: CommandClient | null;
readonly manager: ClusterProcessChild | null;
readonly rest: DetritusRestClient;
readonly interactionCommandClient: InteractionCommandClient | null;
buckets: BaseCollection<number, Bucket>;
maxConcurrency: number;
ran: boolean;
shardCount: number;
shardEnd: number;
shardStart: number;
shards: BaseCollection<number, ShardClient>;
shardOptions: ShardClientOptions;
constructor(token: string, options?: ClusterClientOptions);
get applicationId(): string;
get clusterId(): number;
setShardCount(value: number): void;
setShardEnd(value: number): void;
setShardStart(value: number): void;
/** @hidden */
_eval(code: string): any;
kill(error?: Error): void;
hookedHasEventListener(shard: ShardClient, name: string): boolean;
hookedEmit(shard: ShardClient, name: string, event: any): boolean;
fillApplications(): Promise<void>;
fillOauth2Application(): Promise<void>;
run(options?: ClusterClientRunOptions): Promise<ClusterClient>;
getRatelimitKey(shardId: number): number;
on(event: string | symbol, listener: (...args: any[]) => void): this;
on(event: ClientEvents.ACTIVITY_JOIN_INVITE, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.ActivityJoinInvite) => any): this;
on(event: 'activityJoinInvite', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.ActivityJoinInvite) => any): this;
on(event: ClientEvents.ACTIVITY_JOIN_REQUEST, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.ActivityJoinRequest) => any): this;
on(event: 'activityJoinRequest', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.ActivityJoinRequest) => any): this;
on(event: ClientEvents.ACTIVITY_START, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.ActivityStart) => any): this;
on(event: 'activityStart', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.ActivityStart) => any): this;
on(event: ClientEvents.APPLICATION_COMMAND_CREATE, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.ApplicationCommandCreate) => any): this;
on(event: 'applicationCommandCreate', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.ApplicationCommandCreate) => any): this;
on(event: ClientEvents.APPLICATION_COMMAND_DELETE, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.ApplicationCommandDelete) => any): this;
on(event: 'applicationCommandDelete', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.ApplicationCommandDelete) => any): this;
on(event: ClientEvents.APPLICATION_COMMAND_UPDATE, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.ApplicationCommandUpdate) => any): this;
on(event: 'applicationCommandUpdate', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.ApplicationCommandUpdate) => any): this;
on(event: ClientEvents.BRAINTREE_POPUP_BRIDGE_CALLBACK, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.BraintreePopupBridgeCallback) => any): this;
on(event: 'braintreePopupBridgeCallback', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.BraintreePopupBridgeCallback) => any): this;
on(event: ClientEvents.CALL_CREATE, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.CallCreate) => any): this;
on(event: 'callCreate', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.CallCreate) => any): this;
on(event: ClientEvents.CALL_DELETE, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.CallDelete) => any): this;
on(event: 'callDelete', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.CallDelete) => any): this;
on(event: ClientEvents.CALL_UPDATE, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.CallUpdate) => any): this;
on(event: 'callUpdate', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.CallUpdate) => any): this;
on(event: ClientEvents.CHANNEL_CREATE, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.ChannelCreate) => any): this;
on(event: 'channelCreate', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.ChannelCreate) => any): this;
on(event: ClientEvents.CHANNEL_DELETE, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.ChannelDelete) => any): this;
on(event: 'channelDelete', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.ChannelDelete) => any): this;
on(event: ClientEvents.CHANNEL_UPDATE, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.ChannelUpdate) => any): this;
on(event: 'channelUpdate', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.ChannelUpdate) => any): this;
on(event: ClientEvents.CHANNEL_PINS_ACK, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.ChannelPinsAck) => any): this;
on(event: 'channelPinsAck', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.ChannelPinsAck) => any): this;
on(event: ClientEvents.CHANNEL_PINS_UPDATE, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.ChannelPinsUpdate) => any): this;
on(event: 'channelPinsUpdate', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.ChannelPinsUpdate) => any): this;
on(event: ClientEvents.CHANNEL_RECIPIENT_ADD, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.ChannelRecipientAdd) => any): this;
on(event: 'channelRecipientAdd', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.ChannelRecipientAdd) => any): this;
on(event: ClientEvents.CHANNEL_RECIPIENT_REMOVE, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.ChannelRecipientRemove) => any): this;
on(event: 'channelRecipientRemove', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.ChannelRecipientRemove) => any): this;
on(event: ClientEvents.ENTITLEMENT_CREATE, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.EntitlementCreate) => any): this;
on(event: 'entitlementCreate', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.EntitlementCreate) => any): this;
on(event: ClientEvents.ENTITLEMENT_DELETE, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.EntitlementDelete) => any): this;
on(event: 'entitlementDelete', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.EntitlementDelete) => any): this;
on(event: ClientEvents.ENTITLEMENT_UPDATE, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.EntitlementUpdate) => any): this;
on(event: 'entitlementUpdate', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.EntitlementUpdate) => any): this;
on(event: ClientEvents.FRIEND_SUGGESTION_CREATE, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.FriendSuggestionCreate) => any): this;
on(event: 'friendSuggestionCreate', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.FriendSuggestionCreate) => any): this;
on(event: ClientEvents.FRIEND_SUGGESTION_DELETE, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.FriendSuggestionDelete) => any): this;
on(event: 'friendSuggestionDelete', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.FriendSuggestionDelete) => any): this;
on(event: ClientEvents.GATEWAY_READY, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.GatewayReady) => any): this;
on(event: 'gatewayReady', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.GatewayReady) => any): this;
on(event: ClientEvents.GATEWAY_RESUMED, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.GatewayResumed) => any): this;
on(event: 'gatewayResumed', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.GatewayResumed) => any): this;
on(event: ClientEvents.GIFT_CODE_UPDATE, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.GiftCodeUpdate) => any): this;
on(event: 'giftCodeUpdate', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.GiftCodeUpdate) => any): this;
on(event: ClientEvents.GUILD_BAN_ADD, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.GuildBanAdd) => any): this;
on(event: 'guildBanAdd', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.GuildBanAdd) => any): this;
on(event: ClientEvents.GUILD_BAN_REMOVE, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.GuildBanRemove) => any): this;
on(event: 'guildBanRemove', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.GuildBanRemove) => any): this;
on(event: ClientEvents.GUILD_CREATE, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.GuildCreate) => any): this;
on(event: 'guildCreate', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.GuildCreate) => any): this;
on(event: ClientEvents.GUILD_DELETE, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.GuildDelete) => any): this;
on(event: 'guildDelete', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.GuildDelete) => any): this;
on(event: ClientEvents.GUILD_EMOJIS_UPDATE, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.GuildEmojisUpdate) => any): this;
on(event: 'guildEmojisUpdate', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.GuildEmojisUpdate) => any): this;
on(event: ClientEvents.GUILD_INTEGRATIONS_UPDATE, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.GuildIntegrationsUpdate) => any): this;
on(event: 'guildIntegrationsUpdate', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.GuildIntegrationsUpdate) => any): this;
on(event: ClientEvents.GUILD_MEMBER_ADD, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.GuildMemberAdd) => any): this;
on(event: 'guildMemberAdd', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.GuildMemberAdd) => any): this;
on(event: ClientEvents.GUILD_MEMBER_LIST_UPDATE, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.GuildMemberListUpdate) => any): this;
on(event: 'guildMemberListUpdate', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.GuildMemberListUpdate) => any): this;
on(event: ClientEvents.GUILD_MEMBER_REMOVE, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.GuildMemberRemove) => any): this;
on(event: 'guildMemberRemove', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.GuildMemberRemove) => any): this;
on(event: ClientEvents.GUILD_MEMBER_UPDATE, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.GuildMemberUpdate) => any): this;
on(event: 'guildMemberUpdate', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.GuildMemberUpdate) => any): this;
on(event: ClientEvents.GUILD_MEMBERS_CHUNK, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.GuildMembersChunk) => any): this;
on(event: 'guildMembersChunk', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.GuildMembersChunk) => any): this;
on(event: ClientEvents.GUILD_READY, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.GuildReady) => any): this;
on(event: 'guildReady', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.GuildReady) => any): this;
on(event: ClientEvents.GUILD_ROLE_CREATE, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.GuildRoleCreate) => any): this;
on(event: 'guildRoleCreate', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.GuildRoleCreate) => any): this;
on(event: ClientEvents.GUILD_ROLE_DELETE, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.GuildRoleDelete) => any): this;
on(event: 'guildRoleDelete', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.GuildRoleDelete) => any): this;
on(event: ClientEvents.GUILD_ROLE_UPDATE, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.GuildRoleUpdate) => any): this;
on(event: 'guildRoleUpdate', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.GuildRoleUpdate) => any): this;
on(event: ClientEvents.GUILD_STICKERS_UPDATE, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.GuildStickersUpdate) => any): this;
on(event: 'guildStickersUpdate', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.GuildStickersUpdate) => any): this;
on(event: ClientEvents.GUILD_UPDATE, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.GuildUpdate) => any): this;
on(event: 'guildUpdate', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.GuildUpdate) => any): this;
on(event: ClientEvents.INTERACTION_CREATE, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.InteractionCreate) => any): this;
on(event: 'interactionCreate', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.InteractionCreate) => any): this;
on(event: ClientEvents.INVITE_CREATE, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.InviteCreate) => any): this;
on(event: 'inviteCreate', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.InviteCreate) => any): this;
on(event: ClientEvents.INVITE_DELETE, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.InviteDelete) => any): this;
on(event: 'inviteDelete', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.InviteDelete) => any): this;
on(event: ClientEvents.LIBRARY_APPLICATION_UPDATE, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.LibraryApplicationUpdate) => any): this;
on(event: 'libraryApplicationUpdate', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.LibraryApplicationUpdate) => any): this;
on(event: ClientEvents.LOBBY_CREATE, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.LobbyCreate) => any): this;
on(event: 'lobbyCreate', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.LobbyCreate) => any): this;
on(event: ClientEvents.LOBBY_DELETE, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.LobbyDelete) => any): this;
on(event: 'lobbyDelete', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.LobbyDelete) => any): this;
on(event: ClientEvents.LOBBY_UPDATE, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.LobbyUpdate) => any): this;
on(event: 'lobbyUpdate', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.LobbyUpdate) => any): this;
on(event: ClientEvents.LOBBY_MEMBER_CONNECT, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.LobbyMemberConnect) => any): this;
on(event: 'lobbyMemberConnect', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.LobbyMemberConnect) => any): this;
on(event: ClientEvents.LOBBY_MEMBER_DISCONNECT, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.LobbyMemberDisconnect) => any): this;
on(event: 'lobbyMemberDisconnect', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.LobbyMemberDisconnect) => any): this;
on(event: ClientEvents.LOBBY_MEMBER_UPDATE, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.LobbyMemberUpdate) => any): this;
on(event: 'lobbyMemberUpdate', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.LobbyMemberUpdate) => any): this;
on(event: ClientEvents.LOBBY_MESSAGE, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.LobbyMessage) => any): this;
on(event: 'lobbyMessage', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.LobbyMessage) => any): this;
on(event: ClientEvents.LOBBY_VOICE_SERVER_UPDATE, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.LobbyVoiceServerUpdate) => any): this;
on(event: 'lobbyVoiceServerUpdate', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.LobbyVoiceServerUpdate) => any): this;
on(event: ClientEvents.LOBBY_VOICE_STATE_UPDATE, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.LobbyVoiceStateUpdate) => any): this;
on(event: 'lobbyVoiceStateUpdate', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.LobbyVoiceStateUpdate) => any): this;
on(event: ClientEvents.MESSAGE_ACK, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.MessageAck) => any): this;
on(event: 'messageAck', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.MessageAck) => any): this;
on(event: ClientEvents.MESSAGE_CREATE, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.MessageCreate) => any): this;
on(event: 'messageCreate', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.MessageCreate) => any): this;
on(event: ClientEvents.MESSAGE_DELETE, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.MessageDelete) => any): this;
on(event: 'messageDelete', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.MessageDelete) => any): this;
on(event: ClientEvents.MESSAGE_DELETE_BULK, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.MessageDeleteBulk) => any): this;
on(event: 'messageDeleteBulk', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.MessageDeleteBulk) => any): this;
on(event: ClientEvents.MESSAGE_REACTION_ADD, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.MessageReactionAdd) => any): this;
on(event: 'messageReactionAdd', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.MessageReactionAdd) => any): this;
on(event: ClientEvents.MESSAGE_REACTION_REMOVE, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.MessageReactionRemove) => any): this;
on(event: 'messageReactionRemove', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.MessageReactionRemove) => any): this;
on(event: ClientEvents.MESSAGE_REACTION_REMOVE_ALL, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.MessageReactionRemoveAll) => any): this;
on(event: 'messageReactionRemoveAll', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.MessageReactionRemoveAll) => any): this;
on(event: ClientEvents.MESSAGE_REACTION_REMOVE_EMOJI, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.MessageReactionRemoveEmoji) => any): this;
on(event: 'messageReactionRemoveEmoji', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.MessageReactionRemoveEmoji) => any): this;
on(event: ClientEvents.MESSAGE_UPDATE, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.MessageUpdate) => any): this;
on(event: 'messageUpdate', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.MessageUpdate) => any): this;
on(event: ClientEvents.PRESENCES_REPLACE, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.PresencesReplace) => any): this;
on(event: 'presencesReplace', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.PresencesReplace) => any): this;
on(event: ClientEvents.PRESENCE_UPDATE, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.PresenceUpdate) => any): this;
on(event: 'presenceUpdate', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.PresenceUpdate) => any): this;
on(event: ClientEvents.RECENT_MENTION_DELETE, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.RecentMentionDelete) => any): this;
on(event: 'recentMentionDelete', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.RecentMentionDelete) => any): this;
on(event: ClientEvents.RELATIONSHIP_ADD, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.RelationshipAdd) => any): this;
on(event: 'relationshipAdd', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.RelationshipAdd) => any): this;
on(event: ClientEvents.RELATIONSHIP_REMOVE, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.RelationshipRemove) => any): this;
on(event: 'relationshipRemove', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.RelationshipRemove) => any): this;
on(event: ClientEvents.SESSIONS_REPLACE, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.SessionsReplace) => any): this;
on(event: 'sessionsReplace', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.SessionsReplace) => any): this;
on(event: ClientEvents.STAGE_INSTANCE_CREATE, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.StageInstanceCreate) => any): this;
on(event: 'stageInstanceCreate', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.StageInstanceCreate) => any): this;
on(event: ClientEvents.STAGE_INSTANCE_DELETE, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.StageInstanceDelete) => any): this;
on(event: 'stageInstanceDelete', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.StageInstanceDelete) => any): this;
on(event: ClientEvents.STAGE_INSTANCE_UPDATE, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.StageInstanceUpdate) => any): this;
on(event: 'stageInstanceUpdate', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.StageInstanceUpdate) => any): this;
on(event: ClientEvents.STREAM_CREATE, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.StreamCreate) => any): this;
on(event: 'streamCreate', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.StreamCreate) => any): this;
on(event: ClientEvents.STREAM_DELETE, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.StreamDelete) => any): this;
on(event: 'streamDelete', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.StreamDelete) => any): this;
on(event: ClientEvents.STREAM_SERVER_UPDATE, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.StreamServerUpdate) => any): this;
on(event: 'streamServerUpdate', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.StreamServerUpdate) => any): this;
on(event: ClientEvents.STREAM_UPDATE, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.StreamUpdate) => any): this;
on(event: 'streamUpdate', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.StreamUpdate) => any): this;
on(event: ClientEvents.THREAD_CREATE, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.ThreadCreate) => any): this;
on(event: 'threadCreate', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.ThreadCreate) => any): this;
on(event: ClientEvents.THREAD_DELETE, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.ThreadDelete) => any): this;
on(event: 'threadDelete', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.ThreadDelete) => any): this;
on(event: ClientEvents.THREAD_LIST_SYNC, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.ThreadListSync) => any): this;
on(event: 'threadListSync', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.ThreadListSync) => any): this;
on(event: ClientEvents.THREAD_MEMBER_UPDATE, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.ThreadMemberUpdate) => any): this;
on(event: 'threadMemberUpdate', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.ThreadMemberUpdate) => any): this;
on(event: ClientEvents.THREAD_MEMBERS_UPDATE, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.ThreadMembersUpdate) => any): this;
on(event: 'threadMembersUpdate', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.ThreadMembersUpdate) => any): this;
on(event: ClientEvents.THREAD_UPDATE, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.ThreadUpdate) => any): this;
on(event: 'threadUpdate', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.ThreadUpdate) => any): this;
on(event: ClientEvents.TYPING_START, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.TypingStart) => any): this;
on(event: 'typingStart', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.TypingStart) => any): this;
on(event: ClientEvents.TYPING_STOP, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.TypingStop) => any): this;
on(event: 'typingStop', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.TypingStop) => any): this;
on(event: ClientEvents.USER_ACHIEVEMENT_UPDATE, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.UserAchievementUpdate) => any): this;
on(event: 'userAchievementUpdate', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.UserAchievementUpdate) => any): this;
on(event: ClientEvents.USER_CONNECTIONS_UPDATE, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.UserConnectionsUpdate) => any): this;
on(event: 'userConnectionsUpdate', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.UserConnectionsUpdate) => any): this;
on(event: ClientEvents.USER_FEED_SETTINGS_UPDATE, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.UserFeedSettingsUpdate) => any): this;
on(event: 'userFeedSettingsUpdate', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.UserFeedSettingsUpdate) => any): this;
on(event: ClientEvents.USER_GUILD_SETTINGS_UPDATE, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.UserGuildSettingsUpdate) => any): this;
on(event: 'userGuildSettingsUpdate', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.UserGuildSettingsUpdate) => any): this;
on(event: ClientEvents.USER_NOTE_UPDATE, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.UserNoteUpdate) => any): this;
on(event: 'userNoteUpdate', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.UserNoteUpdate) => any): this;
on(event: ClientEvents.USER_PAYMENT_SOURCES_UPDATE, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.UserPaymentSourcesUpdate) => any): this;
on(event: 'userPaymentSourcesUpdate', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.UserPaymentSourcesUpdate) => any): this;
on(event: ClientEvents.USER_PAYMENTS_UPDATE, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.UserPaymentsUpdate) => any): this;
on(event: 'userPaymentsUpdate', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.UserPaymentsUpdate) => any): this;
on(event: ClientEvents.USER_REQUIRED_ACTION_UPDATE, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.UserRequiredActionUpdate) => any): this;
on(event: 'userRequiredActionUpdate', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.UserRequiredActionUpdate) => any): this;
on(event: ClientEvents.USER_UPDATE, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.UserUpdate) => any): this;
on(event: 'userUpdate', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.UserUpdate) => any): this;
on(event: ClientEvents.USERS_UPDATE, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.UsersUpdate) => any): this;
on(event: 'usersUpdate', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.UsersUpdate) => any): this;
on(event: ClientEvents.VOICE_SERVER_UPDATE, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.VoiceServerUpdate) => any): this;
on(event: 'voiceServerUpdate', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.VoiceServerUpdate) => any): this;
on(event: ClientEvents.VOICE_STATE_UPDATE, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.VoiceStateUpdate) => any): this;
on(event: 'voiceStateUpdate', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.VoiceStateUpdate) => any): this;
on(event: ClientEvents.WEBHOOKS_UPDATE, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.WebhooksUpdate) => any): this;
on(event: 'webhooksUpdate', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.WebhooksUpdate) => any): this;
on(event: ClientEvents.RAW, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.Raw) => any): this;
on(event: 'raw', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.Raw) => any): this;
on(event: ClientEvents.REST_REQUEST, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.RestRequest) => any): this;
on(event: 'restRequest', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.RestRequest) => any): this;
on(event: ClientEvents.REST_RESPONSE, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.RestResponse) => any): this;
on(event: 'restResponse', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.RestResponse) => any): this;
on(event: ClientEvents.UNKNOWN, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.Unknown) => any): this;
on(event: 'unknown', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.Unknown) => any): this;
on(event: ClientEvents.WARN, listener: (payload: (GatewayClientEvents.ClusterEvent & GatewayClientEvents.Warn) | GatewayClientEvents.Warn) => any): this;
on(event: 'warn', listener: (payload: (GatewayClientEvents.ClusterEvent & GatewayClientEvents.Warn) | GatewayClientEvents.Warn) => any): this;
on(event: ClientEvents.KILLED, listener: (payload: (GatewayClientEvents.ClusterEvent & GatewayClientEvents.Killed) | GatewayClientEvents.Killed) => any): this;
on(event: 'killed', listener: (payload: (GatewayClientEvents.ClusterEvent & GatewayClientEvents.Killed) | GatewayClientEvents.Killed) => any): this;
on(event: ClientEvents.READY, listener: () => any): this;
on(event: 'ready', listener: () => any): this;
on(event: ClientEvents.SHARD, listener: (payload: GatewayClientEvents.ClusterEvent) => any): this;
on(event: 'shard', listener: (payload: GatewayClientEvents.ClusterEvent) => any): this;
once(event: string | symbol, listener: (...args: any[]) => void): this;
once(event: ClientEvents.ACTIVITY_JOIN_INVITE, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.ActivityJoinInvite) => any): this;
once(event: 'activityJoinInvite', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.ActivityJoinInvite) => any): this;
once(event: ClientEvents.ACTIVITY_JOIN_REQUEST, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.ActivityJoinRequest) => any): this;
once(event: 'activityJoinRequest', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.ActivityJoinRequest) => any): this;
once(event: ClientEvents.ACTIVITY_START, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.ActivityStart) => any): this;
once(event: 'activityStart', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.ActivityStart) => any): this;
once(event: ClientEvents.APPLICATION_COMMAND_CREATE, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.ApplicationCommandCreate) => any): this;
once(event: 'applicationCommandCreate', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.ApplicationCommandCreate) => any): this;
once(event: ClientEvents.APPLICATION_COMMAND_DELETE, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.ApplicationCommandDelete) => any): this;
once(event: 'applicationCommandDelete', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.ApplicationCommandDelete) => any): this;
once(event: ClientEvents.APPLICATION_COMMAND_UPDATE, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.ApplicationCommandUpdate) => any): this;
once(event: 'applicationCommandUpdate', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.ApplicationCommandUpdate) => any): this;
once(event: ClientEvents.BRAINTREE_POPUP_BRIDGE_CALLBACK, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.BraintreePopupBridgeCallback) => any): this;
once(event: 'braintreePopupBridgeCallback', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.BraintreePopupBridgeCallback) => any): this;
once(event: ClientEvents.CALL_CREATE, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.CallCreate) => any): this;
once(event: 'callCreate', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.CallCreate) => any): this;
once(event: ClientEvents.CALL_DELETE, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.CallDelete) => any): this;
once(event: 'callDelete', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.CallDelete) => any): this;
once(event: ClientEvents.CALL_UPDATE, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.CallUpdate) => any): this;
once(event: 'callUpdate', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.CallUpdate) => any): this;
once(event: ClientEvents.CHANNEL_CREATE, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.ChannelCreate) => any): this;
once(event: 'channelCreate', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.ChannelCreate) => any): this;
once(event: ClientEvents.CHANNEL_DELETE, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.ChannelDelete) => any): this;
once(event: 'channelDelete', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.ChannelDelete) => any): this;
once(event: ClientEvents.CHANNEL_UPDATE, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.ChannelUpdate) => any): this;
once(event: 'channelUpdate', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.ChannelUpdate) => any): this;
once(event: ClientEvents.CHANNEL_PINS_ACK, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.ChannelPinsAck) => any): this;
once(event: 'channelPinsAck', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.ChannelPinsAck) => any): this;
once(event: ClientEvents.CHANNEL_PINS_UPDATE, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.ChannelPinsUpdate) => any): this;
once(event: 'channelPinsUpdate', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.ChannelPinsUpdate) => any): this;
once(event: ClientEvents.CHANNEL_RECIPIENT_ADD, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.ChannelRecipientAdd) => any): this;
once(event: 'channelRecipientAdd', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.ChannelRecipientAdd) => any): this;
once(event: ClientEvents.CHANNEL_RECIPIENT_REMOVE, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.ChannelRecipientRemove) => any): this;
once(event: 'channelRecipientRemove', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.ChannelRecipientRemove) => any): this;
once(event: ClientEvents.ENTITLEMENT_CREATE, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.EntitlementCreate) => any): this;
once(event: 'entitlementCreate', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.EntitlementCreate) => any): this;
once(event: ClientEvents.ENTITLEMENT_DELETE, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.EntitlementDelete) => any): this;
once(event: 'entitlementDelete', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.EntitlementDelete) => any): this;
once(event: ClientEvents.ENTITLEMENT_UPDATE, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.EntitlementUpdate) => any): this;
once(event: 'entitlementUpdate', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.EntitlementUpdate) => any): this;
once(event: ClientEvents.FRIEND_SUGGESTION_CREATE, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.FriendSuggestionCreate) => any): this;
once(event: 'friendSuggestionCreate', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.FriendSuggestionCreate) => any): this;
once(event: ClientEvents.FRIEND_SUGGESTION_DELETE, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.FriendSuggestionDelete) => any): this;
once(event: 'friendSuggestionDelete', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.FriendSuggestionDelete) => any): this;
once(event: ClientEvents.GATEWAY_READY, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.GatewayReady) => any): this;
once(event: 'gatewayReady', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.GatewayReady) => any): this;
once(event: ClientEvents.GATEWAY_RESUMED, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.GatewayResumed) => any): this;
once(event: 'gatewayResumed', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.GatewayResumed) => any): this;
once(event: ClientEvents.GIFT_CODE_UPDATE, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.GiftCodeUpdate) => any): this;
once(event: 'giftCodeUpdate', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.GiftCodeUpdate) => any): this;
once(event: ClientEvents.GUILD_BAN_ADD, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.GuildBanAdd) => any): this;
once(event: 'guildBanAdd', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.GuildBanAdd) => any): this;
once(event: ClientEvents.GUILD_BAN_REMOVE, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.GuildBanRemove) => any): this;
once(event: 'guildBanRemove', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.GuildBanRemove) => any): this;
once(event: ClientEvents.GUILD_CREATE, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.GuildCreate) => any): this;
once(event: 'guildCreate', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.GuildCreate) => any): this;
once(event: ClientEvents.GUILD_DELETE, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.GuildDelete) => any): this;
once(event: 'guildDelete', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.GuildDelete) => any): this;
once(event: ClientEvents.GUILD_EMOJIS_UPDATE, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.GuildEmojisUpdate) => any): this;
once(event: 'guildEmojisUpdate', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.GuildEmojisUpdate) => any): this;
once(event: ClientEvents.GUILD_INTEGRATIONS_UPDATE, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.GuildIntegrationsUpdate) => any): this;
once(event: 'guildIntegrationsUpdate', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.GuildIntegrationsUpdate) => any): this;
once(event: ClientEvents.GUILD_MEMBER_ADD, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.GuildMemberAdd) => any): this;
once(event: 'guildMemberAdd', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.GuildMemberAdd) => any): this;
once(event: ClientEvents.GUILD_MEMBER_LIST_UPDATE, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.GuildMemberListUpdate) => any): this;
once(event: 'guildMemberListUpdate', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.GuildMemberListUpdate) => any): this;
once(event: ClientEvents.GUILD_MEMBER_REMOVE, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.GuildMemberRemove) => any): this;
once(event: 'guildMemberRemove', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.GuildMemberRemove) => any): this;
once(event: ClientEvents.GUILD_MEMBER_UPDATE, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.GuildMemberUpdate) => any): this;
once(event: 'guildMemberUpdate', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.GuildMemberUpdate) => any): this;
once(event: ClientEvents.GUILD_MEMBERS_CHUNK, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.GuildMembersChunk) => any): this;
once(event: 'guildMembersChunk', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.GuildMembersChunk) => any): this;
once(event: ClientEvents.GUILD_READY, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.GuildReady) => any): this;
once(event: 'guildReady', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.GuildReady) => any): this;
once(event: ClientEvents.GUILD_ROLE_CREATE, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.GuildRoleCreate) => any): this;
once(event: 'guildRoleCreate', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.GuildRoleCreate) => any): this;
once(event: ClientEvents.GUILD_ROLE_DELETE, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.GuildRoleDelete) => any): this;
once(event: 'guildRoleDelete', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.GuildRoleDelete) => any): this;
once(event: ClientEvents.GUILD_ROLE_UPDATE, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.GuildRoleUpdate) => any): this;
once(event: 'guildRoleUpdate', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.GuildRoleUpdate) => any): this;
once(event: ClientEvents.GUILD_STICKERS_UPDATE, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.GuildStickersUpdate) => any): this;
once(event: 'guildStickersUpdate', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.GuildStickersUpdate) => any): this;
once(event: ClientEvents.GUILD_UPDATE, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.GuildUpdate) => any): this;
once(event: 'guildUpdate', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.GuildUpdate) => any): this;
once(event: ClientEvents.INVITE_CREATE, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.InviteCreate) => any): this;
once(event: 'inviteCreate', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.InviteCreate) => any): this;
once(event: ClientEvents.INVITE_DELETE, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.InviteDelete) => any): this;
once(event: 'inviteDelete', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.InviteDelete) => any): this;
once(event: ClientEvents.LIBRARY_APPLICATION_UPDATE, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.LibraryApplicationUpdate) => any): this;
once(event: 'libraryApplicationUpdate', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.LibraryApplicationUpdate) => any): this;
once(event: ClientEvents.LOBBY_CREATE, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.LobbyCreate) => any): this;
once(event: 'lobbyCreate', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.LobbyCreate) => any): this;
once(event: ClientEvents.LOBBY_DELETE, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.LobbyDelete) => any): this;
once(event: 'lobbyDelete', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.LobbyDelete) => any): this;
once(event: ClientEvents.LOBBY_UPDATE, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.LobbyUpdate) => any): this;
once(event: 'lobbyUpdate', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.LobbyUpdate) => any): this;
once(event: ClientEvents.LOBBY_MEMBER_CONNECT, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.LobbyMemberConnect) => any): this;
once(event: 'lobbyMemberConnect', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.LobbyMemberConnect) => any): this;
once(event: ClientEvents.LOBBY_MEMBER_DISCONNECT, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.LobbyMemberDisconnect) => any): this;
once(event: 'lobbyMemberDisconnect', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.LobbyMemberDisconnect) => any): this;
once(event: ClientEvents.LOBBY_MEMBER_UPDATE, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.LobbyMemberUpdate) => any): this;
once(event: 'lobbyMemberUpdate', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.LobbyMemberUpdate) => any): this;
once(event: ClientEvents.LOBBY_MESSAGE, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.LobbyMessage) => any): this;
once(event: 'lobbyMessage', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.LobbyMessage) => any): this;
once(event: ClientEvents.LOBBY_VOICE_SERVER_UPDATE, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.LobbyVoiceServerUpdate) => any): this;
once(event: 'lobbyVoiceServerUpdate', listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.LobbyVoiceServerUpdate) => any): this;
once(event: ClientEvents.LOBBY_VOICE_STATE_UPDATE, listener: (payload: GatewayClientEvents.ClusterEvent & GatewayClientEvents.LobbyVoiceStateUpdate) => any): this;
once(event: 'lobbyVoiceStateUpdate', listener: (payload: GatewayClientEvents.ClusterEvent &