use serde::Deserialize;
use std::collections::BTreeMap;
#[derive(Debug, Deserialize)]
pub struct JsonSchema {
#[serde(default)]
pub title: Option<String>,
#[serde(default)]
pub r#type: Option<String>,
#[serde(default)]
pub properties: Option<BTreeMap<String, Box<JsonSchema>>>,
#[serde(default)]
pub required: Option<Vec<String>>,
#[serde(default)]
pub r#enum: Option<Vec<serde_json::Value>>,
#[serde(default)]
pub items: Option<Box<JsonSchema>>,
#[serde(default, rename = "additionalProperties")]
pub additional_properties: Option<serde_json::Value>,
}