text: /*
   * The MIT License (MIT)
   *
   * Copyright (c) 2016 
   *
   * Permission is hereby granted, free of charge, to any person obtaining a copy
   * of this software and associated documentation files (the "Software"), to deal
   * in the Software without restriction, including without limitation the rights
   * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
   * copies of the Software, and to permit persons to whom the Software is
   * furnished to do so, subject to the following conditions:
   *
   * The above copyright notice and this permission notice shall be included in all
   * copies or substantial portions of the Software.
   *
   * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
   * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
   * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
   * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
   * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
   * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
   * SOFTWARE.
   *
   * NOTE: This class is auto generated by the swagger code generator program.
   * https://github.com/swagger-api/swagger-codegen.git
   * Do not edit the class manually.
   *
   */
  (function(root, factory) {
    if (typeof define === 'function' && define.amd) {
      // AMD. Register as an anonymous module.
      define(['ApiClient', 'model/ManifestDerivative'], factory);
    } else if (typeof module === 'object' && module.exports) {
      // CommonJS-like environments that support module.exports, like Node.
      module.exports = factory(require('../ApiClient'), require('./ManifestDerivative'));
    } else {
      // Browser globals (root is window)
      if (!root.ForgeModelDerivative) {
        root.ForgeModelDerivative = {};
      }
      root.ForgeModelDerivative.Manifest = factory(root.ForgeModelDerivative.ApiClient, root.ForgeModelDerivative.ManifestDerivative);
    }
  }(this, function(ApiClient, ManifestDerivative) {
    'use strict';
  
  
  
  
    /**
     * The Manifest model module.
     * @module model/Manifest
     * @version 2.0.0
     */
  
    /**
     * Constructs a new <code>Manifest</code>.
     * @alias module:model/Manifest
     * @class
     * @param urn {String} The Base64 (URL safe) encoded source file URN
     * @param type {String} Type of this JSON object
     * @param progress {String} Overall progress for all translation jobs in the manifest. Possible values are: `complete` or `##%` 
     * @param status {String} Overall status for translation jobs in the “manifest”. Possible values are: `pending`, `success`, `inprogress`, `failed` and `timeout` 
     * @param hasThumbnail {Boolean} Indicates if a thumbnail has been generated for the source file URN
     * @param derivatives {Array.<module:model/ManifestDerivative>} Requested output files for the source file URN
     */
    var exports = function(urn, type, progress, status, hasThumbnail, derivatives) {
      var _this = this;
  
      _this['urn'] = urn;
      _this['type'] = type;
      _this['progress'] = progress;
      _this['status'] = status;
      _this['hasThumbnail'] = hasThumbnail;
  
      _this['derivatives'] = derivatives;
    };
  
    /**
     * Constructs a <code>Manifest</code> from a plain JavaScript object, optionally creating a new instance.
     * Copies all relevant properties from <code>data</code> to <code>obj</code> if supplied or a new instance if not.
     * @param {Object} data The plain JavaScript object bearing properties of interest.
     * @param {module:model/Manifest} obj Optional instance to populate.
     * @return {module:model/Manifest} The populated <code>Manifest</code> instance.
     */
    exports.constructFromObject = function(data, obj) {
      if (data) {
        obj = obj || new exports();
  
        if (data.hasOwnProperty('urn')) {
          obj['urn'] = ApiClient.convertToType(data['urn'], 'String');
        }
        if (data.hasOwnProperty('type')) {
          obj['type'] = ApiClient.convertToType(data['type'], 'String');
        }
        if (data.hasOwnProperty('progress')) {
          obj['progress'] = ApiClient.convertToType(data['progress'], 'String');
        }
        if (data.hasOwnProperty('status')) {
          obj['status'] = ApiClient.convertToType(data['status'], 'String');
        }
        if (data.hasOwnProperty('hasThumbnail')) {
          obj['hasThumbnail'] = ApiClient.convertToType(data['hasThumbnail'], 'Boolean');
        }
        if (data.hasOwnProperty('region')) {
          obj['region'] = ApiClient.convertToType(data['region'], 'String');
        }
        if (data.hasOwnProperty('derivatives')) {
          obj['derivatives'] = ApiClient.convertToType(data['derivatives'], [ManifestDerivative]);
        }
      }
      return obj;
    }
  
    /**
     * The Base64 (URL safe) encoded source file URN
     * @member {String} urn
     */
    exports.prototype['urn'] = undefined;
    /**
     * Type of this JSON object
     * @member {String} type
     */
    exports.prototype['type'] = undefined;
    /**
     * Overall progress for all translation jobs in the manifest. Possible values are: `complete` or `##%` 
     * @member {String} progress
     */
    exports.prototype['progress'] = undefined;
    /**
     * Overall status for translation jobs in the “manifest”. Possible values are: `pending`, `success`, `inprogress`, `failed` and `timeout` 
     * @member {String} status
     */
    exports.prototype['status'] = undefined;
    /**
     * Indicates if a thumbnail has been generated for the source file URN
     * @member {Boolean} hasThumbnail
     */
    exports.prototype['hasThumbnail'] = undefined;
    /**
     * Region 
     * @member {String} region
     */
    exports.prototype['region'] = undefined;
    /**
     * Requested output files for the source file URN
     * @member {Array.<module:model/ManifestDerivative>} derivatives
     */
    exports.prototype['derivatives'] = undefined;
  
  
  
    return exports;
  }));
  
  
  