export type StringKey = "languageName" | "seekBackward" | "seekForward" | "goToLive" | "live" | "playbackSpeed" | "playbackSpeedActive" | "audio" | "audioLanguage" | "audioLanguageActive" | "audioTrackFallback" | "subtitles" | "subtitlesActive" | "subtitlesOff" | "off" | "subtitleTrackFallback" | "quality" | "videoQuality" | "videoQualityActive" | "videoQualityAuto" | "auto" | "autoWithHeight" | "qualityLevelFallback" | "hideControls" | "sessionExpired" | "sessionExpiredDesc" | "somethingWentWrong" | "ok" | "play" | "pause" | "replay" | "mute" | "unmute" | "enterFullscreen" | "exitFullscreen" | "enterPip" | "exitPip" | "startCasting" | "stopCasting" | "connecting"; export type LocaleTable = Record; export declare const SUPPORTED_LANGS: readonly ["en", "no", "nl", "de"]; export type Lang = (typeof SUPPORTED_LANGS)[number]; export declare const DEFAULT_LANG: Lang; export declare const LANGUAGE_CHANGE_EVENT = "bccm-languagechange"; export declare function isSupportedLang(value: unknown): value is Lang; export declare function t(lang: Lang | undefined, key: StringKey, params?: Record): string; export declare function getLanguageName(lang: Lang): string; export declare function getTrackLanguageName(code: string | undefined | null): string | undefined; export declare function getLanguage(el: Element | null | undefined): Lang; export declare function onLanguageChange(el: Element, signal: AbortSignal, cb: (lang: Lang) => void): void; export declare function relabelSkin(root: Element, lang: Lang): void;