UNPKG

@pixel_nomad/kazagumo-jiosaavn

Version:

A JioSaavn plugin for Kazagumo

78 lines (77 loc) 2.04 kB
import { KazagumoTrack } from '@pixel_nomad/kazagumo'; export interface JioSaavnPluginOptions { /** * The number of tracks to fetch per page for playlists/albums * @default 50 */ pageLimit?: number; /** * The track limit when searching * @default 10 */ searchLimit?: number; /** * Number of retries for failed requests * @default 2 */ retryLimit?: number; } export interface JioSaavnTrack { identifier: string; title: string; length: number; uri: string | null; artworkUrl: string; author: string | null; encryptedMediaUrl: string | null; albumUrl: string | null; artistUrl: string | null; albumName: string | null; artistArtworkUrl: string | null; previewUrl: string | null; } export interface JioSaavnAlbum { id: string; name: string; uri: string; artworkUrl: string; author: string; tracks: JioSaavnTrack[]; totalSongs: number; } export interface JioSaavnArtist { name: string; uri: string; artworkUrl: string; tracks: JioSaavnTrack[]; } export interface JioSaavnPlaylist { title: string; uri: string; artworkUrl: string; tracks: JioSaavnTrack[]; totalSongs: number; } export interface Result { tracks: KazagumoTrack[]; name?: string; } export interface SearchResponse { results: JioSaavnTrack[]; } export interface TrackResponse { track: JioSaavnTrack; } export interface AlbumResponse { album: JioSaavnAlbum; } export interface ArtistResponse { artist: JioSaavnArtist; } export interface PlaylistResponse { playlist: JioSaavnPlaylist; } export interface EncryptedMediaResponse { auth_url: string; } export type HTTPStatusCode = 200 | 201 | 202 | 203 | 206 | 300 | 301 | 302 | 303 | 305 | 307 | 308 | 400 | 401 | 402 | 403 | 404 | 405 | 406 | 407 | 408 | 409 | 410 | 411 | 412 | 413 | 414 | 415 | 416 | 417 | 500 | 501 | 502 | 503 | 504 | 505;