@ebay/ui-core-react
Version:
Skin components build off React
48 lines • 1.95 kB
TypeScript
import { useFloating, type Placement } from "@floating-ui/react";
import { PointerDirection } from "./tooltip-utils/types";
export type FloatingDropdownHookReturn = {
overlayStyles: ReturnType<typeof useFloating>["floatingStyles"] | undefined;
refs: {
host: ReturnType<typeof useFloating>["refs"]["reference"];
overlay: ReturnType<typeof useFloating>["refs"]["floating"];
setHost: ReturnType<typeof useFloating>["refs"]["setReference"];
setOverlay: ReturnType<typeof useFloating>["refs"]["setFloating"];
};
};
export type FloatingDropdownHookArgs = {
open?: boolean;
options?: FloatingDropdownHookOptions;
};
export type FloatingDropdownHookOptions = {
offset?: number;
reverse?: boolean;
strategy?: "fixed" | "absolute";
};
export declare function useFloatingDropdown({ open, options }: FloatingDropdownHookArgs): FloatingDropdownHookReturn;
export type FloatingTooltipHookArgs = {
open?: boolean;
hostRef?: React.RefObject<HTMLElement>;
options?: FloatingTooltipHookOptions;
};
export type FloatingTooltipHookOptions = {
offset?: number;
pointer?: PointerDirection;
placement?: Placement;
noFlip?: boolean;
noShift?: boolean;
notInline?: boolean;
strategy?: "fixed" | "absolute";
};
export type FloatingTooltipHookReturn = {
overlayStyles: ReturnType<typeof useFloating>["floatingStyles"];
arrowStyles: React.CSSProperties;
refs: {
host: ReturnType<typeof useFloating>["refs"]["reference"];
overlay: ReturnType<typeof useFloating>["refs"]["floating"];
arrow: React.RefObject<HTMLElement>;
setHost: ReturnType<typeof useFloating>["refs"]["setReference"];
setOverlay: ReturnType<typeof useFloating>["refs"]["setFloating"];
};
};
export declare function useFloatingTooltip({ open, hostRef, options }: FloatingTooltipHookArgs): FloatingTooltipHookReturn;
//# sourceMappingURL=floating-ui.d.ts.map