{
  "components": {
    "button": {
      "name": "Button",
      "selector": "ui-button, button[ui-button]",
      "type": "form",
      "description": "Versatile button with 6 status variants and 5 sizes",
      "files": ["button.component.ts", "index.ts", "variants.ts"],
      "dependencies": ["@radix-ng/primitives", "class-variance-authority"],
      "devDependencies": [],
      "peerDependencies": ["lucide-angular"],
      "exports": ["ButtonComponent"],
      "category": "form",
      "props": [
        {
          "name": "variant",
          "type": {
            "kind": "union",
            "values": [
              "default",
              "destructive",
              "outline",
              "secondary",
              "ghost",
              "link"
            ]
          },
          "default": "default",
          "description": "Visual style variant."
        },
        {
          "name": "size",
          "type": {
            "kind": "union",
            "values": ["default", "sm", "lg", "icon"]
          },
          "default": "default",
          "description": "Size variant."
        },
        {
          "name": "class",
          "type": {
            "kind": "primitive",
            "name": "string"
          },
          "default": "",
          "description": "CSS class names for the button."
        },
        {
          "name": "type",
          "type": {
            "kind": "union",
            "values": ["button", "submit", "reset"]
          },
          "default": "button",
          "description": "Native button type."
        },
        {
          "name": "disabled",
          "type": {
            "kind": "primitive",
            "name": "boolean"
          },
          "default": false,
          "description": "Disables the button."
        },
        {
          "name": "ariaLabel",
          "type": {
            "kind": "primitive",
            "name": "string"
          },
          "description": "ARIA label for accessibility."
        }
      ]
    },
    "input": {
      "name": "Input",
      "selector": "ui-input",
      "type": "form",
      "description": "Text input with label, hints, and error messages",
      "files": ["index.ts", "input.component.ts"],
      "dependencies": [],
      "devDependencies": [],
      "peerDependencies": ["lucide-angular"],
      "exports": ["InputComponent"],
      "category": "form",
      "props": [
        {
          "name": "type",
          "type": {
            "kind": "primitive",
            "name": "string"
          },
          "default": "text",
          "description": "Input type."
        },
        {
          "name": "value",
          "type": {
            "kind": "union",
            "values": ["string", "number"]
          },
          "description": "Controlled value."
        },
        {
          "name": "placeholder",
          "type": {
            "kind": "primitive",
            "name": "string"
          },
          "description": "Placeholder text."
        },
        {
          "name": "class",
          "type": {
            "kind": "primitive",
            "name": "string"
          },
          "default": "",
          "description": "CSS class names for the input."
        },
        {
          "name": "disabled",
          "type": {
            "kind": "primitive",
            "name": "boolean"
          },
          "default": false,
          "description": "Disables the input."
        },
        {
          "name": "readonly",
          "type": {
            "kind": "primitive",
            "name": "boolean"
          },
          "default": false,
          "description": "Makes the input read-only."
        },
        {
          "name": "maxlength",
          "type": {
            "kind": "primitive",
            "name": "number"
          },
          "description": "Maximum input length."
        },
        {
          "name": "autocomplete",
          "type": {
            "kind": "primitive",
            "name": "string"
          },
          "description": "Autocomplete hint."
        },
        {
          "name": "ariaInvalid",
          "type": {
            "kind": "union",
            "values": ["boolean", "string"]
          },
          "description": "ARIA invalid state."
        },
        {
          "name": "name",
          "type": {
            "kind": "primitive",
            "name": "string"
          },
          "description": "Input name."
        },
        {
          "name": "id",
          "type": {
            "kind": "primitive",
            "name": "string"
          },
          "description": "Input id."
        },
        {
          "name": "required",
          "type": {
            "kind": "primitive",
            "name": "boolean"
          },
          "default": false,
          "description": "Required input."
        },
        {
          "name": "valueChange",
          "type": {
            "kind": "function",
            "signature": "(value: string | number) => void"
          },
          "description": "Emitted when the value changes."
        },
        {
          "name": "inputFocus",
          "type": {
            "kind": "function",
            "signature": "() => void"
          },
          "description": "Emitted on focus."
        },
        {
          "name": "inputBlur",
          "type": {
            "kind": "function",
            "signature": "() => void"
          },
          "description": "Emitted on blur."
        }
      ]
    },
    "label": {
      "name": "Label",
      "selector": "ui-label, label[ui-label]",
      "type": "form",
      "description": "Accessible form label component",
      "files": ["index.ts", "label.component.ts"],
      "dependencies": ["@radix-ng/primitives"],
      "devDependencies": [],
      "peerDependencies": [],
      "exports": ["LabelComponent"],
      "category": "form",
      "props": [
        {
          "name": "for",
          "type": {
            "kind": "primitive",
            "name": "string"
          },
          "description": "Id of the element the label is associated with."
        },
        {
          "name": "htmlFor",
          "type": {
            "kind": "primitive",
            "name": "string"
          },
          "description": "Alias for the associated element id."
        },
        {
          "name": "class",
          "type": {
            "kind": "primitive",
            "name": "string"
          },
          "default": "",
          "description": "CSS class names for the label."
        }
      ]
    },
    "checkbox": {
      "name": "Checkbox",
      "selector": "ui-checkbox",
      "type": "form",
      "description": "Checkbox with indeterminate state support",
      "files": ["checkbox.component.ts", "index.ts"],
      "dependencies": ["@radix-ng/primitives"],
      "devDependencies": [],
      "peerDependencies": ["lucide-angular"],
      "exports": ["CheckboxComponent"],
      "category": "form",
      "props": [
        {
          "name": "checked",
          "type": {
            "kind": "union",
            "values": ["boolean", "indeterminate"]
          },
          "description": "Controlled checked state."
        },
        {
          "name": "disabled",
          "type": {
            "kind": "primitive",
            "name": "boolean"
          },
          "default": false,
          "description": "Disables the checkbox."
        },
        {
          "name": "readonly",
          "type": {
            "kind": "primitive",
            "name": "boolean"
          },
          "default": false,
          "description": "Read-only state."
        },
        {
          "name": "required",
          "type": {
            "kind": "primitive",
            "name": "boolean"
          },
          "default": false,
          "description": "Requires a value before form submission."
        },
        {
          "name": "name",
          "type": {
            "kind": "primitive",
            "name": "string"
          },
          "description": "Name for form submission."
        },
        {
          "name": "form",
          "type": {
            "kind": "primitive",
            "name": "string"
          },
          "description": "Associates the checkbox with a form."
        },
        {
          "name": "value",
          "type": {
            "kind": "primitive",
            "name": "string"
          },
          "description": "Value for form submission."
        },
        {
          "name": "id",
          "type": {
            "kind": "primitive",
            "name": "string"
          },
          "description": "Checkbox id."
        },
        {
          "name": "ariaLabel",
          "type": {
            "kind": "primitive",
            "name": "string"
          },
          "description": "ARIA label for accessibility."
        },
        {
          "name": "class",
          "type": {
            "kind": "primitive",
            "name": "string"
          },
          "default": "",
          "description": "CSS class names for the checkbox."
        },
        {
          "name": "checkedChange",
          "type": {
            "kind": "function",
            "signature": "(checked: boolean | 'indeterminate') => void"
          },
          "description": "Emitted when the checked state changes."
        }
      ]
    },
    "select": {
      "name": "Select",
      "selector": "ui-select",
      "type": "form",
      "description": "Custom dropdown with search functionality",
      "files": ["index.ts", "select.component.ts"],
      "dependencies": ["@radix-ng/primitives"],
      "devDependencies": [],
      "peerDependencies": ["lucide-angular"],
      "exports": ["SelectComponent", "SelectItemComponent"],
      "category": "form",
      "props": [
        {
          "name": "value",
          "type": {
            "kind": "primitive",
            "name": "string"
          },
          "description": "Controlled selected value."
        },
        {
          "name": "placeholder",
          "type": {
            "kind": "primitive",
            "name": "string"
          },
          "default": "Select...",
          "description": "Placeholder when no value is selected."
        },
        {
          "name": "disabled",
          "type": {
            "kind": "primitive",
            "name": "boolean"
          },
          "default": false,
          "description": "Disables the select."
        },
        {
          "name": "required",
          "type": {
            "kind": "primitive",
            "name": "boolean"
          },
          "default": false,
          "description": "Requires a value before form submission."
        },
        {
          "name": "name",
          "type": {
            "kind": "primitive",
            "name": "string"
          },
          "description": "Name for form submission."
        },
        {
          "name": "form",
          "type": {
            "kind": "primitive",
            "name": "string"
          },
          "description": "Associates the select with a form."
        },
        {
          "name": "open",
          "type": {
            "kind": "primitive",
            "name": "boolean"
          },
          "description": "Controlled open state."
        },
        {
          "name": "defaultOpen",
          "type": {
            "kind": "primitive",
            "name": "boolean"
          },
          "default": false,
          "description": "Uncontrolled initial open state."
        },
        {
          "name": "class",
          "type": {
            "kind": "primitive",
            "name": "string"
          },
          "default": "",
          "description": "CSS class names for the root."
        },
        {
          "name": "valueChange",
          "type": {
            "kind": "function",
            "signature": "(value: string) => void"
          },
          "description": "Emitted when the value changes."
        },
        {
          "name": "openChange",
          "type": {
            "kind": "function",
            "signature": "(open: boolean) => void"
          },
          "description": "Emitted when the open state changes."
        }
      ],
      "children": [
        {
          "name": "SelectItem",
          "props": [
            {
              "name": "value",
              "type": {
                "kind": "primitive",
                "name": "string"
              },
              "description": "Item value."
            },
            {
              "name": "class",
              "type": {
                "kind": "primitive",
                "name": "string"
              },
              "default": "",
              "description": "CSS class names for the item."
            },
            {
              "name": "disabled",
              "type": {
                "kind": "primitive",
                "name": "boolean"
              },
              "default": false,
              "description": "Disables the item."
            }
          ]
        }
      ]
    },
    "radio-group": {
      "name": "Radio Group",
      "selector": "ui-radio-group",
      "type": "form",
      "description": "Radio button group with single selection",
      "files": ["index.ts", "radio-group.component.ts"],
      "dependencies": ["@radix-ng/primitives"],
      "peerDependencies": [],
      "exports": ["RadioGroupComponent", "RadioGroupItemComponent"],
      "props": [
        {
          "name": "value",
          "type": {
            "kind": "union",
            "values": ["string", "null"]
          },
          "description": "Controlled selected value."
        },
        {
          "name": "disabled",
          "type": {
            "kind": "primitive",
            "name": "boolean"
          },
          "default": false,
          "description": "Disables the entire group."
        },
        {
          "name": "required",
          "type": {
            "kind": "primitive",
            "name": "boolean"
          },
          "default": false,
          "description": "Requires a value before form submission."
        },
        {
          "name": "name",
          "type": {
            "kind": "primitive",
            "name": "string"
          },
          "description": "Name for form submission."
        },
        {
          "name": "orientation",
          "type": {
            "kind": "union",
            "values": ["horizontal", "vertical"]
          },
          "default": "vertical",
          "description": "Layout orientation."
        },
        {
          "name": "class",
          "type": {
            "kind": "primitive",
            "name": "string"
          },
          "default": "",
          "description": "CSS class names for the group."
        },
        {
          "name": "valueChange",
          "type": {
            "kind": "function",
            "signature": "(value: string | null) => void"
          },
          "description": "Emitted when the value changes."
        }
      ],
      "children": [
        {
          "name": "RadioGroupItem",
          "props": [
            {
              "name": "value",
              "type": {
                "kind": "primitive",
                "name": "string"
              },
              "description": "Item value."
            },
            {
              "name": "disabled",
              "type": {
                "kind": "primitive",
                "name": "boolean"
              },
              "default": false,
              "description": "Disables the item."
            },
            {
              "name": "required",
              "type": {
                "kind": "primitive",
                "name": "boolean"
              },
              "default": false,
              "description": "Requires the item."
            },
            {
              "name": "name",
              "type": {
                "kind": "primitive",
                "name": "string"
              },
              "description": "Name for form submission."
            },
            {
              "name": "id",
              "type": {
                "kind": "primitive",
                "name": "string"
              },
              "description": "Item id."
            },
            {
              "name": "class",
              "type": {
                "kind": "primitive",
                "name": "string"
              },
              "default": "",
              "description": "CSS class names for the item."
            }
          ]
        }
      ]
    },
    "switch": {
      "name": "Switch",
      "selector": "ui-switch",
      "type": "form",
      "description": "Toggle switch with smooth animation",
      "files": ["index.ts", "switch.component.ts"],
      "dependencies": ["@radix-ng/primitives"],
      "peerDependencies": [],
      "exports": ["SwitchComponent"],
      "props": [
        {
          "name": "id",
          "type": {
            "kind": "primitive",
            "name": "string"
          },
          "description": "Switch id."
        },
        {
          "name": "required",
          "type": {
            "kind": "primitive",
            "name": "boolean"
          },
          "default": false,
          "description": "Requires a value before form submission."
        },
        {
          "name": "ariaLabel",
          "type": {
            "kind": "primitive",
            "name": "string"
          },
          "description": "ARIA label for accessibility."
        },
        {
          "name": "ariaLabelledBy",
          "type": {
            "kind": "primitive",
            "name": "string"
          },
          "description": "ARIA labelled-by for accessibility."
        },
        {
          "name": "defaultChecked",
          "type": {
            "kind": "primitive",
            "name": "boolean"
          },
          "default": false,
          "description": "Uncontrolled initial checked state."
        },
        {
          "name": "checked",
          "type": {
            "kind": "primitive",
            "name": "boolean"
          },
          "description": "Controlled checked state."
        },
        {
          "name": "disabled",
          "type": {
            "kind": "primitive",
            "name": "boolean"
          },
          "default": false,
          "description": "Disables the switch."
        },
        {
          "name": "class",
          "type": {
            "kind": "primitive",
            "name": "string"
          },
          "default": "",
          "description": "CSS class names for the switch root."
        },
        {
          "name": "checkedChange",
          "type": {
            "kind": "function",
            "signature": "(checked: boolean) => void"
          },
          "description": "Emitted when the checked state changes."
        },
        {
          "name": "onCheckedChange",
          "type": {
            "kind": "function",
            "signature": "(checked: boolean) => void"
          },
          "description": "Alias event emitted when the checked state changes."
        }
      ],
      "children": [
        {
          "name": "SwitchThumb",
          "props": [
            {
              "name": "class",
              "type": {
                "kind": "primitive",
                "name": "string"
              },
              "default": "",
              "description": "CSS class names for the thumb."
            }
          ]
        }
      ]
    },
    "slider": {
      "name": "Slider",
      "selector": "ui-slider",
      "type": "form",
      "description": "Range slider with min/max and step support",
      "files": ["index.ts", "slider.component.ts"],
      "dependencies": ["@radix-ng/primitives"],
      "peerDependencies": [],
      "exports": ["SliderComponent"],
      "category": "form",
      "props": [
        {
          "name": "value",
          "type": {
            "kind": "primitive",
            "name": "number"
          },
          "default": 50,
          "description": "Controlled slider value exposed by the wrapper."
        },
        {
          "name": "min",
          "type": {
            "kind": "primitive",
            "name": "number"
          },
          "default": 0,
          "description": "Minimum value."
        },
        {
          "name": "max",
          "type": {
            "kind": "primitive",
            "name": "number"
          },
          "default": 100,
          "description": "Maximum value."
        },
        {
          "name": "step",
          "type": {
            "kind": "primitive",
            "name": "number"
          },
          "default": 1,
          "description": "Stepping interval."
        },
        {
          "name": "disabled",
          "type": {
            "kind": "primitive",
            "name": "boolean"
          },
          "default": false,
          "description": "Disables the slider."
        },
        {
          "name": "class",
          "type": {
            "kind": "primitive",
            "name": "string"
          },
          "default": "",
          "description": "CSS class names for the slider root."
        },
        {
          "name": "valueChange",
          "type": {
            "kind": "function",
            "signature": "(value: number) => void"
          },
          "description": "Emitted when the slider value changes."
        }
      ]
    },
    "textarea": {
      "name": "Textarea",
      "selector": "ui-textarea",
      "type": "form",
      "description": "Multi-line text input component",
      "files": ["index.ts", "textarea.component.ts"],
      "dependencies": [],
      "peerDependencies": [],
      "exports": ["TextareaComponent"],
      "category": "form",
      "props": [
        {
          "name": "placeholder",
          "type": {
            "kind": "primitive",
            "name": "string"
          },
          "description": "Placeholder text."
        },
        {
          "name": "disabled",
          "type": {
            "kind": "primitive",
            "name": "boolean"
          },
          "default": false,
          "description": "Disables the textarea."
        },
        {
          "name": "rows",
          "type": {
            "kind": "primitive",
            "name": "number"
          },
          "default": 3,
          "description": "Visible number of text rows."
        },
        {
          "name": "class",
          "type": {
            "kind": "primitive",
            "name": "string"
          },
          "default": "",
          "description": "CSS class names for the textarea."
        },
        {
          "name": "value",
          "type": {
            "kind": "union",
            "values": [
              {
                "kind": "primitive",
                "name": "string"
              },
              {
                "kind": "primitive",
                "name": "number"
              }
            ]
          },
          "description": "Bound value through ControlValueAccessor."
        }
      ]
    },
    "accordion": {
      "name": "Accordion",
      "selector": "ui-accordion",
      "type": "layout",
      "description": "Collapsible sections with expand/collapse (directive-based with Radix support)",
      "files": ["accordion.component.ts", "accordion.directive.ts", "index.ts"],
      "dependencies": ["@radix-ng/primitives"],
      "peerDependencies": ["lucide-angular"],
      "exports": [
        "AccordionComponent",
        "AccordionItemComponent",
        "AccordionTriggerComponent",
        "AccordionContentComponent",
        "UiAccordionRootDirective",
        "UiAccordionItemDirective",
        "UiAccordionTriggerDirective",
        "UiAccordionContentDirective"
      ],
      "category": "layout",
      "props": [
        {
          "name": "type",
          "type": {
            "kind": "union",
            "values": [
              {
                "kind": "literal",
                "value": "single"
              },
              {
                "kind": "literal",
                "value": "multiple"
              }
            ]
          },
          "default": "single",
          "description": "Accordion selection behavior."
        },
        {
          "name": "value",
          "type": {
            "kind": "union",
            "values": [
              {
                "kind": "primitive",
                "name": "string"
              },
              {
                "kind": "array",
                "of": {
                  "kind": "primitive",
                  "name": "string"
                }
              },
              {
                "kind": "primitive",
                "name": "null"
              }
            ]
          },
          "default": null,
          "description": "Controlled value for the open item or items."
        },
        {
          "name": "class",
          "type": {
            "kind": "primitive",
            "name": "string"
          },
          "default": "",
          "description": "CSS class names for the root element."
        },
        {
          "name": "valueChange",
          "type": {
            "kind": "function",
            "signature": "(value: string | string[] | null | undefined) => void"
          },
          "description": "Emitted when the open item or items change."
        }
      ],
      "children": [
        {
          "name": "AccordionItem",
          "props": [
            {
              "name": "value",
              "type": {
                "kind": "primitive",
                "name": "string"
              },
              "description": "Unique value for the item."
            },
            {
              "name": "class",
              "type": {
                "kind": "primitive",
                "name": "string"
              },
              "default": "",
              "description": "CSS class names for the item."
            }
          ]
        },
        {
          "name": "AccordionTrigger",
          "props": [
            {
              "name": "class",
              "type": {
                "kind": "primitive",
                "name": "string"
              },
              "default": "",
              "description": "CSS class names for the trigger."
            }
          ]
        },
        {
          "name": "AccordionContent",
          "props": [
            {
              "name": "class",
              "type": {
                "kind": "primitive",
                "name": "string"
              },
              "default": "",
              "description": "CSS class names for the content container."
            }
          ]
        }
      ]
    },
    "collapsible": {
      "name": "Collapsible",
      "selector": "ui-collapsible",
      "type": "layout",
      "description": "Collapsible components and directives built on Radix NG collapsible primitives.",
      "files": [
        "collapsible.component.ts",
        "collapsible.directive.ts",
        "index.ts"
      ],
      "dependencies": ["@radix-ng/primitives"],
      "peerDependencies": [],
      "exports": [
        "CollapsibleComponent",
        "CollapsibleTriggerComponent",
        "CollapsibleContentComponent",
        "UiCollapsibleRootDirective",
        "UiCollapsibleTriggerDirective",
        "UiCollapsibleContentDirective"
      ],
      "category": "layout",
      "props": [
        {
          "name": "open",
          "type": {
            "kind": "primitive",
            "name": "boolean"
          },
          "default": false,
          "description": "Controlled open state."
        },
        {
          "name": "class",
          "type": {
            "kind": "primitive",
            "name": "string"
          },
          "default": "",
          "description": "CSS class names for the root element."
        },
        {
          "name": "openChange",
          "type": {
            "kind": "function",
            "signature": "(open: boolean) => void"
          },
          "description": "Emitted when the open state changes."
        }
      ],
      "children": [
        {
          "name": "CollapsibleTrigger",
          "props": [
            {
              "name": "class",
              "type": {
                "kind": "primitive",
                "name": "string"
              },
              "default": "",
              "description": "CSS class names for the trigger."
            }
          ]
        },
        {
          "name": "CollapsibleContent",
          "props": [
            {
              "name": "class",
              "type": {
                "kind": "primitive",
                "name": "string"
              },
              "default": "",
              "description": "CSS class names for the content container."
            }
          ]
        },
        {
          "name": "UiCollapsibleRootDirective",
          "props": [
            {
              "name": "open",
              "type": {
                "kind": "primitive",
                "name": "boolean"
              },
              "default": false,
              "description": "Controlled open state for the directive API."
            },
            {
              "name": "disabled",
              "type": {
                "kind": "primitive",
                "name": "boolean"
              },
              "default": false,
              "description": "Disables the collapsible in directive usage."
            },
            {
              "name": "openChange",
              "type": {
                "kind": "function",
                "signature": "(open: boolean) => void"
              },
              "description": "Emitted when the directive open state changes."
            }
          ]
        }
      ]
    },
    "separator": {
      "name": "Separator",
      "selector": "ui-separator, [ui-separator]",
      "type": "layout",
      "description": "Horizontal or vertical separator",
      "files": ["index.ts", "separator.component.ts"],
      "dependencies": ["@radix-ng/primitives"],
      "peerDependencies": [],
      "exports": ["SeparatorComponent"],
      "props": [
        {
          "name": "orientation",
          "type": {
            "kind": "union",
            "values": [
              {
                "kind": "literal",
                "value": "horizontal"
              },
              {
                "kind": "literal",
                "value": "vertical"
              }
            ]
          },
          "default": "horizontal",
          "description": "Separator orientation."
        },
        {
          "name": "decorative",
          "type": {
            "kind": "primitive",
            "name": "boolean"
          },
          "default": false,
          "description": "Whether the separator is decorative only."
        },
        {
          "name": "class",
          "type": {
            "kind": "primitive",
            "name": "string"
          },
          "default": "",
          "description": "CSS class names for the separator host."
        }
      ]
    },
    "tabs": {
      "name": "Tabs",
      "selector": "ui-tabs",
      "type": "layout",
      "description": "Tabs components and directives built on Radix NG tabs primitives.",
      "files": ["index.ts", "tabs.component.ts", "tabs.directive.ts"],
      "dependencies": ["@radix-ng/primitives"],
      "peerDependencies": [],
      "exports": [
        "TabsComponent",
        "TabsListComponent",
        "TabsTriggerComponent",
        "TabsContentComponent",
        "UiTabsRootDirective",
        "UiTabsListDirective",
        "UiTabsTriggerDirective",
        "UiTabsContentDirective"
      ],
      "category": "layout",
      "props": [
        {
          "name": "value",
          "type": {
            "kind": "primitive",
            "name": "string"
          },
          "description": "Controlled active tab value."
        },
        {
          "name": "defaultValue",
          "type": {
            "kind": "primitive",
            "name": "string"
          },
          "description": "Initial active tab value for uncontrolled usage."
        },
        {
          "name": "class",
          "type": {
            "kind": "primitive",
            "name": "string"
          },
          "default": "",
          "description": "CSS class names for the tabs root."
        },
        {
          "name": "valueChange",
          "type": {
            "kind": "function",
            "signature": "(value: string | undefined) => void"
          },
          "description": "Emitted when the active tab changes."
        }
      ],
      "children": [
        {
          "name": "TabsList",
          "props": [
            {
              "name": "class",
              "type": {
                "kind": "primitive",
                "name": "string"
              },
              "default": "",
              "description": "CSS class names for the tabs list."
            }
          ]
        },
        {
          "name": "TabsTrigger",
          "props": [
            {
              "name": "value",
              "type": {
                "kind": "primitive",
                "name": "string"
              },
              "description": "Unique value for the tab trigger."
            },
            {
              "name": "disabled",
              "type": {
                "kind": "primitive",
                "name": "boolean"
              },
              "default": false,
              "description": "Disables the trigger."
            },
            {
              "name": "class",
              "type": {
                "kind": "primitive",
                "name": "string"
              },
              "default": "",
              "description": "CSS class names for the trigger."
            }
          ]
        },
        {
          "name": "TabsContent",
          "props": [
            {
              "name": "value",
              "type": {
                "kind": "primitive",
                "name": "string"
              },
              "description": "Value of the content panel to match a trigger."
            },
            {
              "name": "class",
              "type": {
                "kind": "primitive",
                "name": "string"
              },
              "default": "",
              "description": "CSS class names for the content panel."
            }
          ]
        }
      ]
    },
    "dropdown-menu": {
      "name": "Dropdown Menu",
      "selector": "ui-dropdown-menu",
      "type": "navigation",
      "description": "Dropdown menu wrappers with partial Radix NG integration.",
      "files": ["dropdown-menu.component.ts", "index.ts"],
      "dependencies": ["@radix-ng/primitives"],
      "peerDependencies": [],
      "exports": [
        "DropdownMenuComponent",
        "DropdownMenuTriggerComponent",
        "DropdownMenuContentComponent",
        "DropdownMenuItemComponent",
        "DropdownMenuSeparatorComponent"
      ],
      "category": "navigation",
      "props": [],
      "children": [
        {
          "name": "DropdownMenuTrigger",
          "props": [
            {
              "name": "class",
              "type": {
                "kind": "primitive",
                "name": "string"
              },
              "default": "",
              "description": "CSS class names for the trigger button. Note: current wrapper does not apply the Radix NG trigger directive."
            }
          ]
        },
        {
          "name": "DropdownMenuContent",
          "props": [
            {
              "name": "class",
              "type": {
                "kind": "primitive",
                "name": "string"
              },
              "default": "",
              "description": "CSS class names for the content container. Note: current wrapper does not apply the Radix NG content directive."
            }
          ]
        },
        {
          "name": "DropdownMenuItem",
          "props": [
            {
              "name": "disabled",
              "type": {
                "kind": "primitive",
                "name": "boolean"
              },
              "default": false,
              "description": "Disables the item via the underlying Radix NG item directive."
            },
            {
              "name": "inset",
              "type": {
                "kind": "primitive",
                "name": "boolean"
              },
              "default": false,
              "description": "Adds left padding for nested item alignment."
            },
            {
              "name": "onSelect",
              "type": {
                "kind": "function",
                "signature": "() => void"
              },
              "description": "Emitted by the underlying Radix NG item directive when selected."
            },
            {
              "name": "class",
              "type": {
                "kind": "primitive",
                "name": "string"
              },
              "default": "",
              "description": "CSS class names for the item."
            }
          ]
        },
        {
          "name": "DropdownMenuSeparator",
          "props": []
        }
      ]
    },
    "menubar": {
      "name": "Menubar",
      "selector": "ui-menubar",
      "type": "navigation",
      "description": "Menubar wrappers styled as a persistent desktop menu; current implementation does not include Radix or menu behavior.",
      "files": ["index.ts", "menubar.component.ts"],
      "dependencies": [],
      "peerDependencies": [],
      "exports": [
        "MenubarComponent",
        "MenubarTriggerComponent",
        "MenubarContentComponent",
        "MenubarItemComponent",
        "MenubarSeparatorComponent"
      ],
      "category": "navigation",
      "props": [],
      "children": [
        {
          "name": "MenubarTrigger",
          "props": [
            {
              "name": "class",
              "type": {
                "kind": "primitive",
                "name": "string"
              },
              "default": "",
              "description": "CSS class names for the trigger."
            }
          ]
        },
        {
          "name": "MenubarContent",
          "props": [
            {
              "name": "class",
              "type": {
                "kind": "primitive",
                "name": "string"
              },
              "default": "",
              "description": "CSS class names for the menu content."
            }
          ]
        },
        {
          "name": "MenubarItem",
          "props": [
            {
              "name": "inset",
              "type": {
                "kind": "primitive",
                "name": "boolean"
              },
              "default": false,
              "description": "Adds left padding for nested item alignment."
            },
            {
              "name": "class",
              "type": {
                "kind": "primitive",
                "name": "string"
              },
              "default": "",
              "description": "CSS class names for the item."
            }
          ]
        },
        {
          "name": "MenubarSeparator",
          "props": []
        }
      ]
    },
    "navigation-menu": {
      "name": "Navigation Menu",
      "selector": "ui-navigation-menu",
      "type": "navigation",
      "description": "Navigation menu components built with local wrappers around Radix NG navigation-menu directives.",
      "files": ["index.ts", "navigation-menu.component.ts"],
      "dependencies": ["@radix-ng/primitives"],
      "peerDependencies": [],
      "exports": [
        "NavigationMenuComponent",
        "NavigationMenuListComponent",
        "NavigationMenuItemComponent",
        "NavigationMenuTriggerComponent",
        "NavigationMenuContentComponent",
        "NavigationMenuLinkComponent",
        "NavigationMenuViewportComponent",
        "NavigationMenuIndicatorComponent"
      ],
      "category": "navigation",
      "props": [
        {
          "name": "class",
          "type": {
            "kind": "primitive",
            "name": "string"
          },
          "description": "CSS class names for the navigation menu root.",
          "default": ""
        }
      ],
      "children": [
        {
          "name": "NavigationMenuList",
          "props": [
            {
              "name": "class",
              "type": {
                "kind": "primitive",
                "name": "string"
              },
              "description": "CSS class names for the list container.",
              "default": ""
            }
          ]
        },
        {
          "name": "NavigationMenuItem",
          "props": []
        },
        {
          "name": "NavigationMenuTrigger",
          "props": [
            {
              "name": "class",
              "type": {
                "kind": "primitive",
                "name": "string"
              },
              "description": "CSS class names for the trigger.",
              "default": ""
            }
          ]
        },
        {
          "name": "NavigationMenuContent",
          "props": [
            {
              "name": "class",
              "type": {
                "kind": "primitive",
                "name": "string"
              },
              "description": "CSS class names for the content panel.",
              "default": ""
            }
          ]
        },
        {
          "name": "NavigationMenuLink",
          "props": [
            {
              "name": "class",
              "type": {
                "kind": "primitive",
                "name": "string"
              },
              "description": "CSS class names for the link.",
              "default": ""
            }
          ]
        },
        {
          "name": "NavigationMenuViewport",
          "props": [
            {
              "name": "class",
              "type": {
                "kind": "primitive",
                "name": "string"
              },
              "description": "CSS class names for the viewport container.",
              "default": ""
            }
          ]
        },
        {
          "name": "NavigationMenuIndicator",
          "props": [
            {
              "name": "class",
              "type": {
                "kind": "primitive",
                "name": "string"
              },
              "description": "CSS class names for the active indicator.",
              "default": ""
            }
          ]
        }
      ]
    },
    "context-menu": {
      "name": "Context Menu",
      "selector": "ui-context-menu",
      "type": "navigation",
      "description": "Context menu wrapper with styled trigger/content components and a Radix NG-powered item directive.",
      "files": ["context-menu.component.ts", "index.ts"],
      "dependencies": ["@radix-ng/primitives"],
      "peerDependencies": [],
      "exports": [
        "ContextMenuComponent",
        "ContextMenuTriggerComponent",
        "ContextMenuContentComponent",
        "ContextMenuItemComponent"
      ],
      "category": "navigation",
      "props": [],
      "children": [
        {
          "name": "ContextMenuTrigger",
          "props": [
            {
              "name": "class",
              "type": {
                "kind": "primitive",
                "name": "string"
              },
              "description": "CSS class names for the trigger wrapper.",
              "default": ""
            }
          ]
        },
        {
          "name": "ContextMenuContent",
          "props": [
            {
              "name": "class",
              "type": {
                "kind": "primitive",
                "name": "string"
              },
              "description": "CSS class names for the content wrapper.",
              "default": ""
            }
          ]
        },
        {
          "name": "ContextMenuItem",
          "props": [
            {
              "name": "class",
              "type": {
                "kind": "primitive",
                "name": "string"
              },
              "description": "CSS class names for the item.",
              "default": ""
            },
            {
              "name": "inset",
              "type": {
                "kind": "primitive",
                "name": "boolean"
              },
              "description": "Applies inset spacing for nested content alignment.",
              "default": false
            }
          ]
        }
      ]
    },
    "popover": {
      "name": "Popover",
      "selector": "ui-popover",
      "type": "navigation",
      "description": "Popover component for contextual information",
      "files": ["index.ts", "popover.component.ts"],
      "dependencies": ["@radix-ng/primitives"],
      "peerDependencies": [],
      "exports": [
        "PopoverComponent",
        "PopoverTriggerComponent",
        "PopoverContentComponent"
      ],
      "category": "navigation",
      "props": [
        {
          "name": "open",
          "type": {
            "kind": "primitive",
            "name": "boolean"
          },
          "default": false,
          "description": "Controlled open state."
        },
        {
          "name": "openChange",
          "type": {
            "kind": "function",
            "signature": "(open: boolean) => void"
          },
          "description": "Emitted when the open state changes."
        }
      ],
      "children": [
        {
          "name": "PopoverTrigger",
          "props": [
            {
              "name": "class",
              "type": {
                "kind": "primitive",
                "name": "string"
              },
              "default": "",
              "description": "CSS class names for the trigger."
            }
          ]
        },
        {
          "name": "PopoverContent",
          "props": [
            {
              "name": "class",
              "type": {
                "kind": "primitive",
                "name": "string"
              },
              "default": "",
              "description": "CSS class names for the content."
            }
          ]
        }
      ]
    },
    "tooltip": {
      "name": "Tooltip",
      "selector": "ui-tooltip",
      "type": "navigation",
      "description": "Tooltip components and directives built on Radix NG tooltip primitives.",
      "files": ["index.ts", "tooltip.component.ts", "tooltip.directive.ts"],
      "dependencies": ["@radix-ng/primitives"],
      "peerDependencies": [],
      "exports": [
        "TooltipComponent",
        "TooltipTriggerComponent",
        "TooltipContentComponent",
        "UiTooltipRootDirective",
        "UiTooltipTriggerDirective",
        "UiTooltipContentDirective"
      ],
      "providers": {
        "import": "import { provideRdxTooltipConfig } from '@radix-ng/primitives/tooltip2';",
        "function": "provideRdxTooltipConfig({})"
      },
      "category": "navigation",
      "props": [],
      "children": [
        {
          "name": "TooltipTrigger",
          "props": [
            {
              "name": "class",
              "type": {
                "kind": "primitive",
                "name": "string"
              },
              "default": "",
              "description": "CSS class names for the trigger element."
            }
          ]
        },
        {
          "name": "TooltipContent",
          "props": [
            {
              "name": "class",
              "type": {
                "kind": "primitive",
                "name": "string"
              },
              "default": "",
              "description": "CSS class names for the tooltip content."
            }
          ]
        },
        {
          "name": "UiTooltipRootDirective",
          "props": [
            {
              "name": "defaultOpen",
              "type": {
                "kind": "primitive",
                "name": "boolean"
              },
              "default": false,
              "description": "Initial open state for uncontrolled usage."
            },
            {
              "name": "open",
              "type": {
                "kind": "primitive",
                "name": "boolean"
              },
              "description": "Controlled open state."
            },
            {
              "name": "openDelay",
              "type": {
                "kind": "primitive",
                "name": "number"
              },
              "default": 700,
              "description": "Delay in milliseconds before opening."
            },
            {
              "name": "closeDelay",
              "type": {
                "kind": "primitive",
                "name": "number"
              },
              "default": 300,
              "description": "Delay in milliseconds before closing."
            },
            {
              "name": "externalControl",
              "type": {
                "kind": "primitive",
                "name": "boolean"
              },
              "description": "Whether the tooltip state is controlled externally."
            },
            {
              "name": "cssAnimation",
              "type": {
                "kind": "primitive",
                "name": "boolean"
              },
              "default": false,
              "description": "Whether to consider CSS animations."
            },
            {
              "name": "cssOpeningAnimation",
              "type": {
                "kind": "primitive",
                "name": "boolean"
              },
              "default": false,
              "description": "Whether to consider opening animations."
            },
            {
              "name": "cssClosingAnimation",
              "type": {
                "kind": "primitive",
                "name": "boolean"
              },
              "default": false,
              "description": "Whether to consider closing animations."
            }
          ]
        },
        {
          "name": "UiTooltipContentDirective",
          "props": [
            {
              "name": "side",
              "type": {
                "kind": "union",
                "values": [
                  {
                    "kind": "literal",
                    "value": "top"
                  },
                  {
                    "kind": "literal",
                    "value": "right"
                  },
                  {
                    "kind": "literal",
                    "value": "bottom"
                  },
                  {
                    "kind": "literal",
                    "value": "left"
                  }
                ]
              },
              "description": "Preferred side for the tooltip content."
            },
            {
              "name": "align",
              "type": {
                "kind": "union",
                "values": [
                  {
                    "kind": "literal",
                    "value": "start"
                  },
                  {
                    "kind": "literal",
                    "value": "center"
                  },
                  {
                    "kind": "literal",
                    "value": "end"
                  }
                ]
              },
              "default": "center",
              "description": "Preferred alignment relative to the trigger."
            },
            {
              "name": "sideOffset",
              "type": {
                "kind": "primitive",
                "name": "number"
              },
              "description": "Offset in pixels from the trigger."
            },
            {
              "name": "alignOffset",
              "type": {
                "kind": "primitive",
                "name": "number"
              },
              "description": "Offset in pixels from the alignment edge."
            },
            {
              "name": "alternatePositionsDisabled",
              "type": {
                "kind": "primitive",
                "name": "boolean"
              },
              "default": false,
              "description": "Disable alternate overlay positions."
            },
            {
              "name": "onOverlayEscapeKeyDownDisabled",
              "type": {
                "kind": "primitive",
                "name": "boolean"
              },
              "default": false,
              "description": "Disable overlay escape handling."
            },
            {
              "name": "onOverlayOutsideClickDisabled",
              "type": {
                "kind": "primitive",
                "name": "boolean"
              },
              "default": false,
              "description": "Disable outside click handling."
            },
            {
              "name": "onOverlayEscapeKeyDown",
              "type": {
                "kind": "function",
                "signature": "(event: KeyboardEvent) => void"
              },
              "description": "Emitted when Escape is pressed on the overlay."
            },
            {
              "name": "onOverlayOutsideClick",
              "type": {
                "kind": "function",
                "signature": "(event: MouseEvent) => void"
              },
              "description": "Emitted when clicking outside the overlay."
            },
            {
              "name": "onOpen",
              "type": {
                "kind": "function",
                "signature": "() => void"
              },
              "description": "Emitted after the overlay opens."
            },
            {
              "name": "onClosed",
              "type": {
                "kind": "function",
                "signature": "() => void"
              },
              "description": "Emitted after the overlay closes."
            }
          ]
        }
      ]
    },
    "line-chart": {
      "name": "LineChart",
      "selector": "ui-line-chart",
      "type": "chart",
      "description": "Display data as a responsive line chart with smooth curves and customizable styling",
      "files": ["line-chart.component.ts", "types.ts", "utils.ts", "index.ts"],
      "dependencies": ["ngx-echarts", "echarts"],
      "peerDependencies": [],
      "exports": ["LineChartComponent"],
      "category": "charts",
      "props": [
        {
          "name": "data",
          "type": {
            "kind": "custom",
            "name": "ChartData"
          },
          "description": "Chart data including labels and datasets."
        },
        {
          "name": "height",
          "type": {
            "kind": "primitive",
            "name": "number"
          },
          "description": "Chart height in pixels.",
          "default": 300
        },
        {
          "name": "width",
          "type": {
            "kind": "custom",
            "name": "number | string"
          },
          "description": "Chart width for fixed or responsive layouts.",
          "default": "100%"
        },
        {
          "name": "theme",
          "type": {
            "kind": "union",
            "values": [
              {
                "kind": "literal",
                "value": "light"
              },
              {
                "kind": "literal",
                "value": "dark"
              }
            ]
          },
          "description": "Theme mode used by the chart.",
          "default": "light"
        },
        {
          "name": "legend",
          "type": {
            "kind": "primitive",
            "name": "boolean"
          },
          "description": "Whether to show the legend.",
          "default": true
        },
        {
          "name": "legendPosition",
          "type": {
            "kind": "union",
            "values": [
              {
                "kind": "literal",
                "value": "top"
              },
              {
                "kind": "literal",
                "value": "bottom"
              },
              {
                "kind": "literal",
                "value": "left"
              },
              {
                "kind": "literal",
                "value": "right"
              }
            ]
          },
          "description": "Legend position.",
          "default": "top"
        },
        {
          "name": "grid",
          "type": {
            "kind": "custom",
            "name": "boolean | GridConfig"
          },
          "description": "Grid configuration or toggle.",
          "default": true
        },
        {
          "name": "tooltip",
          "type": {
            "kind": "custom",
            "name": "boolean | TooltipConfig"
          },
          "description": "Tooltip configuration or toggle.",
          "default": true
        },
        {
          "name": "animation",
          "type": {
            "kind": "primitive",
            "name": "boolean"
          },
          "description": "Whether chart animations are enabled.",
          "default": true
        },
        {
          "name": "loading",
          "type": {
            "kind": "primitive",
            "name": "boolean"
          },
          "description": "Whether the loading state is shown.",
          "default": false
        },
        {
          "name": "emptyText",
          "type": {
            "kind": "primitive",
            "name": "string"
          },
          "description": "Text shown when there is no data.",
          "default": "No data available"
        },
        {
          "name": "zoom",
          "type": {
            "kind": "primitive",
            "name": "boolean"
          },
          "description": "Whether zoom interactions are enabled.",
          "default": false
        },
        {
          "name": "options",
          "type": {
            "kind": "custom",
            "name": "Record<string, any>"
          },
          "description": "Framework-specific advanced chart options.",
          "default": "{}"
        },
        {
          "name": "smooth",
          "type": {
            "kind": "primitive",
            "name": "boolean"
          },
          "description": "Whether lines are rendered as smooth curves.",
          "default": true
        },
        {
          "name": "showPoints",
          "type": {
            "kind": "primitive",
            "name": "boolean"
          },
          "description": "Whether data points are shown.",
          "default": true
        },
        {
          "name": "pointSize",
          "type": {
            "kind": "primitive",
            "name": "number"
          },
          "description": "Size of data point markers.",
          "default": 6
        },
        {
          "name": "area",
          "type": {
            "kind": "primitive",
            "name": "boolean"
          },
          "description": "Whether to fill the area under the line.",
          "default": false
        },
        {
          "name": "stack",
          "type": {
            "kind": "primitive",
            "name": "boolean"
          },
          "description": "Whether datasets are stacked.",
          "default": false
        },
        {
          "name": "dataLabels",
          "type": {
            "kind": "primitive",
            "name": "boolean"
          },
          "description": "Whether to show labels on points.",
          "default": false
        },
        {
          "name": "className",
          "type": {
            "kind": "primitive",
            "name": "string"
          },
          "description": "className applied to the chart container.",
          "default": ""
        }
      ]
    },
    "bar-chart": {
      "name": "BarChart",
      "selector": "ui-bar-chart",
      "type": "chart",
      "description": "Display data as vertical or horizontal bars with support for stacked and grouped layouts",
      "files": ["bar-chart.component.ts", "types.ts", "utils.ts", "index.ts"],
      "dependencies": ["ngx-echarts", "echarts"],
      "peerDependencies": [],
      "exports": ["BarChartComponent"],
      "category": "charts",
      "props": [
        {
          "name": "data",
          "type": {
            "kind": "custom",
            "name": "ChartData"
          },
          "description": "Chart data including labels and datasets."
        },
        {
          "name": "height",
          "type": {
            "kind": "primitive",
            "name": "number"
          },
          "description": "Chart height in pixels.",
          "default": 300
        },
        {
          "name": "width",
          "type": {
            "kind": "custom",
            "name": "number | string"
          },
          "description": "Chart width for fixed or responsive layouts.",
          "default": "100%"
        },
        {
          "name": "theme",
          "type": {
            "kind": "union",
            "values": [
              {
                "kind": "literal",
                "value": "light"
              },
              {
                "kind": "literal",
                "value": "dark"
              }
            ]
          },
          "description": "Theme mode used by the chart.",
          "default": "light"
        },
        {
          "name": "legend",
          "type": {
            "kind": "primitive",
            "name": "boolean"
          },
          "description": "Whether to show the legend.",
          "default": true
        },
        {
          "name": "legendPosition",
          "type": {
            "kind": "union",
            "values": [
              {
                "kind": "literal",
                "value": "top"
              },
              {
                "kind": "literal",
                "value": "bottom"
              },
              {
                "kind": "literal",
                "value": "left"
              },
              {
                "kind": "literal",
                "value": "right"
              }
            ]
          },
          "description": "Legend position.",
          "default": "top"
        },
        {
          "name": "grid",
          "type": {
            "kind": "custom",
            "name": "boolean | any"
          },
          "description": "Grid configuration or toggle."
        },
        {
          "name": "tooltip",
          "type": {
            "kind": "custom",
            "name": "boolean | any"
          },
          "description": "Tooltip configuration or toggle."
        },
        {
          "name": "animation",
          "type": {
            "kind": "primitive",
            "name": "boolean"
          },
          "description": "Whether chart animations are enabled.",
          "default": true
        },
        {
          "name": "horizontal",
          "type": {
            "kind": "primitive",
            "name": "boolean"
          },
          "description": "Whether to render horizontal bars.",
          "default": false
        },
        {
          "name": "stacked",
          "type": {
            "kind": "primitive",
            "name": "boolean"
          },
          "description": "Whether datasets are stacked.",
          "default": false
        },
        {
          "name": "showDataLabels",
          "type": {
            "kind": "primitive",
            "name": "boolean"
          },
          "description": "Whether to show data labels on bars.",
          "default": false
        },
        {
          "name": "loading",
          "type": {
            "kind": "primitive",
            "name": "boolean"
          },
          "description": "Whether the loading state is shown.",
          "default": false
        },
        {
          "name": "emptyText",
          "type": {
            "kind": "primitive",
            "name": "string"
          },
          "description": "Text shown when there is no data.",
          "default": "No data available"
        },
        {
          "name": "class",
          "type": {
            "kind": "primitive",
            "name": "string"
          },
          "description": "CSS classes applied to the chart container.",
          "default": ""
        },
        {
          "name": "options",
          "type": {
            "kind": "custom",
            "name": "any"
          },
          "description": "Framework-specific advanced chart options.",
          "default": "{}"
        }
      ]
    },
    "pie-chart": {
      "name": "PieChart",
      "selector": "ui-pie-chart",
      "type": "chart",
      "description": "Display proportional data as a pie or donut chart with customizable labels and legend",
      "files": ["pie-chart.component.ts", "types.ts", "utils.ts", "index.ts"],
      "dependencies": ["ngx-echarts", "echarts"],
      "peerDependencies": [],
      "exports": ["PieChartComponent"],
      "category": "charts",
      "props": [
        {
          "name": "data",
          "type": {
            "kind": "custom",
            "name": "ChartData"
          },
          "description": "Chart data including labels and datasets."
        },
        {
          "name": "height",
          "type": {
            "kind": "primitive",
            "name": "number"
          },
          "description": "Chart height in pixels.",
          "default": 300
        },
        {
          "name": "width",
          "type": {
            "kind": "custom",
            "name": "number | string"
          },
          "description": "Chart width for fixed or responsive layouts.",
          "default": "100%"
        },
        {
          "name": "theme",
          "type": {
            "kind": "union",
            "values": [
              {
                "kind": "literal",
                "value": "light"
              },
              {
                "kind": "literal",
                "value": "dark"
              }
            ]
          },
          "description": "Theme mode used by the chart.",
          "default": "light"
        },
        {
          "name": "legend",
          "type": {
            "kind": "primitive",
            "name": "boolean"
          },
          "description": "Whether to show the legend.",
          "default": true
        },
        {
          "name": "legendPosition",
          "type": {
            "kind": "union",
            "values": [
              {
                "kind": "literal",
                "value": "top"
              },
              {
                "kind": "literal",
                "value": "bottom"
              },
              {
                "kind": "literal",
                "value": "left"
              },
              {
                "kind": "literal",
                "value": "right"
              }
            ]
          },
          "description": "Legend position.",
          "default": "right"
        },
        {
          "name": "animation",
          "type": {
            "kind": "primitive",
            "name": "boolean"
          },
          "description": "Whether chart animations are enabled.",
          "default": true
        },
        {
          "name": "innerRadius",
          "type": {
            "kind": "primitive",
            "name": "number"
          },
          "description": "Inner radius percentage.",
          "default": 0
        },
        {
          "name": "outerRadius",
          "type": {
            "kind": "primitive",
            "name": "number"
          },
          "description": "Outer radius percentage.",
          "default": 70
        },
        {
          "name": "showPercentage",
          "type": {
            "kind": "primitive",
            "name": "boolean"
          },
          "description": "Whether to show percentage labels.",
          "default": true
        },
        {
          "name": "labelPosition",
          "type": {
            "kind": "union",
            "values": [
              {
                "kind": "literal",
                "value": "inside"
              },
              {
                "kind": "literal",
                "value": "outside"
              },
              {
                "kind": "literal",
                "value": "center"
              }
            ]
          },
          "description": "Label position.",
          "default": "outside"
        },
        {
          "name": "loading",
          "type": {
            "kind": "primitive",
            "name": "boolean"
          },
          "description": "Whether the loading state is shown.",
          "default": false
        },
        {
          "name": "emptyText",
          "type": {
            "kind": "primitive",
            "name": "string"
          },
          "description": "Text shown when there is no data.",
          "default": "No data available"
        },
        {
          "name": "class",
          "type": {
            "kind": "primitive",
            "name": "string"
          },
          "description": "CSS classes applied to the chart container.",
          "default": ""
        },
        {
          "name": "options",
          "type": {
            "kind": "custom",
            "name": "Record<string, any>"
          },
          "description": "Framework-specific advanced chart options.",
          "default": "{}"
        }
      ]
    },
    "donut-chart": {
      "name": "DonutChart",
      "type": "chart",
      "description": "Display proportional data as a donut chart with a hollow center",
      "dependencies": ["ngx-echarts", "echarts"],
      "devDependencies": [],
      "registryDependencies": [],
      "files": ["donut-chart.component.ts", "types.ts", "utils.ts", "index.ts"],
      "category": "charts",
      "props": [
        {
          "name": "data",
          "type": {
            "kind": "custom",
            "name": "ChartData"
          },
          "description": "Chart data including labels and datasets."
        },
        {
          "name": "height",
          "type": {
            "kind": "primitive",
            "name": "number"
          },
          "description": "Chart height in pixels.",
          "default": 300
        },
        {
          "name": "width",
          "type": {
            "kind": "custom",
            "name": "number | string"
          },
          "description": "Chart width for fixed or responsive layouts.",
          "default": "100%"
        },
        {
          "name": "theme",
          "type": {
            "kind": "union",
            "values": [
              {
                "kind": "literal",
                "value": "light"
              },
              {
                "kind": "literal",
                "value": "dark"
              }
            ]
          },
          "description": "Theme mode used by the chart.",
          "default": "light"
        },
        {
          "name": "legend",
          "type": {
            "kind": "primitive",
            "name": "boolean"
          },
          "description": "Whether to show the legend.",
          "default": true
        },
        {
          "name": "legendPosition",
          "type": {
            "kind": "union",
            "values": [
              {
                "kind": "literal",
                "value": "top"
              },
              {
                "kind": "literal",
                "value": "bottom"
              },
              {
                "kind": "literal",
                "value": "left"
              },
              {
                "kind": "literal",
                "value": "right"
              }
            ]
          },
          "description": "Legend position.",
          "default": "right"
        },
        {
          "name": "animation",
          "type": {
            "kind": "primitive",
            "name": "boolean"
          },
          "description": "Whether chart animations are enabled.",
          "default": true
        },
        {
          "name": "innerRadius",
          "type": {
            "kind": "primitive",
            "name": "number"
          },
          "description": "Inner radius percentage.",
          "default": 50
        },
        {
          "name": "outerRadius",
          "type": {
            "kind": "primitive",
            "name": "number"
          },
          "description": "Outer radius percentage.",
          "default": 70
        },
        {
          "name": "showPercentage",
          "type": {
            "kind": "primitive",
            "name": "boolean"
          },
          "description": "Whether to show percentage labels.",
          "default": true
        },
        {
          "name": "labelPosition",
          "type": {
            "kind": "union",
            "values": [
              {
                "kind": "literal",
                "value": "inside"
              },
              {
                "kind": "literal",
                "value": "outside"
              },
              {
                "kind": "literal",
                "value": "center"
              }
            ]
          },
          "description": "Label position.",
          "default": "outside"
        },
        {
          "name": "loading",
          "type": {
            "kind": "primitive",
            "name": "boolean"
          },
          "description": "Whether the loading state is shown.",
          "default": false
        },
        {
          "name": "emptyText",
          "type": {
            "kind": "primitive",
            "name": "string"
          },
          "description": "Text shown when there is no data.",
          "default": "No data available"
        },
        {
          "name": "class",
          "type": {
            "kind": "primitive",
            "name": "string"
          },
          "description": "CSS classes applied to the chart container.",
          "default": ""
        },
        {
          "name": "options",
          "type": {
            "kind": "custom",
            "name": "Record<string, any>"
          },
          "description": "Framework-specific advanced chart options.",
          "default": "{}"
        }
      ],
      "selector": "ui-donut-chart",
      "peerDependencies": [],
      "exports": ["DonutChartComponent"]
    },
    "area-chart": {
      "name": "AreaChart",
      "selector": "ui-area-chart",
      "type": "chart",
      "description": "Visualize cumulative totals over time with filled areas and gradient support",
      "files": ["area-chart.component.ts", "types.ts", "utils.ts", "index.ts"],
      "dependencies": ["ngx-echarts", "echarts"],
      "peerDependencies": [],
      "exports": ["AreaChartComponent"],
      "category": "charts",
      "props": [
        {
          "name": "data",
          "type": {
            "kind": "custom",
            "name": "ChartData"
          },
          "description": "Chart data including labels and datasets."
        },
        {
          "name": "height",
          "type": {
            "kind": "primitive",
            "name": "number"
          },
          "description": "Chart height in pixels.",
          "default": 300
        },
        {
          "name": "width",
          "type": {
            "kind": "custom",
            "name": "number | string"
          },
          "description": "Chart width for fixed or responsive layouts.",
          "default": "100%"
        },
        {
          "name": "theme",
          "type": {
            "kind": "union",
            "values": [
              {
                "kind": "literal",
                "value": "light"
              },
              {
                "kind": "literal",
                "value": "dark"
              }
            ]
          },
          "description": "Theme mode used by the chart.",
          "default": "light"
        },
        {
          "name": "legend",
          "type": {
            "kind": "primitive",
            "name": "boolean"
          },
          "description": "Whether to show the legend.",
          "default": true
        },
        {
          "name": "legendPosition",
          "type": {
            "kind": "union",
            "values": [
              {
                "kind": "literal",
                "value": "top"
              },
              {
                "kind": "literal",
                "value": "bottom"
              },
              {
                "kind": "literal",
                "value": "left"
              },
              {
                "kind": "literal",
                "value": "right"
              }
            ]
          },
          "description": "Legend position.",
          "default": "top"
        },
        {
          "name": "grid",
          "type": {
            "kind": "custom",
            "name": "boolean | GridConfig"
          },
          "description": "Grid configuration or toggle.",
          "default": true
        },
        {
          "name": "tooltip",
          "type": {
            "kind": "custom",
            "name": "boolean | TooltipConfig"
          },
          "description": "Tooltip configuration or toggle.",
          "default": true
        },
        {
          "name": "animation",
          "type": {
            "kind": "primitive",
            "name": "boolean"
          },
          "description": "Whether chart animations are enabled.",
          "default": true
        },
        {
          "name": "loading",
          "type": {
            "kind": "primitive",
            "name": "boolean"
          },
          "description": "Whether the loading state is shown.",
          "default": false
        },
        {
          "name": "emptyText",
          "type": {
            "kind": "primitive",
            "name": "string"
          },
          "description": "Text shown when there is no data.",
          "default": "No data available"
        },
        {
          "name": "zoom",
          "type": {
            "kind": "primitive",
            "name": "boolean"
          },
          "description": "Whether zoom interactions are enabled.",
          "default": false
        },
        {
          "name": "options",
          "type": {
            "kind": "custom",
            "name": "Record<string, any>"
          },
          "description": "Framework-specific advanced chart options.",
          "default": "{}"
        },
        {
          "name": "smooth",
          "type": {
            "kind": "primitive",
            "name": "boolean"
          },
          "description": "Whether lines are rendered as smooth curves.",
          "default": true
        },
        {
          "name": "showPoints",
          "type": {
            "kind": "primitive",
            "name": "boolean"
          },
          "description": "Whether data points are shown.",
          "default": true
        },
        {
          "name": "pointSize",
          "type": {
            "kind": "primitive",
            "name": "number"
          },
          "description": "Size of data point markers.",
          "default": 6
        },
        {
          "name": "stack",
          "type": {
            "kind": "primitive",
            "name": "boolean"
          },
          "description": "Whether datasets are stacked.",
          "default": false
        },
        {
          "name": "opacity",
          "type": {
            "kind": "primitive",
            "name": "number"
          },
          "description": "Fill opacity for the area.",
          "default": 0.6
        },
        {
          "name": "gradient",
          "type": {
            "kind": "primitive",
            "name": "boolean"
          },
          "description": "Whether to use gradient area fills.",
          "default": false
        },
        {
          "name": "class",
          "type": {
            "kind": "primitive",
            "name": "string"
          },
          "description": "CSS classes applied to the chart container.",
          "default": ""
        }
      ]
    },
    "radar-chart": {
      "name": "RadarChart",
      "selector": "ui-radar-chart",
      "type": "chart",
      "description": "Display multi-dimensional data comparison on a radial grid",
      "files": ["radar-chart.component.ts", "types.ts", "utils.ts", "index.ts"],
      "dependencies": ["ngx-echarts", "echarts"],
      "peerDependencies": [],
      "exports": ["RadarChartComponent"],
      "category": "charts",
      "props": [
        {
          "name": "data",
          "type": {
            "kind": "custom",
            "name": "ChartData"
          },
          "description": "Chart data including labels and datasets."
        },
        {
          "name": "height",
          "type": {
            "kind": "primitive",
            "name": "number"
          },
          "description": "Chart height in pixels.",
          "default": 300
        },
        {
          "name": "width",
          "type": {
            "kind": "custom",
            "name": "number | string"
          },
          "description": "Chart width for fixed or responsive layouts.",
          "default": "100%"
        },
        {
          "name": "theme",
          "type": {
            "kind": "union",
            "values": [
              {
                "kind": "literal",
                "value": "light"
              },
              {
                "kind": "literal",
                "value": "dark"
              }
            ]
          },
          "description": "Theme mode used by the chart.",
          "default": "light"
        },
        {
          "name": "legend",
          "type": {
            "kind": "primitive",
            "name": "boolean"
          },
          "description": "Whether to show the legend.",
          "default": true
        },
        {
          "name": "legendPosition",
          "type": {
            "kind": "union",
            "values": [
              {
                "kind": "literal",
                "value": "top"
              },
              {
                "kind": "literal",
                "value": "bottom"
              },
              {
                "kind": "literal",
                "value": "left"
              },
              {
                "kind": "literal",
                "value": "right"
              }
            ]
          },
          "description": "Legend position.",
          "default": "top"
        },
        {
          "name": "loading",
          "type": {
            "kind": "primitive",
            "name": "boolean"
          },
          "description": "Whether the loading state is shown.",
          "default": false
        },
        {
          "name": "emptyText",
          "type": {
            "kind": "primitive",
            "name": "string"
          },
          "description": "Text shown when there is no data.",
          "default": "No data available"
        },
        {
          "name": "shape",
          "type": {
            "kind": "union",
            "values": [
              {
                "kind": "literal",
                "value": "polygon"
              },
              {
                "kind": "literal",
                "value": "circle"
              }
            ]
          },
          "description": "Radar grid shape.",
          "default": "polygon"
        },
        {
          "name": "splitNumber",
          "type": {
            "kind": "primitive",
            "name": "number"
          },
          "description": "Number of split lines.",
          "default": 4
        },
        {
          "name": "maxValue",
          "type": {
            "kind": "primitive",
            "name": "number"
          },
          "description": "Maximum indicator value."
        },
        {
          "name": "fill",
          "type": {
            "kind": "primitive",
            "name": "boolean"
          },
          "description": "Whether to fill the radar area.",
          "default": true
        },
        {
          "name": "opacity",
          "type": {
            "kind": "primitive",
            "name": "number"
          },
          "description": "Fill opacity.",
          "default": 0.3
        },
        {
          "name": "class",
          "type": {
            "kind": "primitive",
            "name": "string"
          },
          "description": "CSS classes applied to the chart container.",
          "default": ""
        },
        {
          "name": "options",
          "type": {
            "kind": "custom",
            "name": "Record<string, any>"
          },
          "description": "Framework-specific advanced chart options.",
          "default": "{}"
        }
      ]
    },
    "scatter-chart": {
      "name": "ScatterChart",
      "selector": "ui-scatter-chart",
      "type": "chart",
      "description": "Display distribution and correlation analysis with scatter plots",
      "files": [
        "scatter-chart.component.ts",
        "types.ts",
        "utils.ts",
        "index.ts"
      ],
      "dependencies": ["ngx-echarts", "echarts"],
      "peerDependencies": [],
      "exports": ["ScatterChartComponent"],
      "category": "charts",
      "props": [
        {
          "name": "data",
          "type": {
            "kind": "custom",
            "name": "ChartData"
          },
          "description": "Chart data including labels and datasets."
        },
        {
          "name": "height",
          "type": {
            "kind": "primitive",
            "name": "number"
          },
          "description": "Chart height in pixels.",
          "default": 300
        },
        {
          "name": "width",
          "type": {
            "kind": "custom",
            "name": "number | string"
          },
          "description": "Chart width for fixed or responsive layouts.",
          "default": "100%"
        },
        {
          "name": "theme",
          "type": {
            "kind": "union",
            "values": [
              {
                "kind": "literal",
                "value": "light"
              },
              {
                "kind": "literal",
                "value": "dark"
              }
            ]
          },
          "description": "Theme mode used by the chart.",
          "default": "light"
        },
        {
          "name": "legend",
          "type": {
            "kind": "primitive",
            "name": "boolean"
          },
          "description": "Whether to show the legend.",
          "default": true
        },
        {
          "name": "legendPosition",
          "type": {
            "kind": "union",
            "values": [
              {
                "kind": "literal",
                "value": "top"
              },
              {
                "kind": "literal",
                "value": "bottom"
              },
              {
                "kind": "literal",
                "value": "left"
              },
              {
                "kind": "literal",
                "value": "right"
              }
            ]
          },
          "description": "Legend position.",
          "default": "top"
        },
        {
          "name": "loading",
          "type": {
            "kind": "primitive",
            "name": "boolean"
          },
          "description": "Whether the loading state is shown.",
          "default": false
        },
        {
          "name": "emptyText",
          "type": {
            "kind": "primitive",
            "name": "string"
          },
          "description": "Text shown when there is no data.",
          "default": "No data available"
        },
        {
          "name": "symbolSize",
          "type": {
            "kind": "primitive",
            "name": "number"
          },
          "description": "Size of scatter points.",
          "default": 10
        },
        {
          "name": "opacity",
          "type": {
            "kind": "primitive",
            "name": "number"
          },
          "description": "Opacity of scatter points.",
          "default": 0.8
        },
        {
          "name": "xAxisLabel",
          "type": {
            "kind": "primitive",
            "name": "string"
          },
          "description": "Label for the X axis."
        },
        {
          "name": "yAxisLabel",
          "type": {
            "kind": "primitive",
            "name": "string"
          },
          "description": "Label for the Y axis."
        },
        {
          "name": "class",
          "type": {
            "kind": "primitive",
            "name": "string"
          },
          "description": "CSS classes applied to the chart container.",
          "default": ""
        },
        {
          "name": "options",
          "type": {
            "kind": "custom",
            "name": "Record<string, any>"
          },
          "description": "Framework-specific advanced chart options.",
          "default": "{}"
        }
      ]
    },
    "mixed-chart": {
      "name": "MixedChart",
      "selector": "ui-mixed-chart",
      "type": "chart",
      "description": "Combine multiple chart types (line, bar, area) in a single visualization",
      "files": ["mixed-chart.component.ts", "types.ts", "utils.ts", "index.ts"],
      "dependencies": ["ngx-echarts", "echarts"],
      "peerDependencies": [],
      "exports": ["MixedChartComponent"],
      "category": "charts",
      "props": [
        {
          "name": "data",
          "type": {
            "kind": "custom",
            "name": "ChartData"
          },
          "description": "Chart data including labels and datasets."
        },
        {
          "name": "height",
          "type": {
            "kind": "primitive",
            "name": "number"
          },
          "description": "Chart height in pixels.",
          "default": 300
        },
        {
          "name": "width",
          "type": {
            "kind": "custom",
            "name": "number | string"
          },
          "description": "Chart width for fixed or responsive layouts.",
          "default": "100%"
        },
        {
          "name": "theme",
          "type": {
            "kind": "union",
            "values": [
              {
                "kind": "literal",
                "value": "light"
              },
              {
                "kind": "literal",
                "value": "dark"
              }
            ]
          },
          "description": "Theme mode used by the chart.",
          "default": "light"
        },
        {
          "name": "legend",
          "type": {
            "kind": "primitive",
            "name": "boolean"
          },
          "description": "Whether to show the legend.",
          "default": true
        },
        {
          "name": "legendPosition",
          "type": {
            "kind": "union",
            "values": [
              {
                "kind": "literal",
                "value": "top"
              },
              {
                "kind": "literal",
                "value": "bottom"
              },
              {
                "kind": "literal",
                "value": "left"
              },
              {
                "kind": "literal",
                "value": "right"
              }
            ]
          },
          "description": "Legend position.",
          "default": "top"
        },
        {
          "name": "grid",
          "type": {
            "kind": "custom",
            "name": "boolean | GridConfig"
          },
          "description": "Grid configuration or toggle.",
          "default": true
        },
        {
          "name": "tooltip",
          "type": {
            "kind": "custom",
            "name": "boolean | TooltipConfig"
          },
          "description": "Tooltip configuration or toggle.",
          "default": true
        },
        {
          "name": "animation",
          "type": {
            "kind": "primitive",
            "name": "boolean"
          },
          "description": "Whether chart animations are enabled.",
          "default": true
        },
        {
          "name": "loading",
          "type": {
            "kind": "primitive",
            "name": "boolean"
          },
          "description": "Whether the loading state is shown.",
          "default": false
        },
        {
          "name": "emptyText",
          "type": {
            "kind": "primitive",
            "name": "string"
          },
          "description": "Text shown when there is no data.",
          "default": "No data available"
        },
        {
          "name": "class",
          "type": {
            "kind": "primitive",
            "name": "string"
          },
          "description": "CSS classes applied to the chart container.",
          "default": ""
        },
        {
          "name": "options",
          "type": {
            "kind": "custom",
            "name": "Record<string, any>"
          },
          "description": "Framework-specific advanced chart options.",
          "default": "{}"
        }
      ]
    },
    "dialog": {
      "name": "Dialog",
      "selector": "ui-dialog",
      "type": "layout",
      "description": "Dialog components and directives built on Radix NG dialog primitives.",
      "files": ["dialog.component.ts", "dialog.directive.ts", "index.ts"],
      "dependencies": ["@radix-ng/primitives"],
      "peerDependencies": [],
      "exports": [
        "DialogComponent",
        "DialogTriggerComponent",
        "DialogContentComponent",
        "DialogTitleComponent",
        "DialogDescriptionComponent",
        "DialogHeaderComponent",
        "DialogFooterComponent",
        "UiDialogTriggerDirective",
        "UiDialogContentDirective",
        "UiDialogTitleDirective",
        "UiDialogDescriptionDirective",
        "UiDialogCloseDirective",
        "UiDialogHeaderDirective",
        "UiDialogFooterDirective",
        "DialogTriggerDirective"
      ],
      "providers": {
        "import": "import { provideRdxDialogConfig } from '@radix-ng/primitives/dialog';",
        "function": "provideRdxDialogConfig()"
      },
      "category": "layout",
      "props": [
        {
          "name": "open",
          "type": {
            "kind": "primitive",
            "name": "boolean"
          },
          "default": false,
          "description": "Controlled open state for the dialog root component."
        },
        {
          "name": "openChange",
          "type": {
            "kind": "function",
            "signature": "(open: boolean) => void"
          },
          "description": "Emitted when the open state changes."
        }
      ],
      "children": [
        {
          "name": "DialogTrigger",
          "props": [
            {
              "name": "class",
              "type": {
                "kind": "primitive",
                "name": "string"
              },
              "default": "",
              "description": "CSS class names for the trigger button component."
            }
          ]
        },
        {
          "name": "DialogContent",
          "props": [
            {
              "name": "class",
              "type": {
                "kind": "primitive",
                "name": "string"
              },
              "default": "",
              "description": "CSS class names for the dialog content container."
            }
          ]
        },
        {
          "name": "DialogTitle",
          "props": [
            {
              "name": "class",
              "type": {
                "kind": "primitive",
                "name": "string"
              },
              "default": "",
              "description": "CSS class names for the dialog title."
            }
          ]
        },
        {
          "name": "DialogDescription",
          "props": [
            {
              "name": "class",
              "type": {
                "kind": "primitive",
                "name": "string"
              },
              "default": "",
              "description": "CSS class names for the dialog description."
            }
          ]
        },
        {
          "name": "DialogHeader",
          "props": [
            {
              "name": "class",
              "type": {
                "kind": "primitive",
                "name": "string"
              },
              "default": "",
              "description": "CSS class names for the header container."
            }
          ]
        },
        {
          "name": "DialogFooter",
          "props": [
            {
              "name": "class",
              "type": {
                "kind": "primitive",
                "name": "string"
              },
              "default": "",
              "description": "CSS class names for the footer container."
            }
          ]
        },
        {
          "name": "DialogTriggerDirective",
          "props": [
            {
              "name": "id",
              "type": {
                "kind": "primitive",
                "name": "string"
              },
              "description": "Optional id for the trigger directive."
            },
            {
              "name": "uiDialogTrigger",
              "type": {
                "kind": "custom",
                "name": "TemplateRef<unknown>"
              },
              "description": "Template reference opened by the trigger directive."
            },
            {
              "name": "dialogConfig",
              "type": {
                "kind": "custom",
                "name": "RdxDialogConfig"
              },
              "description": "Radix NG dialog configuration for the trigger directive."
            }
          ]
        },
        {
          "name": "UiDialogCloseDirective",
          "props": []
        }
      ]
    },
    "alert-dialog": {
      "name": "Alert Dialog",
      "selector": "ui-alert-dialog",
      "type": "feedback",
      "description": "Alert dialog components built on Radix NG alert-dialog primitives.",
      "files": ["alert-dialog.component.ts", "index.ts"],
      "dependencies": ["@radix-ng/primitives"],
      "peerDependencies": [],
      "exports": [
        "AlertDialogComponent",
        "AlertDialogTriggerComponent",
        "AlertDialogContentComponent",
        "AlertDialogTitleComponent",
        "AlertDialogDescriptionComponent",
        "AlertDialogActionComponent",
        "AlertDialogCancelComponent",
        "AlertDialogHeaderComponent",
        "AlertDialogFooterComponent"
      ],
      "category": "feedback",
      "props": [
        {
          "name": "open",
          "type": {
            "kind": "primitive",
            "name": "boolean"
          },
          "default": false,
          "description": "Declared open state input on the root component. Note: the current wrapper template does not bind it to the Radix NG directive."
        },
        {
          "name": "openChange",
          "type": {
            "kind": "function",
            "signature": "(open: boolean) => void"
          },
          "description": "Declared open state output on the root component. Note: the current wrapper template does not emit from the Radix NG directive."
        }
      ],
      "children": [
        {
          "name": "AlertDialogTrigger",
          "props": [
            {
              "name": "class",
              "type": {
                "kind": "primitive",
                "name": "string"
              },
              "default": "",
              "description": "CSS class names for the trigger button."
            }
          ]
        },
        {
          "name": "AlertDialogContent",
          "props": [
            {
              "name": "maxWidth",
              "type": {
                "kind": "primitive",
                "name": "string"
              },
              "description": "Maximum width supported by the underlying Radix NG content directive, but not exposed by the current wrapper component."
            },
            {
              "name": "class",
              "type": {
                "kind": "primitive",
                "name": "string"
              },
              "default": "",
              "description": "CSS class names for the content container."
            }
          ]
        },
        {
          "name": "AlertDialogTitle",
          "props": [
            {
              "name": "class",
              "type": {
                "kind": "primitive",
                "name": "string"
              },
              "default": "",
              "description": "CSS class names for the title."
            }
          ]
        },
        {
          "name": "AlertDialogDescription",
          "props": [
            {
              "name": "class",
              "type": {
                "kind": "primitive",
                "name": "string"
              },
              "default": "",
              "description": "CSS class names for the description."
            }
          ]
        },
        {
          "name": "AlertDialogAction",
          "props": [
            {
              "name": "class",
              "type": {
                "kind": "primitive",
                "name": "string"
              },
              "default": "",
              "description": "CSS class names for the action button. The current wrapper uses the cancel directive, so it closes like cancel."
            }
          ]
        },
        {
          "name": "AlertDialogCancel",
          "props": [
            {
              "name": "class",
              "type": {
                "kind": "primitive",
                "name": "string"
              },
              "default": "",
              "description": "CSS class names for the cancel button."
            }
          ]
        },
        {
          "name": "AlertDialogHeader",
          "props": [
            {
              "name": "class",
              "type": {
                "kind": "primitive",
                "name": "string"
              },
              "default": "",
              "description": "CSS class names for the header container."
            }
          ]
        },
        {
          "name": "AlertDialogFooter",
          "props": [
            {
              "name": "class",
              "type": {
                "kind": "primitive",
                "name": "string"
              },
              "default": "",
              "description": "CSS class names for the footer container."
            }
          ]
        }
      ]
    },
    "progress": {
      "name": "Progress",
      "type": "feedback",
      "description": "Displays an indicator showing the completion progress of a task",
      "dependencies": ["@radix-ng/primitives"],
      "devDependencies": [],
      "registryDependencies": [],
      "files": ["progress.component.ts", "index.ts"],
      "category": "feedback",
      "props": [
        {
          "name": "value",
          "type": {
            "kind": "primitive",
            "name": "number"
          },
          "default": 0,
          "description": "Current progress value."
        },
        {
          "name": "max",
          "type": {
            "kind": "primitive",
            "name": "number"
          },
          "default": 100,
          "description": "Maximum progress value."
        },
        {
          "name": "class",
          "type": {
            "kind": "primitive",
            "name": "string"
          },
          "default": "",
          "description": "CSS class names for the progress root."
        }
      ],
      "selector": "ui-progress",
      "exports": ["ProgressComponent"]
    },
    "hover-card": {
      "name": "Hover Card",
      "selector": "ui-hover-card",
      "type": "data-display",
      "description": "Hover card wrappers built on Radix NG hover-card primitives.",
      "files": ["hover-card.component.ts", "index.ts"],
      "dependencies": ["@radix-ng/primitives"],
      "peerDependencies": [],
      "exports": [
        "HoverCardComponent",
        "HoverCardTriggerComponent",
        "HoverCardContentComponent"
      ],
      "category": "data-display",
      "props": [
        {
          "name": "open",
          "type": {
            "kind": "primitive",
            "name": "boolean"
          },
          "default": false,
          "description": "Controlled open state."
        },
        {
          "name": "openDelay",
          "type": {
            "kind": "primitive",
            "name": "number"
          },
          "default": 700,
          "description": "Delay in milliseconds before opening."
        },
        {
          "name": "closeDelay",
          "type": {
            "kind": "primitive",
            "name": "number"
          },
          "default": 300,
          "description": "Delay in milliseconds before closing."
        },
        {
          "name": "openChange",
          "type": {
            "kind": "function",
            "signature": "(open: boolean) => void"
          },
          "description": "Emitted when the open state changes."
        }
      ],
      "children": [
        {
          "name": "HoverCardTrigger",
          "props": [
            {
              "name": "class",
              "type": {
                "kind": "primitive",
                "name": "string"
              },
              "default": "",
              "description": "CSS class names for the trigger container."
            }
          ]
        },
        {
          "name": "HoverCardContent",
          "props": [
            {
              "name": "class",
              "type": {
                "kind": "primitive",
                "name": "string"
              },
              "default": "",
              "description": "CSS class names for the content container."
            }
          ]
        }
      ]
    },
    "avatar": {
      "name": "Avatar",
      "selector": "ui-avatar",
      "type": "data-display",
      "description": "Avatar component for user profile pictures",
      "files": [
        "avatar.component.ts",
        "avatar-image.component.ts",
        "avatar-fallback.component.ts",
        "index.ts"
      ],
      "dependencies": [],
      "peerDependencies": [],
      "exports": [
        "AvatarComponent",
        "AvatarImageComponent",
        "AvatarFallbackComponent"
      ],
      "category": "data-display",
      "props": [
        {
          "name": "class",
          "type": {
            "kind": "primitive",
            "name": "string"
          },
          "default": "",
          "description": "CSS class names for the avatar root."
        }
      ],
      "children": [
        {
          "name": "AvatarImage",
          "props": [
            {
              "name": "src",
              "type": {
                "kind": "primitive",
                "name": "string"
              },
              "description": "Image source URL."
            },
            {
              "name": "alt",
              "type": {
                "kind": "primitive",
                "name": "string"
              },
              "description": "Alternative text for the image."
            }
          ]
        },
        {
          "name": "AvatarFallback",
          "props": [
            {
              "name": "class",
              "type": {
                "kind": "primitive",
                "name": "string"
              },
              "default": "",
              "description": "CSS class names for the fallback."
            }
          ]
        }
      ]
    },
    "scroll-area": {
      "name": "Scroll Area",
      "selector": "ui-scroll-area",
      "type": "layout",
      "description": "Augments native scroll functionality for custom, cross-browser styling",
      "files": ["scroll-area.component.ts", "index.ts"],
      "dependencies": [],
      "peerDependencies": [],
      "exports": ["ScrollAreaComponent"],
      "props": [
        {
          "name": "orientation",
          "type": {
            "kind": "union",
            "values": [
              {
                "kind": "literal",
                "value": "horizontal"
              },
              {
                "kind": "literal",
                "value": "vertical"
              }
            ]
          },
          "default": "vertical",
          "description": "Primary scroll direction hint."
        },
        {
          "name": "class",
          "type": {
            "kind": "primitive",
            "name": "string"
          },
          "default": "",
          "description": "CSS class names for the scroll area container."
        }
      ]
    },
    "aspect-ratio": {
      "name": "Aspect Ratio",
      "selector": "ui-aspect-ratio",
      "type": "layout",
      "description": "Displays content within a desired aspect ratio",
      "files": ["aspect-ratio.component.ts", "index.ts"],
      "dependencies": ["@radix-ng/primitives"],
      "peerDependencies": [],
      "exports": ["AspectRatioComponent"],
      "props": [
        {
          "name": "ratio",
          "type": {
            "kind": "primitive",
            "name": "number"
          },
          "default": 1.7777777777777777,
          "description": "Desired aspect ratio exposed by the wrapper."
        },
        {
          "name": "class",
          "type": {
            "kind": "primitive",
            "name": "string"
          },
          "default": "",
          "description": "CSS class names for the host element."
        }
      ]
    },
    "toggle": {
      "name": "Toggle",
      "selector": "ui-toggle",
      "type": "interactive",
      "description": "A two-state button that can be either on or off",
      "files": ["toggle.component.ts", "index.ts"],
      "dependencies": ["@radix-ng/primitives"],
      "peerDependencies": [],
      "exports": ["ToggleComponent"],
      "category": "interactive",
      "props": [
        {
          "name": "pressed",
          "type": {
            "kind": "primitive",
            "name": "boolean"
          },
          "default": false,
          "description": "Controlled pressed state."
        },
        {
          "name": "disabled",
          "type": {
            "kind": "primitive",
            "name": "boolean"
          },
          "default": false,
          "description": "Disables the toggle."
        },
        {
          "name": "variant",
          "type": {
            "kind": "union",
            "values": [
              {
                "kind": "literal",
                "value": "default"
              },
              {
                "kind": "literal",
                "value": "outline"
              }
            ]
          },
          "default": "default",
          "description": "Visual style variant."
        },
        {
          "name": "size",
          "type": {
            "kind": "union",
            "values": [
              {
                "kind": "literal",
                "value": "default"
              },
              {
                "kind": "literal",
                "value": "sm"
              },
              {
                "kind": "literal",
                "value": "lg"
              }
            ]
          },
          "default": "default",
          "description": "Size variant."
        },
        {
          "name": "class",
          "type": {
            "kind": "primitive",
            "name": "string"
          },
          "default": "",
          "description": "CSS class names for the toggle."
        },
        {
          "name": "pressedChange",
          "type": {
            "kind": "function",
            "signature": "(pressed: boolean) => void"
          },
          "description": "Emitted when the pressed state changes."
        }
      ]
    },
    "toggle-group": {
      "name": "Toggle Group",
      "selector": "ui-toggle-group",
      "type": "interactive",
      "description": "A set of two-state buttons that can be toggled on or off",
      "files": ["toggle-group.component.ts", "index.ts"],
      "dependencies": ["@radix-ng/primitives"],
      "peerDependencies": [],
      "exports": ["ToggleGroupComponent", "ToggleGroupItemComponent"],
      "category": "interactive",
      "props": [
        {
          "name": "type",
          "type": {
            "kind": "union",
            "values": [
              {
                "kind": "literal",
                "value": "single"
              },
              {
                "kind": "literal",
                "value": "multiple"
              }
            ]
          },
          "default": "single",
          "description": "Selection behavior for the group."
        },
        {
          "name": "value",
          "type": {
            "kind": "union",
            "values": [
              {
                "kind": "primitive",
                "name": "string"
              },
              {
                "kind": "array",
                "of": {
                  "kind": "primitive",
                  "name": "string"
                }
              }
            ]
          },
          "description": "Controlled selected value or values."
        },
        {
          "name": "variant",
          "type": {
            "kind": "union",
            "values": [
              {
                "kind": "literal",
                "value": "default"
              },
              {
                "kind": "literal",
                "value": "outline"
              }
            ]
          },
          "default": "default",
          "description": "Shared visual style variant for items."
        },
        {
          "name": "size",
          "type": {
            "kind": "union",
            "values": [
              {
                "kind": "literal",
                "value": "default"
              },
              {
                "kind": "literal",
                "value": "sm"
              },
              {
                "kind": "literal",
                "value": "lg"
              }
            ]
          },
          "default": "default",
          "description": "Shared size variant for items."
        },
        {
          "name": "class",
          "type": {
            "kind": "primitive",
            "name": "string"
          },
          "default": "",
          "description": "CSS class names for the group."
        },
        {
          "name": "valueChange",
          "type": {
            "kind": "function",
            "signature": "(value: string | string[]) => void"
          },
          "description": "Emitted when the selected value changes."
        }
      ],
      "children": [
        {
          "name": "ToggleGroupItem",
          "props": [
            {
              "name": "value",
              "type": {
                "kind": "primitive",
                "name": "string"
              },
              "description": "Unique item value."
            },
            {
              "name": "disabled",
              "type": {
                "kind": "primitive",
                "name": "boolean"
              },
              "default": false,
              "description": "Disables the item."
            },
            {
              "name": "variant",
              "type": {
                "kind": "union",
                "values": [
                  {
                    "kind": "literal",
                    "value": "default"
                  },
                  {
                    "kind": "literal",
                    "value": "outline"
                  }
                ]
              },
              "default": "default",
              "description": "Visual style override for the item."
            },
            {
              "name": "size",
              "type": {
                "kind": "union",
                "values": [
                  {
                    "kind": "literal",
                    "value": "default"
                  },
                  {
                    "kind": "literal",
                    "value": "sm"
                  },
                  {
                    "kind": "literal",
                    "value": "lg"
                  }
                ]
              },
              "default": "default",
              "description": "Size override for the item."
            },
            {
              "name": "class",
              "type": {
                "kind": "primitive",
                "name": "string"
              },
              "default": "",
              "description": "CSS class names for the item."
            }
          ]
        }
      ]
    },
    "resizable": {
      "name": "Resizable",
      "selector": "ui-resizable-panel-group",
      "type": "layout",
      "description": "Resizable panel group wrappers built on angular-split, normalized toward the shared group/panel/handle API.",
      "files": ["resizable.component.ts", "index.ts"],
      "dependencies": ["angular-split"],
      "peerDependencies": [],
      "exports": [
        "ResizablePanelGroupComponent",
        "ResizablePanelComponent",
        "ResizableHandleComponent"
      ],
      "category": "layout",
      "props": [],
      "children": [
        {
          "name": "ResizablePanelGroup",
          "props": [
            {
              "name": "direction",
              "type": {
                "kind": "union",
                "values": [
                  {
                    "kind": "literal",
                    "value": "horizontal"
                  },
                  {
                    "kind": "literal",
                    "value": "vertical"
                  }
                ]
              },
              "description": "Panel group layout direction.",
              "default": "horizontal"
            },
            {
              "name": "gutterSize",
              "type": {
                "kind": "primitive",
                "name": "number"
              },
              "description": "Gutter size in pixels used by the Angular wrapper.",
              "default": 10
            },
            {
              "name": "class",
              "type": {
                "kind": "primitive",
                "name": "string"
              },
              "description": "CSS class names for the panel group.",
              "default": ""
            },
            {
              "name": "layoutChange",
              "type": {
                "kind": "function",
                "signature": "(sizes: number[]) => void"
              },
              "description": "Event emitted when panel layout changes."
            }
          ]
        },
        {
          "name": "ResizablePanel",
          "props": [
            {
              "name": "defaultSize",
              "type": {
                "kind": "primitive",
                "name": "number"
              },
              "description": "Initial panel size percentage."
            },
            {
              "name": "size",
              "type": {
                "kind": "primitive",
                "name": "number"
              },
              "description": "Alias for initial panel size percentage kept for backward compatibility."
            },
            {
              "name": "minSize",
              "type": {
                "kind": "primitive",
                "name": "number"
              },
              "description": "Minimum panel size percentage."
            },
            {
              "name": "maxSize",
              "type": {
                "kind": "primitive",
                "name": "number"
              },
              "description": "Maximum panel size percentage."
            },
            {
              "name": "collapsible",
              "type": {
                "kind": "primitive",
                "name": "boolean"
              },
              "description": "Whether the panel can collapse.",
              "default": false
            },
            {
              "name": "collapsedSize",
              "type": {
                "kind": "primitive",
                "name": "number"
              },
              "description": "Size percentage when collapsed."
            },
            {
              "name": "order",
              "type": {
                "kind": "primitive",
                "name": "number"
              },
              "description": "Panel ordering index."
            },
            {
              "name": "class",
              "type": {
                "kind": "primitive",
                "name": "string"
              },
              "description": "CSS class names for the panel.",
              "default": ""
            }
          ]
        },
        {
          "name": "ResizableHandle",
          "props": [
            {
              "name": "disabled",
              "type": {
                "kind": "primitive",
                "name": "boolean"
              },
              "description": "Disables resizing through the handle.",
              "default": false
            },
            {
              "name": "withHandle",
              "type": {
                "kind": "primitive",
                "name": "boolean"
              },
              "description": "Show the grip handle affordance.",
              "default": false
            },
            {
              "name": "class",
              "type": {
                "kind": "primitive",
                "name": "string"
              },
              "description": "CSS class names for the resize handle.",
              "default": ""
            }
          ]
        }
      ]
    },
    "empty": {
      "name": "Empty",
      "selector": "ui-empty",
      "type": "feedback",
      "description": "Displays an empty state placeholder",
      "files": ["empty.component.ts", "index.ts"],
      "dependencies": [],
      "peerDependencies": [],
      "exports": ["EmptyComponent"],
      "category": "feedback",
      "props": [
        {
          "name": "class",
          "type": {
            "kind": "primitive",
            "name": "string"
          },
          "default": "",
          "description": "CSS class names for the container."
        },
        {
          "name": "description",
          "type": {
            "kind": "primitive",
            "name": "string"
          },
          "description": "Empty state description text."
        },
        {
          "name": "imageAlt",
          "type": {
            "kind": "primitive",
            "name": "string"
          },
          "default": "Empty",
          "description": "Accessible label for the default illustration."
        }
      ]
    },
    "skeleton": {
      "name": "Skeleton",
      "selector": "ui-skeleton",
      "type": "feedback",
      "description": "Use to show a placeholder while content is loading",
      "files": ["skeleton.component.ts", "index.ts"],
      "dependencies": [],
      "peerDependencies": [],
      "exports": ["SkeletonComponent"],
      "category": "feedback",
      "props": [
        {
          "name": "variant",
          "type": {
            "kind": "union",
            "values": [
              {
                "kind": "literal",
                "value": "default"
              },
              {
                "kind": "literal",
                "value": "circle"
              },
              {
                "kind": "literal",
                "value": "text"
              }
            ]
          },
          "default": "default",
          "description": "Skeleton shape variant."
        },
        {
          "name": "class",
          "type": {
            "kind": "primitive",
            "name": "string"
          },
          "default": "",
          "description": "CSS class names for the skeleton."
        }
      ]
    },
    "spinner": {
      "name": "Spinner",
      "selector": "ui-spinner",
      "type": "feedback",
      "description": "Animated loading spinner.",
      "files": ["spinner.component.ts", "index.ts"],
      "dependencies": [],
      "peerDependencies": [],
      "exports": ["SpinnerComponent"],
      "category": "feedback",
      "props": [
        {
          "name": "size",
          "type": {
            "kind": "union",
            "values": [
              {
                "kind": "literal",
                "value": "sm"
              },
              {
                "kind": "literal",
                "value": "default"
              },
              {
                "kind": "literal",
                "value": "lg"
              }
            ]
          },
          "default": "default",
          "description": "Visual size of the spinner."
        },
        {
          "name": "label",
          "type": {
            "kind": "primitive",
            "name": "string"
          },
          "default": "Loading...",
          "description": "Accessible label announced to assistive technology."
        },
        {
          "name": "class",
          "type": {
            "kind": "primitive",
            "name": "string"
          },
          "default": "",
          "description": "CSS class names for the spinner."
        }
      ]
    },
    "kbd": {
      "name": "Kbd",
      "selector": "ui-kbd",
      "type": "data-display",
      "description": "Displays keyboard key combinations",
      "files": ["kbd.component.ts", "index.ts"],
      "dependencies": [],
      "peerDependencies": [],
      "exports": ["KbdComponent"],
      "category": "data-display",
      "props": [
        {
          "name": "class",
          "type": {
            "kind": "primitive",
            "name": "string"
          },
          "default": "",
          "description": "CSS class names for the kbd element."
        },
        {
          "name": "size",
          "type": {
            "kind": "union",
            "values": [
              {
                "kind": "literal",
                "value": "sm"
              },
              {
                "kind": "literal",
                "value": "default"
              },
              {
                "kind": "literal",
                "value": "lg"
              }
            ]
          },
          "default": "default",
          "description": "Size variant."
        }
      ]
    },
    "typography": {
      "name": "Typography",
      "selector": "ui-typography",
      "type": "data-display",
      "description": "Text formatting and typography components",
      "files": ["typography.component.ts", "index.ts"],
      "dependencies": [],
      "peerDependencies": [],
      "exports": ["TypographyComponent"],
      "category": "data-display",
      "props": [
        {
          "name": "variant",
          "type": {
            "kind": "union",
            "values": [
              {
                "kind": "literal",
                "value": "h1"
              },
              {
                "kind": "literal",
                "value": "h2"
              },
              {
                "kind": "literal",
                "value": "h3"
              },
              {
                "kind": "literal",
                "value": "h4"
              },
              {
                "kind": "literal",
                "value": "p"
              },
              {
                "kind": "literal",
                "value": "blockquote"
              },
              {
                "kind": "literal",
                "value": "code"
              },
              {
                "kind": "literal",
                "value": "lead"
              },
              {
                "kind": "literal",
                "value": "large"
              },
              {
                "kind": "literal",
                "value": "small"
              },
              {
                "kind": "literal",
                "value": "muted"
              }
            ]
          },
          "default": "p",
          "description": "Typography style variant."
        },
        {
          "name": "class",
          "type": {
            "kind": "primitive",
            "name": "string"
          },
          "default": "",
          "description": "CSS class names for the rendered element."
        }
      ]
    },
    "pagination": {
      "name": "Pagination",
      "selector": "ui-pagination",
      "type": "navigation",
      "description": "Page navigation with previous, next, and page numbers",
      "files": ["pagination.component.ts", "index.ts"],
      "dependencies": [],
      "peerDependencies": [],
      "exports": ["PaginationComponent"],
      "category": "navigation",
      "props": [
        {
          "name": "class",
          "type": {
            "kind": "primitive",
            "name": "string"
          },
          "default": "",
          "description": "CSS class names for the pagination nav."
        },
        {
          "name": "currentPage",
          "type": {
            "kind": "primitive",
            "name": "number"
          },
          "default": 1,
          "description": "Current page number, 1-indexed."
        },
        {
          "name": "totalPages",
          "type": {
            "kind": "primitive",
            "name": "number"
          },
          "default": 1,
          "description": "Total number of pages."
        },
        {
          "name": "siblingCount",
          "type": {
            "kind": "primitive",
            "name": "number"
          },
          "default": 1,
          "description": "Number of sibling pages shown around the current page."
        },
        {
          "name": "pageChange",
          "type": {
            "kind": "function",
            "signature": "(page: number) => void"
          },
          "description": "Emitted when the page changes."
        }
      ]
    },
    "table": {
      "name": "Table",
      "selector": "ui-table",
      "type": "data-display",
      "description": "A responsive table component for displaying data",
      "files": ["table.component.ts", "index.ts"],
      "dependencies": [],
      "peerDependencies": [],
      "exports": [
        "TableComponent",
        "TableHeaderDirective",
        "TableBodyDirective",
        "TableFooterDirective",
        "TableRowDirective",
        "TableHeadDirective",
        "TableCellDirective",
        "TableCaptionDirective"
      ],
      "category": "data-display",
      "props": [
        {
          "name": "class",
          "type": {
            "kind": "primitive",
            "name": "string"
          },
          "default": "",
          "description": "CSS class names for the table element."
        }
      ],
      "children": [
        {
          "name": "TableHeaderDirective",
          "props": [
            {
              "name": "class",
              "type": {
                "kind": "primitive",
                "name": "string"
              },
              "default": "",
              "description": "CSS class names for the table header section."
            }
          ]
        },
        {
          "name": "TableBodyDirective",
          "props": [
            {
              "name": "class",
              "type": {
                "kind": "primitive",
                "name": "string"
              },
              "default": "",
              "description": "CSS class names for the table body section."
            }
          ]
        },
        {
          "name": "TableFooterDirective",
          "props": [
            {
              "name": "class",
              "type": {
                "kind": "primitive",
                "name": "string"
              },
              "default": "",
              "description": "CSS class names for the table footer section."
            }
          ]
        },
        {
          "name": "TableRowDirective",
          "props": [
            {
              "name": "class",
              "type": {
                "kind": "primitive",
                "name": "string"
              },
              "default": "",
              "description": "CSS class names for the table row."
            }
          ]
        },
        {
          "name": "TableHeadDirective",
          "props": [
            {
              "name": "class",
              "type": {
                "kind": "primitive",
                "name": "string"
              },
              "default": "",
              "description": "CSS class names for the header cell."
            }
          ]
        },
        {
          "name": "TableCellDirective",
          "props": [
            {
              "name": "class",
              "type": {
                "kind": "primitive",
                "name": "string"
              },
              "default": "",
              "description": "CSS class names for the data cell."
            }
          ]
        },
        {
          "name": "TableCaptionDirective",
          "props": [
            {
              "name": "class",
              "type": {
                "kind": "primitive",
                "name": "string"
              },
              "default": "",
              "description": "CSS class names for the caption."
            }
          ]
        }
      ]
    },
    "calendar": {
      "name": "Calendar",
      "selector": "ui-calendar",
      "type": "form",
      "description": "A date picker calendar component",
      "files": ["calendar.component.ts", "index.ts"],
      "dependencies": [],
      "peerDependencies": [],
      "exports": ["CalendarComponent"],
      "category": "form",
      "props": [
        {
          "name": "selectedDate",
          "type": {
            "kind": "custom",
            "name": "Date"
          },
          "description": "Currently selected date."
        },
        {
          "name": "class",
          "type": {
            "kind": "primitive",
            "name": "string"
          },
          "default": "",
          "description": "CSS class names for the calendar root."
        },
        {
          "name": "dateChange",
          "type": {
            "kind": "function",
            "signature": "(date: Date) => void"
          },
          "description": "Emitted when the selected date changes."
        }
      ]
    },
    "calendar-range": {
      "name": "Calendar Range",
      "selector": "ui-calendar-range",
      "type": "form",
      "description": "A date range picker calendar component",
      "files": ["calendar-range.component.ts", "index.ts"],
      "dependencies": [],
      "peerDependencies": [],
      "exports": ["CalendarRangeComponent"],
      "category": "form",
      "props": [
        {
          "name": "class",
          "type": {
            "kind": "primitive",
            "name": "string"
          },
          "description": "CSS class names for the calendar root.",
          "default": ""
        },
        {
          "name": "range",
          "type": {
            "kind": "custom",
            "name": "DateRange"
          },
          "description": "Selected date range with start and end values.",
          "default": "{ start: null, end: null }"
        },
        {
          "name": "rangeChange",
          "type": {
            "kind": "function",
            "signature": "(range: DateRange) => void"
          },
          "description": "Event emitted when the selected range changes."
        }
      ]
    },
    "command": {
      "name": "Command",
      "selector": "ui-command",
      "type": "navigation",
      "description": "Command palette for keyboard-first navigation and search",
      "files": ["command.component.ts", "index.ts"],
      "dependencies": [],
      "peerDependencies": [],
      "exports": ["CommandComponent"],
      "category": "navigation",
      "props": [
        {
          "name": "class",
          "type": {
            "kind": "primitive",
            "name": "string"
          },
          "description": "CSS class names for the command root.",
          "default": ""
        },
        {
          "name": "placeholder",
          "type": {
            "kind": "primitive",
            "name": "string"
          },
          "description": "Placeholder text for the search input.",
          "default": "Type a command or search..."
        },
        {
          "name": "search",
          "type": {
            "kind": "function",
            "signature": "(value: string) => void"
          },
          "description": "Event emitted when the search value changes."
        }
      ]
    },
    "sheet": {
      "name": "Sheet",
      "selector": "ui-sheet",
      "type": "layout",
      "description": "Slide-over panel that slides in from the edge of the screen",
      "files": ["sheet.component.ts", "index.ts"],
      "dependencies": [],
      "peerDependencies": [],
      "exports": ["SheetComponent"],
      "category": "layout",
      "props": [
        {
          "name": "open",
          "type": {
            "kind": "primitive",
            "name": "boolean"
          },
          "default": false,
          "description": "Controlled open state."
        },
        {
          "name": "side",
          "type": {
            "kind": "union",
            "values": [
              {
                "kind": "literal",
                "value": "top"
              },
              {
                "kind": "literal",
                "value": "right"
              },
              {
                "kind": "literal",
                "value": "bottom"
              },
              {
                "kind": "literal",
                "value": "left"
              }
            ]
          },
          "default": "right",
          "description": "Side from which the sheet enters."
        },
        {
          "name": "class",
          "type": {
            "kind": "primitive",
            "name": "string"
          },
          "default": "",
          "description": "CSS class names for the sheet panel."
        },
        {
          "name": "openChange",
          "type": {
            "kind": "function",
            "signature": "(open: boolean) => void"
          },
          "description": "Emitted when the sheet requests to close."
        }
      ]
    },
    "toolbar": {
      "name": "Toolbar",
      "selector": "ui-toolbar",
      "type": "layout",
      "description": "A container for grouping a set of controls",
      "files": ["toolbar.component.ts", "index.ts"],
      "dependencies": [],
      "peerDependencies": [],
      "exports": ["ToolbarComponent"],
      "category": "layout",
      "props": [
        {
          "name": "class",
          "type": {
            "kind": "primitive",
            "name": "string"
          },
          "default": "",
          "description": "CSS class names for the toolbar root."
        }
      ]
    },
    "tags-input": {
      "name": "Tags Input",
      "selector": "ui-tags-input",
      "type": "form",
      "description": "Input field for entering multiple tags or values",
      "files": ["tags-input.component.ts", "index.ts"],
      "dependencies": [],
      "peerDependencies": [],
      "exports": ["TagsInputComponent"],
      "category": "form",
      "props": [
        {
          "name": "class",
          "type": {
            "kind": "primitive",
            "name": "string"
          },
          "description": "CSS classes applied to the tags container.",
          "default": ""
        },
        {
          "name": "value",
          "type": {
            "kind": "custom",
            "name": "string[]"
          },
          "description": "Current tag values.",
          "default": "[]"
        },
        {
          "name": "placeholder",
          "type": {
            "kind": "primitive",
            "name": "string"
          },
          "description": "Placeholder text for the input.",
          "default": "Add tag..."
        },
        {
          "name": "valueChange",
          "type": {
            "kind": "function",
            "signature": "(value: string[]) => void"
          },
          "description": "Event emitted when the tag list changes."
        },
        {
          "name": "tagAdd",
          "type": {
            "kind": "function",
            "signature": "(tag: string) => void"
          },
          "description": "Event emitted when a tag is added."
        },
        {
          "name": "tagRemove",
          "type": {
            "kind": "function",
            "signature": "(tag: string) => void"
          },
          "description": "Event emitted when a tag is removed."
        }
      ]
    },
    "card": {
      "name": "Card",
      "selector": "ui-card",
      "type": "layout",
      "description": "Displays a card with optional header, content, and footer",
      "files": ["card.component.ts", "index.ts"],
      "dependencies": [],
      "peerDependencies": [],
      "exports": [
        "CardComponent",
        "CardHeaderComponent",
        "CardTitleComponent",
        "CardDescriptionComponent",
        "CardContentComponent",
        "CardFooterComponent"
      ],
      "category": "layout",
      "props": [
        {
          "name": "class",
          "type": {
            "kind": "primitive",
            "name": "string"
          },
          "default": "",
          "description": "CSS class names for the card host."
        }
      ],
      "children": [
        {
          "name": "CardHeader",
          "props": [
            {
              "name": "class",
              "type": {
                "kind": "primitive",
                "name": "string"
              },
              "default": "",
              "description": "CSS class names for the header."
            }
          ]
        },
        {
          "name": "CardTitle",
          "props": [
            {
              "name": "class",
              "type": {
                "kind": "primitive",
                "name": "string"
              },
              "default": "",
              "description": "CSS class names for the title."
            }
          ]
        },
        {
          "name": "CardDescription",
          "props": [
            {
              "name": "class",
              "type": {
                "kind": "primitive",
                "name": "string"
              },
              "default": "",
              "description": "CSS class names for the description."
            }
          ]
        },
        {
          "name": "CardContent",
          "props": [
            {
              "name": "class",
              "type": {
                "kind": "primitive",
                "name": "string"
              },
              "default": "",
              "description": "CSS class names for the content area."
            }
          ]
        },
        {
          "name": "CardFooter",
          "props": [
            {
              "name": "class",
              "type": {
                "kind": "primitive",
                "name": "string"
              },
              "default": "",
              "description": "CSS class names for the footer."
            }
          ]
        }
      ]
    },
    "badge": {
      "name": "Badge",
      "selector": "ui-badge",
      "type": "feedback",
      "description": "Displays a badge or a component that looks like a badge",
      "files": ["badge.component.ts", "variants.ts", "index.ts"],
      "dependencies": ["class-variance-authority"],
      "peerDependencies": [],
      "exports": ["BadgeComponent"],
      "category": "feedback",
      "props": [
        {
          "name": "variant",
          "type": {
            "kind": "union",
            "values": [
              {
                "kind": "literal",
                "value": "default"
              },
              {
                "kind": "literal",
                "value": "secondary"
              },
              {
                "kind": "literal",
                "value": "destructive"
              },
              {
                "kind": "literal",
                "value": "outline"
              }
            ]
          },
          "default": "default",
          "description": "Visual style variant for the badge."
        },
        {
          "name": "class",
          "type": {
            "kind": "primitive",
            "name": "string"
          },
          "default": "",
          "description": "CSS class names for the badge host."
        }
      ]
    },
    "alert": {
      "name": "Alert",
      "selector": "ui-alert",
      "type": "feedback",
      "description": "Displays a callout for user attention",
      "files": ["alert.component.ts", "variants.ts", "index.ts"],
      "dependencies": ["class-variance-authority"],
      "peerDependencies": [],
      "exports": [
        "AlertComponent",
        "AlertTitleComponent",
        "AlertDescriptionComponent"
      ],
      "category": "feedback",
      "props": [
        {
          "name": "variant",
          "type": {
            "kind": "union",
            "values": [
              {
                "kind": "literal",
                "value": "default"
              },
              {
                "kind": "literal",
                "value": "destructive"
              }
            ]
          },
          "default": "default",
          "description": "Visual style variant for the alert."
        },
        {
          "name": "class",
          "type": {
            "kind": "primitive",
            "name": "string"
          },
          "default": "",
          "description": "CSS class names for the alert host."
        }
      ],
      "children": [
        {
          "name": "AlertTitle",
          "props": [
            {
              "name": "class",
              "type": {
                "kind": "primitive",
                "name": "string"
              },
              "default": "",
              "description": "CSS class names for the alert title."
            }
          ]
        },
        {
          "name": "AlertDescription",
          "props": [
            {
              "name": "class",
              "type": {
                "kind": "primitive",
                "name": "string"
              },
              "default": "",
              "description": "CSS class names for the alert description."
            }
          ]
        }
      ]
    },
    "breadcrumb": {
      "name": "Breadcrumb",
      "selector": "ui-breadcrumb",
      "type": "navigation",
      "description": "Displays the path to the current resource using a hierarchy of links",
      "files": ["breadcrumb.component.ts", "index.ts"],
      "dependencies": [],
      "peerDependencies": [],
      "exports": [
        "BreadcrumbComponent",
        "BreadcrumbListComponent",
        "BreadcrumbItemComponent",
        "BreadcrumbLinkComponent",
        "BreadcrumbPageComponent",
        "BreadcrumbSeparatorComponent",
        "BreadcrumbEllipsisComponent"
      ],
      "category": "navigation",
      "props": [],
      "children": [
        {
          "name": "BreadcrumbList",
          "props": [
            {
              "name": "class",
              "type": {
                "kind": "primitive",
                "name": "string"
              },
              "default": "",
              "description": "CSS class names for the list."
            }
          ]
        },
        {
          "name": "BreadcrumbItem",
          "props": [
            {
              "name": "class",
              "type": {
                "kind": "primitive",
                "name": "string"
              },
              "default": "",
              "description": "CSS class names for the item."
            }
          ]
        },
        {
          "name": "BreadcrumbLink",
          "props": [
            {
              "name": "class",
              "type": {
                "kind": "primitive",
                "name": "string"
              },
              "default": "",
              "description": "CSS class names for the link."
            }
          ]
        },
        {
          "name": "BreadcrumbPage",
          "props": [
            {
              "name": "class",
              "type": {
                "kind": "primitive",
                "name": "string"
              },
              "default": "",
              "description": "CSS class names for the current page label."
            }
          ]
        },
        {
          "name": "BreadcrumbSeparator",
          "props": [
            {
              "name": "class",
              "type": {
                "kind": "primitive",
                "name": "string"
              },
              "default": "",
              "description": "CSS class names for the separator."
            },
            {
              "name": "hasContent",
              "type": {
                "kind": "primitive",
                "name": "boolean"
              },
              "default": false,
              "description": "Whether projected content is provided instead of the default chevron icon."
            }
          ]
        },
        {
          "name": "BreadcrumbEllipsis",
          "props": [
            {
              "name": "class",
              "type": {
                "kind": "primitive",
                "name": "string"
              },
              "default": "",
              "description": "CSS class names for the ellipsis."
            }
          ]
        }
      ]
    },
    "toast": {
      "name": "Toast",
      "selector": "ui-toast",
      "type": "feedback",
      "description": "A succinct message that is displayed temporarily",
      "files": ["toast.component.ts", "index.ts"],
      "dependencies": ["ngx-sonner"],
      "peerDependencies": [],
      "exports": ["ToastComponent"],
      "category": "feedback",
      "props": [
        {
          "name": "theme",
          "type": {
            "kind": "union",
            "values": [
              {
                "kind": "literal",
                "value": "light"
              },
              {
                "kind": "literal",
                "value": "dark"
              },
              {
                "kind": "literal",
                "value": "system"
              }
            ]
          },
          "default": "light",
          "description": "Visual theme for the toaster."
        }
      ]
    },
    "form": {
      "name": "Form",
      "selector": "[uiForm]",
      "type": "form",
      "description": "Building forms with proper validation and accessibility",
      "files": ["form.component.ts", "index.ts"],
      "dependencies": [],
      "peerDependencies": [],
      "exports": [
        "FormDirective",
        "FormItemComponent",
        "FormLabelComponent",
        "FormDescriptionComponent",
        "FormMessageComponent"
      ],
      "category": "form",
      "props": [
        {
          "name": "class",
          "type": {
            "kind": "primitive",
            "name": "string"
          },
          "default": "",
          "description": "CSS class names applied to the host form element."
        }
      ],
      "children": [
        {
          "name": "FormItem",
          "props": [
            {
              "name": "class",
              "type": {
                "kind": "primitive",
                "name": "string"
              },
              "default": "",
              "description": "CSS class names for the form item container."
            }
          ]
        },
        {
          "name": "FormLabel",
          "props": [
            {
              "name": "class",
              "type": {
                "kind": "primitive",
                "name": "string"
              },
              "default": "",
              "description": "CSS class names for the label."
            },
            {
              "name": "error",
              "type": {
                "kind": "primitive",
                "name": "boolean"
              },
              "default": false,
              "description": "Applies error styling to the label."
            }
          ]
        },
        {
          "name": "FormDescription",
          "props": [
            {
              "name": "class",
              "type": {
                "kind": "primitive",
                "name": "string"
              },
              "default": "",
              "description": "CSS class names for the description."
            }
          ]
        },
        {
          "name": "FormMessage",
          "props": [
            {
              "name": "class",
              "type": {
                "kind": "primitive",
                "name": "string"
              },
              "default": "",
              "description": "CSS class names for the message."
            }
          ]
        }
      ]
    },
    "gauge-chart": {
      "name": "GaugeChart",
      "selector": "ui-gauge-chart",
      "type": "chart",
      "description": "Display data as a gauge chart with customizable ranges and styling",
      "files": ["gauge-chart.component.ts", "types.ts", "utils.ts", "index.ts"],
      "dependencies": ["ngx-echarts", "echarts"],
      "peerDependencies": [],
      "exports": ["GaugeChartComponent"],
      "category": "charts",
      "props": [
        {
          "name": "value",
          "type": {
            "kind": "primitive",
            "name": "number"
          },
          "description": "Current gauge value."
        },
        {
          "name": "height",
          "type": {
            "kind": "primitive",
            "name": "number"
          },
          "description": "Chart height in pixels.",
          "default": 300
        },
        {
          "name": "width",
          "type": {
            "kind": "custom",
            "name": "number | string"
          },
          "description": "Chart width for fixed or responsive layouts.",
          "default": "100%"
        },
        {
          "name": "theme",
          "type": {
            "kind": "union",
            "values": [
              {
                "kind": "literal",
                "value": "light"
              },
              {
                "kind": "literal",
                "value": "dark"
              }
            ]
          },
          "description": "Theme mode used by the chart.",
          "default": "light"
        },
        {
          "name": "min",
          "type": {
            "kind": "primitive",
            "name": "number"
          },
          "description": "Minimum gauge value.",
          "default": 0
        },
        {
          "name": "max",
          "type": {
            "kind": "primitive",
            "name": "number"
          },
          "description": "Maximum gauge value.",
          "default": 100
        },
        {
          "name": "startAngle",
          "type": {
            "kind": "primitive",
            "name": "number"
          },
          "description": "Start angle for the gauge arc.",
          "default": 225
        },
        {
          "name": "endAngle",
          "type": {
            "kind": "primitive",
            "name": "number"
          },
          "description": "End angle for the gauge arc.",
          "default": -45
        },
        {
          "name": "splitNumber",
          "type": {
            "kind": "primitive",
            "name": "number"
          },
          "description": "Number of gauge split lines.",
          "default": 5
        },
        {
          "name": "showProgress",
          "type": {
            "kind": "primitive",
            "name": "boolean"
          },
          "description": "Whether to show the progress arc.",
          "default": true
        },
        {
          "name": "showPointer",
          "type": {
            "kind": "primitive",
            "name": "boolean"
          },
          "description": "Whether to show the gauge pointer.",
          "default": true
        },
        {
          "name": "title",
          "type": {
            "kind": "primitive",
            "name": "string"
          },
          "description": "Optional gauge title."
        },
        {
          "name": "unit",
          "type": {
            "kind": "primitive",
            "name": "string"
          },
          "description": "Optional value unit."
        },
        {
          "name": "zones",
          "type": {
            "kind": "custom",
            "name": "Array<{ from: number; to: number; color: string }>"
          },
          "description": "Color ranges for the gauge."
        },
        {
          "name": "color",
          "type": {
            "kind": "custom",
            "name": "string | string[]"
          },
          "description": "Single color or gradient colors for the gauge."
        },
        {
          "name": "formatter",
          "type": {
            "kind": "function",
            "signature": "(value: number) => string"
          },
          "description": "Custom formatter for the displayed value."
        },
        {
          "name": "animation",
          "type": {
            "kind": "primitive",
            "name": "boolean"
          },
          "description": "Whether chart animations are enabled.",
          "default": true
        },
        {
          "name": "loading",
          "type": {
            "kind": "primitive",
            "name": "boolean"
          },
          "description": "Whether the loading state is shown.",
          "default": false
        },
        {
          "name": "emptyText",
          "type": {
            "kind": "primitive",
            "name": "string"
          },
          "description": "Text shown when there is no data.",
          "default": "No data available"
        },
        {
          "name": "class",
          "type": {
            "kind": "primitive",
            "name": "string"
          },
          "description": "CSS classes applied to the chart container.",
          "default": ""
        }
      ]
    }
  },
  "groups": {
    "form": {
      "name": "Form Components",
      "components": [
        "button",
        "input",
        "label",
        "checkbox",
        "select",
        "radio-group",
        "switch",
        "slider",
        "textarea",
        "calendar",
        "calendar-range",
        "tags-input"
      ]
    },
    "layout": {
      "name": "Layout Components",
      "components": [
        "accordion",
        "collapsible",
        "separator",
        "scroll-area",
        "aspect-ratio",
        "resizable",
        "sheet",
        "toolbar"
      ]
    },
    "interactive": {
      "name": "Interactive Components",
      "components": ["toggle", "toggle-group"]
    },
    "navigation": {
      "name": "Navigation Components",
      "components": [
        "tabs",
        "dropdown-menu",
        "menubar",
        "navigation-menu",
        "context-menu",
        "pagination",
        "command"
      ]
    },
    "modal-overlay": {
      "name": "Modal & Overlay Components",
      "components": [
        "popover",
        "tooltip",
        "dialog",
        "alert-dialog",
        "hover-card"
      ]
    },
    "feedback": {
      "name": "Feedback Components",
      "components": ["progress", "empty", "skeleton"]
    },
    "data-display": {
      "name": "Data Display Components",
      "components": ["kbd", "typography", "table", "avatar"]
    },
    "charts": {
      "name": "Chart Components",
      "components": [
        "line-chart",
        "bar-chart",
        "pie-chart",
        "donut-chart",
        "area-chart",
        "radar-chart",
        "scatter-chart",
        "mixed-chart"
      ]
    }
  }
}
