import * as React from "react"; import * as PropTypes from "prop-types"; export interface ExpandContext { changeExpandState: (key: string, open?: boolean, state?: TState) => () => void; isExpanded: (key: string) => boolean; getState: (key: string) => TState; } export declare const ExpandContextTypes: { changeExpandState: PropTypes.Validator; isExpanded: PropTypes.Validator; getState: PropTypes.Validator; }; export interface ExpandControllerState { expanded: { [key: string]: boolean; }; state: { [key: string]: any; }; } export declare class ExpandController extends React.Component<{}, ExpandControllerState> { static readonly childContextTypes: { changeExpandState: PropTypes.Validator; isExpanded: PropTypes.Validator; getState: PropTypes.Validator; }; readonly state: { expanded: {}; state: {}; }; getChildContext(): ExpandContext; componentDidMount(): void; componentWillUnmount(): void; render(): React.ReactNode; protected getExpandOpenHandler: ExpandContext["changeExpandState"]; protected isExpanded: ExpandContext["isExpanded"]; protected getExpandState: (key: string) => any; protected handleDocumentClick: (event: any) => void; }