import { ResizeHandles, PanelChildren, PanelSizesWithUnit } from '../types/shared-panel-types.js'; /** * Dismiss a panel by name. * Adjust the sizes of the remaining panels accordingly. * @returns Array with new sizes, sizes to start animation with, and sizes to animate to. */ export declare function dismissPanel(panelName: string, sizes: PanelSizesWithUnit, sizesStart: PanelSizesWithUnit, sizesEnd: PanelSizesWithUnit, sortedPanels: PanelChildren, sortedResizeHandles: ResizeHandles, rootWidth: number): PanelSizesWithUnit[]; /** * Add a panel by name. * Adjust the sizes of existing panels to make space for the new one. * @returns Array with new sizes, sizes to start animation with, and sizes to animate to. */ export declare function addPanel(panelName: string, sizes: PanelSizesWithUnit, sizesStart: PanelSizesWithUnit, sizesEnd: PanelSizesWithUnit, restoreSizes: PanelSizesWithUnit, sortedPanels: PanelChildren, sortedResizeHandles: ResizeHandles, rootWidth: number): PanelSizesWithUnit[]; /** * Multiply the current sizes with the percentage difference of the available size * before and after adding a panel to make sure we adjust the sizes by the space * that is now taken up / freed up by the additional / missing resize handle. * * This will prevent resize handles from jumping when conditionally rendering panels. */ export declare function adjustSizesToAvailableSpace(sizes: PanelSizesWithUnit, rootWidth: number, resizeHandlesCount: number, panelCount?: 'increase' | 'decrease'): PanelSizesWithUnit;