1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
use crate::WiserHub;
use async_trait::async_trait;
use chrono::{DateTime, Utc};

pub mod dbhub;
pub mod dummy;
pub mod filehub;
pub mod hub;

#[async_trait]
pub trait WiserManager {
    async fn get_heating_turn_off_time(&self) -> Option<DateTime<Utc>>;

    async fn get_heating_on(&self) -> Result<bool, ()>;

    fn get_wiser_hub(&self) -> &dyn WiserHub;
}