/* tslint:disable */ /* eslint-disable */ /** * My API * API documentation for my Laravel app * * The version of the OpenAPI document: 1.0.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ import { mapValues } from '../runtime'; import type { CreateProductChildRequestSitesInner } from './CreateProductChildRequestSitesInner'; import { CreateProductChildRequestSitesInnerFromJSON, CreateProductChildRequestSitesInnerFromJSONTyped, CreateProductChildRequestSitesInnerToJSON, CreateProductChildRequestSitesInnerToJSONTyped, } from './CreateProductChildRequestSitesInner'; import type { UpdateProductChildRequestAssetsInner } from './UpdateProductChildRequestAssetsInner'; import { UpdateProductChildRequestAssetsInnerFromJSON, UpdateProductChildRequestAssetsInnerFromJSONTyped, UpdateProductChildRequestAssetsInnerToJSON, UpdateProductChildRequestAssetsInnerToJSONTyped, } from './UpdateProductChildRequestAssetsInner'; /** * * @export * @interface UpdateProductChildRequest */ export interface UpdateProductChildRequest { /** * * @type {string} * @memberof UpdateProductChildRequest */ name: string; /** * * @type {string} * @memberof UpdateProductChildRequest */ sku?: string | null; /** * * @type {string} * @memberof UpdateProductChildRequest */ model?: string | null; /** * * @type {Date} * @memberof UpdateProductChildRequest */ newArrivalStartDate?: Date; /** * * @type {Date} * @memberof UpdateProductChildRequest */ newArrivalEndDate?: Date; /** * * @type {string} * @memberof UpdateProductChildRequest */ warranty?: string | null; /** * * @type {boolean} * @memberof UpdateProductChildRequest */ isWarrantyOverridden: boolean; /** * * @type {boolean} * @memberof UpdateProductChildRequest */ hideFromFrontend: boolean; /** * * @type {boolean} * @memberof UpdateProductChildRequest */ excludeFromSearch: boolean; /** * * @type {boolean} * @memberof UpdateProductChildRequest */ allowOversell: boolean; /** * * @type {boolean} * @memberof UpdateProductChildRequest */ isOversized: boolean; /** * * @type {number} * @memberof UpdateProductChildRequest */ netsuiteId?: number | null; /** * * @type {number} * @memberof UpdateProductChildRequest */ popularityScore?: number; /** * * @type {number} * @memberof UpdateProductChildRequest */ stock: number; /** * * @type {Array} * @memberof UpdateProductChildRequest */ sites: Array; /** * * @type {Array} * @memberof UpdateProductChildRequest */ accessories?: Array; /** * * @type {Array} * @memberof UpdateProductChildRequest */ assets: Array; } /** * Check if a given object implements the UpdateProductChildRequest interface. */ export function instanceOfUpdateProductChildRequest(value: object): value is UpdateProductChildRequest { if (!('name' in value) || value['name'] === undefined) return false; if (!('isWarrantyOverridden' in value) || value['isWarrantyOverridden'] === undefined) return false; if (!('hideFromFrontend' in value) || value['hideFromFrontend'] === undefined) return false; if (!('excludeFromSearch' in value) || value['excludeFromSearch'] === undefined) return false; if (!('allowOversell' in value) || value['allowOversell'] === undefined) return false; if (!('isOversized' in value) || value['isOversized'] === undefined) return false; if (!('stock' in value) || value['stock'] === undefined) return false; if (!('sites' in value) || value['sites'] === undefined) return false; if (!('assets' in value) || value['assets'] === undefined) return false; return true; } export function UpdateProductChildRequestFromJSON(json: any): UpdateProductChildRequest { return UpdateProductChildRequestFromJSONTyped(json, false); } export function UpdateProductChildRequestFromJSONTyped(json: any, ignoreDiscriminator: boolean): UpdateProductChildRequest { if (json == null) { return json; } return { 'name': json['name'], 'sku': json['sku'] == null ? undefined : json['sku'], 'model': json['model'] == null ? undefined : json['model'], 'newArrivalStartDate': json['new_arrival_start_date'] == null ? undefined : (new Date(json['new_arrival_start_date'])), 'newArrivalEndDate': json['new_arrival_end_date'] == null ? undefined : (new Date(json['new_arrival_end_date'])), 'warranty': json['warranty'] == null ? undefined : json['warranty'], 'isWarrantyOverridden': json['is_warranty_overridden'], 'hideFromFrontend': json['hide_from_frontend'], 'excludeFromSearch': json['exclude_from_search'], 'allowOversell': json['allow_oversell'], 'isOversized': json['is_oversized'], 'netsuiteId': json['netsuite_id'] == null ? undefined : json['netsuite_id'], 'popularityScore': json['popularity_score'] == null ? undefined : json['popularity_score'], 'stock': json['stock'], 'sites': ((json['sites'] as Array).map(CreateProductChildRequestSitesInnerFromJSON)), 'accessories': json['accessories'] == null ? undefined : json['accessories'], 'assets': ((json['assets'] as Array).map(UpdateProductChildRequestAssetsInnerFromJSON)), }; } export function UpdateProductChildRequestToJSON(json: any): UpdateProductChildRequest { return UpdateProductChildRequestToJSONTyped(json, false); } export function UpdateProductChildRequestToJSONTyped(value?: UpdateProductChildRequest | null, ignoreDiscriminator: boolean = false): any { if (value == null) { return value; } return { 'name': value['name'], 'sku': value['sku'], 'model': value['model'], 'new_arrival_start_date': value['newArrivalStartDate'] == null ? undefined : ((value['newArrivalStartDate']).toISOString()), 'new_arrival_end_date': value['newArrivalEndDate'] == null ? undefined : ((value['newArrivalEndDate']).toISOString()), 'warranty': value['warranty'], 'is_warranty_overridden': value['isWarrantyOverridden'], 'hide_from_frontend': value['hideFromFrontend'], 'exclude_from_search': value['excludeFromSearch'], 'allow_oversell': value['allowOversell'], 'is_oversized': value['isOversized'], 'netsuite_id': value['netsuiteId'], 'popularity_score': value['popularityScore'], 'stock': value['stock'], 'sites': ((value['sites'] as Array).map(CreateProductChildRequestSitesInnerToJSON)), 'accessories': value['accessories'], 'assets': ((value['assets'] as Array).map(UpdateProductChildRequestAssetsInnerToJSON)), }; }