import { MediaStreamType, MediaStreamDeliveryPriority } from '../constants';
import { IPlaybackAdapter } from '../modules/playback-engine/output/native/adapters/types';
import { IEventEmitter } from '../modules/event-emitter/types';
import { IParsedPlayableSource } from '../modules/playback-engine/types';
export default class DashAdapter implements IPlaybackAdapter {
    static isSupported(): boolean;
    private eventEmitter;
    private dashPlayer;
    private mediaStream;
    private videoElement;
    constructor(eventEmitter: IEventEmitter);
    canPlay(mediaType: MediaStreamType): boolean;
    get mediaStreamDeliveryPriority(): MediaStreamDeliveryPriority;
    get currentUrl(): string;
    get syncWithLiveTime(): any;
    get isDynamicContent(): boolean;
    get isDynamicContentEnded(): boolean;
    get isSyncWithLive(): boolean;
    get isSeekAvailable(): boolean;
    get debugInfo(): {
        bwEstimate: number;
        deliveryPriority: MediaStreamDeliveryPriority;
        bitrates: any;
        currentBitrate: any;
        overallBufferLength: any;
        currentTrack: any;
        nearestBufferSegInfo: {
            start: number;
            end: number;
        };
        url: string;
        type: MediaStreamType;
    };
    private _bindCallbacks;
    setMediaStreams(mediaStreams: IParsedPlayableSource[]): void;
    private _logError;
    private _broadcastError;
    attach(videoOutput: HTMLVideoElement): void;
    private _delayedInitPlayer;
    private _startDelayedInitPlayer;
    private _stopDelayedInitPlayer;
    private _initPlayer;
    detach(): void;
}
