{ "type": "interface",
  "qname": "mx.controls.treeClasses.ITreeDataDescriptor",
    "description": "Interface providing methods for parsing and adding nodes to a collection of data that is displayed by a Tree control.",
  "tags": [
  {  "tagName": "see",
         "values": ["mx.collections.ICollectionView"]},
      {  "tagName": "playerversion",
         "values": ["Flash 9", "AIR 1.1"]},
      {  "tagName": "productversion",
         "values": ["Royale 0.9.3"]},
      {  "tagName": "langversion",
         "values": ["3.0"]}  ],
  "members": [
  { "type": "method",
    "qname": "getChildren",
    "namespace": "public",
    "bindable": [],
    "details": [],
    "deprecated": {},
      "description": "Provides access to a node's children, returning a collection view of children if they exist. A node can return any object in the collection as its children; children need not be nested. It is best-practice to return the same collection view for a given node.",
    "tags": [
    {  "tagName": "param",
           "values": ["node The node object currently being evaluated.", "model The entire collection that this node is a part of."]},
        {  "tagName": "playerversion",
           "values": ["Flash 9", "AIR 1.1"]},
        {  "tagName": "productversion",
           "values": ["Royale 0.9.3"]},
        {  "tagName": "return",
           "values": ["An collection view containing the child nodes."]},
        {  "tagName": "langversion",
           "values": ["3.0"]}  ],
      "return": "mx.collections.ICollectionView",
      "params": [{ "name": "node", "type": "Object"},
    { "name": "model", "type": "Object"}]}
  ,
  { "type": "method",
    "qname": "hasChildren",
    "namespace": "public",
    "bindable": [],
    "details": [],
    "deprecated": {},
      "description": "Tests for the existence of children in a non-terminating node.",
    "tags": [
    {  "tagName": "param",
           "values": ["node The current node.", "model The entire collection that this node is a part of."]},
        {  "tagName": "playerversion",
           "values": ["Flash 9", "AIR 1.1"]},
        {  "tagName": "productversion",
           "values": ["Royale 0.9.3"]},
        {  "tagName": "return",
           "values": ["<code>true</code> if the node has at least one child."]},
        {  "tagName": "langversion",
           "values": ["3.0"]}  ],
      "return": "Boolean",
      "params": [{ "name": "node", "type": "Object"},
    { "name": "model", "type": "Object"}]}
  ,
  { "type": "method",
    "qname": "isBranch",
    "namespace": "public",
    "bindable": [],
    "details": [],
    "deprecated": {},
      "description": "Tests a node for termination. Branches are non-terminating but are not required to have any leaf nodes.",
    "tags": [
    {  "tagName": "param",
           "values": ["node The node object currently being evaluated.", "model The entire collection that this node is a part of."]},
        {  "tagName": "playerversion",
           "values": ["Flash 9", "AIR 1.1"]},
        {  "tagName": "productversion",
           "values": ["Flex 3"]},
        {  "tagName": "return",
           "values": ["A Boolean indicating if this node is non-terminating."]},
        {  "tagName": "langversion",
           "values": ["3.0"]}  ],
      "return": "Boolean",
      "params": [{ "name": "node", "type": "Object"},
    { "name": "model", "type": "Object"}]}
  ,
  { "type": "method",
    "qname": "getData",
    "namespace": "public",
    "bindable": [],
    "details": [],
    "deprecated": {},
      "description": "Gets the data from a node.",
    "tags": [
    {  "tagName": "param",
           "values": ["node The node object from which to get the data.", "model The collection that contains the node."]},
        {  "tagName": "playerversion",
           "values": ["Flash 9", "AIR 1.1"]},
        {  "tagName": "productversion",
           "values": ["Flex 3"]},
        {  "tagName": "return",
           "values": ["The requested data."]},
        {  "tagName": "langversion",
           "values": ["3.0"]}  ],
      "return": "Object",
      "params": [{ "name": "node", "type": "Object"},
    { "name": "model", "type": "Object"}]}
  ,
  { "type": "method",
    "qname": "addChildAt",
    "namespace": "public",
    "bindable": [],
    "details": [],
    "deprecated": {},
      "description": "Adds a child node to a node at the specified index.",
    "tags": [
    {  "tagName": "param",
           "values": ["node The node object that will parent the child.", "child The node object that will be parented by the node.", "index The 0-based index of where to put the child node.", "model The entire collection that this node is a part of."]},
        {  "tagName": "playerversion",
           "values": ["Flash 9", "AIR 1.1"]},
        {  "tagName": "productversion",
           "values": ["Flex 3"]},
        {  "tagName": "return",
           "values": ["<code>true</code> if successful."]},
        {  "tagName": "langversion",
           "values": ["3.0"]}  ],
      "return": "Boolean",
      "params": [{ "name": "parent", "type": "Object"},
    { "name": "newChild", "type": "Object"},
    { "name": "index", "type": "int"},
    { "name": "model", "type": "Object"}]}
  ,
  { "type": "method",
    "qname": "removeChildAt",
    "namespace": "public",
    "bindable": [],
    "details": [],
    "deprecated": {},
      "description": "Removes a child node to a node at the specified index.",
    "tags": [
    {  "tagName": "param",
           "values": ["node The node object that is the parent of the child.", "child The node object that will be removed.", "index The 0-based index of the soon to be deleted node.", "model The entire collection that this node is a part of."]},
        {  "tagName": "playerversion",
           "values": ["Flash 9", "AIR 1.1"]},
        {  "tagName": "productversion",
           "values": ["Flex 3"]},
        {  "tagName": "return",
           "values": ["<code>true</code> if successful."]},
        {  "tagName": "langversion",
           "values": ["3.0"]}  ],
      "return": "Boolean",
      "params": [{ "name": "parent", "type": "Object"},
    { "name": "child", "type": "Object"},
    { "name": "index", "type": "int"},
    { "name": "model", "type": "Object"}]}
  ]
  }
