UNPKG

fruit-company

Version:
79 lines (78 loc) 2.67 kB
import { UnknownMusicResource } from "./base"; import { SongResource } from "./song"; /** * An object containing search results for a specific resource. */ export interface ResourceSearchResult<Datum extends UnknownMusicResource> { /** * The resources for the search result. */ readonly data: Datum[]; /** * The relative location to fetch the search result. */ readonly href?: string; /** * A relative cursor to fetch the next paginated * collection of resources in the result, if more exist. */ readonly next?: string; } /** * An object that represents the results of a catalog search query. */ export interface MusicSearchResults { /** * The activities results for a term search for specific resource types. */ readonly activities?: ResourceSearchResult<UnknownMusicResource>; /** * The albums results for a term search for specific resource types. */ readonly albums?: ResourceSearchResult<UnknownMusicResource>; /** * The Apple curators results for a term search for specific resource types. */ readonly "apple-curators"?: ResourceSearchResult<UnknownMusicResource>; /** * The artists results for a term search for specific resource types. */ readonly artists?: ResourceSearchResult<UnknownMusicResource>; /** * The curators results for a term search for specific resource types. */ readonly curators?: ResourceSearchResult<UnknownMusicResource>; /** * The music videos results for a term search for specific resource types. */ readonly "music-videos"?: ResourceSearchResult<UnknownMusicResource>; /** * The playlists results for a term search for specific resource types. */ readonly playlists?: ResourceSearchResult<UnknownMusicResource>; /** * The record labels results for a term search for specific resource types. */ readonly "record-labels"?: ResourceSearchResult<UnknownMusicResource>; /** * The songs results for a term search for specific resource types. */ readonly songs?: ResourceSearchResult<SongResource>; /** * The stations results for a term search for specific resource types. */ readonly stations?: ResourceSearchResult<UnknownMusicResource>; /** * The top results for a term search for specific resource types. */ readonly top?: ResourceSearchResult<UnknownMusicResource>; } /** * The response to a search request. */ export interface MusicSearchResponse { /** * The results included in the response to a search request. */ readonly results: MusicSearchResults; }