mod v1;
mod v2;
use serde::Deserialize;
pub(crate) use v2::BridgeClient;
#[derive(Debug, Deserialize)]
pub(crate) struct HueAPIResponse<D> {
pub errors: Vec<HueAPIErrorMessage>,
pub data: Option<D>,
}
#[derive(Debug, Deserialize)]
pub(crate) struct HueAPIErrorMessage {
pub description: serde_json::Value,
}
#[derive(Debug, PartialEq)]
pub enum HueAPIError {
BadRequest,
BadResponse,
BadDeserialize,
NotFound,
HueBridgeError(serde_json::Value),
ServerSentEvent,
Streaming,
}
#[derive(Default, PartialEq)]
pub enum Version {
V1,
#[default]
V2,
}