import Hls from 'hls.js';
import { CuePoint } from './types';
export declare function setupTracks(mediaEl: HTMLMediaElement, hls: Pick<Hls, 'on' | 'once' | 'subtitleTracks' | 'subtitleTrack'>): void;
export declare function addTextTrack(mediaEl: HTMLMediaElement, kind: TextTrackKind, label: string, lang?: string, id?: string): TextTrack;
export declare function removeTextTrack(mediaEl: HTMLMediaElement, track: TextTrack): void;
export type CuePointsConfig = {
    label: string;
};
export declare const DefaultCuePointsConfig: CuePointsConfig;
export declare const getCuePointsTrack: (mediaEl: HTMLMediaElement, { label }?: CuePointsConfig) => TextTrack | undefined;
export declare function addCuePoints<T>(mediaEl: HTMLMediaElement, cuePoints: CuePoint<T>[], cuePointsConfig?: CuePointsConfig): Promise<TextTrack>;
export declare function getCuePoints(mediaEl: HTMLMediaElement, cuePointsConfig?: CuePointsConfig): {
    time: number;
    value: any;
}[];
export declare function getActiveCuePoint(mediaEl: HTMLMediaElement, cuePointsConfig?: CuePointsConfig): {
    time: number;
    value: any;
} | undefined;
export declare function setupCuePoints(mediaEl: HTMLMediaElement, cuePointsConfig?: CuePointsConfig): Promise<TextTrack>;
