use crate::catalog_types::{ComponentApi, PropDef, PropType};
pub const CHART_API: ComponentApi = ComponentApi {
id: "chart",
description: "Data chart visualization",
props: &[
PropDef { name: "data", kind: PropType::String, required: true, default: None, description: "Prop value" },
PropDef { name: "chart_type", kind: PropType::Enum(&["bar", "line", "area", "pie", "donut", "scatter", "radar"]), required: false, default: Some("line"), description: "Prop value" },
PropDef { name: "height", kind: PropType::String, required: false, default: Some("320"), description: "Prop value" },
PropDef { name: "show_grid", kind: PropType::Bool, required: false, default: Some("true"), description: "Prop value" },
PropDef { name: "show_legend", kind: PropType::Bool, required: false, default: Some("true"), description: "Prop value" },
PropDef { name: "animate", kind: PropType::Bool, required: false, default: Some("true"), description: "Prop value" },
PropDef { name: "class", kind: PropType::String, required: false, default: Some(""), description: "Additional CSS class names" },
PropDef { name: "value", kind: PropType::String, required: false, default: Some(""), description: "Current value" },
PropDef { name: "aria_label", kind: PropType::String, required: false, default: Some(""), description: "Accessible label for screen readers" },
],
};