feat(Guild): add rulesChannel and publicUpdatesChannel (#3810)

* add rulesChannel* & publicUpdatesChannel*

* update typings
This commit is contained in:
Sugden
2020-02-22 12:04:41 +00:00
committed by GitHub
parent ef8acecc70
commit bea6da621d
2 changed files with 38 additions and 0 deletions

View File

@@ -320,6 +320,20 @@ class Guild extends Base {
this.available = !data.unavailable;
this.features = data.features || this.features || [];
/**
* The ID of the rules channel for the guild
* <info>This is only available on guilds with the `PUBLIC` feature</info>
* @type {?Snowflake}
*/
this.rulesChannelID = data.rules_channel_id;
/**
* The ID of the public updates channel for the guild
* <info>This is only available on guilds with the `PUBLIC` feature</info>
* @type {?Snowflake}
*/
this.publicUpdatesChannelID = data.public_updates_channel_id;
if (data.channels) {
this.channels.cache.clear();
for (const rawChannel of data.channels) {
@@ -504,6 +518,26 @@ class Guild extends Base {
return this.client.channels.cache.get(this.embedChannelID) || null;
}
/**
* Rules channel for this guild
* <info>This is only available on guilds with the `PUBLIC` feature</info>
* @type {?TextChannel}
* @readonly
*/
get rulesChannel() {
return this.client.channels.cache.get(this.rulesChannelID) || null;
}
/**
* Public updates channel for this guild
* <info>This is only available on guilds with the `PUBLIC` feature</info>
* @type {?TextChannel}
* @readonly
*/
get publicUpdatesChannel() {
return this.client.channels.cache.get(this.publicUpdatesChannelID) || null;
}
/**
* The client user as a GuildMember of this guild
* @type {?GuildMember}

4
typings/index.d.ts vendored
View File

@@ -710,8 +710,12 @@ declare module 'discord.js' {
public premiumSubscriptionCount: number | null;
public premiumTier: PremiumTier;
public presences: PresenceManager;
public readonly publicUpdatesChannel: TextChannel | null;
public publicUpdatesChannelID: Snowflake | null;
public region: string;
public roles: RoleManager;
public readonly rulesChannel: TextChannel | null;
public rulesChannelID: Snowflake | null;
public readonly shard: WebSocketShard;
public shardID: number;
public splash: string | null;