import { Channel } from "../objects/Channel"; import { Member } from "../objects/Member"; import { Server } from "../objects/Server"; /** Permissions against users. */ export declare enum UserPermissions { Access = 1, ViewProfile = 2, SendMessage = 4, Invite = 8 } /** Permissions against servers/channels. */ export declare enum Permissions { /** Manage the channel or channels on the server */ ManageChannel = 1, /** Manage the server */ ManageServer = 2, /** Manage permissions on servers or channels */ ManagePermissions = 4, /** Manage roles on server */ ManageRole = 8, /** Manage server customisation (includes emoji) */ ManageCustomisation = 16, /** Kick other members below their ranking */ KickMembers = 64, /** Ban other members below their ranking */ BanMembers = 128, /** Timeout other members below their ranking */ TimeoutMembers = 256, /** Assign roles to members below their ranking */ AssignRoles = 512, /** Change own nickname */ ChangeNickname = 1024, /** Change or remove other's nicknames below their ranking */ ManageNicknames = 2048, /** Change own avatar */ ChangeAvatar = 4096, /** Remove other's avatars below their ranking */ RemoveAvatars = 8192, /** View a channel */ ViewChannel = 1048576, /** Read a channel's past message history */ ReadMessageHistory = 2097152, /** Send a message in a channel */ SendMessage = 4194304, /** Delete messages in a channel */ ManageMessages = 8388608, /** Manage webhook entries on a channel */ ManageWebhooks = 16777216, /** Create invites to this channel */ InviteOthers = 33554432, /** Send embedded content in this channel */ SendEmbeds = 67108864, /** Send attachments and media in this channel */ UploadFiles = 134217728, /** Masquerade messages using custom nickname and avatar */ Masquerade = 268435456, /** React to messages with emoji */ React = 536870912, /** Connect to a voice channel */ Connect = 1073741824, /** Speak in a voice call */ Speak = 2147483648, /** Share video in a voice call */ Video = 4294967296, /** Mute other members with lower ranking in a voice call */ MuteMembers = 8589934592, /** Deafen other members with lower ranking in a voice call */ DeafenMembers = 17179869184, /** Move members between voice channels */ MoveMembers = 34359738368, /** Safely grant all permissions */ GrantAllSafe = 4503599627370495 } /** * Maximum safe value */ export declare const U32_MAX: number; /** * Permissions allowed for a user while in timeout */ export declare const ALLOW_IN_TIMEOUT: number; /** * Default permissions if we can only view */ export declare const DEFAULT_PERMISSION_VIEW_ONLY: number; /** * Default base permissions for channels */ export declare const DEFAULT_PERMISSION: number; /** * Permissions in saved messages channel */ export declare const DEFAULT_PERMISSION_SAVED_MESSAGES: Permissions; /** * Permissions in direct message channels / default permissions for group DMs */ export declare const DEFAULT_PERMISSION_DIRECT_MESSAGE: number; /** * Permissions in server text / voice channel */ export declare const DEFAULT_PERMISSION_SERVER: number; /** Calculate permissions against an object. (optionally as a different member) */ export declare function calculatePermissions(target: Channel | Server, as?: Member): number;