// GENERATED by `tf-schema codegen --target rust` — DO NOT EDIT BY HAND.
#![allow(unused_imports, non_camel_case_types, non_snake_case, clippy::all)]
use serde::{Deserialize, Serialize};
use super::*;
/// Fragmentation header attached to a Packet when its payload is too large for the underlying transport (LoRa MTU, BLE characteristic size, etc.). Fragments are reassembled by their destination using `fragment_id` + `index` + `count`.
#[derive(Clone, Debug, PartialEq, Eq, Serialize, Deserialize)]
pub struct PacketFragment {
/// Stable identifier shared by every fragment that belongs to the same logical packet.
pub fragment_id: String,
/// Zero-based index of this fragment within the sequence.
pub index: i64,
/// Total number of fragments in the sequence.
pub count: i64,
/// Size of the reassembled payload in bytes; reassembly fails if the assembled output differs.
pub total_payload_bytes: i64,
/// Hash of the reassembled canonical payload; consumers MUST verify this after reassembly.
pub payload_digest: HashRef,
}