@gitchrisqueen/tdameritrade-api-js-client
Version:
TD Ameritrade API integration for node.js
148 lines (134 loc) • 4.86 kB
JavaScript
/**
* TD Ameritrade API - OAuth2
* This is replication of the TD Ameritrade API.
*
* OpenAPI spec version: 0.1.4
*
*
* 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.
*
*/
import ApiClient from '../ApiClient';
import MarginAccountCurrentBalances from './MarginAccountCurrentBalances';
import MarginAccountInitialBalances from './MarginAccountInitialBalances';
import MarginAccountOrderStrategies from './MarginAccountOrderStrategies';
import MarginAccountPositions from './MarginAccountPositions';
/**
* The MarginAccount model module.
* @module model/MarginAccount
* @version 0.1.4
*/
export default class MarginAccount {
/**
* Constructs a new <code>MarginAccount</code>.
* @alias module:model/MarginAccount
* @class
*/
constructor() {
OneOfSecuritiesAccountSchema.call(this);
}
/**
* Constructs a <code>MarginAccount</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/MarginAccount} obj Optional instance to populate.
* @return {module:model/MarginAccount} The populated <code>MarginAccount</code> instance.
*/
static constructFromObject(data, obj) {
if (data) {
obj = obj || new MarginAccount();
if (data.hasOwnProperty('type')) {
obj['type'] = ApiClient.convertToType(data['type'], 'String');
}
if (data.hasOwnProperty('accountId')) {
obj['accountId'] = ApiClient.convertToType(data['accountId'], 'String');
}
if (data.hasOwnProperty('roundTrips')) {
obj['roundTrips'] = ApiClient.convertToType(data['roundTrips'], 'Number');
}
if (data.hasOwnProperty('isDayTrader')) {
obj['isDayTrader'] = ApiClient.convertToType(data['isDayTrader'], 'Boolean');
}
if (data.hasOwnProperty('isClosingOnlyRestricted')) {
obj['isClosingOnlyRestricted'] = ApiClient.convertToType(data['isClosingOnlyRestricted'], 'Boolean');
}
if (data.hasOwnProperty('positions')) {
obj['positions'] = MarginAccountPositions.constructFromObject(data['positions']);
}
if (data.hasOwnProperty('orderStrategies')) {
obj['orderStrategies'] = MarginAccountOrderStrategies.constructFromObject(data['orderStrategies']);
}
if (data.hasOwnProperty('initialBalances')) {
obj['initialBalances'] = MarginAccountInitialBalances.constructFromObject(data['initialBalances']);
}
if (data.hasOwnProperty('currentBalances')) {
obj['currentBalances'] = MarginAccountCurrentBalances.constructFromObject(data['currentBalances']);
}
if (data.hasOwnProperty('projectedBalances')) {
obj['projectedBalances'] = MarginAccountCurrentBalances.constructFromObject(data['projectedBalances']);
}
}
return obj;
}
/**
* @member {module:model/MarginAccount.TypeEnum} type
*/
'type' = undefined;
/**
* @member {String} accountId
*/
'accountId' = undefined;
/**
* @member {Number} roundTrips
*/
'roundTrips' = undefined;
/**
* @member {Boolean} isDayTrader
* @default false
*/
'isDayTrader' = false;
/**
* @member {Boolean} isClosingOnlyRestricted
* @default false
*/
'isClosingOnlyRestricted' = false;
/**
* @member {module:model/MarginAccountPositions} positions
*/
'positions' = undefined;
/**
* @member {module:model/MarginAccountOrderStrategies} orderStrategies
*/
'orderStrategies' = undefined;
/**
* @member {module:model/MarginAccountInitialBalances} initialBalances
*/
'initialBalances' = undefined;
/**
* @member {module:model/MarginAccountCurrentBalances} currentBalances
*/
'currentBalances' = undefined;
/**
* @member {module:model/MarginAccountCurrentBalances} projectedBalances
*/
'projectedBalances' = undefined;
// Implement OneOfSecuritiesAccountSchema interface:
/**
* Allowed values for the <code>type</code> property.
* @enum {String}
* @readonly
*/
static TypeEnum = {
/**
* value: "CASH"
* @const
*/
"CASH": "CASH",
/**
* value: "MARGIN"
* @const
*/
"MARGIN": "MARGIN" };
}