Table of Contents

Namespace Kook

Classes

ActionGroupModule

Represents an action group module that can be used in an ICard.

ActionGroupModuleBuilder

Represents a action group module builder for creating an ActionGroupModule.

AsyncEnumerableExtensions

An extension class for squashing IAsyncEnumerable<T>.

Attachment

Represents a message attachment found in a IUserMessage.

AudioModule

Represents an audio module that can be used in an ICard.

AudioModuleBuilder

Represents a audio module builder for creating an AudioModule.

BoostSubscriptionMetadata

A meta data containing boost subscription information.

ButtonElement

A button element that can be used in an IModule.

ButtonElementBuilder

An element builder to build a ButtonElement.

Card

Represents a card object seen in an IUserMessage.

CardBuilder

Represents a builder class for creating a Card.

CardExtensions

Provides extension methods for IElement, IModule and ICard.

ChannelExtensions

Provides extension methods for IChannel.

ContainerModule

Represents a container module that can be used in an ICard.

ContainerModuleBuilder

Represents a container module builder for creating a ContainerModule.

ContextModule

Represents a context module that can be used in an ICard.

ContextModuleBuilder

Represents a context module builder for creating a ContextModule.

CountdownModule

Represents a countdown module that can be used in an ICard.

CountdownModuleBuilder

Represents a countdown module builder for creating a CountdownModule.

CreateCategoryChannelProperties

Provides properties that are used to create an ICategoryChannel with the specified properties.

CreateGuildChannelProperties

Properties that are used to create an IGuildChannel with the specified properties.

CreateTextChannelProperties

Provides properties that are used to create an ITextChannel with the specified properties.

CreateVoiceChannelProperties

Provides properties that are used to create an IVoiceChannel with the specified properties.

DividerModule

A divider module that can be used in an ICard.

DividerModuleBuilder

Represents a divider module builder for creating a DividerModule.

Emoji

A Unicode emoji.

Emote

Represents a guild emote.

FileModule

A file module that can be used in an ICard.

FileModuleBuilder

Represents a file module builder for creating a FileModule.

Format

A helper class for formatting characters.

GameProperties

Properties that are used to modify an IGame with the specified changes.

GuildEmote

An image-based emote that is attached to a guild.

GuildFeatures

Represents a collection of features of a guild.

GuildProperties

Provides properties that are used to modify an IGuild with the specified changes.

HeaderModule

Represents a header module in an ICard.

HeaderModuleBuilder

Represents a header module builder for creating a HeaderModule.

ImageElement

An image element that can be used in an IModule.

ImageElementBuilder

An element builder to build an ImageElement.

ImageGroupModule

Represents an image group module that can be used in an ICard.

ImageGroupModuleBuilder

Representing an image group module builder for create an ImageGroupModule.

IntimacyImage

Represents a single image of an intimacy.

IntimacyProperties

Properties that are used to modify an IIntimacy with the specified changes.

InviteModule

An invite module that can be used in an ICard.

InviteModuleBuilder

Represents a invite module builder for creating an InviteModule.

KMarkdownElement

A KMarkdown element that can be used in an IModule.

KMarkdownElementBuilder

An element builder to build a KMarkdownElement.

KookConfig

Defines various behaviors of Kook.Net.

MentionUtils

Provides a series of helper methods for parsing mentions.

MessageExtensions

Provides extension methods for IMessage.

MessageProperties

Properties that are used to modify an IUserMessage with the specified changes.

ModifyGuildChannelProperties

Properties that are used to modify an IGuildChannel with the specified properties.

ModifyTextChannelProperties

Provides properties that are used to modify an ITextChannel with the specified properties.

ModifyVoiceChannelProperties

Provides properties that are used to modify an IVoiceChannel with the specified properties.

Music

Represents a music activity.

Nameplate

Representing a nameplate an IUser can have.

ParagraphStruct

A paragraph struct that can be used in modules.

ParagraphStructBuilder

An element builder to build a ParagraphStruct.

PlainTextElement

A plain text element that can be used in an IModule.

PlainTextElementBuilder

An element builder to build a PlainTextElement.

Preconditions

Provides methods to check preconditions.

Quote

Represents a generic message quote.

RequestOptions

Represents options that should be used when sending a request.

RolePermissionOverwrite

Represent a permission object for a role.

RoleProperties

Properties that are used to modify an IRole with the specified changes.

SearchGuildMemberProperties

Properties that are used to search for a IGuildUser in a IGuild.

SectionModule

Represents a section module in card.

SectionModuleBuilder

Represents a section module builder for creating a SectionModule.

Tag<T>

Represents a tag found in IMessage.

TokenUtils

Provides a series of helper methods for handling Kook login tokens.

UserExtensions

An extension class for various Kook user objects.

UserPermissionOverwrite

Represent a permission object for a user.

UserTag

Representing a tag an IUser can have.

VideoModule

Represents a video module in an ICard.

VideoModuleBuilder

Represents a video module builder for creating a VideoModule.

Structs

AlphaColor

Represents a Color with an alpha channel.

BilibiliVideoEmbed

Represents an embed in a message that links to a Bilibili video.

Cacheable<TEntity, TId>

Represents a cached entity.

Cacheable<TCachedEntity, TDownloadableEntity, TRelationship, TId>

Represents a cached entity that can be downloaded.

ChannelPermissions

Represents a set of permissions for a channel.

Color

Represents a color used in Kook.

FileAttachment

Represents a file attachment.

GradientColor

Represents a gradient color.

GuildPermissions

Represents a set of permissions for a guild.

Image

An image that will be uploaded to Kook.

ImageAnimationPokeResource

Represents an image animation poke resource.

ImageEmbed

Represents an image embed.

KookError

Represents an error with a property.

KookJsonError

Represents a generic parsed json error received from Kook after performing a rest request.

LinkEmbed

Represents a link embed.

LogMessage

Provides a message object used for logging purposes.

NotImplementedEmbed

Represents a unimplemented embed.

NotImplementedPokeResource

Represents a poke resource that is not implemented to be resolved yet.

OverwritePermissions

Represents a container for a series of overwrite permissions.

PokeIcon

Represents an icon of an IPoke.

PokeLabel

Represents the label of a IPoke.

PokeQuality

Represents the quality of a IPoke.

ReactionMetadata

A metadata containing reaction information.

Interfaces

IActivity

A user's activity status.

IAttachment

Represents a message attachment found in a IUserMessage.

IAudioChannel

Represents a generic audio channel.

IBan

Represents a generic ban object.

ICard

Represents a generic card.

ICardBuilder

Represents a generic card builder for creating a ICard.

ICategoryChannel

Represents a generic category channel.

IChannel

Represents a generic channel.

IDMChannel

Represents a generic direct-message channel.

IDeletable

Determines whether the object is deletable or not.

IElement

A generic element used in modules.

IElementBuilder

A generic builder for creating an IElement.

IEmbed

Represents a generic embed.

IEmote

Represents a general container for any type of emote in a message.

IEntity<TId>

Represents a generic entity that has a unique identifier.

IFriendRequest

Represents a generic friend request.

IGame

Represents a generic game object.

IGuild

Represents a generic guild/server.

IGuildChannel

Represents a generic guild channel.

IGuildUser

Represents a generic guild user.

IIntimacy

Represents a generic intimacy.

IInvite

Represents a generic invite.

IKookClient

Represents a generic Kook client.

IMediaModule

A generic media module that can be used in an ICard.

IMentionable

Determines whether the object is mentionable or not.

IMessage

Represents a message object.

IMessageChannel

Represents a channel that can send and receive messages.

IModule

Represents a generic module that can be used in an ICard.

IModuleBuilder

A generic module builder for creating an IModule.

INestedChannel

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

IPermissionOverwrite<TTarget>

Represents a generic permission overwrite.

IPoke

Represents a generic poke.

IPokeAction

Represents a single generic poke action.

IPokeResource

Represents a generic poke resource.

IPresence

Represents the user's presence status. This may include their online status and their activity.

IPrivateChannel

Represents a generic channel that is private to selected recipients.

IQuote

Represents a generic message quote.

IRateLimitInfo

Represents a generic ratelimit info.

IReaction

Represents a generic reaction object.

IRecommendInfo

Represents a generic recommendation information.

IRole

Represents a generic role object to be given to a guild user.

ISelfUser

Represents the logged-in Kook user.

ISystemMessage

Represents a generic message sent by the system.

ITag

Gets a generic tag found in messages.

ITextChannel

Represents a generic channel in a guild that can send and receive messages.

IUpdateable

Defines whether the object is updateable or not.

IUser

Represents a generic user.

IUserMessage

Represents a generic message sent by a user.

IVoiceChannel

Represents a generic voice channel in a guild.

IVoiceRegion

Represents a region of which the user connects to when using voice.

IVoiceState

Represents a user's voice connection status.

Enums

ActivityType

Specifies the type of activities.

AttachmentType

Specifies the type of the attachment.

BadgeStyle

Specifies the style of badges.

BoostLevel

Specifies the boost level of a guild.

ButtonClickEventType

Specifies the event type fired when a ButtonElement is clicked.

ButtonTheme

Specifies the theme of a ButtonElement.

CacheMode

Specifies the cache mode that should be used.

CardSize

Specifies the size of a card.

CardTheme

Specifies the theme of the card.

CardType

Specifies the type of the card.

ChannelPermission

Represents a permission can be granted to a channel.

ChannelType

Specifies the type of a guild channel.

ClientType

Defines the types of clients a user can be active on.

ColorType

Represents the type of color a role has.

ConnectionState

Specifies the connection state of a client.

CountdownMode

Specifies the display mode for the countdown timer.

CreateAttachmentMode

Indicates that how the FileAttachment will be operated to attache files.

Direction

Specifies the direction of where message(s) should be retrieved from.

ElementType

Specifies the type of an IElement.

EmbedType

Represents the type of an embed.

EmojiType

Specifies the type of an emoji.

FriendState

Represents a state of a friend relationship with the current user.

GameCreationSource

Represents the creation source of a game.

GameType

Specifies the type of games.

GuildFeature

Represents a feature of a guild.

GuildPermission

Represents a permission can be granted to a guild.

ImageSize

Specifies the size of the image in ImageElement.

InviteMaxAge

Specifies the time in second after which an IInvite will be expired.

InviteMaxUses

Specifies the number of uses after which an IInvite will be expired.

KookErrorCode

Represents a set of json error codes received by Kook.

LogSeverity

Specifies the severity of the log message.

LoginState

Specifies the state of the client's login status.

MessageSource

Specifies the source of the Kook message.

MessageType

Represents the type of a message.

ModuleType

Specifies the type of an IModule.

MusicProvider

Specifies the provider of music.

NotifyType

Specifies that how the guild should notify the user.

PermValue

Specifies the permission value.

PokeResourceType

Represents the type of a IPokeResource.

RequestFriendSource

Represents a source from which a friend request is sent.

RetryMode

Specifies how a request should act in the case of an error.

RoleType

Represents the type of a role.

SectionAccessoryMode

Specifies the accessory position relative to the text element.

SlowModeInterval

Specifies the slow-mode ratelimit in seconds for an ITextChannel.

SortMode

Specifies the sorting mode.

SystemMessageType

Gets the type of a ISystemMessage

TagHandling

Specifies the handling type the tag should use.

TagMode

Represents the mode to parse tags.

TagType

Specifies the type of Kook tag.

TextTheme

Represents text themes used in Colorize(string, TextTheme, bool).

TokenType

Specifies the type of token to use with the client.

VoiceQuality

Specifies the voice quality of an IVoiceChannel.