22 lines
648 B
Dart
22 lines
648 B
Dart
import 'package:lunchpick/domain/entities/weather_info.dart';
|
|
|
|
abstract class WeatherRepository {
|
|
/// 현재 위치의 날씨 정보를 가져옵니다
|
|
Future<WeatherInfo> getCurrentWeather({
|
|
required double latitude,
|
|
required double longitude,
|
|
});
|
|
|
|
/// 캐시된 날씨 정보를 가져옵니다
|
|
Future<WeatherInfo?> getCachedWeather();
|
|
|
|
/// 날씨 정보를 캐시에 저장합니다
|
|
Future<void> cacheWeatherInfo(WeatherInfo weatherInfo);
|
|
|
|
/// 날씨 캐시를 삭제합니다
|
|
Future<void> clearWeatherCache();
|
|
|
|
/// 날씨 정보 업데이트가 필요한지 확인합니다
|
|
Future<bool> isWeatherUpdateNeeded();
|
|
}
|