/* tslint:disable */ /* eslint-disable */ /** * Tandoor * Tandoor API Docs * * The version of the OpenAPI document: 0.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 { User } from './User'; import { UserFromJSON, UserFromJSONTyped, UserToJSON, UserToJSONTyped, } from './User'; /** * * @export * @interface AutoMealPlan */ export interface AutoMealPlan { /** * * @type {Date} * @memberof AutoMealPlan */ startDate: Date; /** * * @type {Date} * @memberof AutoMealPlan */ endDate: Date; /** * * @type {number} * @memberof AutoMealPlan */ mealTypeId: number; /** * * @type {Array} * @memberof AutoMealPlan */ keywordIds: Array; /** * * @type {number} * @memberof AutoMealPlan */ servings: number; /** * * @type {Array} * @memberof AutoMealPlan */ shared?: Array | null; /** * * @type {boolean} * @memberof AutoMealPlan */ addshopping: boolean; } /** * Check if a given object implements the AutoMealPlan interface. */ export function instanceOfAutoMealPlan(value: object): value is AutoMealPlan { if (!('startDate' in value) || value['startDate'] === undefined) return false; if (!('endDate' in value) || value['endDate'] === undefined) return false; if (!('mealTypeId' in value) || value['mealTypeId'] === undefined) return false; if (!('keywordIds' in value) || value['keywordIds'] === undefined) return false; if (!('servings' in value) || value['servings'] === undefined) return false; if (!('addshopping' in value) || value['addshopping'] === undefined) return false; return true; } export function AutoMealPlanFromJSON(json: any): AutoMealPlan { return AutoMealPlanFromJSONTyped(json, false); } export function AutoMealPlanFromJSONTyped(json: any, ignoreDiscriminator: boolean): AutoMealPlan { if (json == null) { return json; } return { 'startDate': (new Date(json['start_date'])), 'endDate': (new Date(json['end_date'])), 'mealTypeId': json['meal_type_id'], 'keywordIds': json['keyword_ids'], 'servings': json['servings'], 'shared': json['shared'] == null ? undefined : ((json['shared'] as Array).map(UserFromJSON)), 'addshopping': json['addshopping'], }; } export function AutoMealPlanToJSON(json: any): AutoMealPlan { return AutoMealPlanToJSONTyped(json, false); } export function AutoMealPlanToJSONTyped(value?: AutoMealPlan | null, ignoreDiscriminator: boolean = false): any { if (value == null) { return value; } return { 'start_date': ((value['startDate']).toISOString().substring(0,10)), 'end_date': ((value['endDate']).toISOString().substring(0,10)), 'meal_type_id': value['mealTypeId'], 'keyword_ids': value['keywordIds'], 'servings': value['servings'], 'shared': value['shared'] == null ? undefined : ((value['shared'] as Array).map(UserToJSON)), 'addshopping': value['addshopping'], }; }