// SPDX-License-Identifier: MPL-2.0
// Copyright (C) 2026 Petr Hodina <petr.hodina@protonmail.com>

//! Wire-compatible Rust structs for SSC's protobuf messages.
//!
//! The wire format (field numbers, wire types) comes from QMI traffic
//! captured against a real device — those are facts about the protocol
//! and not protectable. The struct names, field names, module split, and
//! the deduplication of the two attribute-array message types are this
//! crate's own choices, so the layer above the wire is licence-clean.

pub mod attr;
pub mod envelope;
pub mod sensors;
pub mod suid;

pub use attr::{Attr, AttrCell, AttrQuery, AttrResponse, AttrValues};
pub use envelope::{ClientConfig, Envelope, EnvelopeBody, Reply, ReplyBody, Uid};
pub use sensors::{AccelSample, GyroSample, LightSample, MagSample, ProximitySample, RateConfig, RotvecSample};
pub use suid::{SuidQuery, SuidReply};
