import { default as React, ReactNode } from 'react'; import { Theme } from '@principal-ade/industry-theme'; export interface CollapsedHeaderConfig { /** Icon to display in the collapsed header */ icon?: ReactNode; /** Title text for the collapsed header */ title: string; } export interface CollapsibleSplitPaneProps { /** Content for the primary panel (bottom, always visible) */ primaryContent: ReactNode; /** * Content for the secondary panel (top, collapsible). * When undefined/null, the component renders only the primary content * without any split pane UI - useful as a stable wrapper that can * later receive secondary content without remounting. */ secondaryContent?: ReactNode; /** * Configuration for the collapsed header bar. * Required when secondaryContent is provided. */ collapsedHeader?: CollapsedHeaderConfig; /** Whether the secondary panel is collapsed */ collapsed?: boolean; /** Callback when collapsed state changes */ onCollapsedChange?: (collapsed: boolean) => void; /** Split ratio (0-1) - proportion of space for secondary panel when expanded */ ratio?: number; /** Callback when ratio changes via drag */ onRatioChange?: (ratio: number) => void; /** Maximum ratio for secondary panel (default: 0.8) */ maxRatio?: number; /** Height of collapsed header bar in pixels (default: 28) */ collapsedHeight?: number; /** Hide the header completely (default: true, set to false to show header) */ hideHeader?: boolean; /** Theme object for customizing colors */ theme: Theme; /** CSS class for the layout container */ className?: string; /** Additional styles to apply to the container */ style?: React.CSSProperties; /** Animation duration in milliseconds (default: 200) */ animationDuration?: number; /** Callback when collapse animation starts */ onCollapseStart?: () => void; /** Callback when collapse animation completes */ onCollapseComplete?: () => void; /** Callback when expand animation starts */ onExpandStart?: () => void; /** Callback when expand animation completes */ onExpandComplete?: () => void; } /** * CollapsibleSplitPane - A vertical split pane with a collapsible secondary (top) panel. * When collapsed, shows a thin header bar with icon, title, and expand button. * Supports drag-to-resize and remembers the ratio per instance. */ export declare const CollapsibleSplitPane: React.FC; //# sourceMappingURL=CollapsibleSplitPane.d.ts.map