Hmm, I'm not entirely sure for the Forecast type - I think personally I would keep it an optional like this:
var hourlyWeatherForecast: Forecast<HourWeather>? {
let forecast = (weather?.hourlyForecast) //TODO: handle error case
print("Forecast: \(forecast)")
return forecast
}
And then wherever I'm working with it, include a fall back incase it returns nil:
Text(weatherKitManager.hourlyWeatherForecast?.forecast.first?.temperature.description ?? "error")
But maybe a different resource online might have a better solution? I wish you the best of luck and am excited to see whatever you end up building!