use openconfiguration_derive::Visitable;
use serde::{Deserialize, Serialize};
use crate::{cns, ig};
#[derive(Serialize, Deserialize, Debug, Clone, PartialEq, Visitable, Default)]
#[cfg_attr(feature = "schema", derive(schemars::JsonSchema))]
#[cfg_attr(feature = "schema", schemars(deny_unknown_fields))]
#[serde(rename_all = "camelCase")]
/// An abstract representation of a 3D Geometry.
pub struct Geometry {
/// Optional representation in the ig format.
pub ig: Option<ig::Geometry>,
/// Optional representation in the CADENAS format.
pub cns: Option<cns::Geometry>,
}