import * as React from 'react'; import { NavigationMenu as BaseNavigationMenu } from '@base-ui/react/navigation-menu'; type NavigationMenuVariant = 'pill' | 'line'; type NavigationMenuSize = 'sm' | 'md' | 'lg'; type NavigationMenuIconKind = 'chevron' | 'caret' | 'plus' | false; type BaseRootProps = React.ComponentProps; interface NavigationMenuProps extends BaseRootProps { /** * Trigger appearance - hover/active pill, or an animated underline. * @default 'pill' */ variant?: NavigationMenuVariant; /** * Scales triggers, popup radius, and link padding. * @default 'md' */ size?: NavigationMenuSize; /** * The open/close indicator shown by each `NavigationMenuIcon`. * @default 'chevron' */ icon?: NavigationMenuIconKind; /** * Render a dimmed, blurred backdrop behind the open panel. * @default false */ backdrop?: boolean; /** * Auto-render the portalled positioner + popup. Set `false` to render your own. * @default true */ viewport?: boolean; /** * Animate the popup's size and position between items. * @default true */ morph?: boolean; /** * Gap between the trigger and the auto-rendered popup. * @default 6 */ sideOffset?: number; } declare function NavigationMenu({ className, variant, size, icon, orientation, backdrop, viewport, morph, sideOffset, children, ...rest }: NavigationMenuProps): React.JSX.Element; type NavigationMenuListProps = React.ComponentProps; declare function NavigationMenuList({ className, ...props }: NavigationMenuListProps): React.JSX.Element; type NavigationMenuItemProps = React.ComponentProps; declare function NavigationMenuItem(props: NavigationMenuItemProps): React.JSX.Element; type NavigationMenuTriggerProps = React.ComponentProps; declare function NavigationMenuTrigger({ className, ...props }: NavigationMenuTriggerProps): React.JSX.Element; type NavigationMenuIconProps = Omit, 'children'> & { /** * Override the indicator for this trigger. * @default root */ icon?: NavigationMenuIconKind; }; declare function NavigationMenuIcon({ icon, className, ...props }: NavigationMenuIconProps): React.JSX.Element | null; type NavigationMenuContentProps = React.ComponentProps; declare function NavigationMenuContent({ className, children, ...props }: NavigationMenuContentProps): React.JSX.Element; type NavigationMenuLinkProps = React.ComponentProps; declare function NavigationMenuLink({ className, ...props }: NavigationMenuLinkProps): React.JSX.Element; type PositionerPicks = Pick, 'side' | 'sideOffset' | 'align' | 'alignOffset' | 'collisionPadding' | 'collisionAvoidance'>; type PortalPicks = Pick, 'container'>; interface NavigationMenuPositionerProps extends PositionerPicks, PortalPicks { /** Extra classes, merged via `tailwind-merge`. */ className?: string; } declare function NavigationMenuPositioner({ className, side, sideOffset, align, alignOffset, collisionPadding, collisionAvoidance, container, }: NavigationMenuPositionerProps): React.JSX.Element; type NavigationMenuViewportProps = React.ComponentProps; declare function NavigationMenuViewport({ className, ...props }: NavigationMenuViewportProps): React.JSX.Element; export { NavigationMenu, NavigationMenuList, NavigationMenuItem, NavigationMenuTrigger, NavigationMenuIcon, NavigationMenuContent, NavigationMenuLink, NavigationMenuPositioner, NavigationMenuViewport, }; export type { NavigationMenuProps, NavigationMenuListProps, NavigationMenuItemProps, NavigationMenuTriggerProps, NavigationMenuIconProps, NavigationMenuContentProps, NavigationMenuLinkProps, NavigationMenuPositionerProps, NavigationMenuViewportProps, }; //# sourceMappingURL=navigation-menu.d.ts.map