/** * Adapted to TypeScript by David A. Ball. (c) 2024. * * Copyright 2020 Amazon.com, Inc. or its affiliates. All Rights Reserved. * * Licensed under the Apache License, Version 2.0 (the "License"). * You may not use this file except in compliance with the License. * A copy of the License is located at * * http://www.apache.org/licenses/LICENSE-2.0 * * or in the "license" file accompanying this file. This file is distributed * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either * express or implied. See the License for the specific language governing * permissions and limitations under the License. */ /** * ProductAdvertisingAPI * https://webservices.amazon.com/paapi5/documentation/index.html * */ /** * The GetBrowseNodesRequest model module. * @module model/GetBrowseNodesRequest * @version 1.0.0 */ import { ApiClient } from "../ApiClient"; import { PartnerType } from "./PartnerType"; import { GetBrowseNodesResource } from "./GetBrowseNodesResource"; /** * Constructs a new GetBrowseNodesRequest. * @alias module:model/GetBrowseNodesRequest * @class * @param browseNodeIds {Array.} * @param partnerTag {String} * @param partnerType {module:model/PartnerType} */ export class GetBrowseNodesRequest { /** * @member {Array.} BrowseNodeIds */ public BrowseNodeIds?: string[]; /** * @member {Array.} LanguagesOfPreference */ public LanguagesOfPreference?: string[]; /** * @member {String} Marketplace */ public Marketplace?: string; /** * @member {String} PartnerTag */ public PartnerTag?: string; /** * @member {module:model/PartnerType} PartnerType */ public PartnerType?: PartnerType; /** * @member {Array.} Resources */ public Resources?: GetBrowseNodesResource; // not sure if this is ever going to be relevant: // public constructor(browseNodeIds, partnerTag, partnerType) { // this.BrowseNodeIds = browseNodeIds; // this.PartnerTag = partnerTag; // this.PartnerType = partnerType; // }; /** * Constructs a GetBrowseNodesRequest from a plain JavaScript object, optionally creating a new instance. * Copies all relevant properties from data to obj if supplied or a new instance if not. * @param {Object} data The plain JavaScript object bearing properties of interest. * @param {module:model/GetBrowseNodesRequest} obj Optional instance to populate. * @return {module:model/GetBrowseNodesRequest} The populated GetBrowseNodesRequest instance. */ public static constructFromObject = function(data: any, obj?: GetBrowseNodesRequest) { if (data) { obj = obj || new GetBrowseNodesRequest(); if (data.hasOwnProperty('BrowseNodeIds')) { obj.BrowseNodeIds = ApiClient.convertToType(data['BrowseNodeIds'], ['String']); } if (data.hasOwnProperty('LanguagesOfPreference')) { obj.LanguagesOfPreference = ApiClient.convertToType(data['LanguagesOfPreference'], ['String']); } if (data.hasOwnProperty('Marketplace')) { obj.Marketplace = ApiClient.convertToType(data['Marketplace'], 'String'); } if (data.hasOwnProperty('PartnerTag')) { obj.PartnerTag = ApiClient.convertToType(data['PartnerTag'], 'String'); } if (data.hasOwnProperty('PartnerType')) { obj.PartnerType = PartnerType.constructFromObject(data['PartnerType']); } if (data.hasOwnProperty('Resources')) { obj.Resources = ApiClient.convertToType(data['Resources'], [GetBrowseNodesResource]); } } return obj; } };