jellyfin-discord-bot/server/jellyfin/models/ArtistInfo.ts

161 lines
4.6 KiB
TypeScript

/* tslint:disable */
/* eslint-disable */
/**
* Jellyfin API
* No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
*
* The version of the OpenAPI document: 10.8.9
*
*
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
* https://openapi-generator.tech
* Do not edit the class manually.
*/
import { exists, mapValues } from '../runtime';
import type { SongInfo } from './SongInfo';
import {
SongInfoFromJSON,
SongInfoFromJSONTyped,
SongInfoToJSON,
} from './SongInfo';
/**
*
* @export
* @interface ArtistInfo
*/
export interface ArtistInfo {
/**
* Gets or sets the name.
* @type {string}
* @memberof ArtistInfo
*/
name?: string | null;
/**
* Gets or sets the original title.
* @type {string}
* @memberof ArtistInfo
*/
originalTitle?: string | null;
/**
* Gets or sets the path.
* @type {string}
* @memberof ArtistInfo
*/
path?: string | null;
/**
* Gets or sets the metadata language.
* @type {string}
* @memberof ArtistInfo
*/
metadataLanguage?: string | null;
/**
* Gets or sets the metadata country code.
* @type {string}
* @memberof ArtistInfo
*/
metadataCountryCode?: string | null;
/**
* Gets or sets the provider ids.
* @type {{ [key: string]: string; }}
* @memberof ArtistInfo
*/
providerIds?: { [key: string]: string; } | null;
/**
* Gets or sets the year.
* @type {number}
* @memberof ArtistInfo
*/
year?: number | null;
/**
*
* @type {number}
* @memberof ArtistInfo
*/
indexNumber?: number | null;
/**
*
* @type {number}
* @memberof ArtistInfo
*/
parentIndexNumber?: number | null;
/**
*
* @type {Date}
* @memberof ArtistInfo
*/
premiereDate?: Date | null;
/**
*
* @type {boolean}
* @memberof ArtistInfo
*/
isAutomated?: boolean;
/**
*
* @type {Array<SongInfo>}
* @memberof ArtistInfo
*/
songInfos?: Array<SongInfo>;
}
/**
* Check if a given object implements the ArtistInfo interface.
*/
export function instanceOfArtistInfo(value: object): boolean {
let isInstance = true;
return isInstance;
}
export function ArtistInfoFromJSON(json: any): ArtistInfo {
return ArtistInfoFromJSONTyped(json, false);
}
export function ArtistInfoFromJSONTyped(json: any, ignoreDiscriminator: boolean): ArtistInfo {
if ((json === undefined) || (json === null)) {
return json;
}
return {
'name': !exists(json, 'Name') ? undefined : json['Name'],
'originalTitle': !exists(json, 'OriginalTitle') ? undefined : json['OriginalTitle'],
'path': !exists(json, 'Path') ? undefined : json['Path'],
'metadataLanguage': !exists(json, 'MetadataLanguage') ? undefined : json['MetadataLanguage'],
'metadataCountryCode': !exists(json, 'MetadataCountryCode') ? undefined : json['MetadataCountryCode'],
'providerIds': !exists(json, 'ProviderIds') ? undefined : json['ProviderIds'],
'year': !exists(json, 'Year') ? undefined : json['Year'],
'indexNumber': !exists(json, 'IndexNumber') ? undefined : json['IndexNumber'],
'parentIndexNumber': !exists(json, 'ParentIndexNumber') ? undefined : json['ParentIndexNumber'],
'premiereDate': !exists(json, 'PremiereDate') ? undefined : (json['PremiereDate'] === null ? null : new Date(json['PremiereDate'])),
'isAutomated': !exists(json, 'IsAutomated') ? undefined : json['IsAutomated'],
'songInfos': !exists(json, 'SongInfos') ? undefined : ((json['SongInfos'] as Array<any>).map(SongInfoFromJSON)),
};
}
export function ArtistInfoToJSON(value?: ArtistInfo | null): any {
if (value === undefined) {
return undefined;
}
if (value === null) {
return null;
}
return {
'Name': value.name,
'OriginalTitle': value.originalTitle,
'Path': value.path,
'MetadataLanguage': value.metadataLanguage,
'MetadataCountryCode': value.metadataCountryCode,
'ProviderIds': value.providerIds,
'Year': value.year,
'IndexNumber': value.indexNumber,
'ParentIndexNumber': value.parentIndexNumber,
'PremiereDate': value.premiereDate === undefined ? undefined : (value.premiereDate === null ? null : value.premiereDate.toISOString()),
'IsAutomated': value.isAutomated,
'SongInfos': value.songInfos === undefined ? undefined : ((value.songInfos as Array<any>).map(SongInfoToJSON)),
};
}