mirror of
https://github.com/spacebarchat/server.git
synced 2024-11-11 13:14:06 +01:00
60 lines
2.0 KiB
TypeScript
60 lines
2.0 KiB
TypeScript
import { ChannelPermissionOverwrite } from "../models/Channel";
|
|
import { Role } from "../models/Role";
|
|
import { BitField } from "./BitField";
|
|
export declare type PermissionResolvable = bigint | number | Permissions | PermissionResolvable[];
|
|
export declare class Permissions extends BitField {
|
|
static FLAGS: {
|
|
CREATE_INSTANT_INVITE: bigint;
|
|
KICK_MEMBERS: bigint;
|
|
BAN_MEMBERS: bigint;
|
|
ADMINISTRATOR: bigint;
|
|
MANAGE_CHANNELS: bigint;
|
|
MANAGE_GUILD: bigint;
|
|
ADD_REACTIONS: bigint;
|
|
VIEW_AUDIT_LOG: bigint;
|
|
PRIORITY_SPEAKER: bigint;
|
|
STREAM: bigint;
|
|
VIEW_CHANNEL: bigint;
|
|
SEND_MESSAGES: bigint;
|
|
SEND_TTS_MESSAGES: bigint;
|
|
MANAGE_MESSAGES: bigint;
|
|
EMBED_LINKS: bigint;
|
|
ATTACH_FILES: bigint;
|
|
READ_MESSAGE_HISTORY: bigint;
|
|
MENTION_EVERYONE: bigint;
|
|
USE_EXTERNAL_EMOJIS: bigint;
|
|
VIEW_GUILD_INSIGHTS: bigint;
|
|
CONNECT: bigint;
|
|
SPEAK: bigint;
|
|
MUTE_MEMBERS: bigint;
|
|
DEAFEN_MEMBERS: bigint;
|
|
MOVE_MEMBERS: bigint;
|
|
USE_VAD: bigint;
|
|
CHANGE_NICKNAME: bigint;
|
|
MANAGE_NICKNAMES: bigint;
|
|
MANAGE_ROLES: bigint;
|
|
MANAGE_WEBHOOKS: bigint;
|
|
MANAGE_EMOJIS: bigint;
|
|
};
|
|
any(permission: PermissionResolvable, checkAdmin?: boolean): boolean;
|
|
/**
|
|
* Checks whether the bitfield has a permission, or multiple permissions.
|
|
*/
|
|
has(permission: PermissionResolvable, checkAdmin?: boolean): boolean;
|
|
static channelPermission(overwrites: ChannelPermissionOverwrite[], init?: bigint): bigint;
|
|
static rolePermission(roles: Role[]): bigint;
|
|
static finalPermission({ user, guild, channel, }: {
|
|
user: {
|
|
id: bigint;
|
|
roles: bigint[];
|
|
};
|
|
guild: {
|
|
roles: Role[];
|
|
};
|
|
channel?: {
|
|
overwrites?: ChannelPermissionOverwrite[];
|
|
};
|
|
}): bigint;
|
|
}
|
|
export declare function getPermission(user_id: bigint, guild_id: bigint, channel_id?: bigint): Promise<bigint>;
|