export type ElementRectangle = Pick; export interface SbbAlignment { horizontal: 'start' | 'center' | 'end'; vertical: 'above' | 'below'; } export interface SbbElementPositionInfos { top: number; left: number; maxHeight: string; alignment: SbbAlignment; } /** * Gets height and width of an element even if it's hidden (`display: none`). */ export declare function getElementRectangle(el: HTMLElement): ElementRectangle; /** * Determines whether an event is fired on a specific element. */ export declare function isEventOnElement(element: HTMLElement, event: MouseEvent | PointerEvent): boolean; /** * Determines the position of an element relative to a trigger element by evaluating * the optimal position based on the available space. * * @param element The element of which to calculate the position. * @param trigger The element relative to which to calculate the position. * @param container The element which has the position:fixed applied. * @param properties Properties to take into account in calculations (optional). * @param properties.verticalOffset The distance to be added between the element and the trigger (optional). * @param properties.horizontalOffset The horizontal offset to be applied to the element (optional). * @param properties.centered Whether the element should be placed in the center by default (optional). * @param properties.responsiveHeight Whether the element calculates its height based on its content (optional). * @returns Returns an object containing the left position, the top position, the maximum height * of the element and the current alignment object. */ export declare function getElementPosition(element: HTMLElement, trigger: HTMLElement, container: HTMLElement, properties?: { verticalOffset?: number; horizontalOffset?: number; centered?: boolean; responsiveHeight?: boolean; }): SbbElementPositionInfos; //# sourceMappingURL=position.d.ts.map