UNPKG

discord-leveling-super

Version:

Easy and customizable leveling framework for your Discord bot.

117 lines (113 loc) 4.29 kB
// 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;