import { ConnectedPosition } from '@angular/cdk/overlay';
export declare const DefaultPositions: ConnectedPosition[];
export declare const GetDefaultPosition: (position: ConnectedPosition[]) => ConnectedPosition[];
/**
 * Preset options for the popover body width.
 * * `at-least` will apply a minimum width to the body equivalent to the width of the control.
 * * `equal` will apply a width to the body equivalent to the width of the control.
 * * 'fit-content' will apply width needed to properly display items inside, independent of control.
 */
export type PopoverFillMode = 'at-least' | 'equal' | 'fit-content';
export declare enum PopoverPlacement {
    AUTO_START = "auto-start",
    AUTO = "auto",
    AUTO_END = "auto-end",
    TOP_START = "top-start",
    TOP = "top",
    TOP_END = "top-end",
    RIGHT_START = "right-start",
    RIGHT = "right",
    RIGHT_END = "right-end",
    BOTTOM_END = "bottom-end",
    BOTTOM = "bottom",
    BOTTOM_START = "bottom-start",
    LEFT_END = "left-end",
    LEFT = "left",
    LEFT_START = "left-start"
}
export type Placement = 'auto-start' | 'auto' | 'auto-end' | 'top-start' | 'top' | 'top-end' | 'right-start' | 'right' | 'right-end' | 'bottom-end' | 'bottom' | 'bottom-start' | 'left-end' | 'left' | 'left-start';
export type RtlPlacement = 'left' | 'left-start' | 'left-end' | 'right' | 'right-start' | 'right-end';
export type XPositions = 'start' | 'center' | 'end';
export type YPositions = 'top' | 'center' | 'bottom';
export type ArrowPosition = 'top' | 'bottom' | 'start' | 'end' | 'center';
export declare const PopoverFlippedYDirection: {
    [key: string]: YPositions;
};
export declare const PopoverFlippedRtlPlacement: {
    [key in RtlPlacement]: RtlPlacement;
};
export declare class PopoverPosition {
    /** Get the cdk placement of the popover */
    static getCdkPlacement(placement: Placement, direction?: 'rtl' | 'ltr'): ConnectedPosition;
}
