import * as React from 'react'; export interface ExpanderProps { /** * The timeout to be used for transitioning. * @default 0 */ timeout?: number; /** * If `true`, the component will transition in. * @default false */ expand?: boolean; /** * The height of the container when collapsed. * @default `0px` */ collapsedHeight?: string; /** * Optionally unmount the expandable container * @default false */ unmountOnExit?: boolean; } export declare type TransitionStatus = 'unmounted' | 'mounted' | 'exited' | 'entering' | 'entered' | 'exiting' | 'exitingStart'; export interface ExpanderState { status?: TransitionStatus; } export interface ExpandingContainerProps { expandedHeight?: number; collapsedHeight?: string; status?: TransitionStatus; timeout: number; } /** * A functional expander component for expanding / collapsing content. */ export declare class Expander extends React.Component { private wrapperRef; private rootContainer; private timer; constructor(props: ExpanderProps); componentDidMount(): void; componentDidUpdate(prevProps: ExpanderProps, prevState: ExpanderState): void; componentWillUnmount(): void; private handleChange; private performEnter; private performExit; private clearTimer; private setContainer; private setDelayedStatus; render(): false | JSX.Element; static inner: { readonly ExpandingContainer: any; }; }