{
  "$schema": "../schemas/registry-schema.json",
  "name": "vue",
  "components": {
    "button": {
      "name": "Button",
      "type": "form",
      "description": "Displays a button or a component that looks like a button",
      "dependencies": [
        "class-variance-authority"
      ],
      "devDependencies": [],
      "registryDependencies": [],
      "files": [
        "Button.vue",
        "index.ts",
        "variants.ts"
      ],
      "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": "asChild",
          "type": {
            "kind": "primitive",
            "name": "boolean"
          },
          "default": false,
          "description": "Render as child via Radix Primitive."
        },
        {
          "name": "as",
          "type": {
            "kind": "custom",
            "name": "AsTag | Component"
          },
          "default": "button",
          "description": "Element or component to render."
        },
        {
          "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."
        }
      ]
    },
    "input": {
      "name": "Input",
      "type": "form",
      "description": "Displays a form input field or a component that looks like an input field",
      "dependencies": [],
      "devDependencies": [],
      "registryDependencies": [],
      "files": [
        "Input.vue",
        "index.ts"
      ],
      "category": "form",
      "props": [
        {
          "name": "type",
          "type": {
            "kind": "primitive",
            "name": "string"
          },
          "default": "text",
          "description": "Input type."
        },
        {
          "name": "modelValue",
          "type": {
            "kind": "union",
            "values": [
              "string",
              "number"
            ]
          },
          "description": "Controlled value."
        },
        {
          "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": "placeholder",
          "type": {
            "kind": "primitive",
            "name": "string"
          },
          "description": "Placeholder text."
        },
        {
          "name": "update:modelValue",
          "type": {
            "kind": "function",
            "signature": "(value: string | number) => void"
          },
          "description": "Emitted when the value changes."
        }
      ]
    },
    "label": {
      "name": "Label",
      "type": "form",
      "description": "Renders an accessible label associated with controls",
      "dependencies": [
        "radix-vue"
      ],
      "devDependencies": [],
      "registryDependencies": [],
      "files": [
        "Label.vue",
        "index.ts"
      ],
      "category": "form",
      "props": [
        {
          "name": "for",
          "type": {
            "kind": "primitive",
            "name": "string"
          },
          "description": "Id of the element the label is associated with."
        },
        {
          "name": "asChild",
          "type": {
            "kind": "primitive",
            "name": "boolean"
          },
          "default": false,
          "description": "Render as child via Radix label primitive."
        },
        {
          "name": "class",
          "type": {
            "kind": "primitive",
            "name": "string"
          },
          "default": "",
          "description": "CSS class names for the label."
        }
      ]
    },
    "select": {
      "name": "Select",
      "type": "form",
      "description": "Displays a list of options for the user to pick from triggered by a button",
      "dependencies": [
        "radix-vue"
      ],
      "devDependencies": [],
      "registryDependencies": [],
      "files": [
        "Select.vue",
        "SelectContent.vue",
        "SelectItem.vue",
        "SelectTrigger.vue",
        "index.ts"
      ],
      "category": "form",
      "props": [
        {
          "name": "modelValue",
          "type": {
            "kind": "primitive",
            "name": "string"
          },
          "description": "Controlled selected value."
        },
        {
          "name": "open",
          "type": {
            "kind": "primitive",
            "name": "boolean"
          },
          "description": "Controlled open state."
        },
        {
          "name": "defaultOpen",
          "type": {
            "kind": "primitive",
            "name": "boolean"
          },
          "description": "Uncontrolled initial open state."
        },
        {
          "name": "defaultValue",
          "type": {
            "kind": "primitive",
            "name": "string"
          },
          "description": "Uncontrolled initial value."
        },
        {
          "name": "dir",
          "type": {
            "kind": "union",
            "values": [
              "ltr",
              "rtl"
            ]
          },
          "description": "Reading direction."
        },
        {
          "name": "name",
          "type": {
            "kind": "primitive",
            "name": "string"
          },
          "description": "Name for form submission."
        },
        {
          "name": "disabled",
          "type": {
            "kind": "primitive",
            "name": "boolean"
          },
          "default": false,
          "description": "Disables the select."
        },
        {
          "name": "required",
          "type": {
            "kind": "primitive",
            "name": "boolean"
          },
          "description": "Requires a value before form submission."
        },
        {
          "name": "autocomplete",
          "type": {
            "kind": "primitive",
            "name": "string"
          },
          "description": "Native input autocomplete."
        },
        {
          "name": "update:modelValue",
          "type": {
            "kind": "function",
            "signature": "(value: string) => void"
          },
          "description": "Emitted when the value changes."
        },
        {
          "name": "update:open",
          "type": {
            "kind": "function",
            "signature": "(open: boolean) => void"
          },
          "description": "Emitted when the open state changes."
        }
      ],
      "children": [
        {
          "name": "SelectTrigger",
          "props": [
            {
              "name": "class",
              "type": {
                "kind": "primitive",
                "name": "string"
              },
              "default": "",
              "description": "CSS class names for the trigger."
            }
          ]
        },
        {
          "name": "SelectContent",
          "props": [
            {
              "name": "position",
              "type": {
                "kind": "union",
                "values": [
                  "item-aligned",
                  "popper"
                ]
              },
              "default": "popper",
              "description": "Positioning strategy."
            },
            {
              "name": "class",
              "type": {
                "kind": "primitive",
                "name": "string"
              },
              "default": "",
              "description": "CSS class names for the content."
            }
          ]
        },
        {
          "name": "SelectItem",
          "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": "class",
              "type": {
                "kind": "primitive",
                "name": "string"
              },
              "default": "",
              "description": "CSS class names for the item."
            }
          ]
        }
      ]
    },
    "checkbox": {
      "name": "Checkbox",
      "type": "form",
      "description": "A control that allows the user to toggle between checked and not checked",
      "dependencies": [
        "radix-vue"
      ],
      "devDependencies": [],
      "registryDependencies": [],
      "files": [
        "Checkbox.vue",
        "index.ts"
      ],
      "category": "form",
      "props": [
        {
          "name": "checked",
          "type": {
            "kind": "union",
            "values": [
              "boolean",
              "indeterminate"
            ]
          },
          "description": "Controlled checked state."
        },
        {
          "name": "defaultChecked",
          "type": {
            "kind": "union",
            "values": [
              "boolean",
              "indeterminate"
            ]
          },
          "description": "Uncontrolled initial checked state."
        },
        {
          "name": "disabled",
          "type": {
            "kind": "primitive",
            "name": "boolean"
          },
          "default": false,
          "description": "Disables the checkbox."
        },
        {
          "name": "required",
          "type": {
            "kind": "primitive",
            "name": "boolean"
          },
          "description": "Requires a value before form submission."
        },
        {
          "name": "name",
          "type": {
            "kind": "primitive",
            "name": "string"
          },
          "description": "Name for form submission."
        },
        {
          "name": "value",
          "type": {
            "kind": "primitive",
            "name": "string"
          },
          "default": "on",
          "description": "Value for form submission."
        },
        {
          "name": "id",
          "type": {
            "kind": "primitive",
            "name": "string"
          },
          "description": "Id of the checkbox."
        },
        {
          "name": "class",
          "type": {
            "kind": "primitive",
            "name": "string"
          },
          "default": "",
          "description": "CSS class names for the checkbox."
        },
        {
          "name": "update:checked",
          "type": {
            "kind": "function",
            "signature": "(checked: boolean | 'indeterminate') => void"
          },
          "description": "Emitted when the checked state changes."
        }
      ],
      "children": [
        {
          "name": "CheckboxIndicator",
          "props": [
            {
              "name": "class",
              "type": {
                "kind": "primitive",
                "name": "string"
              },
              "default": "",
              "description": "CSS class names for the indicator."
            }
          ]
        }
      ]
    },
    "radio-group": {
      "name": "Radio Group",
      "type": "form",
      "description": "A set of checkable buttons where no more than one of the buttons can be checked at a time",
      "dependencies": [
        "radix-vue"
      ],
      "devDependencies": [],
      "registryDependencies": [],
      "files": [
        "RadioGroup.vue",
        "RadioGroupItem.vue",
        "index.ts"
      ],
      "category": "form",
      "props": [
        {
          "name": "modelValue",
          "type": {
            "kind": "primitive",
            "name": "string"
          },
          "description": "Controlled selected value."
        },
        {
          "name": "defaultValue",
          "type": {
            "kind": "primitive",
            "name": "string"
          },
          "description": "Uncontrolled initial value."
        },
        {
          "name": "disabled",
          "type": {
            "kind": "primitive",
            "name": "boolean"
          },
          "default": false,
          "description": "Disables the entire group."
        },
        {
          "name": "name",
          "type": {
            "kind": "primitive",
            "name": "string"
          },
          "description": "Name for form submission."
        },
        {
          "name": "required",
          "type": {
            "kind": "primitive",
            "name": "boolean"
          },
          "description": "Requires a value before form submission."
        },
        {
          "name": "orientation",
          "type": {
            "kind": "union",
            "values": [
              "horizontal",
              "vertical"
            ]
          },
          "description": "Layout orientation."
        },
        {
          "name": "class",
          "type": {
            "kind": "primitive",
            "name": "string"
          },
          "default": "",
          "description": "CSS class names for the group."
        },
        {
          "name": "update:modelValue",
          "type": {
            "kind": "function",
            "signature": "(value: string) => 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": "class",
              "type": {
                "kind": "primitive",
                "name": "string"
              },
              "default": "",
              "description": "CSS class names for the item."
            }
          ]
        }
      ]
    },
    "switch": {
      "name": "Switch",
      "type": "form",
      "description": "A control that allows the user to toggle between checked and not checked",
      "dependencies": [
        "radix-vue"
      ],
      "devDependencies": [],
      "registryDependencies": [],
      "files": [
        "Switch.vue",
        "index.ts"
      ],
      "category": "form",
      "props": [
        {
          "name": "checked",
          "type": {
            "kind": "primitive",
            "name": "boolean"
          },
          "description": "Controlled checked state."
        },
        {
          "name": "defaultChecked",
          "type": {
            "kind": "primitive",
            "name": "boolean"
          },
          "description": "Uncontrolled initial checked state."
        },
        {
          "name": "disabled",
          "type": {
            "kind": "primitive",
            "name": "boolean"
          },
          "default": false,
          "description": "Disables the switch."
        },
        {
          "name": "required",
          "type": {
            "kind": "primitive",
            "name": "boolean"
          },
          "description": "Requires a value before form submission."
        },
        {
          "name": "name",
          "type": {
            "kind": "primitive",
            "name": "string"
          },
          "description": "Name for form submission."
        },
        {
          "name": "value",
          "type": {
            "kind": "primitive",
            "name": "string"
          },
          "default": "on",
          "description": "Value for form submission."
        },
        {
          "name": "class",
          "type": {
            "kind": "primitive",
            "name": "string"
          },
          "default": "",
          "description": "CSS class names for the switch root."
        },
        {
          "name": "update:checked",
          "type": {
            "kind": "function",
            "signature": "(checked: boolean) => void"
          },
          "description": "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",
      "type": "form",
      "description": "An input where the user selects a value from within a given range",
      "dependencies": [
        "radix-vue"
      ],
      "devDependencies": [],
      "registryDependencies": [],
      "files": [
        "Slider.vue",
        "index.ts"
      ],
      "category": "form",
      "props": [
        {
          "name": "as",
          "type": {
            "kind": "custom",
            "name": "AsTag | Component"
          },
          "default": "div",
          "description": "Element or component to render."
        },
        {
          "name": "asChild",
          "type": {
            "kind": "primitive",
            "name": "boolean"
          },
          "default": false,
          "description": "Render the root as a child element."
        },
        {
          "name": "defaultValue",
          "type": {
            "kind": "array",
            "of": {
              "kind": "primitive",
              "name": "number"
            }
          },
          "default": [
            0
          ],
          "description": "Uncontrolled initial slider values."
        },
        {
          "name": "modelValue",
          "type": {
            "kind": "array",
            "of": {
              "kind": "primitive",
              "name": "number"
            }
          },
          "description": "Controlled slider values. Supports v-model."
        },
        {
          "name": "dir",
          "type": {
            "kind": "union",
            "values": [
              {
                "kind": "literal",
                "value": "ltr"
              },
              {
                "kind": "literal",
                "value": "rtl"
              }
            ]
          },
          "description": "Reading direction."
        },
        {
          "name": "disabled",
          "type": {
            "kind": "primitive",
            "name": "boolean"
          },
          "default": false,
          "description": "Disables the slider."
        },
        {
          "name": "inverted",
          "type": {
            "kind": "primitive",
            "name": "boolean"
          },
          "default": false,
          "description": "Whether the slider is visually inverted."
        },
        {
          "name": "max",
          "type": {
            "kind": "primitive",
            "name": "number"
          },
          "default": 100,
          "description": "Maximum value."
        },
        {
          "name": "min",
          "type": {
            "kind": "primitive",
            "name": "number"
          },
          "default": 0,
          "description": "Minimum value."
        },
        {
          "name": "minStepsBetweenThumbs",
          "type": {
            "kind": "primitive",
            "name": "number"
          },
          "default": 0,
          "description": "Minimum permitted steps between thumbs."
        },
        {
          "name": "name",
          "type": {
            "kind": "primitive",
            "name": "string"
          },
          "description": "Name used for the hidden inputs in form submission."
        },
        {
          "name": "orientation",
          "type": {
            "kind": "union",
            "values": [
              {
                "kind": "literal",
                "value": "horizontal"
              },
              {
                "kind": "literal",
                "value": "vertical"
              }
            ]
          },
          "default": "horizontal",
          "description": "Slider orientation."
        },
        {
          "name": "step",
          "type": {
            "kind": "primitive",
            "name": "number"
          },
          "default": 1,
          "description": "Stepping interval."
        },
        {
          "name": "class",
          "type": {
            "kind": "primitive",
            "name": "string"
          },
          "default": "",
          "description": "CSS class names for the slider root."
        },
        {
          "name": "update:modelValue",
          "type": {
            "kind": "function",
            "signature": "(value: number[]) => void"
          },
          "description": "Emitted when the slider values change."
        },
        {
          "name": "valueCommit",
          "type": {
            "kind": "function",
            "signature": "(value: number[]) => void"
          },
          "description": "Emitted when the interaction ends and the slider values are committed."
        }
      ]
    },
    "textarea": {
      "name": "Textarea",
      "type": "form",
      "description": "Displays a form textarea or a component that looks like a textarea",
      "dependencies": [],
      "devDependencies": [],
      "registryDependencies": [],
      "files": [
        "Textarea.vue",
        "index.ts"
      ],
      "category": "form",
      "props": [
        {
          "name": "modelValue",
          "type": {
            "kind": "union",
            "values": [
              {
                "kind": "primitive",
                "name": "string"
              },
              {
                "kind": "primitive",
                "name": "number"
              }
            ]
          },
          "description": "Controlled textarea value. Supports v-model."
        },
        {
          "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"
          },
          "description": "Visible number of text rows."
        },
        {
          "name": "class",
          "type": {
            "kind": "primitive",
            "name": "string"
          },
          "default": "",
          "description": "CSS class names for the textarea."
        },
        {
          "name": "update:modelValue",
          "type": {
            "kind": "function",
            "signature": "(value: string | number) => void"
          },
          "description": "Emitted when the textarea value changes."
        }
      ]
    },
    "form": {
      "name": "Form",
      "type": "form",
      "description": "Building forms with Vue and Radix Vue primitives",
      "dependencies": [
        "radix-vue",
        "@vee-validate/zod",
        "vee-validate"
      ],
      "devDependencies": [],
      "registryDependencies": [
        "button",
        "input",
        "label"
      ],
      "files": [
        "form-description.vue",
        "form-item.vue",
        "form-label.vue",
        "form-message.vue",
        "form.vue",
        "index.ts"
      ],
      "category": "form",
      "props": [
        {
          "name": "class",
          "type": {
            "kind": "primitive",
            "name": "string"
          },
          "default": "",
          "description": "CSS class names for the 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": "for",
              "type": {
                "kind": "primitive",
                "name": "string"
              },
              "description": "Optional target id 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."
            },
            {
              "name": "message",
              "type": {
                "kind": "primitive",
                "name": "string"
              },
              "description": "Optional message text when no default slot is provided."
            }
          ]
        }
      ]
    },
    "card": {
      "name": "Card",
      "type": "layout",
      "description": "Displays a card with header, content, and footer",
      "dependencies": [],
      "devDependencies": [],
      "registryDependencies": [],
      "files": [
        "card-content.vue",
        "card-description.vue",
        "card-footer.vue",
        "card-header.vue",
        "card-title.vue",
        "card.vue",
        "index.ts"
      ],
      "category": "layout",
      "props": [
        {
          "name": "class",
          "type": {
            "kind": "primitive",
            "name": "string"
          },
          "default": "",
          "description": "CSS class names for the card container."
        }
      ],
      "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."
            }
          ]
        }
      ]
    },
    "separator": {
      "name": "Separator",
      "type": "layout",
      "description": "Visually or semantically separates content",
      "dependencies": [
        "radix-vue"
      ],
      "devDependencies": [],
      "registryDependencies": [],
      "files": [
        "Separator.vue",
        "index.ts"
      ],
      "category": "layout",
      "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": true,
          "description": "Whether the separator is decorative only."
        },
        {
          "name": "as",
          "type": {
            "kind": "custom",
            "name": "AsTag | Component"
          },
          "default": "div",
          "description": "Element or component to render."
        },
        {
          "name": "asChild",
          "type": {
            "kind": "primitive",
            "name": "boolean"
          },
          "default": false,
          "description": "Render the separator as a child element."
        },
        {
          "name": "class",
          "type": {
            "kind": "primitive",
            "name": "string"
          },
          "default": "",
          "description": "CSS class names for the separator."
        }
      ]
    },
    "accordion": {
      "name": "Accordion",
      "type": "layout",
      "description": "A vertically stacked set of interactive headings that each reveal a section of content",
      "dependencies": [
        "radix-vue"
      ],
      "devDependencies": [],
      "registryDependencies": [],
      "files": [
        "Accordion.vue",
        "AccordionContent.vue",
        "AccordionItem.vue",
        "AccordionTrigger.vue",
        "index.ts"
      ],
      "category": "layout",
      "props": [
        {
          "name": "type",
          "type": {
            "kind": "union",
            "values": [
              {
                "kind": "literal",
                "value": "single"
              },
              {
                "kind": "literal",
                "value": "multiple"
              }
            ]
          },
          "default": "single",
          "description": "Accordion selection behavior."
        },
        {
          "name": "modelValue",
          "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": "defaultValue",
          "type": {
            "kind": "union",
            "values": [
              {
                "kind": "primitive",
                "name": "string"
              },
              {
                "kind": "array",
                "of": {
                  "kind": "primitive",
                  "name": "string"
                }
              }
            ]
          },
          "description": "Uncontrolled initial value for the open item or items."
        },
        {
          "name": "collapsible",
          "type": {
            "kind": "primitive",
            "name": "boolean"
          },
          "default": false,
          "description": "When type is single, allows closing the open item."
        },
        {
          "name": "disabled",
          "type": {
            "kind": "primitive",
            "name": "boolean"
          },
          "default": false,
          "description": "Disables the accordion and all items."
        },
        {
          "name": "dir",
          "type": {
            "kind": "union",
            "values": [
              {
                "kind": "literal",
                "value": "ltr"
              },
              {
                "kind": "literal",
                "value": "rtl"
              }
            ]
          },
          "default": "ltr",
          "description": "Reading direction for RTL or LTR layouts."
        },
        {
          "name": "orientation",
          "type": {
            "kind": "union",
            "values": [
              {
                "kind": "literal",
                "value": "vertical"
              },
              {
                "kind": "literal",
                "value": "horizontal"
              }
            ]
          },
          "default": "vertical",
          "description": "Accordion orientation."
        },
        {
          "name": "asChild",
          "type": {
            "kind": "primitive",
            "name": "boolean"
          },
          "default": false,
          "description": "Render the root as a child element."
        },
        {
          "name": "as",
          "type": {
            "kind": "custom",
            "name": "AsTag | Component"
          },
          "default": "div",
          "description": "Element or component to render."
        },
        {
          "name": "class",
          "type": {
            "kind": "primitive",
            "name": "string"
          },
          "default": "",
          "description": "CSS class names for the root element."
        },
        {
          "name": "update:modelValue",
          "type": {
            "kind": "function",
            "signature": "(value: string | string[] | null) => 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": "disabled",
              "type": {
                "kind": "primitive",
                "name": "boolean"
              },
              "default": false,
              "description": "Disables the item."
            },
            {
              "name": "asChild",
              "type": {
                "kind": "primitive",
                "name": "boolean"
              },
              "default": false,
              "description": "Render the item as a child element."
            },
            {
              "name": "as",
              "type": {
                "kind": "custom",
                "name": "AsTag | Component"
              },
              "default": "div",
              "description": "Element or component to render."
            },
            {
              "name": "class",
              "type": {
                "kind": "primitive",
                "name": "string"
              },
              "default": "",
              "description": "CSS class names for the item."
            }
          ]
        },
        {
          "name": "AccordionTrigger",
          "props": [
            {
              "name": "asChild",
              "type": {
                "kind": "primitive",
                "name": "boolean"
              },
              "default": false,
              "description": "Render the trigger as a child element."
            },
            {
              "name": "as",
              "type": {
                "kind": "custom",
                "name": "AsTag | Component"
              },
              "default": "button",
              "description": "Element or component to render."
            },
            {
              "name": "class",
              "type": {
                "kind": "primitive",
                "name": "string"
              },
              "default": "",
              "description": "CSS class names for the trigger."
            }
          ]
        },
        {
          "name": "AccordionContent",
          "props": [
            {
              "name": "asChild",
              "type": {
                "kind": "primitive",
                "name": "boolean"
              },
              "default": false,
              "description": "Render the content as a child element."
            },
            {
              "name": "as",
              "type": {
                "kind": "custom",
                "name": "AsTag | Component"
              },
              "default": "div",
              "description": "Element or component to render."
            },
            {
              "name": "forceMount",
              "type": {
                "kind": "primitive",
                "name": "boolean"
              },
              "description": "Force mount content even when closed."
            },
            {
              "name": "class",
              "type": {
                "kind": "primitive",
                "name": "string"
              },
              "default": "",
              "description": "CSS class names for the content container."
            }
          ]
        }
      ]
    },
    "tabs": {
      "name": "Tabs",
      "type": "layout",
      "description": "A set of layered sections of content—known as tab panels—that are displayed one at a time",
      "dependencies": [
        "radix-vue"
      ],
      "devDependencies": [],
      "registryDependencies": [],
      "files": [
        "Tabs.vue",
        "TabsContent.vue",
        "TabsList.vue",
        "TabsTrigger.vue",
        "index.ts"
      ],
      "category": "layout",
      "props": [
        {
          "name": "modelValue",
          "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": "orientation",
          "type": {
            "kind": "union",
            "values": [
              {
                "kind": "literal",
                "value": "horizontal"
              },
              {
                "kind": "literal",
                "value": "vertical"
              }
            ]
          },
          "default": "horizontal",
          "description": "Layout orientation for the tab list."
        },
        {
          "name": "dir",
          "type": {
            "kind": "union",
            "values": [
              {
                "kind": "literal",
                "value": "ltr"
              },
              {
                "kind": "literal",
                "value": "rtl"
              }
            ]
          },
          "default": "ltr",
          "description": "Reading direction for keyboard navigation."
        },
        {
          "name": "activationMode",
          "type": {
            "kind": "union",
            "values": [
              {
                "kind": "literal",
                "value": "automatic"
              },
              {
                "kind": "literal",
                "value": "manual"
              }
            ]
          },
          "default": "automatic",
          "description": "Whether focus automatically activates a tab."
        },
        {
          "name": "as",
          "type": {
            "kind": "custom",
            "name": "AsTag | Component"
          },
          "default": "div",
          "description": "Element or component to render."
        },
        {
          "name": "asChild",
          "type": {
            "kind": "primitive",
            "name": "boolean"
          },
          "default": false,
          "description": "Render the root as a child element."
        },
        {
          "name": "class",
          "type": {
            "kind": "primitive",
            "name": "string"
          },
          "default": "",
          "description": "CSS class names for the tabs root."
        },
        {
          "name": "update:modelValue",
          "type": {
            "kind": "function",
            "signature": "(value: string) => void"
          },
          "description": "Emitted when the active tab changes."
        }
      ],
      "children": [
        {
          "name": "TabsList",
          "props": [
            {
              "name": "loop",
              "type": {
                "kind": "primitive",
                "name": "boolean"
              },
              "default": true,
              "description": "Loop keyboard focus from last tab to first."
            },
            {
              "name": "as",
              "type": {
                "kind": "custom",
                "name": "AsTag | Component"
              },
              "default": "div",
              "description": "Element or component to render."
            },
            {
              "name": "asChild",
              "type": {
                "kind": "primitive",
                "name": "boolean"
              },
              "default": false,
              "description": "Render the list as a child element."
            },
            {
              "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": "as",
              "type": {
                "kind": "custom",
                "name": "AsTag | Component"
              },
              "default": "button",
              "description": "Element or component to render."
            },
            {
              "name": "asChild",
              "type": {
                "kind": "primitive",
                "name": "boolean"
              },
              "default": false,
              "description": "Render the trigger as a child element."
            },
            {
              "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": "forceMount",
              "type": {
                "kind": "primitive",
                "name": "boolean"
              },
              "description": "Force-mount the panel even when inactive."
            },
            {
              "name": "as",
              "type": {
                "kind": "custom",
                "name": "AsTag | Component"
              },
              "default": "div",
              "description": "Element or component to render."
            },
            {
              "name": "asChild",
              "type": {
                "kind": "primitive",
                "name": "boolean"
              },
              "default": false,
              "description": "Render the content as a child element."
            },
            {
              "name": "class",
              "type": {
                "kind": "primitive",
                "name": "string"
              },
              "default": "",
              "description": "CSS class names for the content panel."
            }
          ]
        }
      ]
    },
    "dialog": {
      "name": "Dialog",
      "type": "layout",
      "description": "A window overlaid on either the primary window or another dialog window",
      "dependencies": [
        "radix-vue"
      ],
      "devDependencies": [],
      "registryDependencies": [],
      "files": [
        "Dialog.vue",
        "DialogContent.vue",
        "DialogFooter.vue",
        "DialogHeader.vue",
        "index.ts"
      ],
      "category": "layout",
      "props": [
        {
          "name": "open",
          "type": {
            "kind": "primitive",
            "name": "boolean"
          },
          "description": "Controlled open state."
        },
        {
          "name": "defaultOpen",
          "type": {
            "kind": "primitive",
            "name": "boolean"
          },
          "default": false,
          "description": "Initial open state for uncontrolled usage."
        },
        {
          "name": "modal",
          "type": {
            "kind": "primitive",
            "name": "boolean"
          },
          "default": true,
          "description": "Whether interaction outside the dialog is disabled while open."
        },
        {
          "name": "update:open",
          "type": {
            "kind": "function",
            "signature": "(open: boolean) => void"
          },
          "description": "Emitted when the open state changes."
        }
      ],
      "children": [
        {
          "name": "DialogTrigger",
          "props": [
            {
              "name": "as",
              "type": {
                "kind": "custom",
                "name": "AsTag | Component"
              },
              "default": "button",
              "description": "Element or component to render."
            },
            {
              "name": "asChild",
              "type": {
                "kind": "primitive",
                "name": "boolean"
              },
              "default": false,
              "description": "Render the trigger as a child element."
            }
          ]
        },
        {
          "name": "DialogContent",
          "props": [
            {
              "name": "forceMount",
              "type": {
                "kind": "primitive",
                "name": "boolean"
              },
              "description": "Force-mount the content even when closed."
            },
            {
              "name": "class",
              "type": {
                "kind": "primitive",
                "name": "string"
              },
              "default": "",
              "description": "CSS class names for the dialog content."
            }
          ]
        },
        {
          "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": "DialogTitle",
          "props": [
            {
              "name": "as",
              "type": {
                "kind": "custom",
                "name": "AsTag | Component"
              },
              "default": "h2",
              "description": "Element or component to render."
            },
            {
              "name": "asChild",
              "type": {
                "kind": "primitive",
                "name": "boolean"
              },
              "default": false,
              "description": "Render the title as a child element."
            }
          ]
        },
        {
          "name": "DialogDescription",
          "props": [
            {
              "name": "as",
              "type": {
                "kind": "custom",
                "name": "AsTag | Component"
              },
              "default": "p",
              "description": "Element or component to render."
            },
            {
              "name": "asChild",
              "type": {
                "kind": "primitive",
                "name": "boolean"
              },
              "default": false,
              "description": "Render the description as a child element."
            }
          ]
        },
        {
          "name": "DialogClose",
          "props": [
            {
              "name": "as",
              "type": {
                "kind": "custom",
                "name": "AsTag | Component"
              },
              "default": "button",
              "description": "Element or component to render."
            },
            {
              "name": "asChild",
              "type": {
                "kind": "primitive",
                "name": "boolean"
              },
              "default": false,
              "description": "Render the close control as a child element."
            }
          ]
        }
      ]
    },
    "alert": {
      "name": "Alert",
      "type": "feedback",
      "description": "Displays a callout for user attention",
      "dependencies": [
        "class-variance-authority"
      ],
      "devDependencies": [],
      "registryDependencies": [],
      "files": [
        "alert-description.vue",
        "alert-title.vue",
        "alert.vue",
        "index.ts"
      ],
      "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 container."
        }
      ],
      "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."
            }
          ]
        }
      ]
    },
    "alert-dialog": {
      "name": "Alert Dialog",
      "type": "feedback",
      "description": "A modal dialog that interrupts the user with important content and expects a response",
      "dependencies": [
        "radix-vue"
      ],
      "devDependencies": [],
      "registryDependencies": [],
      "files": [
        "AlertDialog.vue",
        "AlertDialogContent.vue",
        "AlertDialogFooter.vue",
        "AlertDialogHeader.vue",
        "index.ts"
      ],
      "category": "feedback",
      "props": [
        {
          "name": "open",
          "type": {
            "kind": "primitive",
            "name": "boolean"
          },
          "description": "Controlled open state."
        },
        {
          "name": "defaultOpen",
          "type": {
            "kind": "primitive",
            "name": "boolean"
          },
          "default": false,
          "description": "Initial open state for uncontrolled usage."
        },
        {
          "name": "update:open",
          "type": {
            "kind": "function",
            "signature": "(open: boolean) => void"
          },
          "description": "Emitted when the open state changes."
        }
      ],
      "children": [
        {
          "name": "AlertDialogTrigger",
          "props": [
            {
              "name": "as",
              "type": {
                "kind": "custom",
                "name": "AsTag | Component"
              },
              "default": "button",
              "description": "Element or component to render."
            },
            {
              "name": "asChild",
              "type": {
                "kind": "primitive",
                "name": "boolean"
              },
              "default": false,
              "description": "Render the trigger as a child element."
            }
          ]
        },
        {
          "name": "AlertDialogContent",
          "props": [
            {
              "name": "forceMount",
              "type": {
                "kind": "primitive",
                "name": "boolean"
              },
              "description": "Force-mount the content even when closed."
            },
            {
              "name": "class",
              "type": {
                "kind": "primitive",
                "name": "string"
              },
              "default": "",
              "description": "CSS class names for the alert dialog content."
            }
          ]
        },
        {
          "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."
            }
          ]
        },
        {
          "name": "AlertDialogTitle",
          "props": [
            {
              "name": "as",
              "type": {
                "kind": "custom",
                "name": "AsTag | Component"
              },
              "default": "h2",
              "description": "Element or component to render."
            },
            {
              "name": "asChild",
              "type": {
                "kind": "primitive",
                "name": "boolean"
              },
              "default": false,
              "description": "Render the title as a child element."
            }
          ]
        },
        {
          "name": "AlertDialogDescription",
          "props": [
            {
              "name": "as",
              "type": {
                "kind": "custom",
                "name": "AsTag | Component"
              },
              "default": "p",
              "description": "Element or component to render."
            },
            {
              "name": "asChild",
              "type": {
                "kind": "primitive",
                "name": "boolean"
              },
              "default": false,
              "description": "Render the description as a child element."
            }
          ]
        },
        {
          "name": "AlertDialogAction",
          "props": [
            {
              "name": "as",
              "type": {
                "kind": "custom",
                "name": "AsTag | Component"
              },
              "default": "button",
              "description": "Element or component to render."
            },
            {
              "name": "asChild",
              "type": {
                "kind": "primitive",
                "name": "boolean"
              },
              "default": false,
              "description": "Render the action as a child element."
            }
          ]
        },
        {
          "name": "AlertDialogCancel",
          "props": [
            {
              "name": "as",
              "type": {
                "kind": "custom",
                "name": "AsTag | Component"
              },
              "default": "button",
              "description": "Element or component to render."
            },
            {
              "name": "asChild",
              "type": {
                "kind": "primitive",
                "name": "boolean"
              },
              "default": false,
              "description": "Render the cancel action as a child element."
            }
          ]
        }
      ]
    },
    "aspect-ratio": {
      "name": "Aspect Ratio",
      "type": "layout",
      "description": "Displays content within a desired aspect ratio",
      "dependencies": [
        "radix-vue"
      ],
      "devDependencies": [],
      "registryDependencies": [],
      "files": [
        "AspectRatio.vue",
        "index.ts"
      ],
      "category": "layout",
      "props": [
        {
          "name": "ratio",
          "type": {
            "kind": "primitive",
            "name": "number"
          },
          "default": 1,
          "description": "Desired aspect ratio, for example 16 / 9."
        },
        {
          "name": "as",
          "type": {
            "kind": "custom",
            "name": "AsTag | Component"
          },
          "default": "div",
          "description": "Element or component to render."
        },
        {
          "name": "asChild",
          "type": {
            "kind": "primitive",
            "name": "boolean"
          },
          "default": false,
          "description": "Render the component as a child element."
        }
      ]
    },
    "avatar": {
      "name": "Avatar",
      "type": "data-display",
      "description": "An image element with a fallback for representing the user",
      "dependencies": [
        "radix-vue"
      ],
      "devDependencies": [],
      "registryDependencies": [],
      "files": [
        "Avatar.vue",
        "AvatarFallback.vue",
        "AvatarImage.vue",
        "index.ts"
      ],
      "category": "data-display",
      "props": [
        {
          "name": "as",
          "type": {
            "kind": "custom",
            "name": "AsTag | Component"
          },
          "default": "span",
          "description": "Element or component to render."
        },
        {
          "name": "asChild",
          "type": {
            "kind": "primitive",
            "name": "boolean"
          },
          "default": false,
          "description": "Render the avatar root as a child element."
        },
        {
          "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": "as",
              "type": {
                "kind": "custom",
                "name": "AsTag | Component"
              },
              "default": "img",
              "description": "Element or component to render."
            },
            {
              "name": "asChild",
              "type": {
                "kind": "primitive",
                "name": "boolean"
              },
              "default": false,
              "description": "Render the image as a child element."
            },
            {
              "name": "class",
              "type": {
                "kind": "primitive",
                "name": "string"
              },
              "default": "",
              "description": "CSS class names for the avatar image."
            },
            {
              "name": "onLoadingStatusChange",
              "type": {
                "kind": "function",
                "signature": "(status: ImageLoadingStatus) => void"
              },
              "description": "Called when the image loading status changes."
            }
          ]
        },
        {
          "name": "AvatarFallback",
          "props": [
            {
              "name": "delayMs",
              "type": {
                "kind": "primitive",
                "name": "number"
              },
              "description": "Delay in milliseconds before rendering the fallback."
            },
            {
              "name": "as",
              "type": {
                "kind": "custom",
                "name": "AsTag | Component"
              },
              "default": "span",
              "description": "Element or component to render."
            },
            {
              "name": "asChild",
              "type": {
                "kind": "primitive",
                "name": "boolean"
              },
              "default": false,
              "description": "Render the fallback as a child element."
            },
            {
              "name": "class",
              "type": {
                "kind": "primitive",
                "name": "string"
              },
              "default": "",
              "description": "CSS class names for the fallback."
            }
          ]
        }
      ]
    },
    "toast": {
      "name": "Toast",
      "type": "feedback",
      "description": "A succinct message that is displayed temporarily",
      "dependencies": [
        "vue-sonner"
      ],
      "devDependencies": [],
      "registryDependencies": [],
      "files": [
        "index.ts",
        "toast.vue"
      ],
      "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."
        },
        {
          "name": "position",
          "type": {
            "kind": "union",
            "values": [
              {
                "kind": "literal",
                "value": "top-left"
              },
              {
                "kind": "literal",
                "value": "top-center"
              },
              {
                "kind": "literal",
                "value": "top-right"
              },
              {
                "kind": "literal",
                "value": "bottom-left"
              },
              {
                "kind": "literal",
                "value": "bottom-center"
              },
              {
                "kind": "literal",
                "value": "bottom-right"
              }
            ]
          },
          "description": "Screen position for toast notifications."
        },
        {
          "name": "expand",
          "type": {
            "kind": "primitive",
            "name": "boolean"
          },
          "description": "Whether stacked toasts can expand to show full content."
        },
        {
          "name": "richColors",
          "type": {
            "kind": "primitive",
            "name": "boolean"
          },
          "description": "Enable richer semantic color styling."
        },
        {
          "name": "closeButton",
          "type": {
            "kind": "primitive",
            "name": "boolean"
          },
          "description": "Show a close button on each toast."
        },
        {
          "name": "duration",
          "type": {
            "kind": "primitive",
            "name": "number"
          },
          "description": "Default duration in milliseconds."
        },
        {
          "name": "visibleToasts",
          "type": {
            "kind": "primitive",
            "name": "number"
          },
          "description": "Maximum number of visible toasts."
        },
        {
          "name": "offset",
          "type": {
            "kind": "custom",
            "name": "string | number"
          },
          "description": "Offset from the viewport edge."
        },
        {
          "name": "dir",
          "type": {
            "kind": "union",
            "values": [
              {
                "kind": "literal",
                "value": "ltr"
              },
              {
                "kind": "literal",
                "value": "rtl"
              }
            ]
          },
          "default": "ltr",
          "description": "Reading direction."
        }
      ]
    },
    "progress": {
      "name": "Progress",
      "type": "feedback",
      "description": "Displays an indicator showing the completion progress of a task",
      "dependencies": [
        "radix-vue"
      ],
      "devDependencies": [],
      "registryDependencies": [],
      "files": [
        "Progress.vue",
        "index.ts"
      ],
      "category": "feedback",
      "props": [
        {
          "name": "modelValue",
          "type": {
            "kind": "primitive",
            "name": "number"
          },
          "default": 0,
          "description": "Current progress value. Supports v-model."
        },
        {
          "name": "max",
          "type": {
            "kind": "primitive",
            "name": "number"
          },
          "default": 100,
          "description": "Maximum progress value."
        },
        {
          "name": "as",
          "type": {
            "kind": "custom",
            "name": "AsTag | Component"
          },
          "default": "div",
          "description": "Element or component to render."
        },
        {
          "name": "asChild",
          "type": {
            "kind": "primitive",
            "name": "boolean"
          },
          "default": false,
          "description": "Render the progress root as a child element."
        },
        {
          "name": "class",
          "type": {
            "kind": "primitive",
            "name": "string"
          },
          "default": "",
          "description": "CSS class names for the progress root."
        },
        {
          "name": "update:modelValue",
          "type": {
            "kind": "function",
            "signature": "(value: number) => void"
          },
          "description": "Emitted when the progress value changes."
        }
      ]
    },
    "skeleton": {
      "name": "Skeleton",
      "type": "feedback",
      "description": "Use to show a placeholder while content is loading",
      "dependencies": [],
      "devDependencies": [],
      "registryDependencies": [],
      "files": [
        "Skeleton.vue",
        "index.ts"
      ],
      "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",
      "type": "feedback",
      "description": "Animated loading spinner.",
      "dependencies": [],
      "devDependencies": [],
      "registryDependencies": [],
      "files": [
        "Spinner.vue",
        "index.ts"
      ],
      "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."
        }
      ]
    },
    "badge": {
      "name": "Badge",
      "type": "feedback",
      "description": "Displays a badge or a component that looks like a badge",
      "dependencies": [
        "class-variance-authority"
      ],
      "devDependencies": [],
      "registryDependencies": [],
      "files": [
        "badge.vue",
        "index.ts"
      ],
      "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."
        }
      ]
    },
    "dropdown-menu": {
      "name": "Dropdown Menu",
      "type": "navigation",
      "description": "Displays a menu to the user triggered by a button",
      "dependencies": [
        "radix-vue"
      ],
      "devDependencies": [],
      "registryDependencies": [],
      "files": [
        "DropdownMenu.vue",
        "DropdownMenuContent.vue",
        "DropdownMenuItem.vue",
        "index.ts"
      ],
      "category": "navigation",
      "props": [
        {
          "name": "open",
          "type": {
            "kind": "primitive",
            "name": "boolean"
          },
          "description": "Controlled open state."
        },
        {
          "name": "defaultOpen",
          "type": {
            "kind": "primitive",
            "name": "boolean"
          },
          "default": false,
          "description": "Initial open state for uncontrolled usage."
        },
        {
          "name": "modal",
          "type": {
            "kind": "primitive",
            "name": "boolean"
          },
          "default": true,
          "description": "Whether outside interaction is disabled while the menu is open."
        },
        {
          "name": "dir",
          "type": {
            "kind": "union",
            "values": [
              {
                "kind": "literal",
                "value": "ltr"
              },
              {
                "kind": "literal",
                "value": "rtl"
              }
            ]
          },
          "default": "ltr",
          "description": "Reading direction for keyboard navigation."
        },
        {
          "name": "update:open",
          "type": {
            "kind": "function",
            "signature": "(open: boolean) => void"
          },
          "description": "Emitted when the open state changes."
        }
      ],
      "children": [
        {
          "name": "DropdownMenuTrigger",
          "props": [
            {
              "name": "as",
              "type": {
                "kind": "custom",
                "name": "AsTag | Component"
              },
              "default": "button",
              "description": "Element or component to render."
            },
            {
              "name": "asChild",
              "type": {
                "kind": "primitive",
                "name": "boolean"
              },
              "default": false,
              "description": "Render the trigger as a child element."
            },
            {
              "name": "disabled",
              "type": {
                "kind": "primitive",
                "name": "boolean"
              },
              "default": false,
              "description": "Disables the trigger."
            }
          ]
        },
        {
          "name": "DropdownMenuContent",
          "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 menu content."
            },
            {
              "name": "align",
              "type": {
                "kind": "union",
                "values": [
                  {
                    "kind": "literal",
                    "value": "start"
                  },
                  {
                    "kind": "literal",
                    "value": "center"
                  },
                  {
                    "kind": "literal",
                    "value": "end"
                  }
                ]
              },
              "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": "avoidCollisions",
              "type": {
                "kind": "primitive",
                "name": "boolean"
              },
              "description": "Whether to avoid collisions with viewport edges."
            },
            {
              "name": "collisionPadding",
              "type": {
                "kind": "custom",
                "name": "number | Partial<Record<Side, number>>"
              },
              "description": "Padding used for collision detection."
            },
            {
              "name": "sticky",
              "type": {
                "kind": "union",
                "values": [
                  {
                    "kind": "literal",
                    "value": "partial"
                  },
                  {
                    "kind": "literal",
                    "value": "always"
                  }
                ]
              },
              "description": "Sticky behavior on the align axis."
            },
            {
              "name": "hideWhenDetached",
              "type": {
                "kind": "primitive",
                "name": "boolean"
              },
              "description": "Hide content when the trigger becomes detached."
            },
            {
              "name": "loop",
              "type": {
                "kind": "primitive",
                "name": "boolean"
              },
              "default": false,
              "description": "Loop keyboard focus from last item back to first."
            },
            {
              "name": "as",
              "type": {
                "kind": "custom",
                "name": "AsTag | Component"
              },
              "default": "div",
              "description": "Element or component to render."
            },
            {
              "name": "asChild",
              "type": {
                "kind": "primitive",
                "name": "boolean"
              },
              "default": false,
              "description": "Render the content as a child element."
            },
            {
              "name": "class",
              "type": {
                "kind": "primitive",
                "name": "string"
              },
              "default": "",
              "description": "CSS class names for the content."
            }
          ]
        },
        {
          "name": "DropdownMenuItem",
          "props": [
            {
              "name": "disabled",
              "type": {
                "kind": "primitive",
                "name": "boolean"
              },
              "default": false,
              "description": "Disables the item."
            },
            {
              "name": "textValue",
              "type": {
                "kind": "primitive",
                "name": "string"
              },
              "description": "Text value used for typeahead matching."
            },
            {
              "name": "closeOnSelect",
              "type": {
                "kind": "primitive",
                "name": "boolean"
              },
              "default": true,
              "description": "Whether the menu closes after selection."
            },
            {
              "name": "inset",
              "type": {
                "kind": "primitive",
                "name": "boolean"
              },
              "default": false,
              "description": "Adds left padding for nested item alignment."
            },
            {
              "name": "as",
              "type": {
                "kind": "custom",
                "name": "AsTag | Component"
              },
              "default": "div",
              "description": "Element or component to render."
            },
            {
              "name": "asChild",
              "type": {
                "kind": "primitive",
                "name": "boolean"
              },
              "default": false,
              "description": "Render the item as a child element."
            },
            {
              "name": "class",
              "type": {
                "kind": "primitive",
                "name": "string"
              },
              "default": "",
              "description": "CSS class names for the item."
            },
            {
              "name": "select",
              "type": {
                "kind": "function",
                "signature": "(event: Event) => void"
              },
              "description": "Emitted when the item is selected."
            }
          ]
        },
        {
          "name": "DropdownMenuSeparator",
          "props": [
            {
              "name": "as",
              "type": {
                "kind": "custom",
                "name": "AsTag | Component"
              },
              "default": "div",
              "description": "Element or component to render."
            },
            {
              "name": "asChild",
              "type": {
                "kind": "primitive",
                "name": "boolean"
              },
              "default": false,
              "description": "Render the separator as a child element."
            }
          ]
        },
        {
          "name": "DropdownMenuCheckboxItem",
          "props": [
            {
              "name": "checked",
              "type": {
                "kind": "primitive",
                "name": "boolean"
              },
              "description": "Controlled checked state."
            },
            {
              "name": "disabled",
              "type": {
                "kind": "primitive",
                "name": "boolean"
              },
              "default": false,
              "description": "Disables the item."
            },
            {
              "name": "textValue",
              "type": {
                "kind": "primitive",
                "name": "string"
              },
              "description": "Text value used for typeahead matching."
            },
            {
              "name": "as",
              "type": {
                "kind": "custom",
                "name": "AsTag | Component"
              },
              "default": "div",
              "description": "Element or component to render."
            },
            {
              "name": "asChild",
              "type": {
                "kind": "primitive",
                "name": "boolean"
              },
              "default": false,
              "description": "Render the item as a child element."
            },
            {
              "name": "update:checked",
              "type": {
                "kind": "function",
                "signature": "(checked: boolean) => void"
              },
              "description": "Emitted when the checked state changes."
            }
          ]
        },
        {
          "name": "DropdownMenuRadioGroup",
          "props": [
            {
              "name": "modelValue",
              "type": {
                "kind": "primitive",
                "name": "string"
              },
              "description": "Controlled selected value."
            },
            {
              "name": "update:modelValue",
              "type": {
                "kind": "function",
                "signature": "(value: string) => void"
              },
              "description": "Emitted when the selected value changes."
            }
          ]
        },
        {
          "name": "DropdownMenuRadioItem",
          "props": [
            {
              "name": "value",
              "type": {
                "kind": "primitive",
                "name": "string"
              },
              "description": "Unique value for the radio item."
            },
            {
              "name": "disabled",
              "type": {
                "kind": "primitive",
                "name": "boolean"
              },
              "default": false,
              "description": "Disables the item."
            },
            {
              "name": "textValue",
              "type": {
                "kind": "primitive",
                "name": "string"
              },
              "description": "Text value used for typeahead matching."
            },
            {
              "name": "as",
              "type": {
                "kind": "custom",
                "name": "AsTag | Component"
              },
              "default": "div",
              "description": "Element or component to render."
            },
            {
              "name": "asChild",
              "type": {
                "kind": "primitive",
                "name": "boolean"
              },
              "default": false,
              "description": "Render the item as a child element."
            }
          ]
        },
        {
          "name": "DropdownMenuLabel",
          "props": [
            {
              "name": "as",
              "type": {
                "kind": "custom",
                "name": "AsTag | Component"
              },
              "default": "div",
              "description": "Element or component to render."
            },
            {
              "name": "asChild",
              "type": {
                "kind": "primitive",
                "name": "boolean"
              },
              "default": false,
              "description": "Render the label as a child element."
            }
          ]
        },
        {
          "name": "DropdownMenuSub",
          "props": [
            {
              "name": "open",
              "type": {
                "kind": "primitive",
                "name": "boolean"
              },
              "description": "Controlled open state for the submenu."
            },
            {
              "name": "defaultOpen",
              "type": {
                "kind": "primitive",
                "name": "boolean"
              },
              "default": false,
              "description": "Initial open state for uncontrolled submenu usage."
            },
            {
              "name": "update:open",
              "type": {
                "kind": "function",
                "signature": "(open: boolean) => void"
              },
              "description": "Emitted when the submenu open state changes."
            }
          ]
        },
        {
          "name": "DropdownMenuSubTrigger",
          "props": [
            {
              "name": "disabled",
              "type": {
                "kind": "primitive",
                "name": "boolean"
              },
              "default": false,
              "description": "Disables the sub trigger."
            },
            {
              "name": "textValue",
              "type": {
                "kind": "primitive",
                "name": "string"
              },
              "description": "Text value used for typeahead matching."
            },
            {
              "name": "as",
              "type": {
                "kind": "custom",
                "name": "AsTag | Component"
              },
              "default": "div",
              "description": "Element or component to render."
            },
            {
              "name": "asChild",
              "type": {
                "kind": "primitive",
                "name": "boolean"
              },
              "default": false,
              "description": "Render the sub trigger as a child element."
            }
          ]
        },
        {
          "name": "DropdownMenuSubContent",
          "props": [
            {
              "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": "avoidCollisions",
              "type": {
                "kind": "primitive",
                "name": "boolean"
              },
              "description": "Whether to avoid collisions with viewport edges."
            },
            {
              "name": "collisionPadding",
              "type": {
                "kind": "custom",
                "name": "number | Partial<Record<Side, number>>"
              },
              "description": "Padding used for collision detection."
            },
            {
              "name": "sticky",
              "type": {
                "kind": "union",
                "values": [
                  {
                    "kind": "literal",
                    "value": "partial"
                  },
                  {
                    "kind": "literal",
                    "value": "always"
                  }
                ]
              },
              "description": "Sticky behavior on the align axis."
            },
            {
              "name": "hideWhenDetached",
              "type": {
                "kind": "primitive",
                "name": "boolean"
              },
              "description": "Hide content when the trigger becomes detached."
            },
            {
              "name": "loop",
              "type": {
                "kind": "primitive",
                "name": "boolean"
              },
              "default": false,
              "description": "Loop keyboard focus from last item back to first."
            },
            {
              "name": "as",
              "type": {
                "kind": "custom",
                "name": "AsTag | Component"
              },
              "default": "div",
              "description": "Element or component to render."
            },
            {
              "name": "asChild",
              "type": {
                "kind": "primitive",
                "name": "boolean"
              },
              "default": false,
              "description": "Render the sub content as a child element."
            }
          ]
        },
        {
          "name": "DropdownMenuGroup",
          "props": []
        }
      ]
    },
    "navigation-menu": {
      "name": "Navigation Menu",
      "type": "navigation",
      "description": "A collection of links for navigating websites",
      "dependencies": [
        "radix-vue"
      ],
      "devDependencies": [],
      "registryDependencies": [],
      "files": [
        "NavigationMenu.vue",
        "index.ts"
      ],
      "category": "navigation",
      "props": [
        {
          "name": "modelValue",
          "type": {
            "kind": "primitive",
            "name": "string"
          },
          "description": "Controlled value of the active menu item."
        },
        {
          "name": "defaultValue",
          "type": {
            "kind": "primitive",
            "name": "string"
          },
          "description": "Initial active item for uncontrolled usage."
        },
        {
          "name": "dir",
          "type": {
            "kind": "union",
            "values": [
              {
                "kind": "literal",
                "value": "ltr"
              },
              {
                "kind": "literal",
                "value": "rtl"
              }
            ]
          },
          "description": "Reading direction for keyboard navigation.",
          "default": "ltr"
        },
        {
          "name": "orientation",
          "type": {
            "kind": "union",
            "values": [
              {
                "kind": "literal",
                "value": "horizontal"
              },
              {
                "kind": "literal",
                "value": "vertical"
              }
            ]
          },
          "description": "Orientation of the navigation menu.",
          "default": "horizontal"
        },
        {
          "name": "delayDuration",
          "type": {
            "kind": "primitive",
            "name": "number"
          },
          "description": "Delay in milliseconds before opening content on hover."
        },
        {
          "name": "skipDelayDuration",
          "type": {
            "kind": "primitive",
            "name": "number"
          },
          "description": "Time window to skip the opening delay when moving between triggers."
        },
        {
          "name": "class",
          "type": {
            "kind": "primitive",
            "name": "string"
          },
          "description": "CSS class names for the navigation menu root.",
          "default": ""
        }
      ],
      "children": [
        {
          "name": "NavigationMenuList",
          "props": []
        },
        {
          "name": "NavigationMenuItem",
          "props": []
        },
        {
          "name": "NavigationMenuTrigger",
          "props": []
        },
        {
          "name": "NavigationMenuContent",
          "props": []
        },
        {
          "name": "NavigationMenuLink",
          "props": []
        }
      ]
    },
    "breadcrumb": {
      "name": "Breadcrumb",
      "type": "navigation",
      "description": "Displays the path to the current resource using a hierarchy of links",
      "dependencies": [
        "lucide-vue-next"
      ],
      "devDependencies": [],
      "registryDependencies": [],
      "files": [
        "breadcrumb-ellipsis.vue",
        "breadcrumb-item.vue",
        "breadcrumb-link.vue",
        "breadcrumb-list.vue",
        "breadcrumb-page.vue",
        "breadcrumb-separator.vue",
        "breadcrumb.vue",
        "index.ts"
      ],
      "category": "navigation",
      "props": [
        {
          "name": "class",
          "type": {
            "kind": "primitive",
            "name": "string"
          },
          "default": "",
          "description": "CSS class names for the breadcrumb nav."
        },
        {
          "name": "separator",
          "type": {
            "kind": "primitive",
            "name": "string"
          },
          "description": "Declared prop on the component, but the current implementation does not render it."
        }
      ],
      "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": "href",
              "type": {
                "kind": "primitive",
                "name": "string"
              },
              "description": "Link destination."
            },
            {
              "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": "BreadcrumbEllipsis",
          "props": [
            {
              "name": "class",
              "type": {
                "kind": "primitive",
                "name": "string"
              },
              "default": "",
              "description": "CSS class names for the ellipsis."
            }
          ]
        }
      ]
    },
    "collapsible": {
      "name": "Collapsible",
      "type": "layout",
      "description": "An interactive component which expands/collapses a panel",
      "dependencies": [
        "radix-vue"
      ],
      "devDependencies": [],
      "registryDependencies": [],
      "files": [
        "Collapsible.vue",
        "index.ts"
      ],
      "category": "layout",
      "props": [
        {
          "name": "open",
          "type": {
            "kind": "primitive",
            "name": "boolean"
          },
          "description": "Controlled open state."
        },
        {
          "name": "defaultOpen",
          "type": {
            "kind": "primitive",
            "name": "boolean"
          },
          "default": false,
          "description": "Initial open state for uncontrolled usage."
        },
        {
          "name": "disabled",
          "type": {
            "kind": "primitive",
            "name": "boolean"
          },
          "default": false,
          "description": "Disables the collapsible."
        },
        {
          "name": "as",
          "type": {
            "kind": "custom",
            "name": "AsTag | Component"
          },
          "default": "div",
          "description": "Element or component to render."
        },
        {
          "name": "asChild",
          "type": {
            "kind": "primitive",
            "name": "boolean"
          },
          "default": false,
          "description": "Render the root as a child element."
        },
        {
          "name": "class",
          "type": {
            "kind": "primitive",
            "name": "string"
          },
          "default": "",
          "description": "CSS class names for the root element."
        },
        {
          "name": "update:open",
          "type": {
            "kind": "function",
            "signature": "(open: boolean) => void"
          },
          "description": "Emitted when the open state changes."
        }
      ],
      "children": [
        {
          "name": "CollapsibleTrigger",
          "props": [
            {
              "name": "as",
              "type": {
                "kind": "custom",
                "name": "AsTag | Component"
              },
              "default": "button",
              "description": "Element or component to render."
            },
            {
              "name": "asChild",
              "type": {
                "kind": "primitive",
                "name": "boolean"
              },
              "default": false,
              "description": "Render the trigger as a child element."
            }
          ]
        },
        {
          "name": "CollapsibleContent",
          "props": [
            {
              "name": "as",
              "type": {
                "kind": "custom",
                "name": "AsTag | Component"
              },
              "default": "div",
              "description": "Element or component to render."
            },
            {
              "name": "asChild",
              "type": {
                "kind": "primitive",
                "name": "boolean"
              },
              "default": false,
              "description": "Render the content as a child element."
            },
            {
              "name": "forceMount",
              "type": {
                "kind": "primitive",
                "name": "boolean"
              },
              "description": "Force-mount content even when closed."
            }
          ]
        }
      ]
    },
    "context-menu": {
      "name": "Context Menu",
      "type": "navigation",
      "description": "Displays a menu to the user triggered by right-click or long-press",
      "dependencies": [
        "radix-vue"
      ],
      "devDependencies": [],
      "registryDependencies": [],
      "files": [
        "ContextMenu.vue",
        "ContextMenuContent.vue",
        "ContextMenuItem.vue",
        "index.ts"
      ],
      "category": "navigation",
      "props": [
        {
          "name": "modal",
          "type": {
            "kind": "primitive",
            "name": "boolean"
          },
          "description": "Whether outside interaction is disabled while the context menu is open.",
          "default": true
        },
        {
          "name": "class",
          "type": {
            "kind": "primitive",
            "name": "string"
          },
          "description": "CSS class names for the context menu root.",
          "default": ""
        }
      ],
      "children": [
        {
          "name": "ContextMenuTrigger",
          "props": [
            {
              "name": "as",
              "type": {
                "kind": "primitive",
                "name": "string"
              },
              "description": "HTML tag used for the trigger element."
            },
            {
              "name": "asChild",
              "type": {
                "kind": "primitive",
                "name": "boolean"
              },
              "description": "Render the trigger as a child element.",
              "default": false
            }
          ]
        },
        {
          "name": "ContextMenuContent",
          "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 menu content.",
              "default": "bottom"
            },
            {
              "name": "align",
              "type": {
                "kind": "union",
                "values": [
                  {
                    "kind": "literal",
                    "value": "start"
                  },
                  {
                    "kind": "literal",
                    "value": "center"
                  },
                  {
                    "kind": "literal",
                    "value": "end"
                  }
                ]
              },
              "description": "Preferred alignment relative to the trigger.",
              "default": "start"
            },
            {
              "name": "sideOffset",
              "type": {
                "kind": "primitive",
                "name": "number"
              },
              "description": "Offset in pixels from the trigger.",
              "default": 4
            },
            {
              "name": "class",
              "type": {
                "kind": "primitive",
                "name": "string"
              },
              "description": "CSS class names for the menu content.",
              "default": ""
            }
          ]
        },
        {
          "name": "ContextMenuItem",
          "props": [
            {
              "name": "disabled",
              "type": {
                "kind": "primitive",
                "name": "boolean"
              },
              "description": "Disables the item.",
              "default": false
            },
            {
              "name": "textValue",
              "type": {
                "kind": "primitive",
                "name": "string"
              },
              "description": "Text value used for typeahead navigation."
            },
            {
              "name": "inset",
              "type": {
                "kind": "primitive",
                "name": "boolean"
              },
              "description": "Applies inset spacing for nested content alignment.",
              "default": false
            },
            {
              "name": "class",
              "type": {
                "kind": "primitive",
                "name": "string"
              },
              "description": "CSS class names for the item.",
              "default": ""
            }
          ]
        },
        {
          "name": "ContextMenuSeparator",
          "props": []
        },
        {
          "name": "ContextMenuCheckboxItem",
          "props": []
        },
        {
          "name": "ContextMenuRadioGroup",
          "props": []
        },
        {
          "name": "ContextMenuRadioItem",
          "props": []
        },
        {
          "name": "ContextMenuLabel",
          "props": []
        },
        {
          "name": "ContextMenuSub",
          "props": []
        },
        {
          "name": "ContextMenuSubTrigger",
          "props": []
        },
        {
          "name": "ContextMenuSubContent",
          "props": []
        }
      ]
    },
    "hover-card": {
      "name": "Hover Card",
      "type": "data-display",
      "description": "For sighted users to preview content available behind a link",
      "dependencies": [
        "radix-vue"
      ],
      "devDependencies": [],
      "registryDependencies": [],
      "files": [
        "HoverCard.vue",
        "HoverCardContent.vue",
        "index.ts"
      ],
      "category": "data-display",
      "props": [
        {
          "name": "open",
          "type": {
            "kind": "primitive",
            "name": "boolean"
          },
          "description": "Controlled open state."
        },
        {
          "name": "defaultOpen",
          "type": {
            "kind": "primitive",
            "name": "boolean"
          },
          "default": false,
          "description": "Initial open state for uncontrolled usage."
        },
        {
          "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": "update:open",
          "type": {
            "kind": "function",
            "signature": "(open: boolean) => void"
          },
          "description": "Emitted when the open state changes."
        }
      ],
      "children": [
        {
          "name": "HoverCardTrigger",
          "props": [
            {
              "name": "as",
              "type": {
                "kind": "custom",
                "name": "AsTag | Component"
              },
              "default": "a",
              "description": "Element or component to render."
            },
            {
              "name": "asChild",
              "type": {
                "kind": "primitive",
                "name": "boolean"
              },
              "default": false,
              "description": "Render the trigger as a child element."
            }
          ]
        },
        {
          "name": "HoverCardContent",
          "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 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"
              },
              "default": 4,
              "description": "Offset in pixels from the trigger."
            },
            {
              "name": "alignOffset",
              "type": {
                "kind": "primitive",
                "name": "number"
              },
              "description": "Offset in pixels from the alignment edge."
            },
            {
              "name": "avoidCollisions",
              "type": {
                "kind": "primitive",
                "name": "boolean"
              },
              "description": "Whether to avoid collisions with viewport edges."
            },
            {
              "name": "collisionPadding",
              "type": {
                "kind": "custom",
                "name": "number | Partial<Record<Side, number>>"
              },
              "description": "Padding used for collision detection."
            },
            {
              "name": "sticky",
              "type": {
                "kind": "union",
                "values": [
                  {
                    "kind": "literal",
                    "value": "partial"
                  },
                  {
                    "kind": "literal",
                    "value": "always"
                  }
                ]
              },
              "description": "Sticky behavior on the align axis."
            },
            {
              "name": "hideWhenDetached",
              "type": {
                "kind": "primitive",
                "name": "boolean"
              },
              "description": "Hide content when the trigger becomes detached."
            },
            {
              "name": "as",
              "type": {
                "kind": "custom",
                "name": "AsTag | Component"
              },
              "default": "div",
              "description": "Element or component to render."
            },
            {
              "name": "asChild",
              "type": {
                "kind": "primitive",
                "name": "boolean"
              },
              "default": false,
              "description": "Render the content as a child element."
            },
            {
              "name": "class",
              "type": {
                "kind": "primitive",
                "name": "string"
              },
              "default": "",
              "description": "CSS class names for the content."
            }
          ]
        }
      ]
    },
    "menubar": {
      "name": "Menubar",
      "type": "navigation",
      "description": "A visually persistent menu common in desktop applications",
      "dependencies": [
        "radix-vue"
      ],
      "devDependencies": [],
      "registryDependencies": [],
      "files": [
        "Menubar.vue",
        "index.ts"
      ],
      "category": "navigation",
      "props": [
        {
          "name": "modelValue",
          "type": {
            "kind": "primitive",
            "name": "string"
          },
          "description": "Controlled open menu value."
        },
        {
          "name": "defaultValue",
          "type": {
            "kind": "primitive",
            "name": "string"
          },
          "description": "Initial open menu value for uncontrolled usage."
        },
        {
          "name": "dir",
          "type": {
            "kind": "union",
            "values": [
              {
                "kind": "literal",
                "value": "ltr"
              },
              {
                "kind": "literal",
                "value": "rtl"
              }
            ]
          },
          "default": "ltr",
          "description": "Reading direction for keyboard navigation."
        },
        {
          "name": "loop",
          "type": {
            "kind": "primitive",
            "name": "boolean"
          },
          "default": false,
          "description": "Loop keyboard focus from last item to first."
        },
        {
          "name": "class",
          "type": {
            "kind": "primitive",
            "name": "string"
          },
          "default": "",
          "description": "CSS class names for the menubar root."
        },
        {
          "name": "update:modelValue",
          "type": {
            "kind": "function",
            "signature": "(value: string) => void"
          },
          "description": "Emitted when the open menu value changes."
        }
      ],
      "children": [
        {
          "name": "MenubarMenu",
          "props": [
            {
              "name": "value",
              "type": {
                "kind": "primitive",
                "name": "string"
              },
              "description": "Unique value associated with the menu."
            }
          ]
        },
        {
          "name": "MenubarTrigger",
          "props": [
            {
              "name": "as",
              "type": {
                "kind": "custom",
                "name": "AsTag | Component"
              },
              "default": "button",
              "description": "Element or component to render."
            },
            {
              "name": "asChild",
              "type": {
                "kind": "primitive",
                "name": "boolean"
              },
              "default": false,
              "description": "Render the trigger as a child element."
            },
            {
              "name": "disabled",
              "type": {
                "kind": "primitive",
                "name": "boolean"
              },
              "default": false,
              "description": "Disables the trigger."
            }
          ]
        },
        {
          "name": "MenubarContent",
          "props": [
            {
              "name": "side",
              "type": {
                "kind": "union",
                "values": [
                  {
                    "kind": "literal",
                    "value": "top"
                  },
                  {
                    "kind": "literal",
                    "value": "right"
                  },
                  {
                    "kind": "literal",
                    "value": "bottom"
                  },
                  {
                    "kind": "literal",
                    "value": "left"
                  }
                ]
              },
              "default": "bottom",
              "description": "Preferred side for the menu content."
            },
            {
              "name": "align",
              "type": {
                "kind": "union",
                "values": [
                  {
                    "kind": "literal",
                    "value": "start"
                  },
                  {
                    "kind": "literal",
                    "value": "center"
                  },
                  {
                    "kind": "literal",
                    "value": "end"
                  }
                ]
              },
              "default": "start",
              "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": "loop",
              "type": {
                "kind": "primitive",
                "name": "boolean"
              },
              "default": false,
              "description": "Loop keyboard focus from last item to first."
            },
            {
              "name": "as",
              "type": {
                "kind": "custom",
                "name": "AsTag | Component"
              },
              "default": "div",
              "description": "Element or component to render."
            },
            {
              "name": "asChild",
              "type": {
                "kind": "primitive",
                "name": "boolean"
              },
              "default": false,
              "description": "Render the content as a child element."
            }
          ]
        },
        {
          "name": "MenubarItem",
          "props": [
            {
              "name": "disabled",
              "type": {
                "kind": "primitive",
                "name": "boolean"
              },
              "default": false,
              "description": "Disables the item."
            },
            {
              "name": "textValue",
              "type": {
                "kind": "primitive",
                "name": "string"
              },
              "description": "Text value used for typeahead matching."
            },
            {
              "name": "as",
              "type": {
                "kind": "custom",
                "name": "AsTag | Component"
              },
              "default": "div",
              "description": "Element or component to render."
            },
            {
              "name": "asChild",
              "type": {
                "kind": "primitive",
                "name": "boolean"
              },
              "default": false,
              "description": "Render the item as a child element."
            },
            {
              "name": "select",
              "type": {
                "kind": "function",
                "signature": "(event: Event) => void"
              },
              "description": "Emitted when the item is selected."
            }
          ]
        },
        {
          "name": "MenubarSeparator",
          "props": [
            {
              "name": "as",
              "type": {
                "kind": "custom",
                "name": "AsTag | Component"
              },
              "default": "div",
              "description": "Element or component to render."
            },
            {
              "name": "asChild",
              "type": {
                "kind": "primitive",
                "name": "boolean"
              },
              "default": false,
              "description": "Render the separator as a child element."
            }
          ]
        },
        {
          "name": "MenubarLabel",
          "props": []
        },
        {
          "name": "MenubarCheckboxItem",
          "props": []
        },
        {
          "name": "MenubarRadioGroup",
          "props": []
        },
        {
          "name": "MenubarRadioItem",
          "props": []
        },
        {
          "name": "MenubarPortal",
          "props": []
        },
        {
          "name": "MenubarSub",
          "props": []
        },
        {
          "name": "MenubarSubTrigger",
          "props": []
        },
        {
          "name": "MenubarSubContent",
          "props": []
        },
        {
          "name": "MenubarGroup",
          "props": []
        }
      ]
    },
    "popover": {
      "name": "Popover",
      "type": "navigation",
      "description": "Displays rich content in a portal, triggered by a button",
      "dependencies": [
        "radix-vue"
      ],
      "devDependencies": [],
      "registryDependencies": [],
      "files": [
        "Popover.vue",
        "PopoverContent.vue",
        "index.ts"
      ],
      "category": "navigation",
      "props": [
        {
          "name": "open",
          "type": {
            "kind": "primitive",
            "name": "boolean"
          },
          "description": "Controlled open state."
        },
        {
          "name": "defaultOpen",
          "type": {
            "kind": "primitive",
            "name": "boolean"
          },
          "default": false,
          "description": "Initial open state for uncontrolled usage."
        },
        {
          "name": "modal",
          "type": {
            "kind": "primitive",
            "name": "boolean"
          },
          "default": false,
          "description": "Whether the popover should behave as modal."
        },
        {
          "name": "update:open",
          "type": {
            "kind": "function",
            "signature": "(open: boolean) => void"
          },
          "description": "Emitted when the open state changes."
        }
      ],
      "children": [
        {
          "name": "PopoverTrigger",
          "props": [
            {
              "name": "as",
              "type": {
                "kind": "custom",
                "name": "AsTag | Component"
              },
              "default": "button",
              "description": "Element or component to render."
            },
            {
              "name": "asChild",
              "type": {
                "kind": "primitive",
                "name": "boolean"
              },
              "default": false,
              "description": "Render the trigger as a child element."
            }
          ]
        },
        {
          "name": "PopoverContent",
          "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 popover content."
            },
            {
              "name": "align",
              "type": {
                "kind": "union",
                "values": [
                  {
                    "kind": "literal",
                    "value": "start"
                  },
                  {
                    "kind": "literal",
                    "value": "center"
                  },
                  {
                    "kind": "literal",
                    "value": "end"
                  }
                ]
              },
              "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": "avoidCollisions",
              "type": {
                "kind": "primitive",
                "name": "boolean"
              },
              "description": "Whether to avoid collisions with viewport edges."
            },
            {
              "name": "collisionPadding",
              "type": {
                "kind": "custom",
                "name": "number | Partial<Record<Side, number>>"
              },
              "description": "Padding used for collision detection."
            },
            {
              "name": "sticky",
              "type": {
                "kind": "union",
                "values": [
                  {
                    "kind": "literal",
                    "value": "partial"
                  },
                  {
                    "kind": "literal",
                    "value": "always"
                  }
                ]
              },
              "description": "Sticky behavior on the align axis."
            },
            {
              "name": "hideWhenDetached",
              "type": {
                "kind": "primitive",
                "name": "boolean"
              },
              "description": "Hide content when the trigger becomes detached."
            },
            {
              "name": "forceMount",
              "type": {
                "kind": "primitive",
                "name": "boolean"
              },
              "description": "Force-mount the content."
            },
            {
              "name": "as",
              "type": {
                "kind": "custom",
                "name": "AsTag | Component"
              },
              "default": "div",
              "description": "Element or component to render."
            },
            {
              "name": "asChild",
              "type": {
                "kind": "primitive",
                "name": "boolean"
              },
              "default": false,
              "description": "Render the content as a child element."
            },
            {
              "name": "class",
              "type": {
                "kind": "primitive",
                "name": "string"
              },
              "default": "",
              "description": "CSS class names for the popover content."
            }
          ]
        }
      ]
    },
    "tooltip": {
      "name": "Tooltip",
      "type": "navigation",
      "description": "A popup that displays information related to an element when the element receives keyboard focus or the mouse hovers over it",
      "dependencies": [
        "radix-vue"
      ],
      "devDependencies": [],
      "registryDependencies": [],
      "files": [
        "Tooltip.vue",
        "TooltipContent.vue",
        "index.ts"
      ],
      "category": "navigation",
      "props": [
        {
          "name": "open",
          "type": {
            "kind": "primitive",
            "name": "boolean"
          },
          "description": "Controlled open state."
        },
        {
          "name": "defaultOpen",
          "type": {
            "kind": "primitive",
            "name": "boolean"
          },
          "default": false,
          "description": "Initial open state for uncontrolled usage."
        },
        {
          "name": "delayDuration",
          "type": {
            "kind": "primitive",
            "name": "number"
          },
          "default": 700,
          "description": "Delay in milliseconds before opening."
        },
        {
          "name": "disableHoverableContent",
          "type": {
            "kind": "primitive",
            "name": "boolean"
          },
          "default": false,
          "description": "Whether moving into the content closes the tooltip."
        },
        {
          "name": "disableClosingTrigger",
          "type": {
            "kind": "primitive",
            "name": "boolean"
          },
          "default": false,
          "description": "Prevent closing when clicking the trigger."
        },
        {
          "name": "ignoreNonKeyboardFocus",
          "type": {
            "kind": "primitive",
            "name": "boolean"
          },
          "default": false,
          "description": "Only open on keyboard focus."
        },
        {
          "name": "update:open",
          "type": {
            "kind": "function",
            "signature": "(open: boolean) => void"
          },
          "description": "Emitted when the open state changes."
        }
      ],
      "children": [
        {
          "name": "TooltipProvider",
          "props": [
            {
              "name": "delayDuration",
              "type": {
                "kind": "primitive",
                "name": "number"
              },
              "default": 700,
              "description": "Delay in milliseconds before opening nested tooltips."
            },
            {
              "name": "skipDelayDuration",
              "type": {
                "kind": "primitive",
                "name": "number"
              },
              "default": 300,
              "description": "Time window to skip delay when moving between tooltips."
            },
            {
              "name": "disableHoverableContent",
              "type": {
                "kind": "primitive",
                "name": "boolean"
              },
              "default": false,
              "description": "Whether moving into tooltip content closes it."
            }
          ]
        },
        {
          "name": "TooltipTrigger",
          "props": [
            {
              "name": "as",
              "type": {
                "kind": "custom",
                "name": "AsTag | Component"
              },
              "default": "button",
              "description": "Element or component to render."
            },
            {
              "name": "asChild",
              "type": {
                "kind": "primitive",
                "name": "boolean"
              },
              "default": false,
              "description": "Render the trigger as a child element."
            }
          ]
        },
        {
          "name": "TooltipContent",
          "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"
              },
              "default": 4,
              "description": "Offset in pixels from the trigger."
            },
            {
              "name": "alignOffset",
              "type": {
                "kind": "primitive",
                "name": "number"
              },
              "description": "Offset in pixels from the alignment edge."
            },
            {
              "name": "avoidCollisions",
              "type": {
                "kind": "primitive",
                "name": "boolean"
              },
              "description": "Whether to avoid collisions with viewport edges."
            },
            {
              "name": "collisionPadding",
              "type": {
                "kind": "custom",
                "name": "number | Partial<Record<Side, number>>"
              },
              "description": "Padding used for collision detection."
            },
            {
              "name": "sticky",
              "type": {
                "kind": "union",
                "values": [
                  {
                    "kind": "literal",
                    "value": "partial"
                  },
                  {
                    "kind": "literal",
                    "value": "always"
                  }
                ]
              },
              "description": "Sticky behavior on the align axis."
            },
            {
              "name": "hideWhenDetached",
              "type": {
                "kind": "primitive",
                "name": "boolean"
              },
              "description": "Hide content when the trigger becomes detached."
            },
            {
              "name": "as",
              "type": {
                "kind": "custom",
                "name": "AsTag | Component"
              },
              "default": "div",
              "description": "Element or component to render."
            },
            {
              "name": "asChild",
              "type": {
                "kind": "primitive",
                "name": "boolean"
              },
              "default": false,
              "description": "Render the content as a child element."
            },
            {
              "name": "class",
              "type": {
                "kind": "primitive",
                "name": "string"
              },
              "default": "",
              "description": "CSS class names for the tooltip content."
            }
          ]
        }
      ]
    },
    "line-chart": {
      "name": "LineChart",
      "type": "chart",
      "description": "Display data as a responsive line chart with smooth curves and customizable styling",
      "dependencies": [
        "vue-echarts",
        "echarts"
      ],
      "devDependencies": [],
      "registryDependencies": [],
      "files": [
        "index.ts",
        "linechart.vue",
        "types.ts",
        "utils.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": "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": "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
        }
      ]
    },
    "bar-chart": {
      "name": "BarChart",
      "type": "chart",
      "description": "Display data as vertical or horizontal bars with support for stacked and grouped layouts",
      "dependencies": [
        "vue-echarts",
        "echarts"
      ],
      "devDependencies": [],
      "registryDependencies": [],
      "files": [
        "barchart.vue",
        "index.ts",
        "types.ts",
        "utils.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": "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": "{}"
        },
        {
          "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
        }
      ]
    },
    "pie-chart": {
      "name": "PieChart",
      "type": "chart",
      "description": "Display proportional data as a pie or donut chart with customizable labels and legend",
      "dependencies": [
        "vue-echarts",
        "echarts"
      ],
      "devDependencies": [],
      "registryDependencies": [],
      "files": [
        "index.ts",
        "piechart.vue",
        "types.ts",
        "utils.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": 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": [
        "vue-echarts",
        "echarts"
      ],
      "devDependencies": [],
      "registryDependencies": [],
      "files": [
        "donutchart.vue",
        "index.ts",
        "types.ts",
        "utils.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": "{}"
        }
      ]
    },
    "area-chart": {
      "name": "AreaChart",
      "type": "chart",
      "description": "Visualize cumulative totals over time with filled areas and gradient support",
      "dependencies": [
        "vue-echarts",
        "echarts"
      ],
      "devDependencies": [],
      "registryDependencies": [],
      "files": [
        "areachart.vue",
        "index.ts",
        "types.ts",
        "utils.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": "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": "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
        }
      ]
    },
    "radar-chart": {
      "name": "RadarChart",
      "type": "chart",
      "description": "Display multi-dimensional data comparison on a radial grid",
      "dependencies": [
        "vue-echarts",
        "echarts"
      ],
      "devDependencies": [],
      "registryDependencies": [],
      "files": [
        "index.ts",
        "radarchart.vue",
        "types.ts",
        "utils.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": "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",
      "type": "chart",
      "description": "Display distribution and correlation analysis with scatter plots",
      "dependencies": [
        "vue-echarts",
        "echarts"
      ],
      "devDependencies": [],
      "registryDependencies": [],
      "files": [
        "index.ts",
        "scatterchart.vue",
        "types.ts",
        "utils.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": "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",
      "type": "chart",
      "description": "Combine multiple chart types (line, bar, area) in a single visualization",
      "dependencies": [
        "vue-echarts",
        "echarts"
      ],
      "devDependencies": [],
      "registryDependencies": [],
      "files": [
        "index.ts",
        "mixedchart.vue",
        "types.ts",
        "utils.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": "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": "{}"
        }
      ]
    },
    "empty": {
      "name": "Empty",
      "type": "feedback",
      "description": "Displays an empty state placeholder",
      "dependencies": [],
      "devDependencies": [],
      "registryDependencies": [],
      "files": [
        "Empty.vue",
        "index.ts"
      ],
      "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."
        }
      ]
    },
    "kbd": {
      "name": "Kbd",
      "type": "data-display",
      "description": "Displays keyboard key combinations",
      "dependencies": [],
      "devDependencies": [],
      "registryDependencies": [],
      "files": [
        "Kbd.vue",
        "index.ts"
      ],
      "category": "data-display",
      "props": [
        {
          "name": "size",
          "type": {
            "kind": "union",
            "values": [
              {
                "kind": "literal",
                "value": "sm"
              },
              {
                "kind": "literal",
                "value": "default"
              },
              {
                "kind": "literal",
                "value": "lg"
              }
            ]
          },
          "default": "default",
          "description": "Size variant."
        },
        {
          "name": "class",
          "type": {
            "kind": "primitive",
            "name": "string"
          },
          "default": "",
          "description": "CSS class names for the kbd element."
        }
      ]
    },
    "typography": {
      "name": "Typography",
      "type": "data-display",
      "description": "Text formatting and typography components",
      "dependencies": [],
      "devDependencies": [],
      "registryDependencies": [],
      "files": [
        "Typography.vue",
        "index.ts"
      ],
      "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": "as",
          "type": {
            "kind": "primitive",
            "name": "string"
          },
          "description": "Override element type."
        },
        {
          "name": "class",
          "type": {
            "kind": "primitive",
            "name": "string"
          },
          "default": "",
          "description": "CSS class names for the rendered element."
        }
      ]
    },
    "pagination": {
      "name": "Pagination",
      "type": "navigation",
      "description": "Page navigation with previous, next, and page numbers",
      "dependencies": [
        "lucide-vue-next"
      ],
      "devDependencies": [],
      "registryDependencies": [],
      "files": [
        "Pagination.vue",
        "index.ts"
      ],
      "category": "navigation",
      "props": [
        {
          "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": "class",
          "type": {
            "kind": "primitive",
            "name": "string"
          },
          "default": "",
          "description": "CSS class names for the pagination nav."
        },
        {
          "name": "pageChange",
          "type": {
            "kind": "function",
            "signature": "(page: number) => void"
          },
          "description": "Emitted when the page changes."
        }
      ]
    },
    "table": {
      "name": "Table",
      "type": "data-display",
      "description": "A responsive table component for displaying data",
      "dependencies": [],
      "devDependencies": [],
      "registryDependencies": [],
      "files": [
        "Table.vue",
        "index.ts"
      ],
      "category": "data-display",
      "props": [
        {
          "name": "class",
          "type": {
            "kind": "primitive",
            "name": "string"
          },
          "default": "",
          "description": "CSS class names for the table element."
        }
      ],
      "children": [
        {
          "name": "TableHeader",
          "props": [
            {
              "name": "class",
              "type": {
                "kind": "primitive",
                "name": "string"
              },
              "default": "",
              "description": "CSS class names for the table header section."
            }
          ]
        },
        {
          "name": "TableBody",
          "props": [
            {
              "name": "class",
              "type": {
                "kind": "primitive",
                "name": "string"
              },
              "default": "",
              "description": "CSS class names for the table body section."
            }
          ]
        },
        {
          "name": "TableFooter",
          "props": [
            {
              "name": "class",
              "type": {
                "kind": "primitive",
                "name": "string"
              },
              "default": "",
              "description": "CSS class names for the table footer section."
            }
          ]
        },
        {
          "name": "TableRow",
          "props": [
            {
              "name": "class",
              "type": {
                "kind": "primitive",
                "name": "string"
              },
              "default": "",
              "description": "CSS class names for the table row."
            }
          ]
        },
        {
          "name": "TableHead",
          "props": [
            {
              "name": "class",
              "type": {
                "kind": "primitive",
                "name": "string"
              },
              "default": "",
              "description": "CSS class names for the header cell."
            }
          ]
        },
        {
          "name": "TableCell",
          "props": [
            {
              "name": "class",
              "type": {
                "kind": "primitive",
                "name": "string"
              },
              "default": "",
              "description": "CSS class names for the data cell."
            }
          ]
        },
        {
          "name": "TableCaption",
          "props": [
            {
              "name": "class",
              "type": {
                "kind": "primitive",
                "name": "string"
              },
              "default": "",
              "description": "CSS class names for the caption."
            }
          ]
        }
      ]
    },
    "calendar": {
      "name": "Calendar",
      "type": "form",
      "description": "A date picker calendar component",
      "dependencies": [
        "radix-vue",
        "lucide-vue-next"
      ],
      "devDependencies": [],
      "registryDependencies": [],
      "files": [
        "Calendar.vue",
        "index.ts"
      ],
      "category": "form",
      "props": [
        {
          "name": "modelValue",
          "type": {
            "kind": "custom",
            "name": "Date"
          },
          "description": "Controlled selected date. Supports v-model."
        },
        {
          "name": "placeholder",
          "type": {
            "kind": "custom",
            "name": "Date"
          },
          "description": "Placeholder date used by the calendar root."
        },
        {
          "name": "class",
          "type": {
            "kind": "primitive",
            "name": "string"
          },
          "default": "",
          "description": "CSS class names for the calendar root."
        },
        {
          "name": "update:modelValue",
          "type": {
            "kind": "function",
            "signature": "(value: Date) => void"
          },
          "description": "Emitted when the selected date changes."
        }
      ]
    },
    "calendar-range": {
      "name": "Calendar Range",
      "type": "form",
      "description": "A date range picker calendar component",
      "dependencies": [
        "radix-vue",
        "lucide-vue-next"
      ],
      "devDependencies": [],
      "registryDependencies": [],
      "files": [
        "CalendarRange.vue",
        "index.ts"
      ],
      "category": "form",
      "props": [
        {
          "name": "modelValue",
          "type": {
            "kind": "custom",
            "name": "{ start: Date; end: Date }"
          },
          "description": "Controlled selected date range."
        },
        {
          "name": "class",
          "type": {
            "kind": "primitive",
            "name": "string"
          },
          "description": "CSS class names for the calendar root.",
          "default": ""
        },
        {
          "name": "placeholder",
          "type": {
            "kind": "custom",
            "name": "any"
          },
          "description": "Placeholder value forwarded to RangeCalendarRoot."
        },
        {
          "name": "pagedNavigation",
          "type": {
            "kind": "primitive",
            "name": "boolean"
          },
          "description": "Whether next and previous controls advance by full pages."
        },
        {
          "name": "numberOfMonths",
          "type": {
            "kind": "primitive",
            "name": "number"
          },
          "description": "Number of months to display at once."
        },
        {
          "name": "weekStartsOn",
          "type": {
            "kind": "primitive",
            "name": "number"
          },
          "description": "Index of the first day of the week."
        },
        {
          "name": "fixedWeeks",
          "type": {
            "kind": "primitive",
            "name": "boolean"
          },
          "description": "Whether to always render six weeks."
        },
        {
          "name": "disabled",
          "type": {
            "kind": "custom",
            "name": "Matcher | Matcher[]"
          },
          "description": "Dates that cannot be selected."
        },
        {
          "name": "readonly",
          "type": {
            "kind": "primitive",
            "name": "boolean"
          },
          "description": "Prevents changing the selected range.",
          "default": false
        }
      ]
    },
    "command": {
      "name": "Command",
      "type": "navigation",
      "description": "Command palette for keyboard-first navigation and search",
      "dependencies": [
        "lucide-vue-next"
      ],
      "devDependencies": [],
      "registryDependencies": [],
      "files": [
        "Command.vue",
        "index.ts"
      ],
      "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..."
        }
      ]
    },
    "sheet": {
      "name": "Sheet",
      "type": "layout",
      "description": "Slide-over panel that slides in from the edge of the screen",
      "dependencies": [
        "radix-vue",
        "lucide-vue-next"
      ],
      "devDependencies": [],
      "registryDependencies": [],
      "files": [
        "Sheet.vue",
        "index.ts"
      ],
      "category": "layout",
      "props": [
        {
          "name": "open",
          "type": {
            "kind": "primitive",
            "name": "boolean"
          },
          "default": false,
          "description": "Controlled open state."
        },
        {
          "name": "defaultOpen",
          "type": {
            "kind": "primitive",
            "name": "boolean"
          },
          "default": false,
          "description": "Initial open state for uncontrolled usage via the underlying dialog root when using `Sheet` from `radix-vue`."
        },
        {
          "name": "modal",
          "type": {
            "kind": "primitive",
            "name": "boolean"
          },
          "default": true,
          "description": "Whether interaction outside the sheet is disabled while open."
        },
        {
          "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 root wrapper."
        },
        {
          "name": "update:open",
          "type": {
            "kind": "function",
            "signature": "(open: boolean) => void"
          },
          "description": "Emitted when the open state changes."
        }
      ],
      "children": [
        {
          "name": "SheetTrigger",
          "props": [
            {
              "name": "as",
              "type": {
                "kind": "custom",
                "name": "AsTag | Component"
              },
              "default": "button",
              "description": "Element or component to render."
            },
            {
              "name": "asChild",
              "type": {
                "kind": "primitive",
                "name": "boolean"
              },
              "default": false,
              "description": "Render the trigger as a child element."
            }
          ]
        },
        {
          "name": "SheetContent",
          "props": [
            {
              "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": "forceMount",
              "type": {
                "kind": "primitive",
                "name": "boolean"
              },
              "description": "Force-mount the content even when closed."
            },
            {
              "name": "class",
              "type": {
                "kind": "primitive",
                "name": "string"
              },
              "default": "",
              "description": "CSS class names for the sheet content."
            },
            {
              "name": "close",
              "type": {
                "kind": "function",
                "signature": "() => void"
              },
              "description": "Emitted by the wrapper close button when clicked."
            }
          ]
        },
        {
          "name": "SheetHeader",
          "props": [
            {
              "name": "class",
              "type": {
                "kind": "primitive",
                "name": "string"
              },
              "default": "",
              "description": "CSS class names for the header container."
            }
          ]
        },
        {
          "name": "SheetFooter",
          "props": [
            {
              "name": "class",
              "type": {
                "kind": "primitive",
                "name": "string"
              },
              "default": "",
              "description": "CSS class names for the footer container."
            }
          ]
        },
        {
          "name": "SheetTitle",
          "props": [
            {
              "name": "as",
              "type": {
                "kind": "custom",
                "name": "AsTag | Component"
              },
              "default": "h2",
              "description": "Element or component to render."
            },
            {
              "name": "asChild",
              "type": {
                "kind": "primitive",
                "name": "boolean"
              },
              "default": false,
              "description": "Render the title as a child element."
            }
          ]
        },
        {
          "name": "SheetDescription",
          "props": [
            {
              "name": "as",
              "type": {
                "kind": "custom",
                "name": "AsTag | Component"
              },
              "default": "p",
              "description": "Element or component to render."
            },
            {
              "name": "asChild",
              "type": {
                "kind": "primitive",
                "name": "boolean"
              },
              "default": false,
              "description": "Render the description as a child element."
            }
          ]
        }
      ]
    },
    "toolbar": {
      "name": "Toolbar",
      "type": "layout",
      "description": "A container for grouping a set of controls",
      "dependencies": [
        "radix-vue"
      ],
      "devDependencies": [],
      "registryDependencies": [],
      "files": [
        "Toolbar.vue",
        "index.ts"
      ],
      "category": "layout",
      "props": [
        {
          "name": "orientation",
          "type": {
            "kind": "union",
            "values": [
              {
                "kind": "literal",
                "value": "horizontal"
              },
              {
                "kind": "literal",
                "value": "vertical"
              }
            ]
          },
          "default": "horizontal",
          "description": "Toolbar orientation."
        },
        {
          "name": "dir",
          "type": {
            "kind": "union",
            "values": [
              {
                "kind": "literal",
                "value": "ltr"
              },
              {
                "kind": "literal",
                "value": "rtl"
              }
            ]
          },
          "default": "ltr",
          "description": "Reading direction for roving focus."
        },
        {
          "name": "loop",
          "type": {
            "kind": "primitive",
            "name": "boolean"
          },
          "default": true,
          "description": "Loop keyboard focus from last item to first."
        },
        {
          "name": "as",
          "type": {
            "kind": "custom",
            "name": "AsTag | Component"
          },
          "default": "div",
          "description": "Element or component to render."
        },
        {
          "name": "class",
          "type": {
            "kind": "primitive",
            "name": "string"
          },
          "default": "",
          "description": "CSS class names for the toolbar root."
        }
      ]
    },
    "tags-input": {
      "name": "Tags Input",
      "type": "form",
      "description": "Input field for entering multiple tags or values",
      "dependencies": [
        "lucide-vue-next"
      ],
      "devDependencies": [],
      "registryDependencies": [],
      "files": [
        "TagsInput.vue",
        "index.ts"
      ],
      "category": "form",
      "props": [
        {
          "name": "modelValue",
          "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": "class",
          "type": {
            "kind": "primitive",
            "name": "string"
          },
          "description": "CSS classes applied to the tags container.",
          "default": ""
        },
        {
          "name": "update:modelValue",
          "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."
        }
      ]
    },
    "scroll-area": {
      "name": "Scroll Area",
      "type": "layout",
      "description": "Augments native scroll functionality for custom, cross-browser styling",
      "dependencies": [
        "radix-vue"
      ],
      "devDependencies": [],
      "registryDependencies": [],
      "files": [
        "ScrollArea.vue",
        "ScrollBar.vue",
        "index.ts"
      ],
      "category": "layout",
      "props": [
        {
          "name": "type",
          "type": {
            "kind": "union",
            "values": [
              {
                "kind": "literal",
                "value": "hover"
              },
              {
                "kind": "literal",
                "value": "scroll"
              },
              {
                "kind": "literal",
                "value": "auto"
              },
              {
                "kind": "literal",
                "value": "always"
              }
            ]
          },
          "default": "hover",
          "description": "Scrollbar visibility behavior."
        },
        {
          "name": "dir",
          "type": {
            "kind": "union",
            "values": [
              {
                "kind": "literal",
                "value": "ltr"
              },
              {
                "kind": "literal",
                "value": "rtl"
              }
            ]
          },
          "description": "Reading direction."
        },
        {
          "name": "scrollHideDelay",
          "type": {
            "kind": "primitive",
            "name": "number"
          },
          "default": 600,
          "description": "Delay before hiding scrollbars when applicable."
        },
        {
          "name": "as",
          "type": {
            "kind": "custom",
            "name": "AsTag | Component"
          },
          "default": "div",
          "description": "Element or component to render."
        },
        {
          "name": "asChild",
          "type": {
            "kind": "primitive",
            "name": "boolean"
          },
          "default": false,
          "description": "Render the root as a child element."
        },
        {
          "name": "class",
          "type": {
            "kind": "primitive",
            "name": "string"
          },
          "default": "",
          "description": "CSS class names for the scroll area root."
        }
      ],
      "children": [
        {
          "name": "ScrollBar",
          "props": [
            {
              "name": "orientation",
              "type": {
                "kind": "union",
                "values": [
                  {
                    "kind": "literal",
                    "value": "horizontal"
                  },
                  {
                    "kind": "literal",
                    "value": "vertical"
                  }
                ]
              },
              "default": "vertical",
              "description": "Scrollbar orientation."
            },
            {
              "name": "forceMount",
              "type": {
                "kind": "primitive",
                "name": "boolean"
              },
              "description": "Force-mount the scrollbar."
            },
            {
              "name": "as",
              "type": {
                "kind": "custom",
                "name": "AsTag | Component"
              },
              "default": "div",
              "description": "Element or component to render."
            },
            {
              "name": "asChild",
              "type": {
                "kind": "primitive",
                "name": "boolean"
              },
              "default": false,
              "description": "Render the scrollbar as a child element."
            },
            {
              "name": "class",
              "type": {
                "kind": "primitive",
                "name": "string"
              },
              "default": "",
              "description": "CSS class names for the scrollbar."
            }
          ]
        }
      ]
    },
    "toggle": {
      "name": "Toggle",
      "type": "interactive",
      "description": "A two-state button that can be either on or off",
      "dependencies": [
        "radix-vue",
        "class-variance-authority"
      ],
      "devDependencies": [],
      "registryDependencies": [],
      "files": [
        "Toggle.vue",
        "index.ts",
        "variants.ts"
      ],
      "category": "interactive",
      "props": [
        {
          "name": "pressed",
          "type": {
            "kind": "primitive",
            "name": "boolean"
          },
          "description": "Controlled pressed state."
        },
        {
          "name": "defaultPressed",
          "type": {
            "kind": "primitive",
            "name": "boolean"
          },
          "default": false,
          "description": "Initial pressed state for uncontrolled usage."
        },
        {
          "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": "as",
          "type": {
            "kind": "custom",
            "name": "AsTag | Component"
          },
          "default": "button",
          "description": "Element or component to render."
        },
        {
          "name": "asChild",
          "type": {
            "kind": "primitive",
            "name": "boolean"
          },
          "default": false,
          "description": "Render the toggle as a child element."
        },
        {
          "name": "class",
          "type": {
            "kind": "primitive",
            "name": "string"
          },
          "default": "",
          "description": "CSS class names for the toggle."
        },
        {
          "name": "update:pressed",
          "type": {
            "kind": "function",
            "signature": "(pressed: boolean) => void"
          },
          "description": "Emitted when the pressed state changes."
        }
      ]
    },
    "toggle-group": {
      "name": "Toggle Group",
      "type": "interactive",
      "description": "A set of two-state buttons that can be toggled on or off",
      "dependencies": [
        "radix-vue"
      ],
      "devDependencies": [],
      "registryDependencies": [
        "toggle"
      ],
      "files": [
        "ToggleGroup.vue",
        "ToggleGroupItem.vue",
        "index.ts"
      ],
      "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": "modelValue",
          "type": {
            "kind": "union",
            "values": [
              {
                "kind": "primitive",
                "name": "string"
              },
              {
                "kind": "array",
                "of": {
                  "kind": "primitive",
                  "name": "string"
                }
              }
            ]
          },
          "description": "Controlled selected value or values."
        },
        {
          "name": "defaultValue",
          "type": {
            "kind": "union",
            "values": [
              {
                "kind": "primitive",
                "name": "string"
              },
              {
                "kind": "array",
                "of": {
                  "kind": "primitive",
                  "name": "string"
                }
              }
            ]
          },
          "description": "Initial selected value or values for uncontrolled usage."
        },
        {
          "name": "disabled",
          "type": {
            "kind": "primitive",
            "name": "boolean"
          },
          "default": false,
          "description": "Disables the group."
        },
        {
          "name": "rovingFocus",
          "type": {
            "kind": "primitive",
            "name": "boolean"
          },
          "default": true,
          "description": "Enable roving focus between items."
        },
        {
          "name": "loop",
          "type": {
            "kind": "primitive",
            "name": "boolean"
          },
          "default": true,
          "description": "Loop keyboard focus from last item to first."
        },
        {
          "name": "orientation",
          "type": {
            "kind": "union",
            "values": [
              {
                "kind": "literal",
                "value": "horizontal"
              },
              {
                "kind": "literal",
                "value": "vertical"
              }
            ]
          },
          "default": "horizontal",
          "description": "Orientation used for keyboard navigation."
        },
        {
          "name": "dir",
          "type": {
            "kind": "union",
            "values": [
              {
                "kind": "literal",
                "value": "ltr"
              },
              {
                "kind": "literal",
                "value": "rtl"
              }
            ]
          },
          "default": "ltr",
          "description": "Reading direction."
        },
        {
          "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": "update:modelValue",
          "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"
                  }
                ]
              },
              "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"
                  }
                ]
              },
              "description": "Size override for the item."
            },
            {
              "name": "as",
              "type": {
                "kind": "custom",
                "name": "AsTag | Component"
              },
              "default": "button",
              "description": "Element or component to render."
            },
            {
              "name": "asChild",
              "type": {
                "kind": "primitive",
                "name": "boolean"
              },
              "default": false,
              "description": "Render the item as a child element."
            },
            {
              "name": "class",
              "type": {
                "kind": "primitive",
                "name": "string"
              },
              "default": "",
              "description": "CSS class names for the item."
            }
          ]
        }
      ]
    },
    "resizable": {
      "name": "Resizable",
      "type": "layout",
      "description": "Accessible resizable panel groups and layouts with keyboard support using Radix Vue Splitter.",
      "dependencies": [
        "radix-vue"
      ],
      "devDependencies": [],
      "registryDependencies": [],
      "files": [
        "ResizableHandle.vue",
        "ResizablePanel.vue",
        "ResizablePanelGroup.vue",
        "index.ts"
      ],
      "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": "autoSaveId",
              "type": {
                "kind": "primitive",
                "name": "string"
              },
              "description": "Persist layout using local storage."
            },
            {
              "name": "keyboardResizeBy",
              "type": {
                "kind": "primitive",
                "name": "number"
              },
              "description": "Resize step when using keyboard interaction.",
              "default": 10
            },
            {
              "name": "class",
              "type": {
                "kind": "primitive",
                "name": "string"
              },
              "description": "CSS class names for the panel group.",
              "default": ""
            },
            {
              "name": "layout",
              "type": {
                "kind": "function",
                "signature": "(val: 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": "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."
            },
            {
              "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": "resize",
              "type": {
                "kind": "function",
                "signature": "(size: number, prevSize: number | undefined) => void"
              },
              "description": "Event emitted when the panel is resized."
            },
            {
              "name": "collapse",
              "type": {
                "kind": "function",
                "signature": "() => void"
              },
              "description": "Event emitted when the panel collapses."
            },
            {
              "name": "expand",
              "type": {
                "kind": "function",
                "signature": "() => void"
              },
              "description": "Event emitted when the panel expands."
            }
          ]
        },
        {
          "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": ""
            },
            {
              "name": "dragging",
              "type": {
                "kind": "function",
                "signature": "(isDragging: boolean) => void"
              },
              "description": "Event emitted while the resize handle drag state changes."
            }
          ]
        }
      ]
    }
  },
  "groups": {
    "form": {
      "name": "Form Components",
      "components": [
        "button",
        "input",
        "label",
        "select",
        "checkbox",
        "radio-group",
        "switch",
        "slider",
        "textarea",
        "form",
        "calendar",
        "calendar-range",
        "tags-input"
      ]
    },
    "layout": {
      "name": "Layout Components",
      "components": [
        "card",
        "separator",
        "accordion",
        "tabs",
        "dialog",
        "sheet",
        "toolbar",
        "aspect-ratio",
        "collapsible",
        "scroll-area",
        "resizable"
      ]
    },
    "feedback": {
      "name": "Feedback Components",
      "components": [
        "alert",
        "alert-dialog",
        "toast",
        "progress",
        "skeleton",
        "badge",
        "empty"
      ]
    },
    "data-display": {
      "name": "Data Display Components",
      "components": [
        "kbd",
        "typography",
        "table",
        "avatar",
        "hover-card"
      ]
    },
    "navigation": {
      "name": "Navigation Components",
      "components": [
        "dropdown-menu",
        "navigation-menu",
        "breadcrumb",
        "popover",
        "tooltip",
        "pagination",
        "command",
        "context-menu",
        "menubar"
      ]
    },
    "interactive": {
      "name": "Interactive Components",
      "components": [
        "toggle",
        "toggle-group"
      ]
    },
    "charts": {
      "name": "Chart Components",
      "components": [
        "line-chart",
        "bar-chart",
        "pie-chart",
        "donut-chart",
        "area-chart",
        "radar-chart",
        "scatter-chart",
        "mixed-chart"
      ]
    }
  }
}
