import type { Layout } from '../layout/layout';
export declare const RESIZE_LOCK = "resize-lock";
import './styles/index.less';
/**
 * 定义在flex模式下，setSize作用于哪一个元素
 * prev表示前一个元素
 * next表示后一个元素
 */
export declare enum ResizeFlexMode {
    Prev = "prev",
    Next = "next"
}
export interface ResizeHandleProps {
    prefixCls?: string | undefined;
    onFinished?: undefined | (() => void);
    onResize: undefined | ((prevElement: HTMLElement, nextElement: HTMLElement) => void);
    max?: number | undefined;
    min?: number | undefined;
    preserve?: number | undefined;
    className?: string | undefined;
    noColor?: boolean | undefined;
    delegate?: undefined | ((delegate: IResizeHandleDelegate) => void);
    findPrevElement?: undefined | ((direction?: boolean) => HTMLElement | undefined);
    findNextElement?: undefined | ((direction?: boolean) => HTMLElement | undefined);
    /**
     * 使用直接的size指定目标，不使用百分比
     * 传入值表示setSize的作用模式
     */
    flexMode?: ResizeFlexMode | undefined;
    direction: Layout.direction | undefined;
}
export interface IResizeHandleDelegate {
    setSize: (prev: number, next: number) => void;
    setRelativeSize: (prev: number, next: number) => void;
    getRelativeSize: () => number[];
    setAbsoluteSize: (size: number, isLatter?: boolean, keep?: boolean) => void;
    getAbsoluteSize: (isLatter?: boolean) => number;
}
export declare const ResizeHandleHorizontal: (props: ResizeHandleProps) => import("react/jsx-runtime").JSX.Element;
export declare const ResizeHandleVertical: (props: ResizeHandleProps) => import("react/jsx-runtime").JSX.Element;
//# sourceMappingURL=index.d.ts.map