import type { ApiImage } from "../../../interfaces";
import type { ApiAlbum, ApiPartialAlbum } from "../../../interfaces/album";
import type { Lunify } from "../..";
import { PartialTrack } from "../..";
import { Artist } from "../artist";
export declare class PartialAlbum {
    client: Lunify;
    totalTracks: number;
    markets: string[];
    externalUrls: Record<string, string>;
    url: string;
    id: string;
    images: ApiImage[];
    name: string;
    release: Date;
    releasePrecision: ApiPartialAlbum["release_date_precision"];
    restrictions: ApiPartialAlbum["restrictions"]["reason"] | null;
    type: ApiPartialAlbum["album_type"];
    uri: string;
    artists: Artist[];
    constructor(client: Lunify, data: ApiPartialAlbum);
}
export declare class Album extends PartialAlbum {
    client: Lunify;
    tracks: Omit<Omit<ApiAlbum["tracks"], "href">, "items"> & {
        url: string;
        items: PartialTrack[];
    };
    copyrights: ApiAlbum["copyrights"];
    externalIds: Record<string, string>;
    genres: string[];
    label: string;
    popularity: number;
    constructor(client: Lunify, data: ApiAlbum);
}
