/* 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 TrackResponse */ export interface TrackResponse { /** * * @type {number} * @memberof TrackResponse */ latestChainBlock: number; /** * * @type {number} * @memberof TrackResponse */ latestIndexedBlock: number; /** * * @type {number} * @memberof TrackResponse */ latestChainSlotPlays: number; /** * * @type {number} * @memberof TrackResponse */ latestIndexedSlotPlays: number; /** * * @type {string} * @memberof TrackResponse */ signature: string; /** * * @type {string} * @memberof TrackResponse */ timestamp: string; /** * * @type {VersionMetadata} * @memberof TrackResponse */ version: VersionMetadata; /** * * @type {Track} * @memberof TrackResponse */ data?: Track; } /** * Check if a given object implements the TrackResponse interface. */ export function instanceOfTrackResponse(value: object): value is TrackResponse { 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 TrackResponseFromJSON(json: any): TrackResponse { return TrackResponseFromJSONTyped(json, false); } export function TrackResponseFromJSONTyped(json: any, ignoreDiscriminator: boolean): TrackResponse { 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 : TrackFromJSON(json['data']), }; } export function TrackResponseToJSON(value?: TrackResponse | 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': TrackToJSON(value.data), }; }