///
import { Renderer, ElementRef, IterableDiffers } from "@angular/core";
import { IgControlBase } from "../igcontrolbase/igcontrolbase";
export declare class IgTreeComponent extends IgControlBase {
private _dataSource;
private _changes;
constructor(el: ElementRef, renderer: Renderer, differs: IterableDiffers);
ngOnInit(): void;
ngDoCheck(): void;
optionChange(options?: any): void;
/**
* Performs databinding on the igTree.
*/
dataBind(): void;
/**
* Toggles the checkstate of a node if checkboxMode is not set to off, otherwise does nothing.
*
* @param node Specifies the node element the checkbox of which would be toggled.
* @param event Indicates the browser event which triggered this action, if this is not an API call.
*/
toggleCheckstate(node: Object, event?: Object): void;
/**
* Toggles the collapse/expand state for the specified node.
*
* @param node Specifies the node element the checkbox of which would be toggled.
* @param event Indicates the browser event which triggered this action, if this is not an API call.
*/
toggle(node: Object, event?: Object): void;
/**
* Expands the tree down to the specified node and selects the node if specified.
*
* @param node Specifies the node element down to which the tree would be expanded.
* @param toSelect Specifies the whether to select the node after expanding to it.
*/
expandToNode(node: Object, toSelect?: boolean): void;
/**
* Expands the specified node.
*
* @param node Specifies the node element to expand.
*/
expand(node: Object): void;
/**
* Collapses the specified node.
*
* @param node Specifies the node element to collapse.
*/
collapse(node: Object): void;
/**
* Retrieves the parent node element of the specified node element.
*
* @param node Specifies the jQuery selected node element to collapse.
*/
parentNode(node: Object): Object;
/**
* Retrieves the jQuery element of the node with the specified path.
*
* @param nodePath Specifies the path to the required node.
*/
nodeByPath(nodePath: string): Object;
/**
* Retrieves the jQuery element of the node with the specified value.
*
* @param value Specifies the value of the required node.
*/
nodesByValue(value: string): Object;
/**
* Retrieves all the node objects for the nodes that have their checkboxes checked.
*/
checkedNodes(): any[];
/**
* Retrieves all the node objects for the nodes that have their checkboxes unchecked.
*/
uncheckedNodes(): any[];
/**
* Retrieves all the node objects for the nodes that have their checkboxes partially checked.
*/
partiallyCheckedNodes(): any[];
/**
* Selects a node.
*
* @param node Specifies the node element to be selected.
* @param event Indicates the browser event which triggered this action, if this is not an API call.
*/
select(node: Object, event?: Object): void;
/**
* Deselects the specified node.
*
* @param node Specifies the node element to be deselected.
*/
deselect(node: Object): void;
/**
* Deselects all the selected nodes.
*/
clearSelection(): void;
/**
* Retrieves the node object for the selected node.
*/
selectedNode(): Object;
/**
* Retrieves all node objects with the specified text (case sensitive).
*
* @param text The text to search for.
* @param parent The node element to start the search from. If not specified then search would start from the root of the tree.
*/
findNodesByText(text: string, parent?: Object): any[];
/**
* Retrieves all node objects for the immediate children of the specified parent with the specified text (case sensitive).
*
* @param text The text to search for.
* @param parent The node element the children of which would be searched.
*/
findImmediateNodesByText(text: string, parent?: Object): any[];
/**
* Retrieves the n-th jQuery node element child of the specified parent.
*
* @param index Specifies the index the node at which to be retrieved.
* @param parent The parent node element to start the search from.
*/
nodeByIndex(index: number, parent?: Object): Object;
/**
* Retrieves a node object for the specified node element.
*
* @param element Specifies the node element.
*/
nodeFromElement(element: Object): Object;
/**
* Retrieves a node object collection of the immediate children of the provided node element.
*
* @param parent Specifies the node element.
*/
children(parent: Object): any[];
/**
* Retrieves a node object collection of the immediate children of the node with the provided path.
*
* @param path Specifies the path of the node the children of which are to be retrieved.
*/
childrenByPath(path: string): any[];
/**
* Returns true if the provided node element is selected and false otherwise.
*
* @param node Specifies the node element.
*/
isSelected(node: Object): boolean;
/**
* Returns true if the provided node element is expanded and false otherwise.
*
* @param node Specifies the node element.
*/
isExpanded(node: Object): boolean;
/**
* Returns true if the provided node element has its checkbox checkstate checked and false otherwise.
*
* @param node Specifies the node element.
*/
isChecked(node: Object): boolean;
/**
* Returns the specified node checkstate.
*
* @param node Specifies the node element.
*/
checkState(node: Object): string;
/**
* Adds a new array of nodes to the tree. New nodes are appended to the root or to a specified parent node, at a specified index.
*
* @param node Specifies the data used to create the new nodeŃ.
* @param parent Specifies the element of the parent node the nodes are to be appended to.
* @param nodeIndex Specifies the index at which the nodes to be inserted.
*/
addNode(node: Object, parent?: Object, nodeIndex?: number): void;
/**
* Removes the node with with the specified path and all of its children.
*
* @param path Specifies the path of the node to be removed.
*/
removeAt(path: string): void;
/**
* Removing all the nodes with the specified value.
*
* @param value Specifies the value of the nodes to be removed.
*/
removeNodesByValue(value: string): void;
/**
* Performs a UI update on the provided node element with the provided data.
*
* @param element Specifies the node to be updated.
* @param data Specifies the new data item the node would update according to.
*/
applyChangesToNode(element: Object, data: Object): void;
/**
* Returns the transaction log stack.
*/
transactionLog(): any[];
/**
* Returns the data for the node with specified path.
*
* @param path Specifies the node path for which the data is returned.
*/
nodeDataFor(path: string): Object;
/**
* Destructor for the igTree widget.
*/
destroy(): void;
}