You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

32 lines
1.1 KiB

3 years ago
import type { ReferenceElement, FloatingElement } from './types';
export interface Options {
/**
* Whether to update the position when an overflow ancestor is scrolled.
* @default true
*/
ancestorScroll: boolean;
/**
* Whether to update the position when an overflow ancestor is resized. This
* uses the native `resize` event.
* @default true
*/
ancestorResize: boolean;
/**
* Whether to update the position when either the reference or floating
* elements resized. This uses a `ResizeObserver`.
* @default true
*/
elementResize: boolean;
/**
* Whether to update on every animation frame if necessary. Optimized for
* performance so updates are only called when necessary, but use sparingly.
* @default false
*/
animationFrame: boolean;
}
/**
* Automatically updates the position of the floating element when necessary.
* @see https://floating-ui.com/docs/autoUpdate
*/
export declare function autoUpdate(reference: ReferenceElement, floating: FloatingElement, update: () => void, options?: Partial<Options>): () => void;