/// <reference types="youtube" />
import { AfterViewInit, ChangeDetectorRef, ElementRef, OnDestroy, OnInit, QueryList, Renderer2 } from '@angular/core';
import { IVideoConfig, IVideoSource } from '../Models/ngx-video-list-player.config';
import { IExtendedVideoSubtitle } from '../Models/custom.config';
import { BreakpointObserver } from '@angular/cdk/layout';
import { EventEmitter } from '@angular/core';
import * as i0 from "@angular/core";
export declare class NgxVideoListPlayerComponent implements AfterViewInit, OnInit, OnDestroy {
    private renderer;
    private breakpointObserver;
    private changeDetectorRef;
    videoElement: HTMLVideoElement;
    private mediaControlElement;
    actualVideo: IVideoSource;
    video: ElementRef;
    videoSource: ElementRef;
    progressContainer: ElementRef;
    progressContainerHover: ElementRef;
    fromPauseToPlay: QueryList<ElementRef>;
    fromPlayToPause: QueryList<ElementRef>;
    mediaPlayer: ElementRef;
    mediaControlContainer: ElementRef;
    meterContainer: ElementRef;
    progressSlider: ElementRef;
    videoTitleContainer: ElementRef;
    dropUpContent: ElementRef;
    videoListContainer: ElementRef;
    videoListElements: QueryList<ElementRef>;
    mobileDeviceMainPprContainer: ElementRef;
    subtitleModal: ElementRef;
    youtubePlayer: YT.Player;
    config: IVideoConfig;
    onTimeUpdate: EventEmitter<any>;
    onCanPlay: EventEmitter<any>;
    onLoadedMetadata: EventEmitter<any>;
    private visibleMobileDeviceMainPprContainer;
    private disableControlHide;
    private displayControlsTimeout;
    private countDownCircleTimeout;
    private youtubeCurrentTimeInterval;
    private mediaPlayerIsFocused;
    private actualVideoIndex;
    private firstSourceLoad;
    private firstVideoLoad;
    private pauseKeyboardCodes;
    subtitles: IExtendedVideoSubtitle[];
    videoName: string;
    currentTime: string;
    duration: string;
    isFullScreen: boolean;
    volumePercent: number;
    muted: boolean;
    progressSliderMaxValue: number;
    progressSliderValue: number;
    pipIsActive: boolean;
    supportPictureInPicture: boolean;
    supportFullScreen: boolean;
    canPlay?: boolean;
    videoType: string;
    actualSubtitleId: string;
    isMobileDevice: boolean;
    youtubeIsPaused: boolean;
    youtubeIsEnded: boolean;
    isSafariBrowser: boolean;
    constructor(renderer: Renderer2, breakpointObserver: BreakpointObserver, changeDetectorRef: ChangeDetectorRef);
    ngOnInit(): void;
    ngAfterViewInit(): void;
    videoEventHandler(ev: Event): void;
    private videoLoadErrorHandling;
    private canPlayEvent;
    private endEvent;
    pipEnter(): Promise<void>;
    pipExit(): Promise<void>;
    private playEvent;
    private pauseEvent;
    private clearMobileDeviceMainPprContainerStyles;
    playPause(): void;
    fullScreen(): void;
    exitFullScreen(): void;
    isNextVideo(): boolean;
    next(): void;
    prev(): void;
    private loadMetadataEvent;
    private timeUpdateEvent;
    private onReadyYoutubeVideo;
    private onStateChangeYoutubeVideo;
    private loadVideo;
    private clearYoutubeCurrentTimeInterval;
    private clearCountDownCircleTimeout;
    mute(): void;
    setVolume(event: Event): void;
    private setVolumeValue;
    private setVideoIndexCookie;
    progressHelperMouseMove(event: any): void;
    mediaPlayerMouseMove(): void;
    mediaPlayerMouseLeave(): void;
    mediaPlayerFocus(): void;
    mediaPlayerFocusOut(): void;
    handleDocumentKeyboardEvent(event: KeyboardEvent): void;
    handleDocumentClickEvent(event: MouseEvent): void;
    handleDocumentResizeEvent(event: MouseEvent): void;
    private resizeVideoListContainer;
    mediaControlContainerMouseEnter(): void;
    mediaControlContainerMouseLeave(): void;
    setProgressSlider(value: any): void;
    progressThumbMouseMove(event: MouseEvent): void;
    progressThumbMouseLeave(): void;
    openSubtitles(instantHide?: boolean): void;
    setSubtitle(id: string): void;
    videoClickEvent(): void;
    emptyVoid(): void;
    ngOnDestroy(): void;
    static ɵfac: i0.ɵɵFactoryDeclaration<NgxVideoListPlayerComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<NgxVideoListPlayerComponent, "ngx-video-list-player", never, { "config": "config"; }, { "onTimeUpdate": "onTimeUpdate"; "onCanPlay": "onCanPlay"; "onLoadedMetadata": "onLoadedMetadata"; }, never, never>;
}
