/// <reference types="react" />
import { React, GlamorValue } from '../common';
export interface IObjectViewProps {
    data: any;
    name?: string;
    expandLevel?: number;
    showNonenumerable?: boolean;
    expandPaths?: string | string[];
    fontSize?: number;
    theme?: 'LIGHT' | 'DARK';
    style?: GlamorValue;
}
export interface IObjectViewState {
    data?: any;
    isLoading?: boolean;
}
interface INodeRendererOptions {
    depth: number;
    name: string;
    data: any;
    isNonenumerable: boolean;
    expanded: boolean;
}
export declare class ObjectView extends React.PureComponent<IObjectViewProps, IObjectViewState> {
    state: IObjectViewState;
    private isUnmounted;
    componentWillMount(): void;
    componentDidUpdate(prevProps: IObjectViewProps, prevState: IObjectViewState): void;
    componentWillUnmount(): void;
    render(): JSX.Element;
    private readonly theme;
    private readonly baseTheme;
    private loadData;
    renderNode: (props: INodeRendererOptions) => JSX.Element;
    renderRootNode: (props: INodeRendererOptions) => JSX.Element;
    renderEditorNode: (props: INodeRendererOptions) => JSX.Element;
}
export {};
