import 'package:injectable/injectable.dart';
import 'package:krow/features/profile/live_photo/data/models/live_photo_data.dart';
import 'package:krow/features/profile/live_photo/data/staff_live_photo_api_provider.dart';
import 'package:krow/features/profile/live_photo/domain/staff_live_photo_repository.dart';

@Injectable(as: StaffLivePhotoRepository)
class StaffLivePhotoRepositoryImpl implements StaffLivePhotoRepository {
  StaffLivePhotoRepositoryImpl({
    required StaffLivePhotoApiProvider apiProvider,
  }) : _apiProvider = apiProvider;

  final StaffLivePhotoApiProvider _apiProvider;

  @override
  Stream<LivePhotoData> getStaffLivePhotoWithCache() {
    return _apiProvider.getStaffLivePhotoWithCache();
  }

  @override
  Future<LivePhotoData> uploadStaffLivePhoto(LivePhotoData data) {
    return _apiProvider.uploadStaffLivePhoto(data);
  }
}
