/** * @fileoverview HoverCard — premium animated hover-triggered popover card with Motion spring entrance for previewing content on hover. * @module packages/ui/components/ui/hover-card * @layer core * * @component * @example * import { HoverCard, HoverCardTrigger, HoverCardContent } from '@saasflare/ui'; * * * Hover me * *

Preview content appears here.

*
*
*/ import * as React from "react"; import * as HoverCardPrimitive from "@radix-ui/react-hover-card"; import { type SaasflareComponentProps } from "../../providers"; /** * Rich preview card shown when an element is hovered, opened without a click. * Root of the composition — owns open state and wires {@link HoverCardTrigger} * and {@link HoverCardContent} together. Use for non-interactive previews * (profiles, link previews); for click-opened interactive panels reach for * Popover. * * @component * @layer core */ declare function HoverCard({ ...props }: React.ComponentProps): import("react/jsx-runtime").JSX.Element; /** * Element that opens the hover card on hover or keyboard focus. Also serves as * the positioning anchor for {@link HoverCardContent}. * * @component * @layer core */ declare function HoverCardTrigger({ ...props }: React.ComponentProps): import("react/jsx-runtime").JSX.Element; /** * Props for {@link HoverCardContent}. Extends the Radix HoverCard content props * with the Saasflare theming axes (`surface`, `radius`, `animated`, * `iconWeight`). */ interface HoverCardContentProps extends Omit, keyof SaasflareComponentProps>, SaasflareComponentProps { } /** * The floating preview panel rendered while the hover card is open. Portals to * the body, enters with a spring scale/fade, and resolves * `surface`/`radius`/`animated` against the context. * * @component * @layer core */ declare function HoverCardContent({ className, align, sideOffset, surface, radius, animated, iconWeight, ...props }: HoverCardContentProps): import("react/jsx-runtime").JSX.Element; /** Props for {@link HoverCardArrow}. Pure pass-through to the Radix HoverCard arrow. */ interface HoverCardArrowProps extends React.ComponentProps { } /** * Arrow connecting the hover card to its trigger. * * Renders inside `` (consumes Popper context), so it must be a * child of the content panel. Position/rotation are computed by Radix from the * resolved `side`/`align`; no props are required by default. Fill follows the * `bg-popover` token via `fill-popover` so it inherits palette + light/dark * automatically. The 1px card border is not auto-continued onto the arrow (Radix * limitation) and the arrow fill stays token-fixed under non-default `surface` * overrides — pass a `className` to adjust either if needed. * * @component * @layer core * @example * * *

Preview content appears here.

*
*/ declare function HoverCardArrow({ className, ...props }: HoverCardArrowProps): import("react/jsx-runtime").JSX.Element; export { HoverCard, HoverCardTrigger, HoverCardContent, HoverCardArrow, type HoverCardContentProps, type HoverCardArrowProps };