#![forbid(unsafe_code)]
pub mod command;
pub mod credentials;
pub mod error;
pub mod model;
pub mod protocol;
#[cfg(feature = "network")]
pub mod client;
#[cfg(feature = "network")]
mod discovery;
#[cfg(feature = "network")]
mod transport;
pub use command::{Command, CommandError, Method};
pub use credentials::Credentials;
pub use error::{Error, Result};
pub use model::{
AirPurifier, Blind, Device, DeviceInfo, DeviceKind, Group, Light, SignalRepeater, Socket,
};
#[cfg(feature = "network")]
pub use client::{Client, ClientOptions, Gateway, Observation};