UNPKG

hongluan-ui

Version:
70 lines (69 loc) 2.11 kB
import type { Ref, ToRefs } from 'vue'; import type { Middleware, Placement, SideObject, Strategy, VirtualElement } from '@floating-ui/dom'; export declare const useFloatingProps: {}; export declare type UseFloatingProps = ToRefs<{ middleware: Array<Middleware>; placement: Placement; strategy: Strategy; }>; export declare const getPositionDataWithUnit: <T extends Record<string, number>>(record: T, key: keyof T) => string; export declare const useFloating: ({ middleware, placement, strategy, }: UseFloatingProps) => { update: () => Promise<void>; referenceRef: Ref<HTMLElement | VirtualElement>; contentRef: Ref<HTMLElement>; x: Ref<number>; y: Ref<number>; placement: Ref<Placement>; strategy: Ref<Strategy>; middlewareData: Ref<{ [x: string]: any; arrow?: { x?: number; y?: number; centerOffset: number; }; autoPlacement?: { index?: number; overflows: { placement: Placement; overflows: number[]; }[]; }; flip?: { index?: number; overflows: { placement: Placement; overflows: number[]; }[]; }; hide?: { referenceHidden?: boolean; escaped?: boolean; referenceHiddenOffsets?: { left: number; right: number; top: number; bottom: number; }; escapedOffsets?: { left: number; right: number; top: number; bottom: number; }; }; offset?: { x: number; y: number; }; shift?: { x: number; y: number; }; }>; }; export declare type ArrowMiddlewareProps = { arrowRef: Ref<HTMLElement | null | undefined>; padding?: number | SideObject; }; export declare const arrowMiddleware: ({ arrowRef, padding, }: ArrowMiddlewareProps) => Middleware;