spike-player
Version:
Complete framework to facilitate music commands using discord.js v13 & v14
93 lines (92 loc) • 2.91 kB
TypeScript
import { Song, Queue, Playlist, PlayOptions, PlaylistOptions } from "..";
import { GuildChannel } from "discord.js";
export declare class Utils {
/**
*
*/
private constructor();
static regexList: {
YouTubeVideo: RegExp;
YouTubeVideoID: RegExp;
YouTubePlaylist: RegExp;
YouTubePlaylistID: RegExp;
Spotify: RegExp;
SpotifyPlaylist: RegExp;
Apple: RegExp;
ApplePlaylist: RegExp;
SoundCloudPlaylist: RegExp;
SoundCloudUrl: RegExp;
};
static audioTypes: string[];
/**
* Get ID from YouTube link
* @param {string} url
* @returns {?string}
*/
static parseVideo(url: string): string | null;
/**
* Get timecode from YouTube link
* @param {string} url
* @returns {?string}
*/
static parseVideoTimecode(url: string): string | null;
/**
* Get ID from Playlist link
* @param {string} url
* @returns {?string}
*/
static parsePlaylist(url: string): string | null;
/**
* Search for Songs
* @param {string} Search
* @param {PlayOptions} [SOptions=DefaultPlayOptions]
* @param {Queue} Queue
* @param {number} [Limit=1]
* @return {Promise<Song[]>}
*/
static search(Search: string, SOptions: PlayOptions | undefined, Queue: Queue, Limit?: number): Promise<Song[]>;
/**
* Search for Song via link
* @param {string} Search
* @param {PlayOptions} SOptions
* @param {Queue} Queue
* @return {Promise<Song>}
*/
static link(Search: string, SOptions: PlayOptions | undefined, Queue: Queue): Promise<Song | null>;
/**
* Gets the best result of a Search
* @param {Song|string} Search
* @param {PlayOptions} SOptions
* @param {Queue} Queue
* @return {Promise<Song>}
*/
static best(Search: Song | string, SOptions: PlayOptions | undefined, Queue: Queue): Promise<Song>;
/**
* Search for Playlist
* @param {string} Search
* @param {PlaylistOptions} SOptions
* @param {Queue} Queue
* @return {Promise<Playlist>}
*/
static playlist(Search: Playlist | string, SOptions: (PlaylistOptions & {
data?: any;
}) | undefined, Queue: Queue): Promise<Playlist>;
/**
* Shuffles an array
* @param {any[]} array
* @returns {any[]}
*/
static shuffle(array: any[]): any[];
/**
* Converts milliseconds to duration (HH:MM:SS)
* @returns {string}
*/
static msToTime(duration: number): string;
/**
* Converts duration (HH:MM:SS) to milliseconds
* @returns {number}
*/
static timeToMs(duration: string): number;
static isVoiceChannel(Channel: GuildChannel): boolean;
static isStageVoiceChannel(Channel: GuildChannel): boolean;
}