/**
 * SplitPane type definitions
 * @countermeasure/web-components/components/split-pane
 */
export type SplitOrientation = 'horizontal' | 'vertical';
export interface PaneConfig {
    /** Stable identifier used by `getPane()`. */
    id: string;
    /**
     * Minimum size in pixels. Resizing below this is clamped.
     * @default 0
     */
    minSize?: number;
    /**
     * Initial size as a number (pixels) or CSS length string (e.g. `'40%'`).
     * @default '50%'
     */
    defaultSize?: number | string;
    /**
     * Allow the pane to collapse to zero size.
     * @default false
     */
    collapsible?: boolean;
}
export interface SplitPaneConfig {
    /** Container element (or selector) the split pane is mounted into. */
    container: HTMLElement | string;
    /**
     * Layout direction.
     * @default 'horizontal'
     */
    orientation?: SplitOrientation;
    /** The two pane definitions, in order. */
    panes: [PaneConfig, PaneConfig];
    /**
     * Drag handle thickness in pixels.
     * @default 4
     */
    gutterSize?: number;
    /** Called continuously while a pane is being resized. */
    onResize?: (paneId: string, size: number) => void;
}
//# sourceMappingURL=types.d.ts.map