text: /**
   * FactSet Prices API
   * Gain access to comprehensive global coverage for Equities & Fixed Income. Perform quick analytics by controlling the date ranges, currencies, and rolling periods, or simply request Open, High, Low, and Close prices. Easily connect pricing data with other core company data or alternative content sets using FactSet's hub and spoke symbology. <p>Equity and Fund Security types include Common Stock, ADR, GDR, Preferred, Closed-ended Fund, Exchange Traded Fund, Unit, Open-ended Fund, Exchange Traded Fund UVI, Exchange Traded Fund NAV, Preferred Equity, Non-Voting Depositary Receipt/Certificate, Alien/Foreign, Structured Product, and Temporary Instruments. Reference over 180,000+ active and inactive securities.</p><p>Fixed Income Security Types include Corporate Bonds, Treasury and Agency bonds, Government Bonds, and Municipals.</p> 
   *
   * The version of the OpenAPI document: 1.2.1
   * Contact: api@factset.com
   *
   * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
   * https://openapi-generator.tech
   * Do not edit the class manually.
   *
   */
  
  import ApiClient from '../ApiClient';
  
  /**
   * The Dividend model module.
   * @module model/Dividend
   * @version 0.20.0
   */
  class Dividend {
      /**
       * Constructs a new <code>Dividend</code>.
       * @alias module:model/Dividend
       */
      constructor() { 
          
          Dividend.initialize(this);
      }
  
      /**
       * Initializes the fields of this object.
       * This method is used by the constructors of any subclasses, in order to implement multiple inheritance (mix-ins).
       * Only for internal use.
       */
      static initialize(obj) { 
      }
  
      /**
       * Constructs a <code>Dividend</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/Dividend} obj Optional instance to populate.
       * @return {module:model/Dividend} The populated <code>Dividend</code> instance.
       */
      static constructFromObject(data, obj) {
          if (data) {
              obj = obj || new Dividend();
  
              if (data.hasOwnProperty('fsymId')) {
                  obj['fsymId'] = ApiClient.convertToType(data['fsymId'], 'String');
              }
              if (data.hasOwnProperty('divsExDate')) {
                  obj['divsExDate'] = ApiClient.convertToType(data['divsExDate'], 'Date');
              }
              if (data.hasOwnProperty('adjDate')) {
                  obj['adjDate'] = ApiClient.convertToType(data['adjDate'], 'Date');
              }
              if (data.hasOwnProperty('currency')) {
                  obj['currency'] = ApiClient.convertToType(data['currency'], 'String');
              }
              if (data.hasOwnProperty('divsPaid')) {
                  obj['divsPaid'] = ApiClient.convertToType(data['divsPaid'], 'Number');
              }
              if (data.hasOwnProperty('divsRecDate')) {
                  obj['divsRecDate'] = ApiClient.convertToType(data['divsRecDate'], 'Date');
              }
              if (data.hasOwnProperty('divsPayDate')) {
                  obj['divsPayDate'] = ApiClient.convertToType(data['divsPayDate'], 'Date');
              }
              if (data.hasOwnProperty('divsTypeC')) {
                  obj['divsTypeC'] = ApiClient.convertToType(data['divsTypeC'], 'Number');
              }
              if (data.hasOwnProperty('divsTypeD')) {
                  obj['divsTypeD'] = ApiClient.convertToType(data['divsTypeD'], 'String');
              }
              if (data.hasOwnProperty('divsTaxC')) {
                  obj['divsTaxC'] = ApiClient.convertToType(data['divsTaxC'], 'String');
              }
              if (data.hasOwnProperty('divsTaxD')) {
                  obj['divsTaxD'] = ApiClient.convertToType(data['divsTaxD'], 'String');
              }
              if (data.hasOwnProperty('divsNGFlag')) {
                  obj['divsNGFlag'] = ApiClient.convertToType(data['divsNGFlag'], 'String');
              }
              if (data.hasOwnProperty('divsNGEquiv')) {
                  obj['divsNGEquiv'] = ApiClient.convertToType(data['divsNGEquiv'], 'Number');
              }
              if (data.hasOwnProperty('requestId')) {
                  obj['requestId'] = ApiClient.convertToType(data['requestId'], 'String');
              }
          }
          return obj;
      }
  
  
  }
  
  /**
   * Factset Regional Security Identifier. Six alpha-numeric characters, excluding vowels, with an -R suffix (XXXXXX-R). Identifies the security's best regional security data series per currency. For equities, all primary listings per region and currency are allocated a regional-level permanent identifier. The regional-level permanent identifier will be available once a SEDOL representing the region/currency has been allocated and the identifiers are on FactSet.
   * @member {String} fsymId
   */
  Dividend.prototype['fsymId'] = undefined;
  
  /**
   * Ex-Date of the dividend expressed in YYYY-MM-DD format.
   * @member {Date} divsExDate
   */
  Dividend.prototype['divsExDate'] = undefined;
  
  /**
   * Date of last split for which prices and volume have been adjusted.
   * @member {Date} adjDate
   */
  Dividend.prototype['adjDate'] = undefined;
  
  /**
   * Currency ISO code. For more details, visit [Online Assistant Page #1470](https://oa.apps.factset.com/pages/1470).
   * @member {String} currency
   */
  Dividend.prototype['currency'] = undefined;
  
  /**
   * Amount of the dividend paid.
   * @member {Number} divsPaid
   */
  Dividend.prototype['divsPaid'] = undefined;
  
  /**
   * Date the dividend was recorded expressed in YYYY-MM-DD format.
   * @member {Date} divsRecDate
   */
  Dividend.prototype['divsRecDate'] = undefined;
  
  /**
   * Date the dividend will be paid expressed in YYYY-MM-DD format.
   * @member {Date} divsPayDate
   */
  Dividend.prototype['divsPayDate'] = undefined;
  
  /**
   * Dividend type code. For code descriptions, visit [Online Assistant Page #8764](https://oa.apps.factset.com/pages/8764).
   * @member {Number} divsTypeC
   */
  Dividend.prototype['divsTypeC'] = undefined;
  
  /**
   * Description of dividend type. For type descriptions, visit [Online Assistant Page #8764](https://oa.apps.factset.com/pages/8764).
   * @member {String} divsTypeD
   */
  Dividend.prototype['divsTypeD'] = undefined;
  
  /**
   * Tax Marker Code. For code descriptions, visit [Online Assistant Page #15265](https://oa.apps.factset.com/pages/15265).
   * @member {String} divsTaxC
   */
  Dividend.prototype['divsTaxC'] = undefined;
  
  /**
   * Description of Tax Marker. For type descriptions, visit [Online Assistant Page #15265](https://oa.apps.factset.com/pages/15265).
   * @member {String} divsTaxD
   */
  Dividend.prototype['divsTaxD'] = undefined;
  
  /**
   * Net/Gross Marker Code. For details describing Net vs. Gross dividends, visit [Online Assistant Page #11512](https://oa.apps.factset.com/pages/11512).
   * @member {module:model/Dividend.DivsNGFlagEnum} divsNGFlag
   */
  Dividend.prototype['divsNGFlag'] = undefined;
  
  /**
   * Net/Gross equivalent (opposite of dividend paid). For details describing Net vs. Gross dividends, visit [Online Assistant Page #11512](https://oa.apps.factset.com/pages/11512).
   * @member {Number} divsNGEquiv
   */
  Dividend.prototype['divsNGEquiv'] = undefined;
  
  /**
   * Identifier that was used for the request.
   * @member {String} requestId
   */
  Dividend.prototype['requestId'] = undefined;
  
  
  
  
  
  /**
   * Allowed values for the <code>divsNGFlag</code> property.
   * @enum {String}
   * @readonly
   */
  Dividend['DivsNGFlagEnum'] = {
  
      /**
       * value: "N"
       * @const
       */
      "N": "N",
  
      /**
       * value: "G"
       * @const
       */
      "G": "G",
  
      /**
       * value: "T"
       * @const
       */
      "T": "T",
  
      /**
       * value: "X"
       * @const
       */
      "X": "X",
  
      /**
       * value: "V"
       * @const
       */
      "V": "V",
  
      /**
       * value: "0"
       * @const
       */
      "0": "0"
  };
  
  
  
  export default Dividend;
  
  