import type { Vec } from './Type'; import type CustomThreeLayer from '../ThreeLayer/CustomThreeLayer'; interface Options { video: HTMLVideoElement; videoWidth: number; videoHeight: number; videoTranslate: Vec; canvas: HTMLCanvasElement; position: number[]; altitude?: number; rotation?: Vec; scale: number | number[]; angle?: number; alwaysFront?: boolean; opacity: number; zIndex: number; } declare class ThreeVideo { object: any; animations: any; layer?: CustomThreeLayer; video?: HTMLVideoElement; videoMesh: any; bgMesh: any; canvasTexture?: any; videoFrame: number; rotateFun: any; constructor(layer: CustomThreeLayer); init(options: Options, $vue: any): Promise; bindAlwaysFront(alwaysFront?: boolean): void; unBindAlwaysFront(): void; _changeMapRotate(): void; addBgCanvas(canvas: HTMLCanvasElement): void; videoAnimate(): void; cancelCanvasTextureAnimate(): void; setScale(scale: number | number[]): void; setPosition(position: any): void; setRotation(rotation: Vec | undefined): void; setVideoTranslate(translate: Vec): void; setAltitude(altitude: any): void; setAngle(angle?: number): void; setOpacity(opacity: number): void; setzIndex(zIndex: number): void; refresh(): void; show(): void; hide(): void; start(): void; pause(): void; remove(): void; destroy(): void; } export default ThreeVideo;