import React, { type ReactNode } from "react"; import { type VariantProps } from "class-variance-authority"; import { HoverCardContent } from "src/primitives/HoverCard"; type PopoverPosition = "top" | "bottom" | "left" | "right" | "top-start" | "top-end" | "bottom-start" | "bottom-end" | "left-start" | "left-end" | "right-start" | "right-end" | "auto"; declare const popoverVariants: (props?: ({ variant?: "default" | "primary" | null | undefined; } & import("class-variance-authority/types").ClassProp) | undefined) => string; type PopoverVariant = NonNullable["variant"]>; /** Radix HoverCard.Content props we forward via ...otherProps. */ type HoverCardContentProps = React.ComponentProps; export interface PopoverProps extends Omit { /** Content rendered inside the popover. */ children?: ReactNode; /** The trigger element that opens the popover on hover. */ trigger?: ReactNode; /** Color variant of the popover. */ variant?: PopoverVariant; /** Disable the popover. */ disabled?: boolean; /** Placement of the popover relative to the trigger. */ position?: PopoverPosition; /** Additional CSS class names for the popover content. */ className?: string; /** Whether the popover is open (controlled). */ open?: boolean; /** Callback when open state changes. */ onOpenChange?: (open: boolean) => void; /** Auto-hide after N milliseconds. Use -1 to disable. */ hideAfter?: number; /** Radix HoverCard `defaultOpen` prop. */ defaultOpen?: boolean; /** Delay in ms before the popover opens on hover. */ openDelay?: number; /** Delay in ms before the popover closes after hover leaves. */ closeDelay?: number; } interface PopoverTitleProps extends React.ComponentProps<"div"> { children?: ReactNode; className?: string; } declare const Title: React.ForwardRefExoticComponent & React.RefAttributes>; declare const Popover: React.ForwardRefExoticComponent> & { Title: typeof Title; }; export { Popover };