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

151 lines
4.9 KiB
TypeScript
Raw Normal View History

2023-05-04 23:34:53 +02:00
/* 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 { ClientCapabilitiesDeviceProfile } from './ClientCapabilitiesDeviceProfile';
import {
ClientCapabilitiesDeviceProfileFromJSON,
ClientCapabilitiesDeviceProfileFromJSONTyped,
ClientCapabilitiesDeviceProfileToJSON,
} from './ClientCapabilitiesDeviceProfile';
import type { GeneralCommandType } from './GeneralCommandType';
import {
GeneralCommandTypeFromJSON,
GeneralCommandTypeFromJSONTyped,
GeneralCommandTypeToJSON,
} from './GeneralCommandType';
/**
*
* @export
* @interface ClientCapabilities
*/
export interface ClientCapabilities {
/**
*
* @type {Array<string>}
* @memberof ClientCapabilities
*/
playableMediaTypes?: Array<string> | null;
/**
*
* @type {Array<GeneralCommandType>}
* @memberof ClientCapabilities
*/
supportedCommands?: Array<GeneralCommandType> | null;
/**
*
* @type {boolean}
* @memberof ClientCapabilities
*/
supportsMediaControl?: boolean;
/**
*
* @type {boolean}
* @memberof ClientCapabilities
*/
supportsContentUploading?: boolean;
/**
*
* @type {string}
* @memberof ClientCapabilities
*/
messageCallbackUrl?: string | null;
/**
*
* @type {boolean}
* @memberof ClientCapabilities
*/
supportsPersistentIdentifier?: boolean;
/**
*
* @type {boolean}
* @memberof ClientCapabilities
*/
supportsSync?: boolean;
/**
*
* @type {ClientCapabilitiesDeviceProfile}
* @memberof ClientCapabilities
*/
deviceProfile?: ClientCapabilitiesDeviceProfile | null;
/**
*
* @type {string}
* @memberof ClientCapabilities
*/
appStoreUrl?: string | null;
/**
*
* @type {string}
* @memberof ClientCapabilities
*/
iconUrl?: string | null;
}
/**
* Check if a given object implements the ClientCapabilities interface.
*/
export function instanceOfClientCapabilities(value: object): boolean {
let isInstance = true;
return isInstance;
}
export function ClientCapabilitiesFromJSON(json: any): ClientCapabilities {
return ClientCapabilitiesFromJSONTyped(json, false);
}
export function ClientCapabilitiesFromJSONTyped(json: any, ignoreDiscriminator: boolean): ClientCapabilities {
if ((json === undefined) || (json === null)) {
return json;
}
return {
'playableMediaTypes': !exists(json, 'PlayableMediaTypes') ? undefined : json['PlayableMediaTypes'],
'supportedCommands': !exists(json, 'SupportedCommands') ? undefined : (json['SupportedCommands'] === null ? null : (json['SupportedCommands'] as Array<any>).map(GeneralCommandTypeFromJSON)),
'supportsMediaControl': !exists(json, 'SupportsMediaControl') ? undefined : json['SupportsMediaControl'],
'supportsContentUploading': !exists(json, 'SupportsContentUploading') ? undefined : json['SupportsContentUploading'],
'messageCallbackUrl': !exists(json, 'MessageCallbackUrl') ? undefined : json['MessageCallbackUrl'],
'supportsPersistentIdentifier': !exists(json, 'SupportsPersistentIdentifier') ? undefined : json['SupportsPersistentIdentifier'],
'supportsSync': !exists(json, 'SupportsSync') ? undefined : json['SupportsSync'],
'deviceProfile': !exists(json, 'DeviceProfile') ? undefined : ClientCapabilitiesDeviceProfileFromJSON(json['DeviceProfile']),
'appStoreUrl': !exists(json, 'AppStoreUrl') ? undefined : json['AppStoreUrl'],
'iconUrl': !exists(json, 'IconUrl') ? undefined : json['IconUrl'],
};
}
export function ClientCapabilitiesToJSON(value?: ClientCapabilities | null): any {
if (value === undefined) {
return undefined;
}
if (value === null) {
return null;
}
return {
'PlayableMediaTypes': value.playableMediaTypes,
'SupportedCommands': value.supportedCommands === undefined ? undefined : (value.supportedCommands === null ? null : (value.supportedCommands as Array<any>).map(GeneralCommandTypeToJSON)),
'SupportsMediaControl': value.supportsMediaControl,
'SupportsContentUploading': value.supportsContentUploading,
'MessageCallbackUrl': value.messageCallbackUrl,
'SupportsPersistentIdentifier': value.supportsPersistentIdentifier,
'SupportsSync': value.supportsSync,
'DeviceProfile': ClientCapabilitiesDeviceProfileToJSON(value.deviceProfile),
'AppStoreUrl': value.appStoreUrl,
'IconUrl': value.iconUrl,
};
}