import { HttpClient } from '@angular/common/http';
import { AfterViewInit, ElementRef, EventEmitter, OnDestroy, OnChanges, SimpleChanges, Renderer2, OnInit } from '@angular/core';
import { QuestionCursor } from '@project-sunbird/sunbird-quml-player-v9';
import 'videojs-contrib-quality-levels';
import { ViewerService } from '../../services/viewer.service';
import { IAction } from '../../playerInterfaces';
export declare class VideoPlayerComponent implements AfterViewInit, OnInit, OnDestroy, OnChanges {
    viewerService: ViewerService;
    private renderer2;
    questionCursor: QuestionCursor;
    private http;
    config: any;
    action?: IAction;
    questionSetData: EventEmitter<any>;
    playerInstance: EventEmitter<any>;
    transcripts: any[];
    showBackwardButton: boolean;
    showForwardButton: boolean;
    showPlayButton: boolean;
    showPauseButton: boolean;
    showControls: boolean;
    currentPlayerState: string;
    private unlistenTargetMouseMove;
    private unlistenTargetTouchStart;
    target: ElementRef;
    controlDiv: ElementRef;
    player: any;
    totalSeekedLength: number;
    previousTime: number;
    currentTime: number;
    seekStart: any;
    time: number;
    startTime: any;
    totalSpentTime: number;
    isAutoplayPrevented: boolean;
    setMetaDataConfig: boolean;
    totalDuration: number;
    constructor(viewerService: ViewerService, renderer2: Renderer2, questionCursor: QuestionCursor, http: HttpClient);
    ngOnInit(): void;
    ngAfterViewInit(): void;
    ngOnChanges(changes: SimpleChanges): void;
    onLoadMetadata(e: any): void;
    registerEvents(): void;
    trackTranscriptEvent(): void;
    handleEventsForTranscripts(track: any): void;
    toggleForwardRewindButton(): void;
    play(): void;
    pause(): void;
    backward(): void;
    forward(): void;
    handleVideoControls({ type }: {
        type: any;
    }): void;
    setPreMetaDataConfig(): void;
    updatePlayerEventsMetadata({ type }: {
        type: any;
    }): void;
    ngOnDestroy(): void;
}
