guilded.ts
Version:
A powerful NPM module that allows you to easily interact with the Guilded API.
36 lines • 1.16 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.ServerMemberRole = void 0;
const ServerRole_1 = require("./ServerRole");
/**
* Represents a server member role on Guilded.
* @example new ServerMemberRole(member, rawRole);
*/
class ServerMemberRole extends ServerRole_1.ServerRole {
member;
/**
* @param member The server member the role belongs to.
* @param raw The raw data of the role.
* @param cache Whether to cache the server member role.
*/
constructor(member, raw, cache = member.client.options.cacheServerMemberRoles ?? true) {
super(member.server, raw);
this.member = member;
if (cache)
member.roles.cache.set(this.id, this);
}
/** Whether the role is cached. */
get isCached() {
return this.member.roles.cache.has(this.id);
}
/**
* Remove the role from the server member.
* @returns The removed role.
* @example role.remove();
*/
remove() {
return this.member.roles.unassign(this);
}
}
exports.ServerMemberRole = ServerMemberRole;
//# sourceMappingURL=ServerMemberRole.js.map