import { CrossOriginValue, IVideoOutput, PlayableMediaSource, PreloadType } from '../../types'; import { EngineState } from '../../../../constants'; import { IEventEmitter } from '../../../event-emitter/types'; import { IChromecastDebugInfo } from './types'; export default class ChromecastOutput implements IVideoOutput { type: string; private _playerController; private _player; private _stateEngine; private _eventEmitter; private _src; private _isAutoplay; constructor(eventEmitter: IEventEmitter); play(): Promise; pause(): void; setMute(mute: boolean): void; setAutoplay(isAutoplay: boolean): void; setInline(): void; setCrossOrigin(): void; setCurrentTime(time: number): void; setVolume(volume: number): void; setLoop(): void; setPlaybackRate(): void; setPreload(): void; setSrc(source: PlayableMediaSource, callback?: Function): void; private _initRemote; getElement(): null; getDebugInfo(): IChromecastDebugInfo; get volume(): number; get currentTime(): number; get duration(): number; get autoplay(): boolean; get crossOrigin(): CrossOriginValue; get playbackRate(): number; get buffered(): { end: () => number; start: () => number; length: number; }; get preload(): PreloadType; get isPaused(): boolean; get isMuted(): boolean; get isEnded(): boolean; get isInline(): boolean; get isAutoplay(): boolean; get isSeekAvailable(): boolean; get isLoop(): boolean; get isPreloadActive(): boolean; get videoHeight(): number; get videoWidth(): number; get src(): string; get currentState(): EngineState; get isAutoPlayActive(): boolean; get isDynamicContent(): boolean; get isDynamicContentEnded(): boolean; get isMetadataLoaded(): boolean; get isSyncWithLive(): boolean; syncWithLive(): void; }