3
0
Fork 0
mirror of https://github.com/ZeppelinBot/Zeppelin.git synced 2025-05-21 08:45:03 +00:00
zeppelin/backend/src/utils/getMissingChannelPermissions.ts
2021-05-31 03:30:55 +02:00

16 lines
600 B
TypeScript

import { GuildMember, GuildChannel } from "discord.js";
import { getMissingPermissions } from "./getMissingPermissions";
/**
* @param requiredPermissions Bitmask of required permissions
* @return Bitmask of missing permissions
*/
export function getMissingChannelPermissions(
member: GuildMember,
channel: GuildChannel,
requiredPermissions: number | bigint,
): bigint {
const memberChannelPermissions = channel.permissionsFor(member.id);
if (!memberChannelPermissions) return BigInt(requiredPermissions);
return getMissingPermissions(memberChannelPermissions, requiredPermissions);
}