interface AvailableSpace {
    above: number;
    below: number;
    left: number;
    right: number;
}
export interface DropdownPosition {
    height: string;
    width: string;
    dropUp: boolean;
    dropLeft: boolean;
}
export declare type InteriorDropdownPosition = DropdownPosition & {
    left: string;
    bottom: string;
    top: string;
};
export declare const focusPreservingScroll: (element: HTMLElement) => void;
export declare const getAvailableSpace: (trigger: HTMLElement, dropdown: HTMLElement) => AvailableSpace;
export declare const getInteriorAvailableSpace: (trigger: HTMLElement, dropdown: HTMLElement) => AvailableSpace;
export declare const getDropdownPosition: (trigger: HTMLElement, dropdown: HTMLElement, prefersDownDirection?: boolean) => DropdownPosition;
export declare const getInteriorDropdownPosition: (trigger: HTMLElement, dropdown: HTMLElement) => InteriorDropdownPosition;
export {};
