import { MediaPlayerType, PlayerOption, PlayerStatus } from '../types/player.js'; import { AudioLanguagePreference } from '../types/config.js'; export declare class MediaPlayerService { private activeProcess; private ipcSocket; private pipePath; private lastMpvTimePos; private lastMpvDuration; private lastMpvPaused; private lastMpvSyncTime; private currentStatus; /** * Checks if a player type is available on the system. */ static isAvailable(type: MediaPlayerType): boolean; /** * Scans system for MPV and VLC executables. */ detectAvailablePlayers(): PlayerOption[]; private findExecutable; /** * Plays the stream using the selected media player. */ play(playerType: MediaPlayerType, streamUrl: string, webPlayerUrl: string, title?: string, audioLanguage?: AudioLanguagePreference): Promise; private launchMpv; private connectMpvIpc; /** * Send JSON-IPC command to MPV */ sendMpvCommand(command: (string | number)[]): void; togglePause(): void; seek(seconds: number): void; cycleAudio(): void; cycleSubtitles(): void; private launchVlc; private launchBrowser; stop(): void; getStatus(): PlayerStatus; }