@vuesax-alpha/nightly
Version:
A Component Library for Vue 3
39 lines (38 loc) • 1.44 kB
TypeScript
import type { Padding, SideObject } from '../utils';
import type { Boundary, Derivable, ElementContext, MiddlewareState, RootBoundary } from './types';
export declare type DetectOverflowOptions = Partial<{
/**
* The clipping element(s) or area in which overflow will be checked.
* @default 'clippingAncestors'
*/
boundary: Boundary;
/**
* The root clipping area in which overflow will be checked.
* @default 'viewport'
*/
rootBoundary: RootBoundary;
/**
* The element in which overflow is being checked relative to a boundary.
* @default 'floating'
*/
elementContext: ElementContext;
/**
* Whether to check for overflow using the alternate element's boundary
* (`clippingAncestors` boundary only).
* @default false
*/
altBoundary: boolean;
/**
* Virtual padding for the resolved overflow detection offsets.
* @default 0
*/
padding: Padding;
}>;
/**
* Resolves with an object of overflow side offsets that determine how much the
* element is overflowing a given clipping boundary on each side.
* - positive = overflowing the boundary by that number of pixels
* - negative = how many pixels left before it will overflow
* - 0 = lies flush with the boundary
*/
export declare function detectOverflow(state: MiddlewareState, options?: DetectOverflowOptions | Derivable<DetectOverflowOptions>): Promise<SideObject>;