import BaseAPI, { type BaseAPIParams } from '../common/BaseAPI.js';
import { type ImageConstants, type ImageFormat } from '../types/Image.js';
import type Limiter from '../utils/Limiter.js';
export declare enum ImageFormatFilter {
    /** Album image formats */
    Album = "album",
    /** Artist / Profile image formats */
    Bio = "bio"
}
export default class ImageAPI extends BaseAPI {
    /**
     * @internal
     */
    getConstants(): Promise<ImageConstants>;
    getFormat(target?: string | number | ImageFormat, fallbackId?: number): Promise<ImageFormat | null>;
    getFormats(filter?: ImageFormatFilter): Promise<ImageFormat[]>;
}
export declare class LimiterImageAPI extends ImageAPI {
    #private;
    constructor(params: BaseAPIParams & {
        limiter: Limiter;
    });
    getFormats(filter?: ImageFormatFilter): Promise<ImageFormat[]>;
    getFormat(target?: string | number | ImageFormat, fallbackId?: number): Promise<ImageFormat | null>;
}
//# sourceMappingURL=ImageAPI.d.ts.map