UNPKG

spotify-api.js

Version:

A complete node js wrapper of spotify api with oauth support

98 lines (97 loc) 3.17 kB
import type { Client } from "../Client"; import type { Show } from "./Show"; import type { CamelCaseObjectKeys } from "../Interface"; import type { SimplifiedEpisode, Episode as RawEpisode, ExternalUrl, Image, Restriction, ResumePoint, SpotifyType } from "spotify-types"; /** * Spotify api's episode object. */ export declare class Episode { /** * A URL to a 30 second preview (MP3 format) of the episode. null if not available. */ audioPreviewURL?: string; /** * A description of the episode. HTML tags are stripped away from this field, use html_description field in case HTML tags are needed. */ description: string; /** * The episode length in milliseconds. */ duration: number; /** * Whether or not the episode has explicit content (true = yes it does; false = no it does not OR unknown). */ explicit: boolean; /** * External URLs for this episode */ externalURL: ExternalUrl; /** * A description of the episode. This field may contain HTML tags. */ htmlDescription: string; /** * The Spotify ID for the episode. */ id: string; /** * The cover art for the episode in various sizes, widest first. */ images: Image[]; /** * True if the episode is hosted outside of Spotify’s CDN. */ isExternallyHosted: boolean; /** * True if the episode is playable in the given market. Otherwise false. */ isPlayable: boolean; /** * A list of the languages used in the episode, identified by their ISO 639 code. */ languages: string[]; /** * The name of the episode. */ name: string; /** * The date the episode was first released, for example "1981-12-15". Depending on the precision, it might be shown as "1981" or "1981-12". */ releaseDate: string; /** * The precision with which release_date value is known: "year", "month", or "day". */ releaseDatePrecision: string; /** * Included in the response when a content restriction is applied. */ restrictions: Restriction[]; /** * The user’s most recent position in the episode. Set if the supplied access token is a user token and has the scope ‘user-read-playback-position’. */ resumePoint?: CamelCaseObjectKeys<ResumePoint>; /** * The object type: “episode”. */ type: SpotifyType; /** * The Spotify URI for the episode */ uri: string; /** * The show which the episode belongs to. */ show?: Show; /** * To create a js object conataing camel case keys of the SimplifiedEpisode and Episode data with additional functions. * * @param client The spotify client. * @example const episode = new Episode(fetchedData, client); */ constructor(data: SimplifiedEpisode | RawEpisode, client: Client); /** * Returns a code image url from the spotify uri. * @param color The color code in hex. */ makeCodeImage(color?: string): string; }