The tree expandable service.
Emit when the node is expanded or collapsed.
If the given node is valid then collapse it recursively.
Return true if a node has been collapsed; otherwise false.
If the given node is valid and expanded then collapse it.
Dispose this object.
Expand a node for the given node id if it is valid and collapsed.
Expanding a node refreshes all its children.
Return a valid expanded refreshed node or undefined if such does not exist.
If the given node is invalid then does nothing.
If the given node is collapsed then expand it; otherwise collapse it.