//! # nvme-telem
//!
//! A Rust library for collecting NVMe telemetry and SMART data on Linux systems.
//!
//! This library provides a type-safe interface to NVMe device telemetry, including
//! SMART/Health logs and detailed controller identification data. Data is organized
//! into logical categories (Identity, Capacity, Thermals, etc.) and supports
//! serialization via serde.
//!
//! ## Features
//!
//! - **SMART Log Reading**: Temperature, power cycles, data written, and health metrics
//! - **Controller Identification**: Vendor info, model, serial number, firmware version
//! - **Organized Data Model**: Separate structs for different metric categories
//!
//! ## Requirements
//!
//! - Linux operating system with NVMe device support
//! - Root/sudo privileges to access `/dev/nvme*` device files
//! - NVMe storage devices present in the system
//!
//! ## Safety
//!
//! This library uses `unsafe` code to make ioctl system calls to NVMe devices.
//! The unsafe code is isolated to the device communication layer and follows
//! the NVMe specification for command formatting.
pub mod nvme;
