import { IPosition, Rect } from "./utils/popup";
import { CssClassBuilder } from "./utils/cssClassBuilder";
import { PopupModel } from "./popup";
import { PopupBaseViewModel } from "./popup-view-model";
export declare class PopupDropdownViewModel extends PopupBaseViewModel {
    static readonly tabletSizeBreakpoint = 600;
    private scrollEventCallBack;
    private resizeEventCallback;
    private resizeWindowCallback;
    private clientY;
    private touchStartEventCallback;
    private touchMoveEventCallback;
    protected createFooterActionBar(): void;
    protected getAvailableAreaRect(): Rect;
    protected getTargetElementRect(areaRect: Rect): Rect;
    private _updatePosition;
    protected getActualHorizontalPosition(): "left" | "center" | "right";
    protected getStyleClass(): CssClassBuilder;
    protected getShowHeader(): boolean;
    protected getPopupHeaderTemplate(): string;
    popupDirection: string;
    pointerTarget: IPosition;
    private recalculatePositionHandler;
    constructor(model: PopupModel);
    setComponentElement(componentRoot: HTMLElement): void;
    resetComponentElement(): void;
    updateOnShowing(): void;
    private get shouldCreateResizeCallback();
    updatePosition(isResetHeight: boolean, isDelayUpdating?: boolean): void;
    updateOnHiding(): void;
    protected onModelChanging(newModel: PopupModel): void;
    dispose(): void;
}
