type ShakaPlayerInstance = {
    getVariantTracks?: () => Array<{
        id: number;
        height?: number;
        width?: number;
        language?: string;
        label?: string;
        active?: boolean;
        bandwidth?: number;
    }>;
    selectVariantTrack?: (track: {
        id: number;
    }, clearBuffer?: boolean) => void;
    getTextTracks?: () => Array<{
        id: number;
        language?: string;
        label?: string;
        kind?: string;
        active?: boolean;
    }>;
    selectTextTrack?: (track: {
        id: number;
    }) => void;
    setTextTrackVisibility?: (visible: boolean) => void;
    addTextTrack?: (uri: string, language: string, kind: string, mime?: string, codec?: string, label?: string) => any;
    addTextTrackAsync?: (uri: string, language: string, kind: string, mime?: string, codec?: string, label?: string) => Promise<any>;
    removeTextTrack?: (track: {
        id: number;
    }) => void;
    getNetworkingEngine?: () => {
        registerRequestFilter?: (filter: (type: any, request: any) => void) => void;
    } | null;
    getPlaybackRate?: () => number;
    setPlaybackRate?: (rate: number) => void;
    configure?: (config: Record<string, any>) => void;
    addEventListener?: (event: string, callback: (...args: any[]) => void) => void;
    removeEventListener?: (event: string, callback: (...args: any[]) => void) => void;
};
type PlayerSettingsSnapshot = {
    speeds: number[];
    currentSpeed: number;
    hasRealSpeeds: boolean;
    qualities: Array<{
        id: number;
        label: string;
    }>;
    currentQualityId: number | null;
    hasRealQualities: boolean;
    subtitles: Array<{
        id: number | null;
        label: string;
        lang?: string;
        isDefault?: boolean;
    }>;
    currentSubtitleId: number | null;
    hasRealSubtitles: boolean;
};
declare const DEFAULT_SPEEDS: number[];
declare const buildQualityLabel: (track: {
    height?: number;
    bandwidth?: number;
}) => string;
declare const getSettingsSnapshot: (player: ShakaPlayerInstance | null, videoElement?: HTMLVideoElement | null) => PlayerSettingsSnapshot;
declare const setPlaybackRate: (player: ShakaPlayerInstance | null, rate: number) => void;
declare const setQuality: (player: ShakaPlayerInstance | null, id: number) => void;
declare const setSubtitle: (player: ShakaPlayerInstance | null, id: number | null, videoElement?: HTMLVideoElement | null) => void;
export { DEFAULT_SPEEDS, buildQualityLabel, getSettingsSnapshot, setPlaybackRate, setQuality, setSubtitle, };
export type { PlayerSettingsSnapshot, ShakaPlayerInstance };
//# sourceMappingURL=videoSettings.d.ts.map