detritus-client
Version:
A Typescript NodeJS library to interact with Discord's API, both Rest and Gateway.
51 lines (50 loc) • 1.86 kB
TypeScript
import { RequestTypes } from 'detritus-client-rest';
import { ShardClient } from '../client';
import { BaseCollection } from '../collections/basecollection';
import { BaseSet } from '../collections/baseset';
import { PermissionTools } from '../utils';
import { BaseStructure, BaseStructureData } from './basestructure';
import { ChannelGuildBase } from './channel';
import { Guild } from './guild';
import { Member } from './member';
/**
* Guild Role Structure, used in [Guild]
* @category Structure
*/
export declare class Role extends BaseStructure {
readonly _keys: BaseSet<string>;
readonly _keysMerge: BaseSet<string>;
color: number;
guildId: string;
hoist: boolean;
id: string;
managed: boolean;
mentionable: boolean;
name: string;
permissions: bigint;
position: number;
tags: {
bot_id: string;
integration_id?: string;
premium_subscriber?: null;
} | null;
constructor(client: ShardClient, data?: BaseStructureData, isClone?: boolean);
get botId(): null | string;
get createdAt(): Date;
get createdAtUnix(): number;
get guild(): Guild | null;
get integrationId(): null | string;
get isBoosterRole(): boolean;
get isDefault(): boolean;
get members(): BaseCollection<string, Member>;
get mention(): string;
can(permissions: PermissionTools.PermissionChecks, { ignoreAdministrator }?: {
ignoreAdministrator?: boolean;
}): boolean;
permissionsIn(channelId: ChannelGuildBase | string): bigint;
delete(options?: RequestTypes.DeleteGuildRole): Promise<any>;
edit(options: RequestTypes.EditGuildRole): Promise<Role>;
editPosition(position: number, options?: RequestTypes.EditGuildRolePositionsExtra): Promise<BaseCollection<string, Role>>;
mergeValue(key: string, value: any): void;
toString(): string;
}