import React from 'react'; import { TreeItem } from '../component/Tree'; import { PureDataRenderer } from '../component/DataRenderer'; import { DataMap, FunctionDesc, ValueSubscriber } from '@ticlo/core/editor'; import { TicloLayoutContext } from '../component/LayoutContext'; import { DragState } from 'rc-dock/lib'; export declare class NodeTreeItem extends TreeItem { id: string; canApply: boolean; childPrefix: string; name: string; blockClass: string; isJob: boolean; editable: boolean; max: number; constructor(name: string, id: string, parent?: NodeTreeItem, canApply?: boolean); addToList(list: NodeTreeItem[]): void; listingId: string; open(): void; close(): void; onChildrenChange(parentPath: string, isHidden?: boolean, autoOpen?: boolean): void; onUpdate(response: DataMap): void; onError(error: string, data?: DataMap): void; cancelLoad(): void; destroy(): void; } interface Props { item: NodeTreeItem; style: React.CSSProperties; selected: boolean; onClick: (item: NodeTreeItem, event: React.MouseEvent) => void; getMenu: (item: NodeTreeItem) => React.ReactElement[]; } interface State { hasChange: boolean; desc: FunctionDesc; error?: string; } export declare class NodeTreeRenderer extends PureDataRenderer { static contextType: React.Context; context: TicloLayoutContext; state: State; onExpandClicked: () => void; onOpenClicked: () => void; onSaveClicked: () => void; onDeleteClicked: () => void; onDragStart: (e: DragState) => void; subscriptionListener: ValueSubscriber; hasChangeListener: ValueSubscriber; constructor(props: Props); descCallback: (desc: FunctionDesc) => void; onClickContent: (e: React.MouseEvent) => void; getMenu: () => JSX.Element; renderImpl(): JSX.Element; componentWillUnmount(): void; } export {};