pub struct ConfigPropertySchema {
pub type: String,
pub title: String,
pub description: Option<String>,
pub default: Option<AnyValue>,
pub enum: Option<Vec<AnyValue>>,
pub enum_labels: Option<Vec<String>>,
pub enum_descriptions: Option<Vec<String>>,
pub read_only: Option<bool>,
pub items: Option<Box<ConfigPropertySchema>>,
pub properties: Option<HashMap<String, Box<ConfigPropertySchema>>>,
pub required: Option<Vec<String>>,
pub additional_properties: Option<Box<ConfigPropertySchema>>,
}Expand description
A JSON Schema-compatible property descriptor with display extensions.
Standard JSON Schema fields (type, title, description, default,
enum) allow validators to process the schema. Display extensions
(enumLabels, enumDescriptions) are parallel arrays that provide UI
metadata for each enum value.
This is the generic base type. See {@link SessionConfigPropertySchema} for session-specific extensions.
Fields§
§type: StringJSON Schema: property type
title: StringJSON Schema: human-readable label for the property
description: Option<String>JSON Schema: description / tooltip
default: Option<AnyValue>JSON Schema: default value
enum: Option<Vec<AnyValue>>JSON Schema: allowed values. May be primitives of any JSON type.
enum_labels: Option<Vec<String>>Display extension: human-readable label per enum value (parallel array)
enum_descriptions: Option<Vec<String>>Display extension: description per enum value (parallel array)
read_only: Option<bool>JSON Schema: when true, the property is displayed but cannot be modified by the user
items: Option<Box<ConfigPropertySchema>>JSON Schema: schema for array items (used when type is 'array')
properties: Option<HashMap<String, Box<ConfigPropertySchema>>>JSON Schema: property descriptors for object properties (used when type is 'object')
required: Option<Vec<String>>JSON Schema: list of required property ids (used when type is 'object')
additional_properties: Option<Box<ConfigPropertySchema>>JSON Schema: schema for additional properties not listed in properties (used when type is 'object').
Trait Implementations§
Source§impl Clone for ConfigPropertySchema
impl Clone for ConfigPropertySchema
Source§fn clone(&self) -> ConfigPropertySchema
fn clone(&self) -> ConfigPropertySchema
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for ConfigPropertySchema
impl Debug for ConfigPropertySchema
Source§impl<'de> Deserialize<'de> for ConfigPropertySchema
impl<'de> Deserialize<'de> for ConfigPropertySchema
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Source§impl PartialEq for ConfigPropertySchema
impl PartialEq for ConfigPropertySchema
Source§fn eq(&self, other: &ConfigPropertySchema) -> bool
fn eq(&self, other: &ConfigPropertySchema) -> bool
self and other values to be equal, and is used by ==.