BaseListener
Base class for creating event listeners that handle Discord gateway events. This abstract class defines the structure for event listeners and provides type safety for event handling.
Extended by
ApplicationAuthorizedListener
EntitlementCreateListener
QuestUserEnrollmentListener
ApplicationCommandPermissionsUpdateListener
AutoModerationActionExecutionListener
AutoModerationRuleCreateListener
AutoModerationRuleDeleteListener
AutoModerationRuleUpdateListener
ChannelCreateListener
ChannelDeleteListener
ChannelPinsUpdateListener
ChannelUpdateListener
EntitlementDeleteListener
EntitlementUpdateListener
GuildAuditLogEntryCreateListener
GuildBanAddListener
GuildBanRemoveListener
GuildCreateListener
GuildDeleteListener
GuildEmojisUpdateListener
GuildIntegrationsUpdateListener
GuildMemberAddListener
GuildMemberRemoveListener
GuildMemberUpdateListener
GuildMembersChunkListener
GuildRoleCreateListener
GuildRoleDeleteListener
GuildRoleUpdateListener
GuildScheduledEventCreateListener
GuildScheduledEventDeleteListener
GuildScheduledEventUpdateListener
GuildScheduledEventUserAddListener
GuildScheduledEventUserRemoveListener
GuildSoundboardSoundCreateListener
GuildSoundboardSoundDeleteListener
GuildSoundboardSoundUpdateListener
GuildSoundboardSoundsUpdateListener
GuildStickersUpdateListener
GuildUpdateListener
IntegrationCreateListener
IntegrationDeleteListener
IntegrationUpdateListener
MessageCreateListener
MessageReactionAddListener
MessageReactionRemoveListener
MessageReactionRemoveAllListener
MessageReactionRemoveEmojiListener
MessageUpdateListener
PresenceUpdateListener
ReadyListener
ResumedListener
StageInstanceCreateListener
StageInstanceDeleteListener
StageInstanceUpdateListener
SubscriptionCreateListener
SubscriptionDeleteListener
SubscriptionUpdateListener
ThreadCreateListener
ThreadDeleteListener
ThreadListSyncListener
ThreadMemberUpdateListener
ThreadMembersUpdateListener
ThreadUpdateListener
TypingStartListener
UserUpdateListener
VoiceServerUpdateListener
VoiceStateUpdateListener
WebhooksUpdateListener
MessagePollVoteAddListener
MessagePollVoteRemoveListener
VoiceChannelEffectSendListener
Constructors
Constructor
new BaseListener():
BaseListener
Returns
BaseListener
Properties
Property | Modifier | Type |
---|---|---|
type | abstract | ListenerEventType |
Methods
handle()
abstract
handle(data
,client
):Promise
<void
>
Parameters
Parameter | Type |
---|---|
data | object & Omit <APIWebhookEventApplicationAuthorizedData , "user" | "guild" > | APIEntitlement & object | GatewayApplicationCommandPermissionsUpdateDispatchData & object | GatewayAutoModerationActionExecutionDispatchData & object | APIAutoModerationRule & object | APIAutoModerationRule & object | APIAutoModerationRule & object | ((APIGuildCategoryChannel & { type: ChannelType.GuildText | ChannelType.GuildVoice | ChannelType.GuildCategory | ChannelType.GuildAnnouncement | ChannelType.GuildStageVoice | ChannelType.GuildDirectory | ChannelType.GuildForum | ChannelType.GuildMedia; guild_id: string; }) | ... 5 more ... | (APITextChannel & { ...;... | ((APIGuildCategoryChannel & { type: ChannelType.GuildText | ChannelType.GuildVoice | ChannelType.GuildCategory | ChannelType.GuildAnnouncement | ChannelType.GuildStageVoice | ChannelType.GuildDirectory | ChannelType.GuildForum | ChannelType.GuildMedia; guild_id: string; }) | ... 5 more ... | (APITextChannel & { ...;... | GatewayChannelPinsUpdateDispatchData & object | ((APIGuildCategoryChannel & { type: ChannelType.GuildText | ChannelType.GuildVoice | ChannelType.GuildCategory | ChannelType.GuildAnnouncement | ChannelType.GuildStageVoice | ChannelType.GuildDirectory | ChannelType.GuildForum | ChannelType.GuildMedia; guild_id: string; }) | ... 5 more ... | (APITextChannel & { ...;... | APIEntitlement & object | APIEntitlement & object | GatewayGuildAuditLogEntryCreateDispatchData & object | GatewayGuildBanModifyDispatchData & object | GatewayGuildBanModifyDispatchData & object | GatewayGuildCreateDispatchData & object | GatewayGuildDeleteDispatchData & object | GatewayGuildEmojisUpdateDispatchData & object | GatewayGuildIntegrationsUpdateDispatchData & object | GatewayGuildMemberAddDispatchData & object | GatewayGuildMemberRemoveDispatchData & object | _Nullable <Pick <APIGuildMember , "joined_at" >> & Omit <APIGuildMember , "flags" | "user" | "joined_at" | "deaf" | "mute" > & Partial <Pick <APIGuildMember , "flags" | "deaf" | "mute" >> & Required <Pick <APIGuildMember , "user" | "avatar" | "banner" >> & object & object | GatewayGuildMembersChunkDispatchData & object | GatewayGuildRoleModifyDispatchData & object | GatewayGuildRoleDeleteDispatchData & object | GatewayGuildRoleModifyDispatchData & object | APIGuildScheduledEvent & { guild: Guild<true>; creator?: User<false> | undefined; } | APIGuildScheduledEvent & { guild: Guild<true>; } | APIGuildScheduledEvent & { guild: Guild<true>; } | GatewayGuildScheduledEventUserAddDispatchData & object | GatewayGuildScheduledEventUserRemoveDispatchData & object | APISoundboardSound & object | GatewayGuildSoundboardSoundDeleteDispatchData & object | APISoundboardSound & object | GatewayGuildSoundboardSoundsUpdateDispatchData & object | GatewayGuildSoundboardSoundsUpdateDispatchData & object | GatewayGuildStickersUpdateDispatchData & object | APIGuild & object | APIGuildIntegration & object & object | GatewayIntegrationDeleteDispatchData & object | APIGuildIntegration & object & object | APIInteraction & { guild?: Guild<true> | undefined; member?: GuildMember<false, false> | undefined; user: User<false>; } | GatewayInviteCreateDispatchData & object | GatewayInviteDeleteDispatchData & object | GatewayMessageEventExtraFields & Omit <APIMessage , "mentions" > & object | GatewayMessageDeleteDispatchData & object | GatewayMessageDeleteBulkDispatchData & object | Omit <{ }, never > & object | Omit <{ }, "member" | "message_author_id" | "burst_colors" > & object | GatewayMessageReactionRemoveData & object | GatewayMessageReactionRemoveEmojiDispatchData & object | GatewayMessageEventExtraFields & Omit <APIMessage , "mentions" > & object | GatewayPresenceUpdate & object | GatewayReadyDispatchData & object | APIStageInstance & object | APIStageInstance & object | APIStageInstance & object | APISubscription & object | APISubscription & object | APISubscription & object | GatewayThreadCreateDispatchData & object | GatewayThreadDeleteDispatchData & object | GatewayThreadListSync & object | APIThreadMember & object & object | GatewayThreadMembersUpdate & object | APIThreadChannel & object | GatewayTypingStartDispatchData & object | APIUser & object | GatewayVoiceServerUpdateDispatchData & object | APIVoiceState & object | GatewayWebhooksUpdateDispatchData & object | GatewayMessagePollVoteDispatchData & object | GatewayMessagePollVoteDispatchData & object | GatewayVoiceChannelEffectSendDispatchData & object |
client | Client |
Returns
Promise
<void
>
parseRawData()
abstract
parseRawData(data
,client
):object
&Omit
<APIWebhookEventApplicationAuthorizedData
,"user"
|"guild"
> |APIEntitlement
&object
|GatewayApplicationCommandPermissionsUpdateDispatchData
&object
|GatewayAutoModerationActionExecutionDispatchData
&object
|APIAutoModerationRule
&object
|APIAutoModerationRule
&object
|APIAutoModerationRule
&object
| ((APIGuildCategoryChannel & { type: ChannelType.GuildText | ChannelType.GuildVoice | ChannelType.GuildCategory | ChannelType.GuildAnnouncement | ChannelType.GuildStageVoice | ChannelType.GuildDirectory | ChannelType.GuildForum | ChannelType.GuildMedia; guild_id: string; }) | ... 5 more ... | (APITextChannel & { ...;... | ((APIGuildCategoryChannel & { type: ChannelType.GuildText | ChannelType.GuildVoice | ChannelType.GuildCategory | ChannelType.GuildAnnouncement | ChannelType.GuildStageVoice | ChannelType.GuildDirectory | ChannelType.GuildForum | ChannelType.GuildMedia; guild_id: string; }) | ... 5 more ... | (APITextChannel & { ...;... |GatewayChannelPinsUpdateDispatchData
&object
| ((APIGuildCategoryChannel & { type: ChannelType.GuildText | ChannelType.GuildVoice | ChannelType.GuildCategory | ChannelType.GuildAnnouncement | ChannelType.GuildStageVoice | ChannelType.GuildDirectory | ChannelType.GuildForum | ChannelType.GuildMedia; guild_id: string; }) | ... 5 more ... | (APITextChannel & { ...;... |APIEntitlement
&object
|APIEntitlement
&object
|GatewayGuildAuditLogEntryCreateDispatchData
&object
|GatewayGuildBanModifyDispatchData
&object
|GatewayGuildBanModifyDispatchData
&object
|GatewayGuildCreateDispatchData
&object
|GatewayGuildDeleteDispatchData
&object
|GatewayGuildEmojisUpdateDispatchData
&object
|GatewayGuildIntegrationsUpdateDispatchData
&object
|GatewayGuildMemberAddDispatchData
&object
|GatewayGuildMemberRemoveDispatchData
&object
|_Nullable
<Pick
<APIGuildMember
,"joined_at"
>> &Omit
<APIGuildMember
,"flags"
|"user"
|"joined_at"
|"deaf"
|"mute"
> &Partial
<Pick
<APIGuildMember
,"flags"
|"deaf"
|"mute"
>> &Required
<Pick
<APIGuildMember
,"user"
|"avatar"
|"banner"
>> &object
&object
|GatewayGuildMembersChunkDispatchData
&object
|GatewayGuildRoleModifyDispatchData
&object
|GatewayGuildRoleDeleteDispatchData
&object
|GatewayGuildRoleModifyDispatchData
&object
| APIGuildScheduledEvent & { guild: Guild<true>; creator?: User<false> | undefined; } | APIGuildScheduledEvent & { guild: Guild<true>; } | APIGuildScheduledEvent & { guild: Guild<true>; } |GatewayGuildScheduledEventUserAddDispatchData
&object
|GatewayGuildScheduledEventUserRemoveDispatchData
&object
|APISoundboardSound
&object
|GatewayGuildSoundboardSoundDeleteDispatchData
&object
|APISoundboardSound
&object
|GatewayGuildSoundboardSoundsUpdateDispatchData
&object
|GatewayGuildSoundboardSoundsUpdateDispatchData
&object
|GatewayGuildStickersUpdateDispatchData
&object
|APIGuild
&object
|APIGuildIntegration
&object
&object
|GatewayIntegrationDeleteDispatchData
&object
|APIGuildIntegration
&object
&object
| APIInteraction & { guild?: Guild<true> | undefined; member?: GuildMember<false, false> | undefined; user: User<false>; } |GatewayInviteCreateDispatchData
&object
|GatewayInviteDeleteDispatchData
&object
|GatewayMessageEventExtraFields
&Omit
<APIMessage
,"mentions"
> &object
|GatewayMessageDeleteDispatchData
&object
|GatewayMessageDeleteBulkDispatchData
&object
|Omit
<{ },never
> &object
|Omit
<{ },"member"
|"message_author_id"
|"burst_colors"
> &object
|GatewayMessageReactionRemoveData
&object
|GatewayMessageReactionRemoveEmojiDispatchData
&object
|GatewayMessageEventExtraFields
&Omit
<APIMessage
,"mentions"
> &object
|GatewayPresenceUpdate
&object
|GatewayReadyDispatchData
&object
|APIStageInstance
&object
|APIStageInstance
&object
|APIStageInstance
&object
|APISubscription
&object
|APISubscription
&object
|APISubscription
&object
|GatewayThreadCreateDispatchData
&object
|GatewayThreadDeleteDispatchData
&object
|GatewayThreadListSync
&object
|APIThreadMember
&object
&object
|GatewayThreadMembersUpdate
&object
|APIThreadChannel
&object
|GatewayTypingStartDispatchData
&object
|APIUser
&object
|GatewayVoiceServerUpdateDispatchData
&object
|APIVoiceState
&object
|GatewayWebhooksUpdateDispatchData
&object
|GatewayMessagePollVoteDispatchData
&object
|GatewayMessagePollVoteDispatchData
&object
|GatewayVoiceChannelEffectSendDispatchData
&object
Parameters
Parameter | Type |
---|---|
data | APIThreadChannel | APIUser | APIGuild | APIWebhookEventApplicationAuthorizedData | APIEntitlement | GatewayApplicationCommandPermissionsUpdateDispatchData | GatewayAutoModerationActionExecutionDispatchData | APIAutoModerationRule | never | never | APIGuildCategoryChannel & object | APIGuildForumChannel & object | APIGuildMediaChannel & object | APIGuildStageVoiceChannel & object | APIGuildVoiceChannel & object | APINewsChannel & object | APITextChannel & object | never | GatewayChannelPinsUpdateDispatchData | GatewayGuildAuditLogEntryCreateDispatchData | GatewayGuildBanModifyDispatchData | GatewayGuildCreateDispatchData | GatewayGuildDeleteDispatchData | GatewayGuildEmojisUpdateDispatchData | GatewayGuildIntegrationsUpdateDispatchData | GatewayGuildMemberAddDispatchData | GatewayGuildMemberRemoveDispatchData | GatewayGuildMemberUpdateDispatchData | GatewayGuildMembersChunkDispatchData | GatewayGuildRoleModifyDispatchData | GatewayGuildRoleDeleteDispatchData | APIGuildScheduledEvent | GatewayGuildScheduledEventUserAddDispatchData | GatewayGuildScheduledEventUserRemoveDispatchData | APISoundboardSound | GatewayGuildSoundboardSoundDeleteDispatchData | GatewayGuildSoundboardSoundsUpdateDispatchData | GatewayGuildStickersUpdateDispatchData | GatewayIntegrationCreateDispatchData | GatewayIntegrationDeleteDispatchData | GatewayIntegrationUpdateDispatchData | APIInteraction | GatewayInviteCreateDispatchData | GatewayInviteDeleteDispatchData | GatewayMessageCreateDispatchData | GatewayMessageDeleteDispatchData | GatewayMessageDeleteBulkDispatchData | Omit <{ }, never > | Omit <{ }, "member" | "message_author_id" | "burst_colors" > | GatewayMessageReactionRemoveData | GatewayMessageReactionRemoveEmojiDispatchData | GatewayMessageUpdateDispatchData | GatewayPresenceUpdate | GatewayReadyDispatchData | APIStageInstance | APISubscription | GatewayThreadCreateDispatchData | GatewayThreadDeleteDispatchData | GatewayThreadListSync | GatewayThreadMemberUpdateDispatchData | GatewayThreadMembersUpdate | GatewayTypingStartDispatchData | GatewayVoiceServerUpdateDispatchData | APIVoiceState | GatewayWebhooksUpdateDispatchData | GatewayMessagePollVoteDispatchData | GatewayVoiceChannelEffectSendDispatchData |
client | Client |
Returns
object
& Omit
<APIWebhookEventApplicationAuthorizedData
, "user"
| "guild"
> | APIEntitlement
& object
| GatewayApplicationCommandPermissionsUpdateDispatchData
& object
| GatewayAutoModerationActionExecutionDispatchData
& object
| APIAutoModerationRule
& object
| APIAutoModerationRule
& object
| APIAutoModerationRule
& object
| ((APIGuildCategoryChannel & { type: ChannelType.GuildText | ChannelType.GuildVoice | ChannelType.GuildCategory | ChannelType.GuildAnnouncement | ChannelType.GuildStageVoice | ChannelType.GuildDirectory | ChannelType.GuildForum | ChannelType.GuildMedia; guild_id: string; }) | ... 5 more ... | (APITextChannel & { ...;... | ((APIGuildCategoryChannel & { type: ChannelType.GuildText | ChannelType.GuildVoice | ChannelType.GuildCategory | ChannelType.GuildAnnouncement | ChannelType.GuildStageVoice | ChannelType.GuildDirectory | ChannelType.GuildForum | ChannelType.GuildMedia; guild_id: string; }) | ... 5 more ... | (APITextChannel & { ...;... | GatewayChannelPinsUpdateDispatchData
& object
| ((APIGuildCategoryChannel & { type: ChannelType.GuildText | ChannelType.GuildVoice | ChannelType.GuildCategory | ChannelType.GuildAnnouncement | ChannelType.GuildStageVoice | ChannelType.GuildDirectory | ChannelType.GuildForum | ChannelType.GuildMedia; guild_id: string; }) | ... 5 more ... | (APITextChannel & { ...;... | APIEntitlement
& object
| APIEntitlement
& object
| GatewayGuildAuditLogEntryCreateDispatchData
& object
| GatewayGuildBanModifyDispatchData
& object
| GatewayGuildBanModifyDispatchData
& object
| GatewayGuildCreateDispatchData
& object
| GatewayGuildDeleteDispatchData
& object
| GatewayGuildEmojisUpdateDispatchData
& object
| GatewayGuildIntegrationsUpdateDispatchData
& object
| GatewayGuildMemberAddDispatchData
& object
| GatewayGuildMemberRemoveDispatchData
& object
| _Nullable
<Pick
<APIGuildMember
, "joined_at"
>> & Omit
<APIGuildMember
, "flags"
| "user"
| "joined_at"
| "deaf"
| "mute"
> & Partial
<Pick
<APIGuildMember
, "flags"
| "deaf"
| "mute"
>> & Required
<Pick
<APIGuildMember
, "user"
| "avatar"
| "banner"
>> & object
& object
| GatewayGuildMembersChunkDispatchData
& object
| GatewayGuildRoleModifyDispatchData
& object
| GatewayGuildRoleDeleteDispatchData
& object
| GatewayGuildRoleModifyDispatchData
& object
| APIGuildScheduledEvent & { guild: Guild<true>; creator?: User<false> | undefined; } | APIGuildScheduledEvent & { guild: Guild<true>; } | APIGuildScheduledEvent & { guild: Guild<true>; } | GatewayGuildScheduledEventUserAddDispatchData
& object
| GatewayGuildScheduledEventUserRemoveDispatchData
& object
| APISoundboardSound
& object
| GatewayGuildSoundboardSoundDeleteDispatchData
& object
| APISoundboardSound
& object
| GatewayGuildSoundboardSoundsUpdateDispatchData
& object
| GatewayGuildSoundboardSoundsUpdateDispatchData
& object
| GatewayGuildStickersUpdateDispatchData
& object
| APIGuild
& object
| APIGuildIntegration
& object
& object
| GatewayIntegrationDeleteDispatchData
& object
| APIGuildIntegration
& object
& object
| APIInteraction & { guild?: Guild<true> | undefined; member?: GuildMember<false, false> | undefined; user: User<false>; } | GatewayInviteCreateDispatchData
& object
| GatewayInviteDeleteDispatchData
& object
| GatewayMessageEventExtraFields
& Omit
<APIMessage
, "mentions"
> & object
| GatewayMessageDeleteDispatchData
& object
| GatewayMessageDeleteBulkDispatchData
& object
| Omit
<{ }, never
> & object
| Omit
<{ }, "member"
| "message_author_id"
| "burst_colors"
> & object
| GatewayMessageReactionRemoveData
& object
| GatewayMessageReactionRemoveEmojiDispatchData
& object
| GatewayMessageEventExtraFields
& Omit
<APIMessage
, "mentions"
> & object
| GatewayPresenceUpdate
& object
| GatewayReadyDispatchData
& object
| APIStageInstance
& object
| APIStageInstance
& object
| APIStageInstance
& object
| APISubscription
& object
| APISubscription
& object
| APISubscription
& object
| GatewayThreadCreateDispatchData
& object
| GatewayThreadDeleteDispatchData
& object
| GatewayThreadListSync
& object
| APIThreadMember
& object
& object
| GatewayThreadMembersUpdate
& object
| APIThreadChannel
& object
| GatewayTypingStartDispatchData
& object
| APIUser
& object
| GatewayVoiceServerUpdateDispatchData
& object
| APIVoiceState
& object
| GatewayWebhooksUpdateDispatchData
& object
| GatewayMessagePollVoteDispatchData
& object
| GatewayMessagePollVoteDispatchData
& object
| GatewayVoiceChannelEffectSendDispatchData
& object