import { TypedMap } from '@nu-art/ts-common'; import * as React from 'react'; import './TS_CollapsableContainer.scss'; import { ReactNode } from 'react'; import { ComponentSync } from '../../core/ComponentSync.js'; type Props = { headerRenderer: ReactNode | (() => ReactNode); containerRenderer: ReactNode | (() => ReactNode); collapsed?: boolean; showCaret?: boolean; onCollapseToggle?: (collapseState: boolean, e: React.MouseEvent) => void; maxHeight?: number | string; style?: TypedMap; className?: string; id?: string; customCaret?: ReactNode | (() => ReactNode); flipHeaderOrder?: boolean; onMouseEnter?: (e: React.MouseEvent) => void; onMouseLeave?: (e: React.MouseEvent) => void; initialCollapsed?: boolean; onMouseOver?: (e: React.MouseEvent) => void; onHeaderRightClick?: (e: React.MouseEvent) => void; innerRef?: React.RefObject; }; type State = { collapsed: boolean; contentRef: React.RefObject; containerRef: React.RefObject; }; export declare class TS_CollapsableContainer extends ComponentSync { protected deriveStateFromProps(nextProps: Props): State; componentDidUpdate(prevProps: Readonly, prevState: Readonly, snapshot?: any): void; componentDidMount(): void; shouldComponentUpdate(nextProps: Readonly, nextState: Readonly, nextContext: any): boolean; private setContainerHeight; private toggleCollapse; private isCollapsed; refreshContainerHeight: () => void; private renderCaret; renderHeader(): import("react/jsx-runtime").JSX.Element; renderContainer(): import("react/jsx-runtime").JSX.Element; render(): import("react/jsx-runtime").JSX.Element; } export {};