UNPKG

@factset/sdk-securityexplanation

Version:

Security Explanation client library for JavaScript

221 lines (203 loc) 8.25 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = void 0; var _ApiClient = _interopRequireDefault(require("../ApiClient")); var _BrokerResearchSummary = _interopRequireDefault(require("./BrokerResearchSummary")); function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; } /** * Security Explanation API * Allow clients to use Security Explanation through APIs. * * The version of the OpenAPI document: 1.4.0 * 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. * */ /** * The SecurityExplanationRequestParameters model module. * @module model/SecurityExplanationRequestParameters */ class SecurityExplanationRequestParameters { /** * Constructs a new <code>SecurityExplanationRequestParameters</code>. * Parameters for the security explanation request * @alias module:model/SecurityExplanationRequestParameters * @param id {String} Accepted ID types include Market Tickers, SEDOL, ISINs, CUSIPs, or FactSet Permanent Ids. * @param startDate {Date} Start date of the explain request in YYYY-MM-DD format. * @param endDate {Date} End date of the explain request in YYYY-MM-DD format. */ constructor(id, startDate, endDate) { SecurityExplanationRequestParameters.initialize(this, id, startDate, endDate); } /** * 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, id, startDate, endDate) { obj['id'] = id; obj['startDate'] = startDate; obj['endDate'] = endDate; } /** * Constructs a <code>SecurityExplanationRequestParameters</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/SecurityExplanationRequestParameters} obj Optional instance to populate. * @return {module:model/SecurityExplanationRequestParameters} The populated <code>SecurityExplanationRequestParameters</code> instance. */ static constructFromObject(data, obj) { if (data) { obj = obj || new SecurityExplanationRequestParameters(); if (data.hasOwnProperty('id')) { obj['id'] = _ApiClient.default.convertToType(data['id'], 'String'); } if (data.hasOwnProperty('startDate')) { obj['startDate'] = _ApiClient.default.convertToType(data['startDate'], 'Date'); } if (data.hasOwnProperty('endDate')) { obj['endDate'] = _ApiClient.default.convertToType(data['endDate'], 'Date'); } if (data.hasOwnProperty('enableLinks')) { obj['enableLinks'] = _ApiClient.default.convertToType(data['enableLinks'], 'Boolean'); } if (data.hasOwnProperty('explanationStyle')) { obj['explanationStyle'] = _ApiClient.default.convertToType(data['explanationStyle'], 'String'); } if (data.hasOwnProperty('includePerformance')) { obj['includePerformance'] = _ApiClient.default.convertToType(data['includePerformance'], 'Boolean'); } if (data.hasOwnProperty('internalInvestmentRationale')) { obj['internalInvestmentRationale'] = _ApiClient.default.convertToType(data['internalInvestmentRationale'], 'String'); } if (data.hasOwnProperty('includeCompanyDescription')) { obj['includeCompanyDescription'] = _ApiClient.default.convertToType(data['includeCompanyDescription'], 'Boolean'); } if (data.hasOwnProperty('includeMarketSummary')) { obj['includeMarketSummary'] = _ApiClient.default.convertToType(data['includeMarketSummary'], 'Boolean'); } if (data.hasOwnProperty('includeInternalInvestmentRationaleRecommendation')) { obj['includeInternalInvestmentRationaleRecommendation'] = _ApiClient.default.convertToType(data['includeInternalInvestmentRationaleRecommendation'], 'Boolean'); } if (data.hasOwnProperty('includeInternalInvestmentRationalePriceTarget')) { obj['includeInternalInvestmentRationalePriceTarget'] = _ApiClient.default.convertToType(data['includeInternalInvestmentRationalePriceTarget'], 'Boolean'); } if (data.hasOwnProperty('brokerResearchSummary')) { obj['brokerResearchSummary'] = _BrokerResearchSummary.default.constructFromObject(data['brokerResearchSummary']); } } return obj; } } /** * Accepted ID types include Market Tickers, SEDOL, ISINs, CUSIPs, or FactSet Permanent Ids. * @member {String} id */ SecurityExplanationRequestParameters.prototype['id'] = undefined; /** * Start date of the explain request in YYYY-MM-DD format. * @member {Date} startDate */ SecurityExplanationRequestParameters.prototype['startDate'] = undefined; /** * End date of the explain request in YYYY-MM-DD format. * @member {Date} endDate */ SecurityExplanationRequestParameters.prototype['endDate'] = undefined; /** * Include or exclude hyperlinks to underlying sources. * @member {Boolean} enableLinks * @default false */ SecurityExplanationRequestParameters.prototype['enableLinks'] = false; /** * Determines the style of the Explanation * @member {module:model/SecurityExplanationRequestParameters.ExplanationStyleEnum} explanationStyle * @default 'short' */ SecurityExplanationRequestParameters.prototype['explanationStyle'] = 'short'; /** * Include or exclude the company's total return for the request period. * @member {Boolean} includePerformance * @default false */ SecurityExplanationRequestParameters.prototype['includePerformance'] = false; /** * For IRN users only; select to include a summary, footnotes, or no IRN notes for the period. * @member {module:model/SecurityExplanationRequestParameters.InternalInvestmentRationaleEnum} internalInvestmentRationale * @default 'none' */ SecurityExplanationRequestParameters.prototype['internalInvestmentRationale'] = 'none'; /** * Include or exclude the target company's business description. * @member {Boolean} includeCompanyDescription * @default false */ SecurityExplanationRequestParameters.prototype['includeCompanyDescription'] = false; /** * Include or exclude a second paragraph in the explanation, offering market and sector news relating to the target company for additional context. * @member {Boolean} includeMarketSummary * @default true */ SecurityExplanationRequestParameters.prototype['includeMarketSummary'] = true; /** * For IRN users only; include or exclude your firm's rating in the summary or footnote. * @member {Boolean} includeInternalInvestmentRationaleRecommendation * @default true */ SecurityExplanationRequestParameters.prototype['includeInternalInvestmentRationaleRecommendation'] = true; /** * For IRN users only; include or exclude your firm's price target in the summary or footnote. * @member {Boolean} includeInternalInvestmentRationalePriceTarget * @default true */ SecurityExplanationRequestParameters.prototype['includeInternalInvestmentRationalePriceTarget'] = true; /** * @member {module:model/BrokerResearchSummary} brokerResearchSummary */ SecurityExplanationRequestParameters.prototype['brokerResearchSummary'] = undefined; /** * Allowed values for the <code>explanationStyle</code> property. * @enum {String} * @readonly */ SecurityExplanationRequestParameters['ExplanationStyleEnum'] = { /** * value: "short" * @const */ "short": "short", /** * value: "long" * @const */ "long": "long" }; /** * Allowed values for the <code>internalInvestmentRationale</code> property. * @enum {String} * @readonly */ SecurityExplanationRequestParameters['InternalInvestmentRationaleEnum'] = { /** * value: "none" * @const */ "none": "none", /** * value: "summary" * @const */ "summary": "summary", /** * value: "footnote" * @const */ "footnote": "footnote" }; var _default = exports.default = SecurityExplanationRequestParameters;