import * as React from 'react'; import { Primitive } from '@radix-ui/react-primitive'; import { DismissableLayer } from '@radix-ui/react-dismissable-layer'; import * as VisuallyHiddenPrimitive from '@radix-ui/react-visually-hidden'; import { Scope as Scope$1 } from '@radix-ui/react-context'; type Scope = { [scopeName: string]: React.Context[]; } | undefined; type ScopeHook = (scope: Scope) => { [__scopeProp: string]: Scope; }; interface CreateScope { scopeName: string; (): ScopeHook; } type Orientation = 'vertical' | 'horizontal'; type Direction = 'ltr' | 'rtl'; declare const createNavigationMenuScope: CreateScope; type NavigationMenuElement = React.ElementRef; type PrimitiveNavProps = React.ComponentPropsWithoutRef; interface NavigationMenuProps extends Omit, PrimitiveNavProps { value?: string; defaultValue?: string; onValueChange?: (value: string) => void; dir?: Direction; orientation?: Orientation; /** * The duration from when the pointer enters the trigger until the tooltip gets opened. * @defaultValue 200 */ delayDuration?: number; /** * How much time a user has to enter another trigger without incurring a delay again. * @defaultValue 300 */ skipDelayDuration?: number; } declare const NavigationMenu: React.ForwardRefExoticComponent>; type PrimitiveDivProps = React.ComponentPropsWithoutRef; interface NavigationMenuSubProps extends Omit, PrimitiveDivProps { value?: string; defaultValue?: string; onValueChange?: (value: string) => void; orientation?: Orientation; } declare const NavigationMenuSub: React.ForwardRefExoticComponent>; interface NavigationMenuProviderPrivateProps { isRootMenu: boolean; scope: Scope$1; children: React.ReactNode; orientation: Orientation; dir: Direction; rootNavigationMenu: NavigationMenuElement | null; value: string; onTriggerEnter(itemValue: string): void; onTriggerLeave?(): void; onContentEnter?(): void; onContentLeave?(): void; onItemSelect(itemValue: string): void; onItemDismiss(): void; } interface NavigationMenuProviderProps extends NavigationMenuProviderPrivateProps { } type PrimitiveUnorderedListProps = React.ComponentPropsWithoutRef; interface NavigationMenuListProps extends PrimitiveUnorderedListProps { } declare const NavigationMenuList: React.ForwardRefExoticComponent>; type FocusProxyElement = React.ElementRef; type PrimitiveListItemProps = React.ComponentPropsWithoutRef; interface NavigationMenuItemProps extends PrimitiveListItemProps { value?: string; } declare const NavigationMenuItem: React.ForwardRefExoticComponent>; type NavigationMenuTriggerElement = React.ElementRef; type PrimitiveButtonProps = React.ComponentPropsWithoutRef; interface NavigationMenuTriggerProps extends PrimitiveButtonProps { } declare const NavigationMenuTrigger: React.ForwardRefExoticComponent>; type PrimitiveLinkProps = React.ComponentPropsWithoutRef; interface NavigationMenuLinkProps extends Omit { active?: boolean; onSelect?: (event: Event) => void; } declare const NavigationMenuLink: React.ForwardRefExoticComponent>; interface NavigationMenuIndicatorProps extends NavigationMenuIndicatorImplProps { /** * Used to force mounting when more control is needed. Useful when * controlling animation with React animation libraries. */ forceMount?: true; } declare const NavigationMenuIndicator: React.ForwardRefExoticComponent>; interface NavigationMenuIndicatorImplProps extends PrimitiveDivProps { } interface NavigationMenuContentProps extends Omit { /** * Used to force mounting when more control is needed. Useful when * controlling animation with React animation libraries. */ forceMount?: true; } declare const NavigationMenuContent: React.ForwardRefExoticComponent>; type DismissableLayerProps = React.ComponentPropsWithoutRef; interface NavigationMenuContentImplPrivateProps { value: string; triggerRef: React.RefObject; focusProxyRef: React.RefObject; wasEscapeCloseRef: React.MutableRefObject; onContentFocusOutside(): void; onRootContentClose(): void; } interface NavigationMenuContentImplProps extends Omit, NavigationMenuContentImplPrivateProps { } interface NavigationMenuViewportProps extends Omit { /** * Used to force mounting when more control is needed. Useful when * controlling animation with React animation libraries. */ forceMount?: true; } declare const NavigationMenuViewport: React.ForwardRefExoticComponent>; interface NavigationMenuViewportImplProps extends PrimitiveDivProps { } declare const Root: React.ForwardRefExoticComponent>; declare const Sub: React.ForwardRefExoticComponent>; declare const List: React.ForwardRefExoticComponent>; declare const Item: React.ForwardRefExoticComponent>; declare const Trigger: React.ForwardRefExoticComponent>; declare const Link: React.ForwardRefExoticComponent>; declare const Indicator: React.ForwardRefExoticComponent>; declare const Content: React.ForwardRefExoticComponent>; declare const Viewport: React.ForwardRefExoticComponent>; export { Content, Indicator, Item, Link, List, NavigationMenu, NavigationMenuContent, type NavigationMenuContentProps, NavigationMenuIndicator, type NavigationMenuIndicatorProps, NavigationMenuItem, type NavigationMenuItemProps, NavigationMenuLink, type NavigationMenuLinkProps, NavigationMenuList, type NavigationMenuListProps, type NavigationMenuProps, NavigationMenuSub, type NavigationMenuSubProps, NavigationMenuTrigger, type NavigationMenuTriggerProps, NavigationMenuViewport, type NavigationMenuViewportProps, Root, Sub, Trigger, Viewport, createNavigationMenuScope };