import { WeatherLocationEntity } from '../entities/locations.entity'; import { WeatherAlertModel } from '../models/alert.model'; import { CurrentDayModel, ForecastDayModel, ForecastHourModel } from '../models/weather.model'; export interface IWeatherProvider { getType(): string; getName(): string; getDescription(): string; supportsAlerts(): boolean; supportsHourlyForecast(): boolean; getCurrentWeather(location: WeatherLocationEntity): Promise; getForecastWeather(location: WeatherLocationEntity): Promise; getHourlyForecast?(location: WeatherLocationEntity): Promise; getAlerts?(location: WeatherLocationEntity): Promise; }