export type AudioEvent = 'interrupt' | 'change' | 'position' | 'status' | 'action'; export type AudioPlayMode = 'repeat_mode_one' | 'repeat_mode_all' | 'repeat_mode_random'; export type AudioSpeed = 0.5 | 1 | 1.5 | 2; export interface AudioPlayerOptions { index?: number; position?: number; autoPlay?: boolean; speed?: AudioSpeed; mode?: AudioPlayMode; headless: boolean; files: AudioFile[]; toolbar?: AudioToolbar[]; } export interface AudioFile { id?: string; name: string; url: string; author?: string; cover?: string; size?: number; headers?: Record; } export interface AudioToolbar { icon: string; code: string; label: string; disabled?: boolean; position?: 'top' | 'bottom'; labelColor?: string; labelBgColor?: string; }