import { CrossOriginValue, INativeDebugInfo, IVideoOutput, PlayableMediaSource, PreloadType } from '../../types'; import { IPlaybackAdapter, IPlaybackAdapterClass } from './adapters/types'; import { IEventEmitter } from '../../../event-emitter/types'; import { IPlayerConfig } from '../../../../core/config'; import { EngineState } from '../../../../constants'; export default class NativeOutput implements IVideoOutput { static moduleName: string; static dependencies: string[]; private _video; private _availablePlaybackAdapters; private _eventEmitter; private _stateEngine; private _nativeEventsBroadcaster; private _adapterStrategy; private _playPromise; private _pauseRequested; constructor({ eventEmitter, config, availablePlaybackAdapters, }: { eventEmitter: IEventEmitter; config: IPlayerConfig; availablePlaybackAdapters: IPlaybackAdapterClass[]; }); private _createVideoTag; play(): void; pause(): void; setMute(mute: boolean): void; setAutoplay(isAutoplay: boolean): void; setInline(isPlaysinline: boolean): void; setCrossOrigin(crossOrigin?: CrossOriginValue): void; setCurrentTime(time: number): void; setVolume(volume: number): void; setLoop(isLoop: boolean): void; setPlaybackRate(rate: number): void; setPreload(preload?: PreloadType): void; setSrc(src?: PlayableMediaSource, callback?: Function): void; syncWithLive(): void; getElement(): HTMLVideoElement; private _getViewDimensions; get volume(): number; get currentTime(): number; get duration(): number; get autoplay(): boolean; get crossOrigin(): CrossOriginValue; get playbackRate(): number; get buffered(): TimeRanges; get preload(): PreloadType; get isPaused(): boolean; get isMuted(): boolean; get isEnded(): boolean; get isInline(): boolean; get isAutoplay(): boolean; get isLoop(): boolean; get isMetadataLoaded(): boolean; get isDynamicContent(): boolean; get isDynamicContentEnded(): boolean; get isSeekAvailable(): boolean; get isSyncWithLive(): boolean; get isPreloadActive(): boolean; get isAutoPlayActive(): boolean; get videoHeight(): number; get videoWidth(): number; get src(): PlayableMediaSource; get currentState(): EngineState; get attachedAdapter(): IPlaybackAdapter; getDebugInfo(): INativeDebugInfo; destroy(): void; }