use serde::{Deserialize, Serialize};
use crate::identifier::Gtin;
#[derive(Debug, Clone, Serialize, Deserialize, PartialEq)]
#[serde(rename_all = "camelCase")]
pub struct TyreData {
pub gtin: Gtin,
pub tyre_class: String,
pub fuel_efficiency_class: String,
pub wet_grip_class: String,
pub external_rolling_noise_db: f64,
#[serde(skip_serializing_if = "Option::is_none")]
pub noise_performance_class: Option<String>,
#[serde(skip_serializing_if = "Option::is_none")]
pub rolling_resistance_n_per_kn: Option<f64>,
#[serde(skip_serializing_if = "Option::is_none")]
pub recycled_rubber_pct: Option<f64>,
#[serde(skip_serializing_if = "Option::is_none")]
pub co2e_per_tyre_kg: Option<f64>,
}
impl crate::product_group::payload::ProductGroupPayload for TyreData {
fn gtin(&self) -> Option<&str> {
Some(self.gtin.as_str())
}
fn model_identifier(&self) -> Option<&str> {
None
}
}