text: /*
   * Hydrogen Integration API
   * The Hydrogen Integration API
   *
   * OpenAPI spec version: 1.2.1
   * Contact: info@hydrogenplatform.com
   *
   * NOTE: This class is auto generated by the swagger code generator program.
   * https://github.com/swagger-api/swagger-codegen.git
   *
   * Swagger Codegen version: 2.4.14
   *
   * Do not edit the class manually.
   *
   */
  
  (function(root, factory) {
    if (typeof define === 'function' && define.amd) {
      // AMD. Register as an anonymous module.
      define(['ApiClient'], factory);
    } else if (typeof module === 'object' && module.exports) {
      // CommonJS-like environments that support module.exports, like Node.
      module.exports = factory(require('../ApiClient'));
    } else {
      // Browser globals (root is window)
      if (!root.HydrogenIntegrationApi) {
        root.HydrogenIntegrationApi = {};
      }
      root.HydrogenIntegrationApi.JsonNode = factory(root.HydrogenIntegrationApi.ApiClient);
    }
  }(this, function(ApiClient) {
    'use strict';
  
    /**
     * The JsonNode model module.
     * @module model/JsonNode
     * @version 1.2.1
     */
  
    /**
     * Constructs a new <code>JsonNode</code>.
     * @alias module:model/JsonNode
     * @class
     */
    var exports = function() {
    };
  
    /**
     * Constructs a <code>JsonNode</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/JsonNode} obj Optional instance to populate.
     * @return {module:model/JsonNode} The populated <code>JsonNode</code> instance.
     */
    exports.constructFromObject = function(data, obj) {
      if (data) {
        obj = obj || new exports();
        if (data.hasOwnProperty('array'))
          obj._array = ApiClient.convertToType(data['array'], 'Boolean');
        if (data.hasOwnProperty('big_decimal'))
          obj.bigDecimal = ApiClient.convertToType(data['big_decimal'], 'Boolean');
        if (data.hasOwnProperty('big_integer'))
          obj.bigInteger = ApiClient.convertToType(data['big_integer'], 'Boolean');
        if (data.hasOwnProperty('binary'))
          obj.binary = ApiClient.convertToType(data['binary'], 'Boolean');
        if (data.hasOwnProperty('boolean'))
          obj._boolean = ApiClient.convertToType(data['boolean'], 'Boolean');
        if (data.hasOwnProperty('container_node'))
          obj.containerNode = ApiClient.convertToType(data['container_node'], 'Boolean');
        if (data.hasOwnProperty('double'))
          obj._double = ApiClient.convertToType(data['double'], 'Boolean');
        if (data.hasOwnProperty('float'))
          obj._float = ApiClient.convertToType(data['float'], 'Boolean');
        if (data.hasOwnProperty('floating_point_number'))
          obj.floatingPointNumber = ApiClient.convertToType(data['floating_point_number'], 'Boolean');
        if (data.hasOwnProperty('int'))
          obj._int = ApiClient.convertToType(data['int'], 'Boolean');
        if (data.hasOwnProperty('integral_number'))
          obj.integralNumber = ApiClient.convertToType(data['integral_number'], 'Boolean');
        if (data.hasOwnProperty('long'))
          obj._long = ApiClient.convertToType(data['long'], 'Boolean');
        if (data.hasOwnProperty('missing_node'))
          obj.missingNode = ApiClient.convertToType(data['missing_node'], 'Boolean');
        if (data.hasOwnProperty('node_type'))
          obj.nodeType = ApiClient.convertToType(data['node_type'], 'String');
        if (data.hasOwnProperty('null'))
          obj._null = ApiClient.convertToType(data['null'], 'Boolean');
        if (data.hasOwnProperty('number'))
          obj._number = ApiClient.convertToType(data['number'], 'Boolean');
        if (data.hasOwnProperty('object'))
          obj._object = ApiClient.convertToType(data['object'], 'Boolean');
        if (data.hasOwnProperty('pojo'))
          obj.pojo = ApiClient.convertToType(data['pojo'], 'Boolean');
        if (data.hasOwnProperty('short'))
          obj._short = ApiClient.convertToType(data['short'], 'Boolean');
        if (data.hasOwnProperty('textual'))
          obj.textual = ApiClient.convertToType(data['textual'], 'Boolean');
        if (data.hasOwnProperty('value_node'))
          obj.valueNode = ApiClient.convertToType(data['value_node'], 'Boolean');
      }
      return obj;
    }
  
    /**
     * @member {Boolean} _array
     */
    exports.prototype._array = undefined;
  
    /**
     * @member {Boolean} bigDecimal
     */
    exports.prototype.bigDecimal = undefined;
  
    /**
     * @member {Boolean} bigInteger
     */
    exports.prototype.bigInteger = undefined;
  
    /**
     * @member {Boolean} binary
     */
    exports.prototype.binary = undefined;
  
    /**
     * @member {Boolean} _boolean
     */
    exports.prototype._boolean = undefined;
  
    /**
     * @member {Boolean} containerNode
     */
    exports.prototype.containerNode = undefined;
  
    /**
     * @member {Boolean} _double
     */
    exports.prototype._double = undefined;
  
    /**
     * @member {Boolean} _float
     */
    exports.prototype._float = undefined;
  
    /**
     * @member {Boolean} floatingPointNumber
     */
    exports.prototype.floatingPointNumber = undefined;
  
    /**
     * @member {Boolean} _int
     */
    exports.prototype._int = undefined;
  
    /**
     * @member {Boolean} integralNumber
     */
    exports.prototype.integralNumber = undefined;
  
    /**
     * @member {Boolean} _long
     */
    exports.prototype._long = undefined;
  
    /**
     * @member {Boolean} missingNode
     */
    exports.prototype.missingNode = undefined;
  
    /**
     * @member {module:model/JsonNode.NodeTypeEnum} nodeType
     */
    exports.prototype.nodeType = undefined;
  
    /**
     * @member {Boolean} _null
     */
    exports.prototype._null = undefined;
  
    /**
     * @member {Boolean} _number
     */
    exports.prototype._number = undefined;
  
    /**
     * @member {Boolean} _object
     */
    exports.prototype._object = undefined;
  
    /**
     * @member {Boolean} pojo
     */
    exports.prototype.pojo = undefined;
  
    /**
     * @member {Boolean} _short
     */
    exports.prototype._short = undefined;
  
    /**
     * @member {Boolean} textual
     */
    exports.prototype.textual = undefined;
  
    /**
     * @member {Boolean} valueNode
     */
    exports.prototype.valueNode = undefined;
  
  
    /**
     * Allowed values for the <code>nodeType</code> property.
     * @enum {String}
     * @readonly
     */
    exports.NodeTypeEnum = {
      /**
       * value: "ARRAY"
       * @const
       */
      ARRAY: "ARRAY",
  
      /**
       * value: "BINARY"
       * @const
       */
      BINARY: "BINARY",
  
      /**
       * value: "BOOLEAN"
       * @const
       */
      BOOLEAN: "BOOLEAN",
  
      /**
       * value: "MISSING"
       * @const
       */
      MISSING: "MISSING",
  
      /**
       * value: "NULL"
       * @const
       */
      NULL: "NULL",
  
      /**
       * value: "NUMBER"
       * @const
       */
      NUMBER: "NUMBER",
  
      /**
       * value: "OBJECT"
       * @const
       */
      OBJECT: "OBJECT",
  
      /**
       * value: "POJO"
       * @const
       */
      POJO: "POJO",
  
      /**
       * value: "STRING"
       * @const
       */
      STRING: "STRING"
    };
  
    return exports;
  
  }));
  