import { OnInit, OnDestroy, AfterViewInit, EventEmitter, Renderer2, ElementRef, ChangeDetectorRef } from '@angular/core'; import { Platform } from '@ionic/angular/standalone'; import { CTYInspectService, CTYUtilService } from 'cty-mobile-ui/services'; import { ScreenOrientation } from '@awesome-cordova-plugins/screen-orientation/ngx'; import { DirectionType, PreloadType, ProgressPositionType, DotItem } from './types'; import { Subscription } from 'rxjs'; import { LoadingType } from 'cty-mobile-ui/loading'; import * as i0 from "@angular/core"; interface ComposedTouch { isTouching: boolean; height: number; right: number; top: number; bottom: number; currentY: number; } export declare class CtyVideo implements OnInit, OnDestroy, AfterViewInit { ctyInspectService: CTYInspectService; ctyUtilService: CTYUtilService; private _render; private platform; private cdr; private screenOrientation; mediaEl: ElementRef; videoCtrlEl: ElementRef; dotPanelEl: ElementRef; interactiveEl: ElementRef; ctyDismiss: EventEmitter; ctyVideoCanplay: EventEmitter; ctyVideoTimeupdate: EventEmitter; ctyVideoPlaying: EventEmitter; ctyVideoPlay: EventEmitter; ctyVideoPause: EventEmitter; ctyVideoStalled: EventEmitter; ctyVideoWaiting: EventEmitter; ctyVideoEnded: EventEmitter; ctyVideoError: EventEmitter; ctyVideoChangeVolume: EventEmitter; ctyVideoProgress: EventEmitter; ctyVideoScreenChange: EventEmitter; ctyVideoIAEnter: EventEmitter; ctyVideoIAAction: EventEmitter; ctyVideoCtrlChange: EventEmitter; ctyVideoRateChange: EventEmitter; url: string; poster: string; initTime: number | string; preload: PreloadType; allowForward: boolean; allowBackward: boolean; unAllowForwardMsg: string; unAllowRateMsg: string; trafficMsg: string; errorMsg: string; orientation: boolean; autoplay: boolean; trafficAutoplay: boolean; onlyFullscreen: boolean; fullscreen: boolean; fullscreenIcon: string; exitFullscreenIcon: string; direction: DirectionType; opn: boolean; headerCtrl: boolean; footerCtrl: boolean; title: string; rates: number[]; rate: number; directRate: boolean; loading: boolean; loadingImg: string; loadingType: LoadingType; updateNow: boolean; dotList: DotItem[]; landscapeEnterTimer: number; landscapeLeaveTimer: number; togglePlayTimer: number; progressPosition: ProgressPositionType; player: 'video' | 'audio'; interactiveActions: any[]; _poster: string; playProgress: number; maxPlayProgress: number; currentTimeLabel: string; durationLabel: string; isPlaying: boolean; isMute: boolean; showCtrl: boolean; showPlayRate: boolean; showVideoError: boolean; warningMsg: string; isLoading: boolean; showTogglePlay: boolean; playVolume: number; playBrightness: number; opnIcon: string; opnLabel: string; opnType: string; opnLastType: string; prgTouchStatus: ComposedTouch; isMoving: boolean; opnStartTime: number; opnMoveTime: number; opnLx: number; opnLy: number; opnNx: number; opnNy: number; isMouseMove: boolean; isMicroMessager: boolean; isPC: boolean; isIOS: boolean; isIpad: boolean; isWifi: boolean; isHybrid: boolean; lastTapScreenTime: number; footerPrgtime: number; private _curIsFullscreen; get curIsFullscreen(): boolean; set curIsFullscreen(val: boolean); videoEl: HTMLVideoElement | HTMLAudioElement; subscribePTpause: (() => void) | Subscription; subscribePTresume: (() => void) | Subscription; showInteractiveLayer: boolean; hasInteractive: boolean; interactiving_action: any; ctrlTimer: number; warningMsgTimer: number; touchMoveTimer: number; _rates: number[]; dotItem: DotItem; showDotPanel: boolean; dotDotPanelTop: string; dotDotPanelLeft: string; triangleMargin: number; reallyShowDot: boolean; isRealWaiting: boolean; isSeeking: boolean; deviceIsPORTRAIT: boolean; canScreenOrientation: boolean; constructor(ctyInspectService: CTYInspectService, ctyUtilService: CTYUtilService, _render: Renderer2, platform: Platform, cdr: ChangeDetectorRef, screenOrientation: ScreenOrientation); ngOnInit(): void; ngAfterViewInit(): void; ngOnDestroy(): void; _getVolumeIconName(): "volume-mute-outline" | "volume-off-outline" | "volume-low-outline" | "volume-medium-outline" | "volume-high-outline"; _doDot(e: TouchEvent, item: DotItem): void; _resetDot(): void; _toPoint(): void; unAllowForward(): void; setVideoCurrentTime(curTime: number, cb: () => void): void; play(): void; setCtrlShow(show?: boolean): void; pause(): void; _doCanplay(): void; _doTimeupdate(): void; _doPause(): void; _doPlay(): void; _doPlaying(): void; _doEnded(): void; _doChangeVolume(): void; _doStalled(): void; _doWaiting(): void; _doSeeked(): void; _doError(): void; _clearTouchMoveToast(): void; clearCtrlTimeout(): void; clearWarningMsg(): void; _getPoint(event: TouchEvent | MouseEvent): { x: number; y: number; }; _doOpnStart(event: TouchEvent | MouseEvent): boolean; _doOpnMove(event: TouchEvent | MouseEvent): void; _doOpnEnd(event: TouchEvent | MouseEvent): void; _doPrgTouchstart(event: MouseEvent | TouchEvent): boolean; _doPrgTouchmove(event: MouseEvent | TouchEvent): true | undefined; _doPrgTouchend(event: MouseEvent | TouchEvent): true | undefined; _changeProgressByTouch(updateNow?: boolean): void; _updateVideoProgress(): void; _updateBrightness(): void; _updateVolume(): void; toggleVideo(event: Event | null): void; _doSetRate(): void; setPlayRate(rate: number): void; toggleVolume(): void; _toggleFullScreen(fullscreen: boolean): void; _dismiss(): void; getVideoElement(): Promise; interactiveCheck(currentTime: number): void; changeInteractiveAction(newaction: any): void; checkActionTriggerCond(action: any, currentTime: number, triggerType: string): boolean; calcTriggerCond(action: any, condtrigger: any[]): any; findInteractiveAction(actionid: string, curaction: any): any; interactiveAction(event: TouchEvent | MouseEvent): void; doInteractiveAction(act: any): void; interactiveClickHitCheck(e: TouchEvent | MouseEvent, targetRect: any, imgWidth: number, imgHeight: number): boolean; showInteractiveActionUI(action: any): void; hideInteractiveActionUI(): void; refreshInteractiveActionBtnStatus(action: any): void; clearInteractiveActionUI(): void; interactiveReset(): void; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; } export {};