feat(CategoryChannel): add createChannel shortcut method (#6614)

This commit is contained in:
Rodry
2021-10-03 14:00:41 +01:00
committed by GitHub
parent e9daa31eaf
commit 3eacf7a587
3 changed files with 86 additions and 21 deletions

View File

@@ -26,6 +26,35 @@ class CategoryChannel extends GuildChannel {
* @param {SetParentOptions} [options={}] The options for setting the parent
* @returns {Promise<GuildChannel>}
*/
/**
* Options for creating a channel using {@link CategoryChannel#createChannel}.
* @typedef {Object} CategoryCreateChannelOptions
* @property {ChannelType|number} [type='GUILD_TEXT'] The type of the new channel.
* @property {string} [topic] The topic for the new channel
* @property {boolean} [nsfw] Whether the new channel is nsfw
* @property {number} [bitrate] Bitrate of the new channel in bits (only voice)
* @property {number} [userLimit] Maximum amount of users allowed in the new channel (only voice)
* @property {OverwriteResolvable[]|Collection<Snowflake, OverwriteResolvable>} [permissionOverwrites]
* Permission overwrites of the new channel
* @property {number} [position] Position of the new channel
* @property {number} [rateLimitPerUser] The ratelimit per user for the new channel
* @property {string} [reason] Reason for creating the new channel
*/
/**
* Creates a new channel on this category.
* <info>You cannot create a channel of type `GUILD_CATEGORY` inside a CategoryChannel.</info>
* @param {string} name The name of the new channel
* @param {CategoryCreateChannelOptions} options Options for creating the new channel
* @returns {Promise<GuildChannel>}
*/
createChannel(name, options) {
return this.guild.channels.create(name, {
...options,
parent: this.id,
});
}
}
module.exports = CategoryChannel;