/**
 * NavigationMenu type definitions
 * @countermeasure/web-components/navigation/navigation-menu
 */
export interface NavChild {
    /** Visible label rendered in the dropdown. */
    label: string;
    /** Destination URL for the child link. */
    href: string;
    /** Optional supporting copy displayed below the label. */
    description?: string;
    /** Optional icon HTML rendered alongside the label. */
    icon?: string;
}
export interface NavItem {
    /** Top-level link/trigger label. */
    label: string;
    /** Optional URL — items with `children` typically omit `href`. */
    href?: string;
    /** Optional icon HTML rendered before the label. */
    icon?: string;
    /**
     * Marks the item as the current section.
     * @default false
     */
    active?: boolean;
    /** Child links rendered inside the dropdown. */
    children?: NavChild[];
}
export interface NavMenuConfig {
    /** Container element (or selector) the menu is mounted into. */
    container: HTMLElement | string;
    /** Top-level navigation entries. */
    items: NavItem[];
    /** Additional CSS class names. */
    className?: string;
    /** Called when a link is activated. */
    onNavigate?: (href: string) => void;
}
//# sourceMappingURL=types.d.ts.map