spotify-cli / resolve
resolve
Enrichment resolver — resolves Spotify IDs/queries to human-readable summaries.
Interfaces
ResolveDeps
Defined in: src/resolve.ts:20
Properties
cacheGet()
cacheGet: (
id) =>ItemSummary|undefined
Defined in: src/resolve.ts:25
Parameters
id
string
Returns
ItemSummary | undefined
cachePut()
cachePut: (
summary) =>void
Defined in: src/resolve.ts:26
Parameters
summary
Returns
void
flushCache()
flushCache: () =>
void
Defined in: src/resolve.ts:27
Returns
void
getAlbums()
getAlbums: (
ids,fetch) =>Promise<object[]>
Defined in: src/resolve.ts:22
Fetches multiple albums by ID, one at a time.
Parameters
ids
string[]
fetch?
<T>(path, options) => Promise<T>
Returns
Promise<object[]>
getArtists()
getArtists: (
ids,fetch) =>Promise<object[]>
Defined in: src/resolve.ts:23
Fetches multiple artists by ID, one at a time.
Parameters
ids
string[]
fetch?
<T>(path, options) => Promise<T>
Returns
Promise<object[]>
getTracks()
getTracks: (
ids,fetch) =>Promise<object[]>
Defined in: src/resolve.ts:21
Fetches multiple tracks by ID, one at a time.
Parameters
ids
string[]
fetch?
<T>(path, options) => Promise<T>
Returns
Promise<object[]>
search()
search: (
options,fetch) =>Promise<unknown>
Defined in: src/resolve.ts:24
Searches the Spotify catalog for tracks, albums, artists, and/or playlists.
Parameters
options
Search parameters.
limit?
number
Maximum number of results per type.
offset?
number
Index of the first result to return.
q
string
The search query string.
type
string
Comma-separated list of item types (e.g. "track,album").
fetch?
<T>(path, options) => Promise<T>
Returns
Promise<unknown>
See
GET /search
Type Aliases
AlbumSummary
AlbumSummary =
object
Defined in: src/resolve.ts:14
Properties
artist
artist:
string
Defined in: src/resolve.ts:14
id
id:
string
Defined in: src/resolve.ts:14
name
name:
string
Defined in: src/resolve.ts:14
type
type:
"album"
Defined in: src/resolve.ts:14
ArtistSummary
ArtistSummary =
object
Defined in: src/resolve.ts:15
Properties
id
id:
string
Defined in: src/resolve.ts:15
name
name:
string
Defined in: src/resolve.ts:15
type
type:
"artist"
Defined in: src/resolve.ts:15
ItemSummary
ItemSummary =
TrackSummary|AlbumSummary|ArtistSummary
Defined in: src/resolve.ts:16
TrackSummary
TrackSummary =
object
Defined in: src/resolve.ts:13
Properties
album
album:
string
Defined in: src/resolve.ts:13
artist
artist:
string
Defined in: src/resolve.ts:13
id
id:
string
Defined in: src/resolve.ts:13
name
name:
string
Defined in: src/resolve.ts:13
type
type:
"track"
Defined in: src/resolve.ts:13
Functions
resolveInput()
resolveInput(
input,type,deps?):Promise<{id:string;searched?:SearchedEntry; }>
Defined in: src/resolve.ts:99
Resolves a single user input (ID, URI, or search query) to a Spotify ID. Returns the resolved ID and, if a search was performed, what was matched.
Parameters
input
string
type
"artist" | "track" | "album"
deps?
Partial<ResolveDeps>
Returns
Promise<{ id: string; searched?: SearchedEntry; }>
resolveInputs()
resolveInputs(
inputs,type,deps?):Promise<{ids:string[];searched:SearchedEntry[]; }>
Defined in: src/resolve.ts:136
Resolves multiple user inputs to Spotify IDs. Returns the resolved IDs and any search matches.
Parameters
inputs
string[]
type
"artist" | "track" | "album"
deps?
Partial<ResolveDeps>
Returns
Promise<{ ids: string[]; searched: SearchedEntry[]; }>
resolveItems()
resolveItems(
type,ids,deps?):Promise<ItemSummary[]>
Defined in: src/resolve.ts:48
Resolves a list of IDs to enriched summaries. Checks cache first, batch-fetches uncached, caches results.
Parameters
type
"artist" | "track" | "album"
ids
string[]
deps?
Partial<ResolveDeps>
Returns
Promise<ItemSummary[]>
tryResolveItems()
tryResolveItems(
type,ids,deps?):Promise<ItemSummary[] |undefined>
Defined in: src/resolve.ts:83
Best-effort enrichment — returns items on success, undefined on failure. Never throws. Use this when enrichment should not interfere with core behavior.
Parameters
type
"artist" | "track" | "album"
ids
string[]
deps?
Partial<ResolveDeps>
Returns
Promise<ItemSummary[] | undefined>