import { ReactElement } from 'react';
/**
* Props for the Resizable component
* @interface ResizeableLayoutProps
* @property {string} [_key] - Optional unique key for the component
* @property {boolean} [vertical=false] - Whether the resizable panels should be arranged vertically (side by side) or horizontally (stacked)
* @property {boolean} [hidden=false] - Whether the secondary panel should be hidden
* @property {number} [offset=0] - Offset in pixels to adjust the resizing behavior.
* - When positive: Main panel is on the left/top, secondary panel is on the right/bottom
* - When negative: Main panel is on the right/bottom, secondary panel is on the left/top
* The absolute value of offset determines the minimum size of the panels
* @property {number} [defaultSize=1] - Default size as a percentage (0-1)
* @property {[ReactElement, ReactElement]} children - Exactly two child elements representing the main and secondary panels
**/
interface ResizeableLayoutProps {
_key?: string;
vertical?: boolean;
hidden?: boolean;
offset?: number;
defaultSize?: number;
children: [ReactElement, ReactElement];
}
/**
* A resizable layout component that allows users to adjust the size of two panels using a draggable divider.
*
* The component supports both vertical (side-by-side) and horizontal (stacked) layouts.
* The panels can be resized by dragging the divider between them, and the secondary panel can be hidden.
*
* Panel Ordering:
* - By default (offset >= 0): Main panel is on the left/top, secondary panel is on the right/bottom
* - With negative offset: Main panel is on the right/bottom, secondary panel is on the left/top
*
* @example
* ```tsx
* // Default layout (main panel on left)
*
* Left Panel
* Right Panel
*
*
* // Reversed layout (main panel on right)
*
* Right Panel
* Left Panel
*
* ```
*
* @param {ResizeableLayoutProps} props - The component props
* @returns {JSX.Element} A resizable layout with two panels
**/
export declare function Resizable({ _key, children: [mainPanel, secondaryPanel], vertical, offset, hidden, defaultSize, }: ResizeableLayoutProps): import("react/jsx-runtime").JSX.Element;
export {};