mirror of
				https://github.com/immich-app/immich.git
				synced 2025-11-03 19:29:32 -05:00 
			
		
		
		
	* refactor(mobile): repositories for album service * review feedback, first service unit test
		
			
				
	
	
		
			22 lines
		
	
	
		
			768 B
		
	
	
	
		
			Dart
		
	
	
	
	
	
			
		
		
	
	
			22 lines
		
	
	
		
			768 B
		
	
	
	
		
			Dart
		
	
	
	
	
	
import 'package:immich_mobile/entities/album.entity.dart';
 | 
						|
import 'package:immich_mobile/entities/asset.entity.dart';
 | 
						|
import 'package:immich_mobile/entities/user.entity.dart';
 | 
						|
 | 
						|
abstract interface class IAlbumRepository {
 | 
						|
  Future<int> count({bool? local});
 | 
						|
  Future<Album> create(Album album);
 | 
						|
  Future<Album?> getById(int id);
 | 
						|
  Future<Album?> getByName(
 | 
						|
    String name, {
 | 
						|
    bool? shared,
 | 
						|
    bool? remote,
 | 
						|
  });
 | 
						|
  Future<Album> update(Album album);
 | 
						|
  Future<void> delete(int albumId);
 | 
						|
  Future<List<Album>> getAll({bool? shared});
 | 
						|
  Future<void> removeUsers(Album album, List<User> users);
 | 
						|
  Future<void> addAssets(Album album, List<Asset> assets);
 | 
						|
  Future<void> removeAssets(Album album, List<Asset> assets);
 | 
						|
  Future<Album> recalculateMetadata(Album album);
 | 
						|
}
 |