import { YandexMusicClient } from "../client";
import { Union, List, TrackSimilar, TrackSupplement, TrackDownloadInfo, TrackInterface } from "../interfaces";
export declare class Track {
    private readonly client;
    constructor(client: YandexMusicClient);
    /**
     * Getting more information about the track.
     * @param {Union} id The unique ID of the track.
     * @returns Additional information about the track.
     */
    supplement(id: Union): Promise<TrackSupplement>;
    /**
     * Getting similar tracks.
     * @param {Union} id The unique ID of the track.
     * @returns Similar tracks to the track..
     */
    similar(id: Union): Promise<TrackSimilar>;
    /**
     * Getting the track/tracks.
     * @param {List} ids The unique identifier of the track or tracks.
     * @returns Track or Tracks.
     */
    get(ids: List): Promise<Array<TrackInterface>>;
    /**
     * Getting the track download info.
     * @param {Union} id The unique identifier of the track or tracks.
     * @returns Track download info.
     */
    downloadInfo(id: Union): Promise<TrackDownloadInfo>;
    /**
     * Getting the track download url.
     * @param {string} url Track download info.
     * @returns Track download url.
     */
    downloadUrl(url: string): Promise<string>;
}
//# sourceMappingURL=index.d.ts.map