import type { playlistInfo, trackType } from '../types'; interface commonType { id: number; title: string; duration: number; premiumStreamingOnly: boolean; trackNumber: number; copyright: string; url: string; explicit: boolean; audioQuality: string; artist: { id: number; name: string; type: string; }; album: { id: number; title: string; cover: string; }; } interface tidalTrackType extends commonType { isrc: string; editable: boolean; audioQuality: string; album: { id: number; title: string; cover: string; }; } interface tidalAlbumType extends commonType { cover: string; videoCover: null | string; upc: string; audioQuality: string; } interface tidalPlaylistType { uuid: string; title: string; numberOfTracks: number; numberOfVideos: number; creator: { id: number; }; description: string; duration: number; lastUpdated: string; created: string; type: string; publicPlaylist: boolean; url: string; image: string; } interface listType { limit: number; offset: number; totalNumberOfItems: number; } interface tidalArtistTopTracksType extends listType { items: tidalTrackType[]; } interface tidalAlbumsTracksType extends listType { items: tidalAlbumType[]; } interface tidalPlaylistTracksType extends listType { items: tidalTrackType[]; } /** * Get a track by its id * @param string} id - track id * @example tidal.getTrack('64975224') */ export declare const getTrack: (id: string) => Promise; /** * Convert a tidal track to deezer * @param {string} id - track id */ export declare const track2deezer: (id: string) => Promise; /** * Get an album by its id * @param {string} id - album id * @example tidal.getAlbum('80216363') */ export declare const getAlbum: (id: string) => Promise; /** * Convert a tidal albums to deezer * @param {string} id - album id */ export declare const album2deezer: (id: string) => Promise<[import("../types").albumType, trackType[]]>; /** * Get album tracks by album id * @param {string} id - album id * @example tidal.getAlbumTracks('80216363') */ export declare const getAlbumTracks: (id: string) => Promise; /** * Get artist albums by artist id * @param {string} id - artist id * @example tidal.getArtistAlbums('3575680') */ export declare const getArtistAlbums: (id: string) => Promise; /** * Get top tracks by artist * @param {string} id - artist id * @example tidal.getArtistTopTracks('3575680') */ export declare const getArtistTopTracks: (id: string) => Promise; /** * Get a playlist by its uuid * @param {string} uuid - playlist uuid * @example tidal.getPlaylist('1c5d01ed-4f05-40c4-bd28-0f73099e9648') */ export declare const getPlaylist: (uuid: string) => Promise; /** * Get playlist tracks by playlist uuid * @param {string} uuid - playlist uuid * @example tidal.getPlaylistTracks('1c5d01ed-4f05-40c4-bd28-0f73099e9648') */ export declare const getPlaylistTracks: (uuid: string) => Promise; /** * Get valid urls to album art * @param {string} uuid - album art uuid (can be found as cover property in album object) * @example tidal.albumArtToUrl('9a56f482-e9cf-46c3-bb21-82710e7854d4') * @returns {Object} */ export declare const albumArtToUrl: (uuid: string) => { sm: string; md: string; lg: string; xl: string; }; /** * Find tidal artists tracks on deezer * @param {string} id - artist id * @example tidal.artist2Deezer('3575680') */ export declare const artist2Deezer: (id: string, onError?: ((item: tidalTrackType, index: number, err: Error) => void) | undefined) => Promise; /** * Find same set of playlist tracks on deezer * @param {string} uuid - playlist uuid * @example tidal.playlist2Deezer('1c5d01ed-4f05-40c4-bd28-0f73099e9648') */ export declare const playlist2Deezer: (uuid: string, onError?: ((item: tidalTrackType, index: number, err: Error) => void) | undefined) => Promise<[playlistInfo, trackType[]]>; export {};