nex_music/types.ts

22 lines
447 B
TypeScript

export interface LyricLine {
time: number; // in seconds
text: string;
}
export interface TrackData {
title: string;
artist: string;
coverUrl: string;
audioUrl: string;
lyrics: LyricLine[];
lyricsSource?: string; // Optional URL or raw string for deferred parsing
}
export enum PlayerState {
IDLE = 'IDLE',
LOADING = 'LOADING',
PLAYING = 'PLAYING',
PAUSED = 'PAUSED',
}
export type PlaybackMode = 'SEQUENCE' | 'SHUFFLE';