artibot
Version:
Modern, fast and modular open-source Discord bot
114 lines (113 loc) • 4.84 kB
TypeScript
import { ColorResolvable, Snowflake } from "discord.js";
/**
* Configuration object for Artibot
* @see {@link ArtibotConfigBuilder} for an easy way to generate this
* @since 5.0.0
*/
export interface ArtibotConfig {
/** Discord ID of the owner of the bot */
ownerId: Snowflake;
/** Discord ID of the testing guild */
testGuildId: Snowflake;
/** Name of the Discord bot. Used almost everywhere. */
botName: string;
/** URL of the profile picture of the bot */
botIcon: string;
/** Prefix for the commands */
prefix: string;
/** Set to false if the bot must be used in more than one server. Interactions could take more time to refresh. */
devMode: boolean;
/** Set the lang of the bot */
lang: string;
/** Color for the embeds sent by the bot */
embedColor: ColorResolvable;
/** Set to false if you want to hide advanced infos from ping commands */
advancedCorePing: boolean;
/** Set to false if you don't want the bot to check for new updates */
checkForUpdates: boolean;
/** Set to true to show debug messages in console */
debug: boolean;
/** Set a custom ready trigger message for Pterodactyl */
pterodactylReadyMessage: string;
/** Other config options can be added by modules */
[key: string]: any;
}
/**
* Easily build the ArtibotConfig object
* @see {@link ArtibotConfig} to learn more about individual properties
* @since 5.0.0
*/
export declare class ArtibotConfigBuilder implements Partial<ArtibotConfig> {
/** Discord ID of the owner of the bot */
ownerId?: Snowflake;
/** ID of the test server */
testGuildId?: Snowflake;
/** Name of the bot */
botName: string;
/** Icon of the bot */
botIcon: string;
/** Prefix for the classic commands */
prefix: string;
/** Set to false if the bot must be used in more than one server. Interactions could take more time to refresh. */
devMode: boolean;
/** Set the lang of the bot */
lang: string;
/** Color for the embeds sent by the bot */
embedColor: ColorResolvable;
/** Set to false if you want to hide advanced infos from ping commands */
advancedCorePing: boolean;
/** Set to false to disable checking for updates */
checkForUpdates: boolean;
/** Set to true to show debug messages in console */
debug: boolean;
/** Set a custom ready trigger message for Pterodactyl */
pterodactylReadyMessage: string;
/** Set the Discord ID of the owner of this bot (probably you) */
setOwnerId(id: Snowflake): this;
/** Set the test guild ID. When {@link devMode} is false, interactions will only be publish in this guild. */
setTestGuildId(id: Snowflake): this;
/** Set the name to use in Discord, in {@link Embed} and {@link Artibot.createEmbed} */
setBotName(name: string): this;
/** Set the icon to use in {@link Embed} and {@link Artibot.createEmbed} */
setBotIcon(url: string): this;
/** Set the prefix for classic commands */
setPrefix(prefix: string): this;
/** Set dev mode, to allow Artibot to publish interaction in more than one server */
setDevMode(state: boolean): this;
/** Toggle dev mode, to allow Artibot to publish interaction in more than one server */
toggleDevMode(): this;
/** Enable dev mode, to allow Artibot to publish interaction in more than one server */
enableDevMode(): this;
/** Disable dev mode, to allow Artibot to publish interaction in more than one server */
disableDevMode(): this;
/** Set language of the bot (eg. "fr") */
setLang(lang: string): this;
/** Set the color of {@link Embed} and {@link Artibot.createEmbed} */
setEmbedColor(color: ColorResolvable): this;
/** Set "advanced" stats in the ping command in Core module */
setAdvancedCorePing(state: boolean): this;
/** Toggle "advanced" stats in the ping command in Core module */
toggleAdvancedCorePing(): this;
/** Enable "advanced" stats in the ping command in Core module */
enableAdvancedCorePing(): this;
/** Disable "advanced" stats in the ping command in Core module */
disableAdvancedCorePing(): this;
/** Set checking for updates */
setCheckForUpdates(state: boolean): this;
/** Toggle checking for updates */
toggleCheckForUpdates(): this;
/** Enable checking for updates */
enableCheckForUpdates(): this;
/** Disable checking for updates */
disableCheckForUpdates(): this;
/** Set debug mode */
setDebug(state: boolean): this;
/** Toggle debug mode */
toggleDebug(): this;
/** Enable debug mode */
enableDebug(): this;
/** Disable debug mode */
disableDebug(): this;
/** Set the message sent to Pterodactyl when the bot is ready */
setPterodactylReadyMessage(message: string): this;
}