/* 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 { SiteLiteResource } from './SiteLiteResource'; import { SiteLiteResourceFromJSON, SiteLiteResourceFromJSONTyped, SiteLiteResourceToJSON, SiteLiteResourceToJSONTyped, } from './SiteLiteResource'; import type { AssetLiteResource } from './AssetLiteResource'; import { AssetLiteResourceFromJSON, AssetLiteResourceFromJSONTyped, AssetLiteResourceToJSON, AssetLiteResourceToJSONTyped, } from './AssetLiteResource'; import type { SupplierLiteResource } from './SupplierLiteResource'; import { SupplierLiteResourceFromJSON, SupplierLiteResourceFromJSONTyped, SupplierLiteResourceToJSON, SupplierLiteResourceToJSONTyped, } from './SupplierLiteResource'; import type { ProductRangeSiteDetailLiteResource } from './ProductRangeSiteDetailLiteResource'; import { ProductRangeSiteDetailLiteResourceFromJSON, ProductRangeSiteDetailLiteResourceFromJSONTyped, ProductRangeSiteDetailLiteResourceToJSON, ProductRangeSiteDetailLiteResourceToJSONTyped, } from './ProductRangeSiteDetailLiteResource'; /** * * @export * @interface ProductRangeListResource */ export interface ProductRangeListResource { /** * * @type {number} * @memberof ProductRangeListResource */ id: number; /** * * @type {string} * @memberof ProductRangeListResource */ name: string; /** * * @type {SupplierLiteResource} * @memberof ProductRangeListResource */ supplier: SupplierLiteResource | null; /** * * @type {Array} * @memberof ProductRangeListResource */ sites: Array | null; /** * * @type {AssetLiteResource} * @memberof ProductRangeListResource */ thumbnail: AssetLiteResource | null; /** * * @type {Array} * @memberof ProductRangeListResource */ siteDetails: Array | null; } /** * Check if a given object implements the ProductRangeListResource interface. */ export function instanceOfProductRangeListResource(value: object): value is ProductRangeListResource { if (!('id' in value) || value['id'] === undefined) return false; if (!('name' in value) || value['name'] === undefined) return false; if (!('supplier' in value) || value['supplier'] === undefined) return false; if (!('sites' in value) || value['sites'] === undefined) return false; if (!('thumbnail' in value) || value['thumbnail'] === undefined) return false; if (!('siteDetails' in value) || value['siteDetails'] === undefined) return false; return true; } export function ProductRangeListResourceFromJSON(json: any): ProductRangeListResource { return ProductRangeListResourceFromJSONTyped(json, false); } export function ProductRangeListResourceFromJSONTyped(json: any, ignoreDiscriminator: boolean): ProductRangeListResource { if (json == null) { return json; } return { 'id': json['id'], 'name': json['name'], 'supplier': SupplierLiteResourceFromJSON(json['supplier']), 'sites': (json['sites'] == null ? null : (json['sites'] as Array).map(SiteLiteResourceFromJSON)), 'thumbnail': AssetLiteResourceFromJSON(json['thumbnail']), 'siteDetails': (json['siteDetails'] == null ? null : (json['siteDetails'] as Array).map(ProductRangeSiteDetailLiteResourceFromJSON)), }; } export function ProductRangeListResourceToJSON(json: any): ProductRangeListResource { return ProductRangeListResourceToJSONTyped(json, false); } export function ProductRangeListResourceToJSONTyped(value?: ProductRangeListResource | null, ignoreDiscriminator: boolean = false): any { if (value == null) { return value; } return { 'id': value['id'], 'name': value['name'], 'supplier': SupplierLiteResourceToJSON(value['supplier']), 'sites': (value['sites'] == null ? null : (value['sites'] as Array).map(SiteLiteResourceToJSON)), 'thumbnail': AssetLiteResourceToJSON(value['thumbnail']), 'siteDetails': (value['siteDetails'] == null ? null : (value['siteDetails'] as Array).map(ProductRangeSiteDetailLiteResourceToJSON)), }; }