/* 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 { exists, mapValues } from '../runtime'; import type { Track } from './Track'; import { TrackFromJSON, TrackFromJSONTyped, TrackToJSON, } from './Track'; import type { VersionMetadata } from './VersionMetadata'; import { VersionMetadataFromJSON, VersionMetadataFromJSONTyped, VersionMetadataToJSON, } from './VersionMetadata'; /** * * @export * @interface PlaylistTracksResponse */ export interface PlaylistTracksResponse { /** * * @type {number} * @memberof PlaylistTracksResponse */ latestChainBlock: number; /** * * @type {number} * @memberof PlaylistTracksResponse */ latestIndexedBlock: number; /** * * @type {number} * @memberof PlaylistTracksResponse */ latestChainSlotPlays: number; /** * * @type {number} * @memberof PlaylistTracksResponse */ latestIndexedSlotPlays: number; /** * * @type {string} * @memberof PlaylistTracksResponse */ signature: string; /** * * @type {string} * @memberof PlaylistTracksResponse */ timestamp: string; /** * * @type {VersionMetadata} * @memberof PlaylistTracksResponse */ version: VersionMetadata; /** * * @type {Array} * @memberof PlaylistTracksResponse */ data?: Array; } /** * Check if a given object implements the PlaylistTracksResponse interface. */ export function instanceOfPlaylistTracksResponse(value: object): value is PlaylistTracksResponse { let isInstance = true; isInstance = isInstance && "latestChainBlock" in value && value["latestChainBlock"] !== undefined; isInstance = isInstance && "latestIndexedBlock" in value && value["latestIndexedBlock"] !== undefined; isInstance = isInstance && "latestChainSlotPlays" in value && value["latestChainSlotPlays"] !== undefined; isInstance = isInstance && "latestIndexedSlotPlays" in value && value["latestIndexedSlotPlays"] !== undefined; isInstance = isInstance && "signature" in value && value["signature"] !== undefined; isInstance = isInstance && "timestamp" in value && value["timestamp"] !== undefined; isInstance = isInstance && "version" in value && value["version"] !== undefined; return isInstance; } export function PlaylistTracksResponseFromJSON(json: any): PlaylistTracksResponse { return PlaylistTracksResponseFromJSONTyped(json, false); } export function PlaylistTracksResponseFromJSONTyped(json: any, ignoreDiscriminator: boolean): PlaylistTracksResponse { if ((json === undefined) || (json === null)) { return json; } return { 'latestChainBlock': json['latest_chain_block'], 'latestIndexedBlock': json['latest_indexed_block'], 'latestChainSlotPlays': json['latest_chain_slot_plays'], 'latestIndexedSlotPlays': json['latest_indexed_slot_plays'], 'signature': json['signature'], 'timestamp': json['timestamp'], 'version': VersionMetadataFromJSON(json['version']), 'data': !exists(json, 'data') ? undefined : ((json['data'] as Array).map(TrackFromJSON)), }; } export function PlaylistTracksResponseToJSON(value?: PlaylistTracksResponse | null): any { if (value === undefined) { return undefined; } if (value === null) { return null; } return { 'latest_chain_block': value.latestChainBlock, 'latest_indexed_block': value.latestIndexedBlock, 'latest_chain_slot_plays': value.latestChainSlotPlays, 'latest_indexed_slot_plays': value.latestIndexedSlotPlays, 'signature': value.signature, 'timestamp': value.timestamp, 'version': VersionMetadataToJSON(value.version), 'data': value.data === undefined ? undefined : ((value.data as Array).map(TrackToJSON)), }; }