Skip to main content
Module

x/biscuit/mod.ts

A Discord library that is easy to use but reliable on its core 🥠
Latest
import * as biscuit from "https://deno.land/x/biscuit@0.2.4/mod.ts";

Classes

Class for anonymous guilds.

Represents an attachment

c
BaseChannel
abstract

Abstract class that represents the base for creating a new channel.

c
BaseGuild
abstract

Class for Guild and AnonymousGuild

Represents a category channel.

Utility class to get the resolved options for a command It is really typesafe

DMChannel

An event emitter (observer pattern)

Represents a guild.

Represent Discord Guild Preview Object

InviteGuild

Represents a reaction

NewsChannel

Receives a Token, connects Most of the command implementations were adapted from Discordeno (https://github.com/discordeno/discordeno)

StageChannel

Represents a text channel.

ThreadChannel

A member that comes from a thread

Utility functions

VoiceChannel

Not a channel

Enums

Variables

Discord epoch

utilities for Snowflakes

Available text-channel-types list

Functions

Handler used to determine max number of shards to use based upon the max concurrency.

Check the rate limits for a url or a bucket.

Cleans up the queues by checking if there is nothing left and removing it.

Create a new Gateway Manager.

Creates the request body and headers that are necessary to send a request. Will handle different types of methods and everything necessary for discord.

Create a new Shard manager. This does not manage a specific range of Shard but the provided Shards on create or when an identify is requested. The aim of this is to provide an easy to use manager which can be used by workers or any other kind of separate process.

CREDIT: https://gist.github.com/enepomnyaschih/72c423f727d395eeaa09697058238727 Encodes a given Uint8Array, ArrayBuffer or string into RFC4648 base64 representation

Get the bot id from the bot token. WARNING: Discord staff has mentioned this may not be stable forever. Use at your own risk. However, note for over 5 years this has never broken.

Creates a new MessageReactionAdd object.

Processes the queue by looping over each path separately until the queues are empty.

This will create a infinite loop running in 1 seconds using tail recursion to keep rate limits clean. When a rate limit resets, this will remove it so the queue can proceed.

Processes a request and assigns it to a queue or creates a queue if none exists for it.

Processes the rate limit headers and determines if it needs to be rate limited and returns the bucket id if available

Removes the Bot before the token.

used to edit messages

used to send messages

used to ban members

used to unban members

used to kick members

/guilds/{guildId}/widget

Split a url to separate rate limit buckets based on major/minor parameters.

Begin spawning shards.

Allows users to hook in and change to communicate to different workers across different servers or anything they like. For example using redis pubsub to talk to other servers.

Converts a url to base 64. Useful for example, uploading/creating server emojis.

Interfaces

Action Row Component

Webhook create object

Representations of the objects to edit a guild channel

Link Button Component

Represents when a new reaction was added to a message.

Represents a Discord data model

Utility type

Return the widget for the guild.

Select Menu Component

Text Input Component

Represent the options object to create a thread channel

A partial User to represent the author of a message sent by a webhook

Type Aliases

ChannelFactory

Button Component

All Components

Utility type

Represents a guild or unicode Emoji

Maximun custom guild emojis per level

Maximun custom guild stickers per level

Represents when a reaction was removed from a message. Equal to MessageReactionAdd but without 'member' property.

Represents when all reactions were removed from a message. Equals to MessageReactionAdd but with 'channelId', 'messageId' and 'guildId' properties guaranteed.

Represents when a reaction-emoji was removed from a message. Equals to MessageReactionAdd but with 'channelId', 'messageId', 'emoji' and 'guildId' properties guaranteed.

This is a Shard manager. This does not manage a specific range of Shard but the provided Shards on create or when an identify is requested. The aim of this is to provide an easy to use manager which can be used by workers or any other kind of separate process.

snowflake type

Available text-channel-types