import { SplitterBar } from "./SplitterBar.js"; import { IDockContainer, ResizeContext } from "./interfaces/IDockContainer.js"; /** * A splitter panel manages the child containers inside it with splitter bars. * It can be stacked horizontally or vertically */ export declare class SplitterPanel { panelElement: HTMLDivElement; spiltterBars: SplitterBar[]; stackedVertical: boolean; childContainers: IDockContainer[]; private preferredChildSizes; private preserveNonElasticSizes; constructor(childContainers: IDockContainer[], stackedVertical: boolean); _buildSplitterDOMAndAddElements(): void; performLayout(children: IDockContainer[], relayoutEvenIfEqual: boolean): void; removeFromDOM(): void; destroy(): void; _insertContainerIntoPanel(container: IDockContainer, afterElement: HTMLElement): void; /** * Sets the percentage of space the specified [container] takes in the split panel * The percentage is specified in [ratio] and is between 0..1 */ setContainerRatio(container: IDockContainer, ratio: number): Promise; getRatios(): number[]; setRatios(ratios: number[]): Promise; /** Apply pixel sizes without converting unchanged panes through fractional ratios. */ setSizes(sizes: number[]): Promise; resize(width: number, height: number, context?: ResizeContext): Promise; private resizeProportionally; private hasElasticChild; private getElasticChildIndex; private getChildSize; }