use derive_more::{Display, From};
use serde::{Deserialize, Serialize};
use zarrs_metadata::ConfigurationSerialize;
#[derive(Serialize, Deserialize, Clone, PartialEq, Debug, Display, From)]
#[non_exhaustive]
#[serde(untagged)]
pub enum FixedScaleOffsetCodecConfiguration {
Numcodecs(FixedScaleOffsetCodecConfigurationNumcodecs),
}
impl ConfigurationSerialize for FixedScaleOffsetCodecConfiguration {}
#[derive(Serialize, Deserialize, Clone, PartialEq, Debug, Display)]
#[serde(deny_unknown_fields)]
#[display("{}", serde_json::to_string(self).unwrap_or_default())]
pub struct FixedScaleOffsetCodecConfigurationNumcodecs {
pub offset: f32,
pub scale: f32,
pub dtype: String,
pub astype: Option<String>,
}