import 'package:immich_mobile/entities/album.entity.dart'; abstract interface class IAlbumApiRepository { Future get(String id); Future> getAll({bool? shared}); Future create( String name, { required Iterable assetIds, Iterable sharedUserIds = const [], }); Future update( String albumId, { String? name, String? thumbnailAssetId, String? description, bool? activityEnabled, }); Future delete(String albumId); Future<({List added, List duplicates})> addAssets( String albumId, Iterable assetIds, ); Future<({List removed, List failed})> removeAssets( String albumId, Iterable assetIds, ); Future addUsers( String albumId, Iterable userIds, ); Future removeUser(String albumId, {required String userId}); }