/* 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 { AssetLiteResource } from './AssetLiteResource'; import { AssetLiteResourceFromJSON, AssetLiteResourceFromJSONTyped, AssetLiteResourceToJSON, AssetLiteResourceToJSONTyped, } from './AssetLiteResource'; import type { ProductChildSiteDetailLiteResource } from './ProductChildSiteDetailLiteResource'; import { ProductChildSiteDetailLiteResourceFromJSON, ProductChildSiteDetailLiteResourceFromJSONTyped, ProductChildSiteDetailLiteResourceToJSON, ProductChildSiteDetailLiteResourceToJSONTyped, } from './ProductChildSiteDetailLiteResource'; /** * * @export * @interface ProductChildOverlayRelationResource */ export interface ProductChildOverlayRelationResource { /** * * @type {number} * @memberof ProductChildOverlayRelationResource */ id: number; /** * * @type {string} * @memberof ProductChildOverlayRelationResource */ parentId?: string | null; /** * * @type {number} * @memberof ProductChildOverlayRelationResource */ sku: number; /** * * @type {string} * @memberof ProductChildOverlayRelationResource */ name: string; /** * * @type {string} * @memberof ProductChildOverlayRelationResource */ model: string; /** * * @type {number} * @memberof ProductChildOverlayRelationResource */ stock: number; /** * * @type {string} * @memberof ProductChildOverlayRelationResource */ isDisabled?: string | null; /** * * @type {boolean} * @memberof ProductChildOverlayRelationResource */ displayInSocialFeed: boolean; /** * * @type {number} * @memberof ProductChildOverlayRelationResource */ netsuiteId: number; /** * * @type {AssetLiteResource} * @memberof ProductChildOverlayRelationResource */ thumbnail: AssetLiteResource | null; /** * * @type {Array} * @memberof ProductChildOverlayRelationResource */ siteDetails: Array | null; /** * * @type {number} * @memberof ProductChildOverlayRelationResource */ numberAttached: number; } /** * Check if a given object implements the ProductChildOverlayRelationResource interface. */ export function instanceOfProductChildOverlayRelationResource(value: object): value is ProductChildOverlayRelationResource { if (!('id' in value) || value['id'] === undefined) return false; if (!('sku' in value) || value['sku'] === undefined) return false; if (!('name' in value) || value['name'] === undefined) return false; if (!('model' in value) || value['model'] === undefined) return false; if (!('stock' in value) || value['stock'] === undefined) return false; if (!('displayInSocialFeed' in value) || value['displayInSocialFeed'] === undefined) return false; if (!('netsuiteId' in value) || value['netsuiteId'] === undefined) return false; if (!('thumbnail' in value) || value['thumbnail'] === undefined) return false; if (!('siteDetails' in value) || value['siteDetails'] === undefined) return false; if (!('numberAttached' in value) || value['numberAttached'] === undefined) return false; return true; } export function ProductChildOverlayRelationResourceFromJSON(json: any): ProductChildOverlayRelationResource { return ProductChildOverlayRelationResourceFromJSONTyped(json, false); } export function ProductChildOverlayRelationResourceFromJSONTyped(json: any, ignoreDiscriminator: boolean): ProductChildOverlayRelationResource { if (json == null) { return json; } return { 'id': json['id'], 'parentId': json['parentId'] == null ? undefined : json['parentId'], 'sku': json['sku'], 'name': json['name'], 'model': json['model'], 'stock': json['stock'], 'isDisabled': json['isDisabled'] == null ? undefined : json['isDisabled'], 'displayInSocialFeed': json['displayInSocialFeed'], 'netsuiteId': json['netsuiteId'], 'thumbnail': AssetLiteResourceFromJSON(json['thumbnail']), 'siteDetails': (json['siteDetails'] == null ? null : (json['siteDetails'] as Array).map(ProductChildSiteDetailLiteResourceFromJSON)), 'numberAttached': json['numberAttached'], }; } export function ProductChildOverlayRelationResourceToJSON(json: any): ProductChildOverlayRelationResource { return ProductChildOverlayRelationResourceToJSONTyped(json, false); } export function ProductChildOverlayRelationResourceToJSONTyped(value?: ProductChildOverlayRelationResource | null, ignoreDiscriminator: boolean = false): any { if (value == null) { return value; } return { 'id': value['id'], 'parentId': value['parentId'], 'sku': value['sku'], 'name': value['name'], 'model': value['model'], 'stock': value['stock'], 'isDisabled': value['isDisabled'], 'displayInSocialFeed': value['displayInSocialFeed'], 'netsuiteId': value['netsuiteId'], 'thumbnail': AssetLiteResourceToJSON(value['thumbnail']), 'siteDetails': (value['siteDetails'] == null ? null : (value['siteDetails'] as Array).map(ProductChildSiteDetailLiteResourceToJSON)), 'numberAttached': value['numberAttached'], }; }