/** Horizontal dimension of a connection point on the perimeter of the origin or overlay element. */ export declare type HorizontalConnectionPos = 'left' | 'center' | 'right'; /** Vertical dimension of a connection point on the perimeter of the origin or overlay element. */ export declare type VerticalConnectionPos = 'top' | 'center' | 'bottom'; /** all case of Placement*/ export declare type Placement = 'top' | 'bottom' | 'left' | 'right' | 'top-left' | 'top-right' | 'bottom-left' | 'bottom-right' | 'left-top' | 'left-bottom' | 'right-top' | 'right-bottom'; export interface ConnectionPosition { horizontal: HorizontalConnectionPos; vertical: VerticalConnectionPos; } export declare class ConnectionPositionPair { offsetX?: number | undefined; offsetY?: number | undefined; /** X-axis attachment point for connected overlay origin. Can be 'left', 'center', or 'right'. */ targetX: HorizontalConnectionPos; /** Y-axis attachment point for connected overlay origin. Can be 'top', 'center', or 'bottom'. */ targetY: VerticalConnectionPos; /** X-axis attachment point for connected overlay. Can be 'left', 'center', or 'right'. */ overlayX: HorizontalConnectionPos; /** Y-axis attachment point for connected overlay. Can be 'top', 'center', or 'bottom'. */ overlayY: VerticalConnectionPos; constructor(target: ConnectionPosition, overlay: ConnectionPosition, offsetX?: number | undefined, offsetY?: number | undefined); } /** * A simple (x, y) coordinate */ export interface Point { x: number; y: number; } /** * Expands the simple (x, y) coordinate by adding info about whether the * element would fit inside the viewport at that position, as well as * how much of the element would be visible. */ export interface OverlayPoint extends Point { visibleArea: number; fitsInViewport: boolean; }