/// <reference types="node" />
import { QueueInterface } from "../typings/Classes/Queue";
import PlayerTrack from "../Structers/PlayerTrack";
import { EventEmitter } from "events";
export default class Queue extends EventEmitter implements QueueInterface {
    initialized: boolean;
    private tracks;
    private currentTrack;
    private endedTracks;
    private isDestoryed;
    constructor(tracks?: PlayerTrack[]);
    private watchDestroyed;
    destroy(): void;
    init(): Promise<void>;
    setMusicBitrates(a: number): void;
    setMusicVolumes(a: number): boolean;
    clear(): void;
    repeat(): void;
    repeatOne(): void;
    nextTracks(): PlayerTrack[];
    previousTracks(): PlayerTrack[];
    shuffle(): boolean;
    current(): PlayerTrack;
    next(): boolean;
    back(): boolean;
    skip(num?: number): boolean;
    previous(num?: number): boolean;
    addTracks(x: PlayerTrack[]): Queue;
    remove(x: number | PlayerTrack, numbersToRemove?: number): boolean;
}
