export declare type ArchiveBaseInfo = {
    sha1: string;
    sha256: string;
    url: string;
};
export declare type DownloadInfo = {
    edition: 'enterprise' | 'targeted' | 'base' | 'source' | 'subscription';
    target?: string;
    arch?: string;
    archive: {
        debug_symbols: string;
    } & ArchiveBaseInfo;
    cryptd?: ArchiveBaseInfo;
    shell?: ArchiveBaseInfo;
    packages?: string[];
    msi?: string;
};
export declare type VersionInfo = {
    changes: string;
    notes: string;
    date: string;
    githash: string;
    continuous_release: boolean;
    current: boolean;
    development_release: boolean;
    lts_release: boolean;
    production_release: boolean;
    release_candidate: boolean;
    version: string;
    downloads: DownloadInfo[];
};
export declare type VersionListOpts = {
    version?: string;
    versionListUrl?: string;
    cachePath?: string;
    cacheTimeMs?: number;
    productionOnly?: boolean;
};
export declare function getVersion(opts: VersionListOpts): Promise<VersionInfo>;
export declare function clearCache(cachePath?: string): Promise<void>;
