import { VideoFormat } from '../../../player/types';
import { DeviceChecker } from './DeviceChecker';
import { BrowserChecker } from './BrowserChecker';
import { Checker } from '../../../utils/ClientChecker/types/checker';
type Protocols = {
    mms: boolean;
    mse: boolean;
    hls: boolean;
    webrtc: boolean;
    ws: boolean;
};
type Containers = {
    mp4: boolean;
    webm: boolean;
    cmaf: boolean;
};
type Codecs = {
    h264: boolean;
    h265: boolean;
    vp9: boolean;
    av1: boolean;
    aac: boolean;
    opus: boolean;
    mpeg: boolean;
};
export type WebmFormat = VideoFormat.DASH_WEBM | VideoFormat.DASH_WEBM_AV1;
export declare class VideoChecker implements Checker {
    private _video;
    private _deviceChecker;
    private _browserChecker;
    private _protocols;
    private _containers;
    private _codecs;
    private _nativeHlsSupported;
    constructor(deviceChecker: DeviceChecker, browserChecker: BrowserChecker);
    get protocols(): Protocols;
    get containers(): Containers;
    get codecs(): Codecs;
    get webmDecodingInfo(): Record<WebmFormat, MediaCapabilitiesDecodingInfo> | undefined;
    get supportedCodecs(): string[];
    get nativeHlsSupported(): boolean;
    detect(): void;
    private destroyVideoElement;
}
export {};
