import { Placement, ReferenceElement, Strategy } from '@floating-ui/dom';
import { MaybeRefOrGetter, Ref } from 'vue';
export interface FloatingPanelOptions {
    placement?: MaybeRefOrGetter<Placement>;
    strategy?: MaybeRefOrGetter<Strategy>;
    offset?: MaybeRefOrGetter<number>;
    matchTriggerWidth?: MaybeRefOrGetter<boolean>;
    arrowRef?: Ref<HTMLElement | null>;
    arrowPadding?: number;
    shiftPadding?: MaybeRefOrGetter<number>;
    flip?: MaybeRefOrGetter<boolean>;
    fallbackPlacements?: MaybeRefOrGetter<Placement[] | undefined>;
    zIndex?: MaybeRefOrGetter<number>;
}
export declare function useFloatingPanel(referenceRef: Ref<ReferenceElement | null>, floatingRef: Ref<HTMLElement | null>, options?: FloatingPanelOptions): {
    actualPlacement: Ref<Placement, Placement>;
    arrowStyle: Ref<Record<string, string>, Record<string, string>>;
    floatingStyle: Ref<Record<string, string>, Record<string, string>>;
    updatePosition: () => Promise<void>;
    startAutoUpdate: () => void;
    stopAutoUpdate: () => void;
};
