export declare type CalculateMenuPositionOptions = { anchorRect?: ClientRect | null; anchorText?: HTMLSpanElement | null; menuWrapper?: HTMLDivElement | null; menu?: HTMLDivElement | null; menuItemsWrapper?: HTMLDivElement | null; scrollIndicator?: HTMLDivElement | null; referenceItem?: HTMLDivElement | null; referenceItemText?: HTMLSpanElement | null; viewportGap: number; }; export declare type MenuPosition = { x: number; y: number; width?: number; scrollPaneHeight: number; scrollTop?: number; }; /** * Calculates the position and size of a standard menu */ export declare function calculateMenuPosition({ anchorRect, menuWrapper, menuItemsWrapper, referenceItem, viewportGap, }: CalculateMenuPositionOptions): MenuPosition | undefined; /** * Calculates the position and size of a right click menu */ export declare function calculateRightClickMenuPosition({ anchorRect, menuWrapper, menu, menuItemsWrapper, viewportGap, }: CalculateMenuPositionOptions): MenuPosition | undefined; /** * Calculates the position and size of a select menu */ export declare function calculateSelectMenuPosition({ anchorRect: buttonRect, anchorText: buttonText, menuWrapper, menu, menuItemsWrapper, scrollIndicator, referenceItem: selectedOption, referenceItemText: selectedOptionText, viewportGap, }: CalculateMenuPositionOptions): MenuPosition | undefined; declare type SetMenuPositionOptions = { menuWrapper: HTMLDivElement; menuScrollPane: HTMLDivElement; menuPosition: MenuPosition; }; export declare function setMenuPosition(options: SetMenuPositionOptions): void; export {};