import type { IEngine, MediaEngineContext, MediaSource } from '@openplayerjs/core'; import { BaseMediaEngine } from '@openplayerjs/core'; import Hls from 'hls.js'; export declare class HlsMediaEngine extends BaseMediaEngine implements IEngine { name: string; version: string; capabilities: string[]; priority: number; private adapter; private attemptedErrorRecovery; private recoverSwapAudioCodecTimestamp; private startedLoad; private adapterListeners; private HlsClass; private hlsConfig; private seenCueIds; constructor(config?: any); onCue?: (cue: { id: string; scte35Out: string; plannedDuration?: number; startDate?: Date; }) => void; getAdapter(): T | undefined; canPlay(source: MediaSource): boolean; attach(ctx: MediaEngineContext): void; private ensurePlaybackOwnership; private maybeStartLoad; /** * Attach a separate hls.js instance to an arbitrary video element without * touching the main engine state. Intended for ad creatives that are HLS * streams — the caller owns the returned dispose function and must call it * when the ad ends (or on any teardown path). */ attachMedia(video: HTMLVideoElement, src: string): () => void; detach(_ctx?: MediaEngineContext): void; private onAdapterEvent; private unbindAdapterEvents; } //# sourceMappingURL=hls.d.ts.map