/**
* @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 };