diff --git a/handlers/Actions.ts b/handlers/Actions.ts index ecfe1dd..919d6ea 100644 --- a/handlers/Actions.ts +++ b/handlers/Actions.ts @@ -5,6 +5,8 @@ import type { DiscordGuildMemberAdd, DiscordGuildMemberRemove, DiscordGuildMemberUpdate, + DiscordUser, + DiscordGuildBanAddRemove, DiscordInteraction, DiscordMemberWithUser, DiscordMessage, @@ -72,6 +74,14 @@ export const GUILD_MEMBER_REMOVE: RawHandler = (sessio session.emit("guildMemberRemove", new User(session, member.user), member.guild_id); }; +export const GUILD_BAN_ADD: RawHandler = (session, _shardId, data) => { + session.emit("guildBanAdd", { guildId: data.guild_id, user: data.user }); +}; + +export const GUILD_BAN_REMOVE: RawHandler = (session, _shardId, data) => { + session.emit("guildBanRemove", { guildId: data.guild_id, user: data.user }); +}; + export const INTERACTION_CREATE: RawHandler = (session, _shardId, interaction) => { session.unrepliedInteractions.add(BigInt(interaction.id)); @@ -174,6 +184,8 @@ export interface Events { "guildMemberAdd": Handler<[Member]>; "guildMemberUpdate": Handler<[Member]>; "guildMemberRemove": Handler<[User, Snowflake]>; + "guildBanAdd": Handler<[{ guildId: Snowflake, user: DiscordUser}]>; + "guildBanRemove": Handler<[{ guildId: Snowflake, user: DiscordUser }]> "channelCreate": Handler<[Channel]>; "channelUpdate": Handler<[Channel]>; "channelDelete": Handler<[GuildChannel]>;