import { FileDb2 } from './dbs/file-db';
import { KnapsackAssetSetsData, KnapsackAssetSetsConfig, KnapsackAssetSetData } from '../schemas/asset-sets';
/**
 * Collections of CSS & JS assets
 * @todo use Express to serve it from wherever it is on file system and not just inside the `config.public` dir
 */
export declare class AssetSets extends FileDb2<KnapsackAssetSetsConfig> {
    data: KnapsackAssetSetsData;
    private readonly dataDir;
    private readonly publicDir;
    constructor({ dataDir, publicDir }: {
        dataDir: string;
        publicDir: string;
    });
    convertConfigToData(config: KnapsackAssetSetsConfig): KnapsackAssetSetsData;
    /**
     * @todo evaluate - perhaps it's best to compute these type of values as needed instead of all up front when "config" is turned into "data"?
     * @param assetSrc
     */
    getAssetPublicPath(assetSrc: string): string;
    static convertDataToConfig(data: KnapsackAssetSetsData): KnapsackAssetSetsConfig;
    getData(): Promise<KnapsackAssetSetsData>;
    getAssetSet(assetSetId: string): KnapsackAssetSetData;
    getGlobalAssetSets(): KnapsackAssetSetData[];
    watch(): void;
}
//# sourceMappingURL=asset-sets.d.ts.map