44 lines
770 B
TypeScript
44 lines
770 B
TypeScript
export type Song = {
|
|
title: string,
|
|
artist: string,
|
|
trackCount: number,
|
|
url: string,
|
|
source: SongSource,
|
|
cover?: string
|
|
}
|
|
|
|
export enum SongSource {
|
|
Spotify = 'spotify',
|
|
Qobuz = 'qobuz',
|
|
Unknown = 'unknown'
|
|
}
|
|
|
|
export type QueueItem = {
|
|
id: string,
|
|
song: Song,
|
|
timeout?: number,
|
|
retries?: number,
|
|
result?: DownloadResult
|
|
}
|
|
|
|
export type Queue = QueueItem[];
|
|
export type ProcessingQueue = {
|
|
item: QueueItem,
|
|
status: string
|
|
}[];
|
|
|
|
export type DownloadResult = {
|
|
success: boolean,
|
|
error?: string
|
|
}
|
|
|
|
export type LucidaOptions = {
|
|
baseUrl: string,
|
|
headless: boolean,
|
|
proxy?: string
|
|
}
|
|
|
|
export const DEFAULT_LUCIDA_OPTIONS: LucidaOptions = {
|
|
baseUrl: 'https://lucida.to',
|
|
headless: true
|
|
}
|