discord-dynamic-music-bot-addon
Version:
Music bot addon for bot
155 lines • 5.7 kB
TypeScript
import { Message } from 'discord.js';
import { PlayerLanguage } from './interfaces';
export interface YoutubePlayerOptions {
messageUpdateRate?: number;
selfDeleteTime?: number;
leaveVoiceChannelAfter?: number;
leaveVoiceChannelAfterAllMembersLeft?: number;
maxTrackLength?: number;
autoQueryDetection?: boolean;
autoPlaylistDetection?: boolean;
waitTimeBetweenTracks?: number;
maxItemsInPlayList?: number;
maxUserItemsInPlayList?: number;
playlistParseWait?: number;
multipleParser?: boolean;
playlistParse?: boolean;
votePercentage?: number;
coolDown?: number;
deleteUserMessage?: boolean;
hardDeleteUserMessage?: boolean;
reactionButtons?: boolean;
suggestReplay?: number;
language?: PlayerLanguage;
}
export declare class YoutubePlayer {
/**
* Constructor that constructs
* @param {string} string youtube api key
* @param {PlayerLanguage} PlayerLanguage PlayerLanguage
*/
constructor(youtubeApiKey?: string, options?: YoutubePlayerOptions);
/**
* Should delete user messages?
* @param {boolean} boolean if set to true if possible the messages sent by user are going to be deleted.
*/
set deleteUserMessages(trueFalse: boolean);
/**
* Should parse playlist links.
* @param {boolean} boolean.
*/
set parsePlaylistUrl(trueFalse: boolean);
/**
* Should auto detect playlist link? Requires autoQueryDetection to be enabled.
* @param {boolean} boolean.
*/
set autoPlaylistDetection(trueFalse: boolean);
/**
* how much this should wait to parse next playlist time
* @param {number} number seconds
*/
set playListWaitTime(seconds: number);
/**
* Should search if none of the player commands where found in message
* @param {boolean} boolean Enables/disables autoQuerySearch
*/
set autoQuerySearch(trueFalse: boolean);
/**
* how much items can be in playlist.
* @param {number} number playlist limit.
*/
set maxItemsInPlaylist(items: number);
/**
* How much track can a user have in playlist
* @param {number} number user playlist limit
*/
set maxUsersItemsInPlaylist(items: number);
/**
* User command cool down. How much does bot needs to wait before accepting new command
* @param {number} number time
*/
set userCoolDown(seconds: number);
/**
* Allow multiple videos parsing. This also enables playlist parsing
* @param {boolean} bool time
*/
set multipleVideoParser(bool: boolean);
/**
* Set wait time between tracks
* @param {number} number how much should player wait.
*/
set waitTimeBetweenTracks(seconds: number);
/**
* max track length
* @param {number} number max track length
*/
set maxTrackLength(seconds: number);
/**
* Set player edit/update rate
* @param {number} number how fast/slow should player message be updated.
*/
set playerUpdateRate(seconds: number);
/**
* When bot runs out of songs how long should wait before disconnecting voice channel
* @param {number} number in seconds. If set to 0 it will leave immediately.
*/
set leaveVoiceChannelAfter(seconds: number);
/**
* When all uses leave voice channel how long should bot wait before destroying player
* @param {number} number in seconds. If set to 0 it will leave immediately .
*/
set leaveVoiceChannelAfterWhenNoPlayersInChannel(seconds: number);
/**
* percentage of vote for to be executed
* @param {number} number vote percentage
*/
set votePercentage(percentage: number);
/**
* Should message be garbage collected
* @param {number} seconds if 0 no others numbers are seconds
*/
set selfDelete(seconds: number);
/**
* Delete every message in channels when player is active
* @param {boolean} boolean
*/
set hardDeleteUserMessages(bool: boolean);
/**
* Custom player language pack
* @param {Language} languePack Custom langue pack
*/
set defaultLanguage(playerLang: PlayerLanguage);
/**
* Create play buttons with that you can control player without use of any other command
* @param {bool} boolean enable/disable
*/
set reactionButtons(bool: boolean);
/**
* How much before the song should show the replay song button
* reaction button feature has to be enabled in order for this to work
* @param {seconds} seconds if 0 the button is not going to show up
*/
set suggestReplayButtons(seconds: number);
/**
* @param {Message} Message Discord message
* @param {string} String prefix
* @param {playerLang} PlayerLang object
* @returns {boolean} It's going to return true if command is valid.
*/
onMessagePrefix(message: Message, prefix: string, playerLang?: PlayerLanguage): boolean;
/**
* Destroys player and makes entire class useless
* If no call back if provided it going to return Promise;
* @param {function} callback call function
*/
destroy(callback?: () => void): Promise<unknown>;
/**
* @param {Message} Message Discord message
* @param {string} String Discord message without prefix
* @param {string} String Optional just for help command
* @returns {boolean} It's going to return true if command is valid.
*/
onMessage(message: Message, messageContentWithOutPrefix: string, prefix?: string, playerLang?: PlayerLanguage): boolean;
}
export declare function getYoutubeTime(timestamp: number): string;
//# sourceMappingURL=YoutubePlayer.d.ts.map