import { ConnectedPosition, ConnectionPositionPair } from '@angular/cdk/overlay';
import { NgDocHorizontalAlign, NgDocOverlayPosition, NgDocOverlayRelativePosition, NgDocVerticalAlign } from '@ng-doc/ui-kit/types';
export declare const NG_DOC_ARROW_MARGIN: number;
export declare class NgDocOverlayUtils {
    static getConnectedPosition(dropdownPositions: NgDocOverlayPosition | NgDocOverlayPosition[], origin: HTMLElement, offset?: number, withPointer?: boolean): ConnectedPosition[];
    static toConnectedPosition(position: NgDocOverlayPosition): ConnectedPosition;
    static toConnectedPositions(positions: NgDocOverlayPosition[]): ConnectedPosition[];
    static getOffsetX(origin: HTMLElement, position: ConnectedPosition): number;
    static getOffsetY(origin: HTMLElement, position: ConnectedPosition): number;
    static overlayIsOutByX(position: ConnectedPosition): boolean;
    static overlayIsOutByY(position: ConnectedPosition): boolean;
    static getOffsetMultiplier(position: ConnectedPosition): number;
    static getMarginMultiplier(position: ConnectedPosition): number;
    static isVerticalPosition(position: ConnectedPosition): boolean;
    static isCenterPosition(position: ConnectedPosition): boolean;
    static getPositionAlign(position: ConnectedPosition): NgDocHorizontalAlign | NgDocVerticalAlign | null;
    static getRelativePosition(pos: NgDocOverlayPosition): NgDocOverlayRelativePosition | null;
    static getOverlayPosition(positionPair: ConnectionPositionPair): NgDocOverlayPosition;
}
