awtrix3 0.0.2

Awtrix3 types and API (mqtt/http), from https://blueforcer.github.io/awtrix3/#/api
Documentation
//! Awtrix3 status features
//!
//! From the [Awtrix3 API documentation](https://blueforcer.github.io/awtrix3/#/api)
//!
//! - `[PREFIX]/stats` : General device stats (e.g. battery, RAM...)`
//! - `[PREFIX]/stats/effects` : List of all installed effects
//! - `[PREFIX]/stats/transitions` : List of all installed transitions
//! - `[PREFIX]/stats/loop` : List of all apps in the loop
//!
//!

use std::net::IpAddr;

use serde::Deserialize;

#[derive(Debug, Deserialize)]
pub struct Stats {
    #[serde(rename = "bat")]
    pub battery_percent: u8,
    #[serde(rename = "bat_raw")]
    pub battery_raw: u16,
    #[serde(rename = "type")]
    pub kind: u8,
    #[serde(rename = "lux")]
    pub light: u8,
    #[serde(rename = "ldr_raw")]
    pub light_raw: u16,
    pub ram: u32,
    #[serde(rename = "bri")]
    pub brightness: u16,
    #[serde(rename = "temp")]
    pub temperature: i32,
    #[serde(rename = "hum")]
    pub humidity: u8,
    pub uptime: u32,
    pub wifi_signal: i16,
    pub messages: u32,
    pub version: String,
    #[serde(rename = "indicator1")]
    pub indicator_1: bool,
    #[serde(rename = "indicator2")]
    pub indicator_2: bool,
    #[serde(rename = "indicator3")]
    pub indicator_3: bool,
    #[serde(rename = "app")]
    pub current_app: String,
    pub uid: String,
    pub matrix: bool,
    pub ip_address: IpAddr,
}

impl Stats {}

pub type StatsEffects = Vec<String>;

pub type StatsTransitions = Vec<String>;

pub type StatsLoop = Vec<String>;