discord-leveling-super
Version:
Easy and customizable leveling framework for your Discord bot.
117 lines (113 loc) • 4.29 kB
TypeScript
// This file was generated automatically!
// I'm not responsible for the quality of this code!
// The module is made in TypeScript.
// See the source code here:
// https://github.com/shadowplay1/discord-leveling-super
// Thanks!
import { Client, Guild } from 'discord.js';
import { LevelingOptions } from '../../typings/interfaces/LevelingOptions';
import { SettingsArrays, SettingsTypes } from '../../typings/interfaces/Settings';
/**
* Settings manager methods class.
*/
declare class SettingsManager {
/**
* Leveling Options.
* @type {LevelingOptions}
* @private
*/
private options;
/**
* Database Manager.
* @type {DatabaseManager}
* @private
*/
private database;
/**
* Utils Manager.
* @type {UtilsManager}
* @private
*/
private utils;
/**
* Ranks manager methods class.
* @param {LevelingOptions} options Leveling options object.
*/
constructor(options: LevelingOptions, client: Client);
/**
* Gets the specified setting from the database.
*
* Note: If the server don't have any setting specified,
* the module will take the values from the
* options object or default options object.
*
* @param {keyof SettingsTypes} key The setting to fetch.
* @param {string} guild Guild or it's ID.
* @returns {SettingsTypes[K]} The setting from the database.
*/
get<K extends keyof SettingsTypes>(key: K, guild: string | Guild): SettingsTypes[K];
/**
* Changes the specified setting.
*
* Note: If the server don't have any setting specified,
* the module will take the values from the
* options object or default options object.
*
* @param {keyof SettingsTypes} key The setting to change.
* @param {SettingsTypes[K]} value The value to set.
* @param {string} guild Guild or it's ID.
* @returns {SettingsTypes} The server settings object.
*/
set<K extends keyof SettingsTypes>(key: K, value: SettingsTypes[K], guild: string | Guild): SettingsTypes;
/**
* Pushes the element in a setting's array.
*
* Note: If the server don't have any setting specified,
* the module will take the values from the
* options object or default options object.
*
* @param {keyof SettingsArrays} key The setting to change.
* @param {SettingsArrays[K]} value The value to set.
* @param {string} guild Guild or it's ID.
* @returns {SettingsTypes} The server settings object.
*/
push<K extends keyof SettingsArrays>(key: K, value: SettingsArrays[K], guild: string | Guild): SettingsTypes;
/**
* Removes the element from a setting's array.
*
* Note: If the server don't have any setting specified,
* the module will take the values from the
* options object or default options object.
*
* @param {keyof SettingsArrays} key The setting to change.
* @param {SettingsArrays[K]} value The value to remove.
* @param {string} guild Guild or it's ID.
* @returns {SettingsTypes} The server settings object.
*/
unpush<K extends keyof SettingsArrays>(key: K, value: any, guild: string | Guild): SettingsTypes;
/**
* Removes the specified setting.
*
* Note: If the server don't have any setting specified,
* the module will take the values from the
* options object or default options object.
*
* @param {keyof SettingsTypes} key The setting to remove.
* @param {string} guild Guild or it's ID.
* @returns {SettingsTypes} The server settings object.
*/
remove<K extends keyof SettingsTypes>(key: K, guild: string | Guild): SettingsTypes;
/**
* Fetches the server's settings object.
* @param {string} guild Guild or it's ID.
* @returns {SettingsTypes} The server settings object.
*/
all(guild: string | Guild): SettingsTypes;
/**
* Resets all the settings to setting that are in options object.
* @param {string} guild Guild or it's ID.
* @returns {SettingsTypes} The server settings object.
*/
reset(guild: string | Guild): SettingsTypes;
}
export = SettingsManager;