import { PackageInfo } from "./PackageInfo"; import { PackageSource } from "./PackageSource"; /** * A combined prioritized view over multiple package sources. */ export declare class PackageSourceUnion extends PackageSource { readonly sources: PackageSource[]; /** * Creates a union view over multiple package sources. * * @param {IPackageSource[]} sources Array of package sources in priority order. */ constructor(sources: PackageSource[]); /** * Gets information about all OpenT2T packages currently available from the source. * This method is optional; it may not be implemented for remote sources. * CAUTION: This is a potentially slow operation. * * @returns {Promise} An array of package information * objects, or an empty array if the cache is empty */ getAllPackageInfoAsync(): Promise; /** * Gets information about an OpenT2T package from the source * (potentially without downloading the whole package). * * @param {string} name Name of the package * @returns {(Promise; /** * Downloads or copies a package to a target (cache) directory. * * @param {string} name Name of the package * @param {string} targetDirectory Directory where the package is to be extracted */ copyPackageAsync(name: string, targetDirectory: string): Promise; }