import { BlockElement } from "../../interface"; export declare type SizeType = { width: number; height: number; }; export declare type ResizeOptions = { resizeWidth?: boolean; resizeHeight?: boolean; ignore?: { top?: boolean; right?: boolean; bottom?: boolean; left?: boolean; }; }; export declare type HandleResizeCbType = (size: Partial, type: 'end' | 'resizing') => void; export declare class ResizeTool { private resizeOptions; private static readonly ROOT; private static readonly SLIDER_TOP; private static readonly SLIDER_TOP_READONLY; private static readonly SLIDER_BOTTOM; private static readonly SLIDER_BOTTOM_READONLY; private static readonly SLIDER_LEFT; private static readonly SLIDER_LEFT_READONLY; private static readonly SLIDER_RIGHT; private static readonly SLIDER_RIGHT_READONLY; private static readonly SLIDER_TOP_LEFT; private static readonly SLIDER_BOTTOM_LEFT; private static readonly SLIDER_TOP_RIGHT; private static readonly SLIDER_BOTTOM_RIGHT; private startEvent; private handleResizeCb; private resizeBlock; private resizeElement; private initSize; private blockRect; private isHide; onShow: boolean; body: HTMLElement; zoom: number; constructor(resizeOptions?: ResizeOptions); private handleResize; updateBody(): void; getComputedNumber(px: number): number; private handleMouseDown; private getResizeTool; updateResizeTool(block: BlockElement, target: HTMLElement): void; show(block: BlockElement, target: HTMLElement, resizeCb: HandleResizeCbType): void; hide(block: BlockElement): void; }