2025-02-21 09:01:46 -06:00
|
|
|
import 'package:immich_mobile/entities/album.entity.dart';
|
2025-02-25 11:33:48 -06:00
|
|
|
import 'package:immich_mobile/entities/asset.entity.dart';
|
2025-02-21 09:01:46 -06:00
|
|
|
import 'package:immich_mobile/widgets/asset_grid/asset_grid_data_structure.dart';
|
|
|
|
|
|
|
|
abstract class ITimelineRepository {
|
2025-03-03 20:40:09 +05:30
|
|
|
Future<List<int>> getTimelineUserIds(int id);
|
|
|
|
|
|
|
|
Stream<List<int>> watchTimelineUsers(int id);
|
|
|
|
|
2025-02-21 09:01:46 -06:00
|
|
|
Stream<RenderList> watchArchiveTimeline(int userId);
|
|
|
|
Stream<RenderList> watchFavoriteTimeline(int userId);
|
|
|
|
Stream<RenderList> watchTrashTimeline(int userId);
|
2025-02-25 23:10:08 +08:00
|
|
|
Stream<RenderList> watchAlbumTimeline(
|
|
|
|
Album album,
|
|
|
|
GroupAssetsBy groupAssetsBy,
|
|
|
|
);
|
2025-02-21 09:01:46 -06:00
|
|
|
Stream<RenderList> watchAllVideosTimeline();
|
|
|
|
|
|
|
|
Stream<RenderList> watchHomeTimeline(int userId, GroupAssetsBy groupAssetsBy);
|
|
|
|
Stream<RenderList> watchMultiUsersTimeline(
|
|
|
|
List<int> userIds,
|
|
|
|
GroupAssetsBy groupAssetsBy,
|
|
|
|
);
|
2025-02-25 11:33:48 -06:00
|
|
|
|
|
|
|
Future<RenderList> getTimelineFromAssets(
|
|
|
|
List<Asset> assets,
|
|
|
|
GroupAssetsBy getGroupByOption,
|
|
|
|
);
|
|
|
|
|
|
|
|
Stream<RenderList> watchAssetSelectionTimeline(int userId);
|
2025-02-21 09:01:46 -06:00
|
|
|
}
|