Files
recipes/vue3/models/RecipeBook.ts
2024-04-18 10:56:15 -05:00

124 lines
2.8 KiB
TypeScript

/* 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 { CustomFilter } from './CustomFilter';
import {
CustomFilterFromJSON,
CustomFilterFromJSONTyped,
CustomFilterToJSON,
} from './CustomFilter';
import type { User } from './User';
import {
UserFromJSON,
UserFromJSONTyped,
UserToJSON,
} from './User';
/**
* Adds nested create feature
* @export
* @interface RecipeBook
*/
export interface RecipeBook {
/**
*
* @type {number}
* @memberof RecipeBook
*/
readonly id: number;
/**
*
* @type {string}
* @memberof RecipeBook
*/
name: string;
/**
*
* @type {string}
* @memberof RecipeBook
*/
description?: string;
/**
*
* @type {Array<User>}
* @memberof RecipeBook
*/
shared: Array<User>;
/**
*
* @type {number}
* @memberof RecipeBook
*/
readonly createdBy: number;
/**
*
* @type {CustomFilter}
* @memberof RecipeBook
*/
filter?: CustomFilter;
/**
*
* @type {number}
* @memberof RecipeBook
*/
order?: number;
}
/**
* Check if a given object implements the RecipeBook interface.
*/
export function instanceOfRecipeBook(value: object): boolean {
if (!('id' in value)) return false;
if (!('name' in value)) return false;
if (!('shared' in value)) return false;
if (!('createdBy' in value)) return false;
return true;
}
export function RecipeBookFromJSON(json: any): RecipeBook {
return RecipeBookFromJSONTyped(json, false);
}
export function RecipeBookFromJSONTyped(json: any, ignoreDiscriminator: boolean): RecipeBook {
if (json == null) {
return json;
}
return {
'id': json['id'],
'name': json['name'],
'description': json['description'] == null ? undefined : json['description'],
'shared': ((json['shared'] as Array<any>).map(UserFromJSON)),
'createdBy': json['created_by'],
'filter': json['filter'] == null ? undefined : CustomFilterFromJSON(json['filter']),
'order': json['order'] == null ? undefined : json['order'],
};
}
export function RecipeBookToJSON(value?: Omit<RecipeBook, 'id'|'created_by'> | null): any {
if (value == null) {
return value;
}
return {
'name': value['name'],
'description': value['description'],
'shared': ((value['shared'] as Array<any>).map(UserToJSON)),
'filter': CustomFilterToJSON(value['filter']),
'order': value['order'],
};
}