import * as React from 'react'; import { Subject } from 'rxjs'; import { CssValue, t } from '../common'; export declare type IPropEditorProps = { rootData?: t.PropsData; theme: t.PropsTheme; parentNode: t.IPropNode; node: t.IPropNode; renderValue?: t.PropValueFactory; isDeletable?: boolean; events$: Subject; style?: CssValue; }; export declare type IPropEditorState = { value?: t.PropValue; isOver?: boolean; }; export declare class PropEditor extends React.PureComponent { state: IPropEditorState; private state$; private unmounted$; private didUpdate$; private value$; private elValueInput; private elValueInputRef; componentDidMount(): void; componentDidUpdate(prev: IPropEditorProps): void; componentWillUnmount(): void; get theme(): t.IPropsTheme; get isFocused(): boolean; get id(): string; get nodeData(): t.IPropNodeData; get path(): string; get key(): string | number; get value(): t.PropValue; get valueString(): string; get valueColor(): string; get type(): t.PropType; get isScalar(): boolean; get parentType(): t.PropType; private get lens(); focus(): this; private fire; private setValue; private change; private onFocus; render(): JSX.Element; private renderValue; private valueFactory; private renderValueInput; private renderComplex; private renderDelete; private focusHandler; private overDeleteHandler; private handleDeleteClick; }