UNPKG

@stihl-design-system/components

Version:

Welcome to the STIHL Design System react component library.

71 lines (70 loc) 3.49 kB
import { TooltipProps } from './Tooltip'; /** * Tooltip hook for managing tooltip state and behavior. * @param TooltipProps Tooltip props * @returns Tooltip state and actions */ export declare function useTooltip({ initialOpen, placement, isOpen: controlledOpen, tooltipOffset, onOpenChange: setControlledOpen, }?: TooltipProps): { placement: import('@floating-ui/utils').Placement; strategy: import('@floating-ui/utils').Strategy; middlewareData: import('@floating-ui/core').MiddlewareData; x: number; y: number; isPositioned: boolean; update: () => void; floatingStyles: React.CSSProperties; refs: { reference: import('react').MutableRefObject<import('@floating-ui/react-dom').ReferenceType | null>; floating: React.MutableRefObject<HTMLElement | null>; setReference: (node: import('@floating-ui/react-dom').ReferenceType | null) => void; setFloating: (node: HTMLElement | null) => void; } & import('@floating-ui/react').ExtendedRefs<import('@floating-ui/react').ReferenceType>; elements: { reference: import('@floating-ui/react-dom').ReferenceType | null; floating: HTMLElement | null; } & import('@floating-ui/react').ExtendedElements<import('@floating-ui/react').ReferenceType>; context: { x: number; y: number; placement: import('@floating-ui/utils').Placement; strategy: import('@floating-ui/utils').Strategy; middlewareData: import('@floating-ui/core').MiddlewareData; isPositioned: boolean; update: () => void; floatingStyles: React.CSSProperties; open: boolean; onOpenChange: (open: boolean, event?: Event, reason?: import('@floating-ui/react').OpenChangeReason) => void; events: import('@floating-ui/react').FloatingEvents; dataRef: React.MutableRefObject<import('@floating-ui/react').ContextData>; nodeId: string | undefined; floatingId: string | undefined; refs: import('@floating-ui/react').ExtendedRefs<import('@floating-ui/react').ReferenceType>; elements: import('@floating-ui/react').ExtendedElements<import('@floating-ui/react').ReferenceType>; }; getReferenceProps: (userProps?: React.HTMLProps<Element>) => Record<string, unknown>; getFloatingProps: (userProps?: React.HTMLProps<HTMLElement>) => Record<string, unknown>; getItemProps: (userProps?: Omit<React.HTMLProps<HTMLElement>, "selected" | "active"> & { active?: boolean; selected?: boolean; }) => Record<string, unknown>; open: boolean; tooltipOffset: number; setOpen: (isOpen: boolean, event?: Event, reason?: import('@floating-ui/react').OpenChangeReason) => void; }; export declare const validateTooltipAnchor: (children: React.ReactNode) => void; /** * Validates the children of the tooltip component in development environment. * - Check for children presence * - Validate that <Tooltip.Anchor> and <Tooltip.Content> are used together. * * @param {Object} childrenObject * @param {React.ReactNode} childrenObject.children - The Tooltip children. * @param {boolean} childrenObject.hasContent - Whether <Tooltip.Content> is present. * @param {boolean} childrenObject.hasAnchor - Whether <Tooltip.Anchor> is present. * @returns {void} */ export declare const validateTooltipChildren: ({ children, hasContent, hasAnchor, }: { children: React.ReactNode; hasContent: boolean; hasAnchor: boolean; }) => void;