import * as React from 'react'; import { DismissableLayer } from '@radix-ui/react-dismissable-layer'; import { FocusScope } from '@radix-ui/react-focus-scope'; import * as PopperPrimitive from '@radix-ui/react-popper'; import { Portal as Portal$1 } from '@radix-ui/react-portal'; import { Primitive } from '@radix-ui/react-primitive'; type Scope = { [scopeName: string]: React.Context[]; } | undefined; type ScopeHook = (scope: Scope) => { [__scopeProp: string]: Scope; }; interface CreateScope { scopeName: string; (): ScopeHook; } declare const createPopoverScope: CreateScope; interface PopoverProps { children?: React.ReactNode; open?: boolean; defaultOpen?: boolean; onOpenChange?: (open: boolean) => void; modal?: boolean; } declare const Popover: React.FC; type PopperAnchorProps = React.ComponentPropsWithoutRef; interface PopoverAnchorProps extends PopperAnchorProps { } declare const PopoverAnchor: React.ForwardRefExoticComponent>; type PrimitiveButtonProps = React.ComponentPropsWithoutRef; interface PopoverTriggerProps extends PrimitiveButtonProps { } declare const PopoverTrigger: React.ForwardRefExoticComponent>; type PortalProps = React.ComponentPropsWithoutRef; interface PopoverPortalProps { children?: React.ReactNode; /** * Specify a container element to portal the content into. */ container?: PortalProps['container']; /** * Used to force mounting when more control is needed. Useful when * controlling animation with React animation libraries. */ forceMount?: true; } declare const PopoverPortal: React.FC; interface PopoverContentProps extends PopoverContentTypeProps { /** * Used to force mounting when more control is needed. Useful when * controlling animation with React animation libraries. */ forceMount?: true; } declare const PopoverContent: React.ForwardRefExoticComponent>; interface PopoverContentTypeProps extends Omit { } type FocusScopeProps = React.ComponentPropsWithoutRef; type DismissableLayerProps = React.ComponentPropsWithoutRef; type PopperContentProps = React.ComponentPropsWithoutRef; interface PopoverContentImplProps extends Omit, Omit { /** * Whether focus should be trapped within the `Popover` * (default: false) */ trapFocus?: FocusScopeProps['trapped']; /** * Event handler called when auto-focusing on open. * Can be prevented. */ onOpenAutoFocus?: FocusScopeProps['onMountAutoFocus']; /** * Event handler called when auto-focusing on close. * Can be prevented. */ onCloseAutoFocus?: FocusScopeProps['onUnmountAutoFocus']; } interface PopoverCloseProps extends PrimitiveButtonProps { } declare const PopoverClose: React.ForwardRefExoticComponent>; type PopperArrowProps = React.ComponentPropsWithoutRef; interface PopoverArrowProps extends PopperArrowProps { } declare const PopoverArrow: React.ForwardRefExoticComponent>; declare const Root: React.FC; declare const Anchor: React.ForwardRefExoticComponent>; declare const Trigger: React.ForwardRefExoticComponent>; declare const Portal: React.FC; declare const Content: React.ForwardRefExoticComponent>; declare const Close: React.ForwardRefExoticComponent>; declare const Arrow: React.ForwardRefExoticComponent>; export { Anchor, Arrow, Close, Content, Popover, PopoverAnchor, type PopoverAnchorProps, PopoverArrow, type PopoverArrowProps, PopoverClose, type PopoverCloseProps, PopoverContent, type PopoverContentProps, PopoverPortal, type PopoverPortalProps, type PopoverProps, PopoverTrigger, type PopoverTriggerProps, Portal, Root, Trigger, createPopoverScope };