import * as React from 'react'; import { BaseTool, IBaseToolProps } from './tool/BaseTool'; export type toolElementStatus = null | 'react' | 'ext' | 'del'; export interface IToolElement { /** * React Element. */ reactElement: Readonly; /** * Unique id. */ uid: Readonly; /** * Updated props. */ updatedProps: any; /** * Status. */ status: Readonly; } export declare class ToolsManager { private uid; private refresh; constructor(uid: string, refresh: () => void); /** * Get toolElements */ getToolElements(filterFn?: (value: IToolElement, index: number, array: IToolElement[]) => boolean, thisFilterArg?: any): IToolElement[]; /** * Update tool props */ updateToolProps(uid: string, props: any, refreshIfChanging?: boolean): void; /** * Create and add tool props */ createAndAddTool(cl: React.ClassType, any>, props: IBaseToolProps): void; activateTool(uid: string, force?: boolean): void; deactivateTool(uid: string): void; /** * Update from children */ fromChildren(nextChildren: React.ReactNode): void; /** * Set toolElement */ private setToolElement; private fromSubChildren; }