/* 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 { PlaybackProgressInfoItem } from './PlaybackProgressInfoItem'; import { PlaybackProgressInfoItemFromJSON, PlaybackProgressInfoItemFromJSONTyped, PlaybackProgressInfoItemToJSON, } from './PlaybackProgressInfoItem'; import type { QueueItem } from './QueueItem'; import { QueueItemFromJSON, QueueItemFromJSONTyped, QueueItemToJSON, } from './QueueItem'; /** * Class PlaybackStopInfo. * @export * @interface ReportPlaybackStoppedRequest */ export interface ReportPlaybackStoppedRequest { /** * * @type {PlaybackProgressInfoItem} * @memberof ReportPlaybackStoppedRequest */ item?: PlaybackProgressInfoItem | null; /** * Gets or sets the item identifier. * @type {string} * @memberof ReportPlaybackStoppedRequest */ itemId?: string; /** * Gets or sets the session id. * @type {string} * @memberof ReportPlaybackStoppedRequest */ sessionId?: string | null; /** * Gets or sets the media version identifier. * @type {string} * @memberof ReportPlaybackStoppedRequest */ mediaSourceId?: string | null; /** * Gets or sets the position ticks. * @type {number} * @memberof ReportPlaybackStoppedRequest */ positionTicks?: number | null; /** * Gets or sets the live stream identifier. * @type {string} * @memberof ReportPlaybackStoppedRequest */ liveStreamId?: string | null; /** * Gets or sets the play session identifier. * @type {string} * @memberof ReportPlaybackStoppedRequest */ playSessionId?: string | null; /** * Gets or sets a value indicating whether this MediaBrowser.Model.Session.PlaybackStopInfo is failed. * @type {boolean} * @memberof ReportPlaybackStoppedRequest */ failed?: boolean; /** * * @type {string} * @memberof ReportPlaybackStoppedRequest */ nextMediaType?: string | null; /** * * @type {string} * @memberof ReportPlaybackStoppedRequest */ playlistItemId?: string | null; /** * * @type {Array} * @memberof ReportPlaybackStoppedRequest */ nowPlayingQueue?: Array | null; } /** * Check if a given object implements the ReportPlaybackStoppedRequest interface. */ export function instanceOfReportPlaybackStoppedRequest(value: object): boolean { let isInstance = true; return isInstance; } export function ReportPlaybackStoppedRequestFromJSON(json: any): ReportPlaybackStoppedRequest { return ReportPlaybackStoppedRequestFromJSONTyped(json, false); } export function ReportPlaybackStoppedRequestFromJSONTyped(json: any, ignoreDiscriminator: boolean): ReportPlaybackStoppedRequest { if ((json === undefined) || (json === null)) { return json; } return { 'item': !exists(json, 'Item') ? undefined : PlaybackProgressInfoItemFromJSON(json['Item']), 'itemId': !exists(json, 'ItemId') ? undefined : json['ItemId'], 'sessionId': !exists(json, 'SessionId') ? undefined : json['SessionId'], 'mediaSourceId': !exists(json, 'MediaSourceId') ? undefined : json['MediaSourceId'], 'positionTicks': !exists(json, 'PositionTicks') ? undefined : json['PositionTicks'], 'liveStreamId': !exists(json, 'LiveStreamId') ? undefined : json['LiveStreamId'], 'playSessionId': !exists(json, 'PlaySessionId') ? undefined : json['PlaySessionId'], 'failed': !exists(json, 'Failed') ? undefined : json['Failed'], 'nextMediaType': !exists(json, 'NextMediaType') ? undefined : json['NextMediaType'], 'playlistItemId': !exists(json, 'PlaylistItemId') ? undefined : json['PlaylistItemId'], 'nowPlayingQueue': !exists(json, 'NowPlayingQueue') ? undefined : (json['NowPlayingQueue'] === null ? null : (json['NowPlayingQueue'] as Array).map(QueueItemFromJSON)), }; } export function ReportPlaybackStoppedRequestToJSON(value?: ReportPlaybackStoppedRequest | null): any { if (value === undefined) { return undefined; } if (value === null) { return null; } return { 'Item': PlaybackProgressInfoItemToJSON(value.item), 'ItemId': value.itemId, 'SessionId': value.sessionId, 'MediaSourceId': value.mediaSourceId, 'PositionTicks': value.positionTicks, 'LiveStreamId': value.liveStreamId, 'PlaySessionId': value.playSessionId, 'Failed': value.failed, 'NextMediaType': value.nextMediaType, 'PlaylistItemId': value.playlistItemId, 'NowPlayingQueue': value.nowPlayingQueue === undefined ? undefined : (value.nowPlayingQueue === null ? null : (value.nowPlayingQueue as Array).map(QueueItemToJSON)), }; }