import "@videojs/html/video/ui";
import "@videojs/html/media/hls-video";
import "./components/subtitle-picker";
import "./components/audio-picker";
import "./components/quality-picker";
import "./components/playback-rate-picker";
import "./components/live-button";
import "./components/dismiss-controls-button";
import "./skin/skin.css";
import { type NPAWOptions } from "./npaw";
import { type Lang } from "./i18n/strings";
export { DEFAULT_LANG, getLanguageName, getTrackLanguageName, isSupportedLang, LANGUAGE_CHANGE_EVENT, SUPPORTED_LANGS, } from "./i18n/strings";
export type { Lang } from "./i18n/strings";
export interface Options {
src: {
type?: "application/x-mpegURL" | string;
src?: string;
};
languagePreferenceDefaults: {
audio?: string;
subtitles?: string;
};
npaw?: NPAWOptions;
autoplay: boolean;
/** Switches the player to a live-aware skin (LIVE badge, no time
* displays / seek buttons / thumbnail preview). Defaults to false. */
live?: boolean;
subtitles: any[];
/** UI language for tooltips, pickers, and error messages. Defaults
* to `"en"`. Use `player.setLanguage(...)` to swap at runtime. */
language?: Lang;
videojs: {
poster?: string;
crossOrigin?: string;
[key: string]: unknown;
};
onProgress?: (currentTime: number, duration: number, player: Player) => void;
}
export interface TrackOption {
language: string;
label: string;
}
export interface Player {
readonly element: HTMLElement;
readonly mediaEl: HTMLVideoElement;
getAudioLanguages(): TrackOption[];
getSubtitleLanguages(): TrackOption[];
setAudioTrackToLanguage(language?: string): void;
setSubtitleTrackToLanguage(language?: string): void;
setVideoQuality(height: number): void;
/** Swap the UI language (tooltips, pickers, error dialog) at runtime.
* Falls back to `"en"` for unsupported values. */
setLanguage(lang: Lang): void;
dispose(): void;
}
export declare function createPlayer(containerId: string, opts: Partial): Promise;
export declare function setNPAWOptions(player: Player, options: NPAWOptions): void;
export declare function restartNPAWView(player: Player, options: NPAWOptions): void;