use serde_json::Value;
use shape_abi_v1::ParamType;
#[derive(Debug, Clone)]
pub struct ParsedQueryParam {
pub name: String,
pub description: String,
pub param_type: ParamType,
pub required: bool,
pub default_value: Option<Value>,
pub allowed_values: Option<Vec<Value>>,
pub nested_schema: Option<Box<ParsedQuerySchema>>,
}
#[derive(Debug, Clone)]
pub struct ParsedQuerySchema {
pub params: Vec<ParsedQueryParam>,
pub example_query: Option<Value>,
}
#[derive(Debug, Clone)]
pub struct ParsedOutputField {
pub name: String,
pub field_type: ParamType,
pub description: String,
}
#[derive(Debug, Clone)]
pub struct ParsedOutputSchema {
pub fields: Vec<ParsedOutputField>,
}