import { createOpenmeteoClient } from '../integration/weather/openmeteo'; import { WeatherProvider } from '../integration/weather/types'; import { createCachedDataProvider } from '../storage/cache'; import { createKeyValueStorage } from '../storage/inMemoryDB'; export const createOpenmeteoClientWithCache = (): WeatherProvider => { return { getCurrentWeather: createCachedDataProvider({ cacheStorage: createKeyValueStorage(20), getNewValue: createOpenmeteoClient().getCurrentWeather, ttlMs: 7_200_000, }), }; };