Files
celestine/src/utils/isModerator.ts
2024-05-12 01:52:39 -07:00

21 lines
703 B
TypeScript

import { GuildMember, PermissionFlagsBits } from "discord.js";
/**
* Takes a list of moderator permissions and checks if the member has
* any of those permissions.
*
* @param {GuildMember} member The member to check.
* @returns {boolean} True if the member has at least one of the configured permissions.
*/
export const isModerator = (member: GuildMember) => {
const modPermissions = [
PermissionFlagsBits.BanMembers,
PermissionFlagsBits.KickMembers,
PermissionFlagsBits.ManageMessages,
PermissionFlagsBits.ManageGuild,
PermissionFlagsBits.ModerateMembers,
PermissionFlagsBits.Administrator
];
return modPermissions.some((perm) => member.permissions.has(perm));
};