discord-xp-ts
Version:
Reconfigured existing decode-xp with typescript.
75 lines (74 loc) • 3.23 kB
TypeScript
import mongoose from "mongoose";
import type { ILevel, computeLeaderboardType } from "./types";
declare class DiscordXp {
/**
* @param {string} [dbUrl] - A valid mongo database URI.
*/
static setURL(dbUrl: string): Promise<typeof mongoose>;
/**
* @param {string} [userId] - Discord user id.
* @param {string} [guildId] - Discord guild id.
*/
static createUser(userId: string, guildId: string): Promise<ILevel | false>;
/**
* @param {string} [userId] - Discord user id.
* @param {string} [guildId] - Discord guild id.
*/
static deleteUser(userId: string, guildId: string): Promise<ILevel | false>;
/**
* @param {string} [userId] - Discord user id.
* @param {string} [guildId] - Discord guild id.
* @param {number} [xp] - Amount of xp to append.
*/
static appendXp(userId: string, guildId: string, xp: number): Promise<boolean>;
/**
* @param {string} [userId] - Discord user id.
* @param {string} [guildId] - Discord guild id.
* @param {number} [levelss] - Amount of levels to append.
*/
static appendLevel(userId: string, guildId: string, levelss: number): Promise<ILevel | false>;
/**
* @param {string} [userId] - Discord user id.
* @param {string} [guildId] - Discord guild id.
* @param {number} [xp] - Amount of xp to set.
*/
static setXp(userId: string, guildId: string, xp: number): Promise<ILevel | false>;
/**
* @param {string} [userId] - Discord user id.
* @param {string} [guildId] - Discord guild id.
* @param {number} [level] - A level to set.
*/
static setLevel(userId: string, guildId: string, level: number): Promise<ILevel | false>;
/**
* @param {string} [userId] - Discord user id.
* @param {string} [guildId] - Discord guild id.
*/
static fetch(userId: string, guildId: string, fetchPosition?: boolean): Promise<ILevel | false>;
/**
* @param {string} [userId] - Discord user id.
* @param {string} [guildId] - Discord guild id.
* @param {number} [xp] - Amount of xp to subtract.
*/
static subtractXp(userId: string, guildId: string, xp: number): Promise<ILevel | false>;
/**
* @param {string} [userId] - Discord user id.
* @param {string} [guildId] - Discord guild id.
* @param {number} [levels] - Amount of levels to subtract.
*/
static subtractLevel(userId: string, guildId: string, levelss: number): Promise<ILevel | false>;
/**
* @param {string} [guildId] - Discord guild id.
* @param {number} [limit] - Amount of maximum enteries to return.
*/
static fetchLeaderboard(guildId: string, limit: number): Promise<ILevel[]>;
/**
* @param {any} [client] - Your Discord.CLient.
* @param {ILevel[]} [leaderboard] - The output from 'fetchLeaderboard' function.
*/
static computeLeaderboard(client: any, leaderboard: ILevel[], fetchUsers?: boolean): Promise<computeLeaderboardType[]>;
/**
* @param {number} [targetLevel] - Xp required to reach that level.
*/
static xpFor(targetLevel: number): number;
}
export default DiscordXp;