TrackJSON
JSON-compatible representation of a Track.
interface TrackJSON<Metadata = unknown> extends TrackData<Metadata>JSON-compatible representation of a Track.
Properties
sourceReferenceoptional
Inherited from TrackData.sourceReference
sourceReference?: ProviderReferencePortable provider payload; exclude secrets and live resources.
lyricsReferenceoptional
Inherited from TrackData.lyricsReference
lyricsReference?: ProviderReferenceOptional portable lyrics provider affinity.
rawoptional
raw?: Record<string, any>Process-local legacy data, never persisted.
engineoptional
Inherited from TrackData.engine
engine?: unknownLegacy source location or engine object, never persisted.
queryTypeoptional
Inherited from TrackData.queryType
queryType?: stringLegacy query hint.
requestMetadataoptional
Inherited from TrackData.requestMetadata
requestMetadata?: () => Promise<Metadata | null>Legacy asynchronous metadata provider, never persisted.
cleanTitleoptional
Inherited from TrackData.cleanTitle
cleanTitle?: stringLegacy display title.
requesteroptional
Inherited from TrackData.requester
requester?: TrackRequester | nullAlias for requestedBy.
sourceoptional
Inherited from TrackData.source
source?: stringProvider-defined source name or identifier.
liveoptional
live?: booleanWhether this is a live stream without a fixed duration.
metadataoptional
Inherited from TrackData.metadata
metadata?: Metadata | nullArbitrary source-plugin metadata.
idoverride
id: stringStable track identifier.
titleoverride
title: stringDisplay title.
descriptionoverride
Overrides TrackData.description
description: stringTrack description.
urloverride
url: stringSource page URL.
thumbnailoverride
thumbnail: stringThumbnail URL.
durationoverride
duration: stringHuman-readable duration.
durationMSoverride
Overrides TrackData.durationMS
durationMS: numberDuration in milliseconds.
viewsoverride
views: numberView or play count.
requestedByoverride
Overrides TrackData.requestedBy
requestedBy: string | nullSerialized requester identity, or null when no requester is known.
playlistoverride
playlist: PlaylistJSON | nullSerialized playlist metadata, or null when omitted.