import type { Response, Request } from 'express'; import type { StationI, HandlerStats } from '../types/public.h'; import type { SortAlg, TrackList } from '../types/Playlist.h'; import type { TrackI } from '../types/Track.h'; export declare class Station implements StationI { private _queuestream; private _eventBus; constructor(); start(): void; addFolder(folder: string): void; next(): void; getPlaylist(): TrackI[]; shufflePlaylist(arg?: SortAlg): TrackI[]; rearrangePlaylist(from: number, to: number): TrackI[]; connectListener(req: Request, res: Response, cb?: () => void): void; on(event: 'start', listener: (pl: TrackList) => void): void; on(event: 'restart', listener: (pl: TrackList, stats: HandlerStats) => void): void; on(event: 'nextTrack', listener: (nextTrack: TrackI, stats: HandlerStats) => void): void; on(event: 'error', listener: (err: Error) => void): void; }