text: /*
  * ---------------------------------------------------------
  * Copyright(C) Microsoft Corporation. All rights reserved.
  * ---------------------------------------------------------
  *
  * ---------------------------------------------------------
  * Generated file, DO NOT EDIT
  * ---------------------------------------------------------
  */
  "use strict";
  (function (FieldType) {
      FieldType[FieldType["String"] = 0] = "String";
      FieldType[FieldType["Integer"] = 1] = "Integer";
      FieldType[FieldType["DateTime"] = 2] = "DateTime";
      FieldType[FieldType["PlainText"] = 3] = "PlainText";
      FieldType[FieldType["Html"] = 4] = "Html";
      FieldType[FieldType["TreePath"] = 5] = "TreePath";
      FieldType[FieldType["History"] = 6] = "History";
      FieldType[FieldType["Double"] = 7] = "Double";
      FieldType[FieldType["Guid"] = 8] = "Guid";
      FieldType[FieldType["Boolean"] = 9] = "Boolean";
  })(exports.FieldType || (exports.FieldType = {}));
  var FieldType = exports.FieldType;
  (function (FieldUsage) {
      FieldUsage[FieldUsage["None"] = 0] = "None";
      FieldUsage[FieldUsage["WorkItem"] = 1] = "WorkItem";
      FieldUsage[FieldUsage["WorkItemLink"] = 2] = "WorkItemLink";
      FieldUsage[FieldUsage["Tree"] = 3] = "Tree";
      FieldUsage[FieldUsage["WorkItemTypeExtension"] = 4] = "WorkItemTypeExtension";
  })(exports.FieldUsage || (exports.FieldUsage = {}));
  var FieldUsage = exports.FieldUsage;
  (function (LinkQueryMode) {
      LinkQueryMode[LinkQueryMode["WorkItems"] = 0] = "WorkItems";
      LinkQueryMode[LinkQueryMode["LinksOneHopMustContain"] = 1] = "LinksOneHopMustContain";
      LinkQueryMode[LinkQueryMode["LinksOneHopMayContain"] = 2] = "LinksOneHopMayContain";
      LinkQueryMode[LinkQueryMode["LinksOneHopDoesNotContain"] = 3] = "LinksOneHopDoesNotContain";
      LinkQueryMode[LinkQueryMode["LinksRecursiveMustContain"] = 4] = "LinksRecursiveMustContain";
      LinkQueryMode[LinkQueryMode["LinksRecursiveMayContain"] = 5] = "LinksRecursiveMayContain";
      LinkQueryMode[LinkQueryMode["LinksRecursiveDoesNotContain"] = 6] = "LinksRecursiveDoesNotContain";
  })(exports.LinkQueryMode || (exports.LinkQueryMode = {}));
  var LinkQueryMode = exports.LinkQueryMode;
  (function (LogicalOperation) {
      LogicalOperation[LogicalOperation["NONE"] = 0] = "NONE";
      LogicalOperation[LogicalOperation["AND"] = 1] = "AND";
      LogicalOperation[LogicalOperation["OR"] = 2] = "OR";
  })(exports.LogicalOperation || (exports.LogicalOperation = {}));
  var LogicalOperation = exports.LogicalOperation;
  (function (ProvisioningActionType) {
      ProvisioningActionType[ProvisioningActionType["Import"] = 0] = "Import";
      ProvisioningActionType[ProvisioningActionType["Validate"] = 1] = "Validate";
  })(exports.ProvisioningActionType || (exports.ProvisioningActionType = {}));
  var ProvisioningActionType = exports.ProvisioningActionType;
  (function (QueryExpand) {
      QueryExpand[QueryExpand["None"] = 0] = "None";
      QueryExpand[QueryExpand["Wiql"] = 1] = "Wiql";
      QueryExpand[QueryExpand["Clauses"] = 2] = "Clauses";
      QueryExpand[QueryExpand["All"] = 3] = "All";
  })(exports.QueryExpand || (exports.QueryExpand = {}));
  var QueryExpand = exports.QueryExpand;
  (function (QueryResultType) {
      QueryResultType[QueryResultType["WorkItem"] = 1] = "WorkItem";
      QueryResultType[QueryResultType["WorkItemLink"] = 2] = "WorkItemLink";
  })(exports.QueryResultType || (exports.QueryResultType = {}));
  var QueryResultType = exports.QueryResultType;
  (function (QueryType) {
      QueryType[QueryType["Flat"] = 1] = "Flat";
      QueryType[QueryType["Tree"] = 2] = "Tree";
      QueryType[QueryType["OneHop"] = 3] = "OneHop";
  })(exports.QueryType || (exports.QueryType = {}));
  var QueryType = exports.QueryType;
  (function (TemplateType) {
      TemplateType[TemplateType["WorkItemType"] = 0] = "WorkItemType";
      TemplateType[TemplateType["GlobalWorkflow"] = 1] = "GlobalWorkflow";
  })(exports.TemplateType || (exports.TemplateType = {}));
  var TemplateType = exports.TemplateType;
  (function (TreeNodeStructureType) {
      TreeNodeStructureType[TreeNodeStructureType["Area"] = 0] = "Area";
      TreeNodeStructureType[TreeNodeStructureType["Iteration"] = 1] = "Iteration";
  })(exports.TreeNodeStructureType || (exports.TreeNodeStructureType = {}));
  var TreeNodeStructureType = exports.TreeNodeStructureType;
  (function (TreeStructureGroup) {
      TreeStructureGroup[TreeStructureGroup["Areas"] = 0] = "Areas";
      TreeStructureGroup[TreeStructureGroup["Iterations"] = 1] = "Iterations";
  })(exports.TreeStructureGroup || (exports.TreeStructureGroup = {}));
  var TreeStructureGroup = exports.TreeStructureGroup;
  (function (WorkItemExpand) {
      WorkItemExpand[WorkItemExpand["None"] = 0] = "None";
      WorkItemExpand[WorkItemExpand["Relations"] = 1] = "Relations";
      WorkItemExpand[WorkItemExpand["Fields"] = 2] = "Fields";
      WorkItemExpand[WorkItemExpand["All"] = 3] = "All";
  })(exports.WorkItemExpand || (exports.WorkItemExpand = {}));
  var WorkItemExpand = exports.WorkItemExpand;
  exports.TypeInfo = {
      AttachmentReference: {
          fields: null
      },
      FieldDependentRule: {
          fields: null
      },
      FieldsToEvaluate: {
          fields: null
      },
      FieldType: {
          enumValues: {
              "string": 0,
              "integer": 1,
              "dateTime": 2,
              "plainText": 3,
              "html": 4,
              "treePath": 5,
              "history": 6,
              "double": 7,
              "guid": 8,
              "boolean": 9
          }
      },
      FieldUsage: {
          enumValues: {
              "none": 0,
              "workItem": 1,
              "workItemLink": 2,
              "tree": 3,
              "workItemTypeExtension": 4
          }
      },
      IdentityReference: {
          fields: null
      },
      Link: {
          fields: null
      },
      LinkQueryMode: {
          enumValues: {
              "workItems": 0,
              "linksOneHopMustContain": 1,
              "linksOneHopMayContain": 2,
              "linksOneHopDoesNotContain": 3,
              "linksRecursiveMustContain": 4,
              "linksRecursiveMayContain": 5,
              "linksRecursiveDoesNotContain": 6
          }
      },
      LogicalOperation: {
          enumValues: {
              "nONE": 0,
              "aND": 1,
              "oR": 2
          }
      },
      ProjectReference: {
          fields: null
      },
      ProvisioningActionType: {
          enumValues: {
              "import": 0,
              "validate": 1
          }
      },
      ProvisioningResult: {
          fields: null
      },
      QueryExpand: {
          enumValues: {
              "none": 0,
              "wiql": 1,
              "clauses": 2,
              "all": 3
          }
      },
      QueryHierarchyItem: {
          fields: null
      },
      QueryResultType: {
          enumValues: {
              "workItem": 1,
              "workItemLink": 2
          }
      },
      QueryType: {
          enumValues: {
              "flat": 1,
              "tree": 2,
              "oneHop": 3
          }
      },
      ReportingWorkItemLink: {
          fields: null
      },
      ReportingWorkItemLinksBatch: {
          fields: null
      },
      ReportingWorkItemRevisionsBatch: {
          fields: null
      },
      ReportingWorkItemRevisionsFilter: {
          fields: null
      },
      StreamedBatch: {
          fields: null
      },
      TemplateType: {
          enumValues: {
              "workItemType": 0,
              "globalWorkflow": 1
          }
      },
      TreeNodeStructureType: {
          enumValues: {
              "area": 0,
              "iteration": 1
          }
      },
      TreeStructureGroup: {
          enumValues: {
              "areas": 0,
              "iterations": 1
          }
      },
      Wiql: {
          fields: null
      },
      WorkItem: {
          fields: null
      },
      WorkItemClassificationNode: {
          fields: null
      },
      WorkItemExpand: {
          enumValues: {
              "none": 0,
              "relations": 1,
              "fields": 2,
              "all": 3
          }
      },
      WorkItemField: {
          fields: null
      },
      WorkItemFieldOperation: {
          fields: null
      },
      WorkItemFieldReference: {
          fields: null
      },
      WorkItemFieldUpdate: {
          fields: null
      },
      WorkItemHistory: {
          fields: null
      },
      WorkItemLink: {
          fields: null
      },
      WorkItemQueryClause: {
          fields: null
      },
      WorkItemQueryResult: {
          fields: null
      },
      WorkItemQuerySortColumn: {
          fields: null
      },
      WorkItemReference: {
          fields: null
      },
      WorkItemRelation: {
          fields: null
      },
      WorkItemRelationType: {
          fields: null
      },
      WorkItemRelationUpdates: {
          fields: null
      },
      WorkItemRevisionReference: {
          fields: null
      },
      WorkItemTrackingReference: {
          fields: null
      },
      WorkItemTrackingResource: {
          fields: null
      },
      WorkItemTrackingResourceReference: {
          fields: null
      },
      WorkItemType: {
          fields: null
      },
      WorkItemTypeCategory: {
          fields: null
      },
      WorkItemTypeFieldInstance: {
          fields: null
      },
      WorkItemTypeReference: {
          fields: null
      },
      WorkItemTypeTemplate: {
          fields: null
      },
      WorkItemTypeTemplateUpdateModel: {
          fields: null
      },
      WorkItemUpdate: {
          fields: null
      }
  };
  exports.TypeInfo.AttachmentReference.fields = {};
  exports.TypeInfo.FieldDependentRule.fields = {
      dependentFields: {
          isArray: true,
          typeInfo: exports.TypeInfo.WorkItemFieldReference
      }
  };
  exports.TypeInfo.FieldsToEvaluate.fields = {};
  exports.TypeInfo.IdentityReference.fields = {};
  exports.TypeInfo.Link.fields = {};
  exports.TypeInfo.ProjectReference.fields = {};
  exports.TypeInfo.ProvisioningResult.fields = {};
  exports.TypeInfo.QueryHierarchyItem.fields = {
      children: {
          isArray: true,
          typeInfo: exports.TypeInfo.QueryHierarchyItem
      },
      clauses: {
          typeInfo: exports.TypeInfo.WorkItemQueryClause
      },
      columns: {
          isArray: true,
          typeInfo: exports.TypeInfo.WorkItemFieldReference
      },
      filterOptions: {
          enumType: exports.TypeInfo.LinkQueryMode
      },
      linkClauses: {
          typeInfo: exports.TypeInfo.WorkItemQueryClause
      },
      queryType: {
          enumType: exports.TypeInfo.QueryType
      },
      sortColumns: {
          isArray: true,
          typeInfo: exports.TypeInfo.WorkItemQuerySortColumn
      },
      sourceClauses: {
          typeInfo: exports.TypeInfo.WorkItemQueryClause
      },
      targetClauses: {
          typeInfo: exports.TypeInfo.WorkItemQueryClause
      }
  };
  exports.TypeInfo.ReportingWorkItemLink.fields = {
      changedDate: {
          isDate: true
      }
  };
  exports.TypeInfo.ReportingWorkItemLinksBatch.fields = {};
  exports.TypeInfo.ReportingWorkItemRevisionsBatch.fields = {};
  exports.TypeInfo.ReportingWorkItemRevisionsFilter.fields = {};
  exports.TypeInfo.StreamedBatch.fields = {};
  exports.TypeInfo.Wiql.fields = {};
  exports.TypeInfo.WorkItem.fields = {
      relations: {
          isArray: true,
          typeInfo: exports.TypeInfo.WorkItemRelation
      }
  };
  exports.TypeInfo.WorkItemClassificationNode.fields = {
      children: {
          isArray: true,
          typeInfo: exports.TypeInfo.WorkItemClassificationNode
      },
      structureType: {
          enumType: exports.TypeInfo.TreeNodeStructureType
      }
  };
  exports.TypeInfo.WorkItemField.fields = {
      supportedOperations: {
          isArray: true,
          typeInfo: exports.TypeInfo.WorkItemFieldOperation
      },
      type: {
          enumType: exports.TypeInfo.FieldType
      }
  };
  exports.TypeInfo.WorkItemFieldOperation.fields = {};
  exports.TypeInfo.WorkItemFieldReference.fields = {};
  exports.TypeInfo.WorkItemFieldUpdate.fields = {};
  exports.TypeInfo.WorkItemHistory.fields = {
      revisedBy: {
          typeInfo: exports.TypeInfo.IdentityReference
      },
      revisedDate: {
          isDate: true
      }
  };
  exports.TypeInfo.WorkItemLink.fields = {
      source: {
          typeInfo: exports.TypeInfo.WorkItemReference
      },
      target: {
          typeInfo: exports.TypeInfo.WorkItemReference
      }
  };
  exports.TypeInfo.WorkItemQueryClause.fields = {
      clauses: {
          isArray: true,
          typeInfo: exports.TypeInfo.WorkItemQueryClause
      },
      field: {
          typeInfo: exports.TypeInfo.WorkItemFieldReference
      },
      fieldValue: {
          typeInfo: exports.TypeInfo.WorkItemFieldReference
      },
      logicalOperator: {
          enumType: exports.TypeInfo.LogicalOperation
      },
      operator: {
          typeInfo: exports.TypeInfo.WorkItemFieldOperation
      }
  };
  exports.TypeInfo.WorkItemQueryResult.fields = {
      asOf: {
          isDate: true
      },
      columns: {
          isArray: true,
          typeInfo: exports.TypeInfo.WorkItemFieldReference
      },
      queryResultType: {
          enumType: exports.TypeInfo.QueryResultType
      },
      queryType: {
          enumType: exports.TypeInfo.QueryType
      },
      sortColumns: {
          isArray: true,
          typeInfo: exports.TypeInfo.WorkItemQuerySortColumn
      },
      workItemRelations: {
          isArray: true,
          typeInfo: exports.TypeInfo.WorkItemLink
      },
      workItems: {
          isArray: true,
          typeInfo: exports.TypeInfo.WorkItemReference
      }
  };
  exports.TypeInfo.WorkItemQuerySortColumn.fields = {
      field: {
          typeInfo: exports.TypeInfo.WorkItemFieldReference
      }
  };
  exports.TypeInfo.WorkItemReference.fields = {};
  exports.TypeInfo.WorkItemRelation.fields = {};
  exports.TypeInfo.WorkItemRelationType.fields = {};
  exports.TypeInfo.WorkItemRelationUpdates.fields = {
      added: {
          isArray: true,
          typeInfo: exports.TypeInfo.WorkItemRelation
      },
      removed: {
          isArray: true,
          typeInfo: exports.TypeInfo.WorkItemRelation
      },
      updated: {
          isArray: true,
          typeInfo: exports.TypeInfo.WorkItemRelation
      }
  };
  exports.TypeInfo.WorkItemRevisionReference.fields = {};
  exports.TypeInfo.WorkItemTrackingReference.fields = {};
  exports.TypeInfo.WorkItemTrackingResource.fields = {};
  exports.TypeInfo.WorkItemTrackingResourceReference.fields = {};
  exports.TypeInfo.WorkItemType.fields = {
      fields: {
          isArray: true,
          typeInfo: exports.TypeInfo.WorkItemTypeFieldInstance
      }
  };
  exports.TypeInfo.WorkItemTypeCategory.fields = {
      defaultWorkItemType: {
          typeInfo: exports.TypeInfo.WorkItemTypeReference
      },
      workItemTypes: {
          isArray: true,
          typeInfo: exports.TypeInfo.WorkItemTypeReference
      }
  };
  exports.TypeInfo.WorkItemTypeFieldInstance.fields = {
      field: {
          typeInfo: exports.TypeInfo.WorkItemFieldReference
      }
  };
  exports.TypeInfo.WorkItemTypeReference.fields = {};
  exports.TypeInfo.WorkItemTypeTemplate.fields = {};
  exports.TypeInfo.WorkItemTypeTemplateUpdateModel.fields = {
      actionType: {
          enumType: exports.TypeInfo.ProvisioningActionType
      },
      templateType: {
          enumType: exports.TypeInfo.TemplateType
      }
  };
  exports.TypeInfo.WorkItemUpdate.fields = {
      fields: {
          isArray: true,
          typeInfo: exports.TypeInfo.WorkItemFieldUpdate
      },
      relations: {
          typeInfo: exports.TypeInfo.WorkItemRelationUpdates
      },
      revisedBy: {
          typeInfo: exports.TypeInfo.IdentityReference
      },
      revisedDate: {
          isDate: true
      }
  };
  