/* tslint:disable */ /* eslint-disable */ // @ts-nocheck /** * Audius API * * The version of the OpenAPI document: 1.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 { PlaylistFeedItem, instanceOfPlaylistFeedItem, PlaylistFeedItemFromJSON, PlaylistFeedItemFromJSONTyped, PlaylistFeedItemToJSON, } from './PlaylistFeedItem'; import { TrackFeedItem, instanceOfTrackFeedItem, TrackFeedItemFromJSON, TrackFeedItemFromJSONTyped, TrackFeedItemToJSON, } from './TrackFeedItem'; /** * @type UserFeedItem * * @export */ export type UserFeedItem = { type: 'playlist' } & PlaylistFeedItem | { type: 'track' } & TrackFeedItem; export function UserFeedItemFromJSON(json: any): UserFeedItem { return UserFeedItemFromJSONTyped(json, false); } export function UserFeedItemFromJSONTyped(json: any, ignoreDiscriminator: boolean): UserFeedItem { if ((json === undefined) || (json === null)) { return json; } switch (json['type']) { case 'playlist': return {...PlaylistFeedItemFromJSONTyped(json, true), type: 'playlist'}; case 'track': return {...TrackFeedItemFromJSONTyped(json, true), type: 'track'}; default: throw new Error(`No variant of UserFeedItem exists with 'type=${json['type']}'`); } } export function UserFeedItemToJSON(value?: UserFeedItem | null): any { if (value === undefined) { return undefined; } if (value === null) { return null; } switch (value['type']) { case 'playlist': return PlaylistFeedItemToJSON(value); case 'track': return TrackFeedItemToJSON(value); default: throw new Error(`No variant of UserFeedItem exists with 'type=${value['type']}'`); } }