import type { HTMLAttributes, ReactNode } from "react"; export type PanelProps = HTMLAttributes & { /** HTML tag to render (defaults to section) */ as?: "article" | "section" | "div" | "aside" | "main"; children: ReactNode; /** Accessible label for screen readers */ "aria-label"?: string; /** Reference to another element that describes this panel */ "aria-describedby"?: string; /** Identifies this panel as a landmark region */ role?: "region" | "article" | "complementary" | "main"; }; /** * Panel component for grouping related content with proper semantics. * * Renders a styled container with semantic HTML and accessibility support. * Use this to create visually distinct sections of your interface. * * @example * // Default section * *

Section Title

*

Section content...

*
* * @example * // With accessibility * * {results} * */ export function Panel({ as: Tag = "section", children, className = "", role, ...props }: PanelProps) { const { "aria-label": ariaLabel, "aria-describedby": ariaDescribedby, ...restProps } = props; return ( {children} ); }