#![deny(unsafe_code)]
#![warn(missing_docs)]
mod client;
pub mod commands;
mod crypto;
mod debug;
mod error;
mod observe;
mod protocol;
mod session;
mod transport;
mod types;
#[cfg(feature = "async")]
pub use crate::client::tokio::{Client, ClientBuilder};
#[cfg(feature = "blocking")]
pub use crate::client::blocking::{
Client as BlockingClient, ClientBuilder as BlockingClientBuilder,
};
#[cfg(feature = "blocking")]
pub mod blocking {
pub use crate::client::blocking::{Client, ClientBuilder};
}
#[cfg(feature = "async")]
pub mod tokio {
pub use crate::client::tokio::{Client, ClientBuilder};
}
pub use crate::error::{Error, Result};
pub use crate::types::{
ChannelAuthCapabilities, ChassisControl, ChassisStatus, DeviceId, FrontPanelControls,
LastPowerEvent, PowerRestorePolicy, PrivilegeLevel, RawResponse, SelfTestDeviceError,
SelfTestResult, SystemGuid,
};