Table of Contents

Interface INestedChannel

Namespace
Kook
Assembly
Kook.Net.Core.dll

Represents a type of guild channel that can be nested within a category.

public interface INestedChannel : IGuildChannel, IChannel, IEntity<ulong>, IDeletable
Inherited Members
Extension Methods

Properties

CategoryId

Gets the parent (category) ID of this channel in the guild's channel list.

ulong? CategoryId { get; }

Property Value

ulong?

A ulong representing the identifier of the parent of this channel; null if none is set.

IsPermissionSynced

Specifies whether the permissions of this channel is synchronized with its parent channel.

bool? IsPermissionSynced { get; }

Property Value

bool?

A bool indicating whether the permissions of this channel is synchronized with its parent channel.

Methods

CreateInviteAsync(InviteMaxAge, InviteMaxUses, RequestOptions?)

Creates a new invite to this channel.

Task<IInvite> CreateInviteAsync(InviteMaxAge maxAge = InviteMaxAge._604800, InviteMaxUses maxUses = InviteMaxUses.Unlimited, RequestOptions? options = null)

Parameters

maxAge InviteMaxAge

The time until the invite expires. Set to InviteMaxAge.NeverExpires to never expire.

maxUses InviteMaxUses

The max amount of times this invite may be used. Set to InviteMaxUses.Unlimited to have unlimited uses.

options RequestOptions

The options to be used when sending the request.

Returns

Task<IInvite>

A task that represents the asynchronous invite creation operation. The task result contains an invite metadata object containing information for the created invite.

CreateInviteAsync(int?, int?, RequestOptions?)

Creates a new invite to this channel.

Task<IInvite> CreateInviteAsync(int? maxAge = 604800, int? maxUses = null, RequestOptions? options = null)

Parameters

maxAge int?

The time (in seconds) until the invite expires. Set to null to never expire.

maxUses int?

The max amount of times this invite may be used. Set to null to have unlimited uses.

options RequestOptions

The options to be used when sending the request.

Returns

Task<IInvite>

A task that represents the asynchronous invite creation operation. The task result contains an invite metadata object containing information for the created invite.

GetCategoryAsync(CacheMode, RequestOptions?)

Gets the parent (category) channel of this channel.

Task<ICategoryChannel?> GetCategoryAsync(CacheMode mode = CacheMode.AllowDownload, RequestOptions? options = null)

Parameters

mode CacheMode

The CacheMode that determines whether the object should be fetched from cache.

options RequestOptions

The options to be used when sending the request.

Returns

Task<ICategoryChannel>

A task that represents the asynchronous get operation. The task result contains the category channel representing the parent of this channel; null if none is set.

GetInvitesAsync(RequestOptions?)

Gets a collection of all invites from this guild channel.

Task<IReadOnlyCollection<IInvite>> GetInvitesAsync(RequestOptions? options = null)

Parameters

options RequestOptions

The options to be used when sending the request.

Returns

Task<IReadOnlyCollection<IInvite>>

A task that represents the asynchronous get operation. The task result contains a read-only collection of invite, each representing information for an invite found within this guild.

SyncPermissionsAsync(RequestOptions?)

Syncs the permissions of this nested channel with its parent's.

Task SyncPermissionsAsync(RequestOptions? options = null)

Parameters

options RequestOptions

The options to be used when sending the request.

Returns

Task

A task that represents the asynchronous operation for syncing channel permissions with its parent's.