/// <reference types="node" />
export default HlsPlayer;
declare class HlsPlayer {
    constructor(mediaDataSource: any, config: any);
    TAG: string;
    _type: string;
    _emitter: EventEmitter;
    _config: {
        enableWorker: boolean;
        enableStashBuffer: boolean;
        stashInitialSize: any;
        isLive: boolean;
        liveBufferLatencyChasing: boolean;
        liveBufferLatencyMaxLatency: number;
        liveBufferLatencyMinRemain: number;
        lazyLoad: boolean;
        lazyLoadMaxDuration: number;
        lazyLoadRecoverDuration: number;
        deferLoadAfterSourceOpen: boolean;
        autoCleanupMaxBackwardDuration: number;
        autoCleanupMinBackwardDuration: number;
        statisticsInfoReportInterval: number;
        fixAudioTimestampGap: boolean;
        accurateSeek: boolean;
        seekType: string;
        seekParamStart: string;
        seekParamEnd: string;
        rangeLoadZeroStart: boolean;
        customSeekHandler: any;
        reuseRedirectedURL: boolean;
        headers: any;
        customLoader: any;
        useOuterLoader: boolean;
    };
    e: {
        onvLoadedMetadata: any;
        onHlsManifestParsed: any;
        onHlsError: any;
        onHlsFragLoaded: any;
        onvCanPlay: any;
        onvPlaying: any;
        onvError: any;
    };
    _pendingSeekTime: any;
    _statisticsReporter: number;
    _networkDead: boolean;
    _mediaDataSource: any;
    _mediaElement: any;
    _canvasElement: any;
    _hls: Hls;
    _wasmPlayer: WasmPlayer;
    _useWasmPlayback: boolean;
    _firstWasmFrameRendered: boolean;
    _wasmPlaylistTimer: number;
    _playlistPromise: Promise<void>;
    _processedSegments: Set<any>;
    _playlistUrl: any;
    _initSegmentInfo: any;
    _bootstrapAbortController: AbortController;
    _fatalWasmError: boolean;
    _wasmPollGeneration: number;
    _hevcBootstrap: any;
    _pendingHevcFallback: boolean;
    _standardPlaybackConfirmed: boolean;
    _destroyed: boolean;
    _loadGeneration: number;
    destroy(): void;
    on(event: any, listener: any): void;
    off(event: any, listener: any): void;
    attachMediaElement(mediaElement: any, canvasElement: any): void;
    detachMediaElement(): void;
    load(): void;
    unload(): void;
    play(): any;
    pause(): void;
    get isNetworkDead(): boolean;
    get type(): string;
    get buffered(): any;
    get duration(): any;
    set volume(value: any);
    get volume(): any;
    set muted(muted: any);
    get muted(): any;
    set currentTime(seconds: any);
    get currentTime(): any;
    get mediaInfo(): {
        mimeType: string;
    };
    get statisticsInfo(): {
        playerType: string;
        url: any;
    };
    _onvLoadedMetadata(e: any): void;
    _onHlsManifestParsed(event: any, data: any): void;
    _onHlsFragLoaded(): void;
    _onHlsError(event: any, data: any): void;
    _onvCanPlay(): void;
    _onvPlaying(): void;
    _onvError(): void;
    _reportStatisticsInfo(): void;
    _isDisposed(): boolean;
    _isStaleLoad(loadGeneration: any): boolean;
    _bootstrapLoadMode(loadGeneration: any): void;
    _fetchBootstrapInfo(url: any, signal: any): any;
    _shouldPreferStandardHevcPlayback(bootstrap: any): boolean;
    _canUseMseHevcPlayback(initInfo: any): boolean;
    _canUseNativeHevcPlayback(): boolean;
    _shouldFallbackToWasm(data: any): boolean;
    _fallbackToWasmPlayback(reason: any): void;
    _startStandardHlsPlayback(loadGeneration?: number): void;
    _startWasmPlayback(bootstrap: any): void;
    _scheduleNextPlaylistPoll(targetDuration: any, pollGeneration?: number): void;
    _stopWasmPlaylistTimer(): void;
    _refreshWasmPlaylist(pollGeneration?: number): Promise<void>;
    _consumePlaylist(playlist: any): Promise<void>;
}
import EventEmitter from 'events';
import Hls from 'hls.js';
import { Player as WasmPlayer } from './wasm_player.js';
