import { ReactiveTreeNode, MergeList } from "reactronic";
import { ElImpl } from "./ElDriver.js";
export declare function equal(a: number, b: number): boolean;
export declare function less(a: number, b: number): boolean;
export declare function greater(a: number, b: number): boolean;
export declare function relayoutUsingSplitter(splitViewNode: ReactiveTreeNode<ElImpl>, deltaPx: number, index: number, initialSizesPx: Array<{
    node: ReactiveTreeNode<ElImpl>;
    sizePx: number;
}>, priorities?: ReadonlyArray<number>): void;
export declare function relayout(splitViewNode: ReactiveTreeNode<ElImpl>, priorities: ReadonlyArray<number>, manuallyResizablePriorities: ReadonlyArray<number>, sizesPx: Array<{
    node: ReactiveTreeNode<ElImpl>;
    sizePx: number;
}>): void;
export declare function resizeUsingDelta(splitViewNode: ReactiveTreeNode<ElImpl>, deltaPx: number, index: number, priorities: ReadonlyArray<number>, sizesPx: Array<{
    node: ReactiveTreeNode<ElImpl>;
    sizePx: number;
}>, force?: boolean): number;
export declare function layout(splitViewNode: ReactiveTreeNode<ElImpl>): void;
export declare function getPrioritiesForSplitter(index: number, size: number): ReadonlyArray<number>;
export declare function getPrioritiesForSizeChanging(isHorizontal: boolean, children: MergeList<ReactiveTreeNode>, indexes: Array<number>): {
    resizable: ReadonlyArray<number>;
    manuallyResizable: ReadonlyArray<number>;
};
export declare function getPrioritiesForEmptySpaceDistribution(isHorizontal: boolean, children: MergeList<ReactiveTreeNode>): {
    resizable: ReadonlyArray<number>;
    manuallyResizable: ReadonlyArray<number>;
};
