import { IAssetWithContent } from "../entities/Asset" ; import { IBaseBundle , IBundleWithoutAssetsContent } from "../entities/Bundle" ; export default interface IBundlesStorage { findOne ( id ) : Promise < IBundleWithoutAssetsContent | null > ; findLatestByNameAndTag ( name , tag ) : Promise < IBundleWithoutAssetsContent | null > ; getBundleAssetContent ( bundleId , assetPath ) : Promise < Buffer | null > ; findMany ( ) : Promise < IBaseBundle [ ] > ; findManyByNameAndTag ( name , tag ) : Promise < IBundleWithoutAssetsContent [ ] > ; findManyNames ( ) : Promise < string [ ] > ; findManyTagsByName ( name ) : Promise < string [ ] > ; oneExistsWithId ( id ) : Promise < boolean > ; createOne ( bundle ) : Promise < IBundleWithoutAssetsContent > ; deleteMany ( ids ) : Promise < void > ; }