1 | import React from 'react';
|
2 | import PropTypes from 'prop-types';
|
3 | import type { StylingFunction, StylingValue, Theme } from 'react-base16-styling';
|
4 | import { CircularPropsPassedThroughJSONTree } from './types';
|
5 | interface Props extends CircularPropsPassedThroughJSONTree {
|
6 | data: any;
|
7 | theme?: Theme;
|
8 | invertTheme: boolean;
|
9 | }
|
10 | interface State {
|
11 | styling: StylingFunction;
|
12 | }
|
13 | export declare class JSONTree extends React.Component<Props, State> {
|
14 | static propTypes: {
|
15 | data: PropTypes.Requireable<any>;
|
16 | hideRoot: PropTypes.Requireable<boolean>;
|
17 | theme: PropTypes.Requireable<string | object>;
|
18 | invertTheme: PropTypes.Requireable<boolean>;
|
19 | keyPath: PropTypes.Requireable<(string | number | null | undefined)[]>;
|
20 | postprocessValue: PropTypes.Requireable<(...args: any[]) => any>;
|
21 | sortObjectKeys: PropTypes.Requireable<boolean | ((...args: any[]) => any)>;
|
22 | };
|
23 | static defaultProps: {
|
24 | shouldExpandNode: (keyPath: (string | number)[], data: any, level: number) => boolean;
|
25 | hideRoot: boolean;
|
26 | keyPath: string[];
|
27 | getItemString: (type: string, data: any, itemType: React.ReactNode, itemString: string) => JSX.Element;
|
28 | labelRenderer: ([label]: (string | number)[]) => JSX.Element;
|
29 | valueRenderer: (value: any) => any;
|
30 | postprocessValue: (value: any) => any;
|
31 | isCustomNode: () => boolean;
|
32 | collectionLimit: number;
|
33 | invertTheme: boolean;
|
34 | };
|
35 | constructor(props: Props);
|
36 | UNSAFE_componentWillReceiveProps(nextProps: Props): void;
|
37 | shouldComponentUpdate(nextProps: Props): boolean;
|
38 | render(): JSX.Element;
|
39 | }
|
40 | export { StylingValue };
|