import { HttpClient } from '@angular/common/http';
import { AfterViewInit, ElementRef, EventEmitter, OnDestroy, OnChanges, SimpleChanges, Renderer2, OnInit, ChangeDetectorRef } 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';
import * as i0 from "@angular/core";
export declare class VideoPlayerComponent implements AfterViewInit, OnInit, OnDestroy, OnChanges {
    viewerService: ViewerService;
    private renderer2;
    questionCursor: QuestionCursor;
    private http;
    cdr: ChangeDetectorRef;
    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;
    disablePictureInPicture: boolean;
    constructor(viewerService: ViewerService, renderer2: Renderer2, questionCursor: QuestionCursor, http: HttpClient, cdr: ChangeDetectorRef);
    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;
    static ɵfac: i0.ɵɵFactoryDeclaration<VideoPlayerComponent, [null, null, { optional: true; }, null, null]>;
    static ɵcmp: i0.ɵɵComponentDeclaration<VideoPlayerComponent, "video-player", never, { "config": { "alias": "config"; "required": false; }; "action": { "alias": "action"; "required": false; }; }, { "questionSetData": "questionSetData"; "playerInstance": "playerInstance"; }, never, never, false, never>;
}
