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 HlsAdapter implements IPlaybackAdapter { static DEFAULT_HLS_CONFIG: any; static isSupported(): boolean; private eventEmitter; private hls; private videoElement; private mediaStream; private _mediaRecoverTimeout; private _networkRecoverTimeout; private _isDynamicContent; private _isDynamicContentEnded; private _isAttached; constructor(eventEmitter: IEventEmitter); private _bindCallbacks; get currentUrl(): string; get syncWithLiveTime(): number; get isDynamicContent(): boolean; get isDynamicContentEnded(): boolean; get isSyncWithLive(): boolean; get isSeekAvailable(): boolean; get mediaStreamDeliveryPriority(): MediaStreamDeliveryPriority.ADAPTIVE_VIA_MSE | MediaStreamDeliveryPriority.FORCED; get debugInfo(): { bwEstimate: number; deliveryPriority: MediaStreamDeliveryPriority; bitrates: any; currentBitrate: any; overallBufferLength: number; nearestBufferSegInfo: { start: number; end: number; }; url: string; type: MediaStreamType; }; canPlay(mediaType: MediaStreamType): boolean; setMediaStreams(mediaStreams: IParsedPlayableSource[]): void; private _logError; private _broadcastError; private _tryRecoverMediaError; private _tryRecoverNetworkError; private _attachOnPlay; private _onLevelUpdated; private _onEndOfStream; attach(videoElement: HTMLVideoElement): void; detach(): void; }