import { PositionSettings, Size } from './../utilities';
import { BaseFitPositionStrategy } from './base-fit-position-strategy';
/**
 * Positions the element as in **Connected** positioning strategy and re-positions the element in
 * the view port (calculating a different start point) in case the element is partially getting out of view
 */
export declare class AutoPositionStrategy extends BaseFitPositionStrategy {
    protected fitHorizontal(element: HTMLElement, settings: PositionSettings, innerRect: ClientRect, outerRect: ClientRect, minSize: Size): void;
    protected fitVertical(element: HTMLElement, settings: PositionSettings, innerRect: ClientRect, outerRect: ClientRect, minSize: Size): void;
    calculateTargetRect(settings: PositionSettings): ClientRect;
    private canFlipHorizontal;
    private canFlipVertical;
    private flipHorizontal;
    private flipVertical;
    private pushHorizontal;
    private pushVertical;
    private positionElement;
}
