import 'package:immich_mobile/domain/interfaces/db.interface.dart'; import 'package:immich_mobile/domain/models/asset/base_asset.model.dart'; import 'package:immich_mobile/domain/models/local_album.model.dart'; abstract interface class ILocalAlbumRepository implements IDatabaseRepository { Future<void> insert(LocalAlbum album, Iterable<LocalAsset> assets); Future<void> addAssets(String albumId, Iterable<LocalAsset> assets); Future<List<LocalAlbum>> getAll({SortLocalAlbumsBy? sortBy}); Future<List<LocalAsset>> getAssetsForAlbum(String albumId); Future<void> update(LocalAlbum album); Future<void> delete(String albumId); Future<void> removeAssets(String albumId, Iterable<String> assetIds); } enum SortLocalAlbumsBy { id }