UNPKG

@polygonjs/polygonjs

Version:

node-based WebGL 3D engine https://polygonjs.com

25 lines (24 loc) 1.17 kB
import { Camera } from 'three'; import { TypedEventNode } from './_Base'; import { NodeParamsConfig } from '../utils/params/ParamsConfig'; import { BaseViewerType } from '../../viewers/_Base'; export interface CameraControls { name?: string; enabled?: boolean; dispose: () => void; update: (delta: number) => void; addEventListener: (eventName: string, callback: () => void) => void; removeEventListener: (eventName: string, callback: () => void) => void; } export declare abstract class TypedCameraControlsEventNode<K extends NodeParamsConfig> extends TypedEventNode<K> { private _controls_by_viewer; applyControls(camera: Camera, viewer: BaseViewerType): Promise<CameraControls | undefined>; controls_id(): string; abstract updateRequired(): boolean; cook(): void; abstract setupControls(controls: CameraControls): void; abstract disposeControlsForHtmlElementId(html_element_id: string): void; abstract createControlsInstance(camera: Camera, element: HTMLElement): Promise<CameraControls>; abstract endEventName(): string; } export type BaseCameraControlsEventNodeType = TypedCameraControlsEventNode<any>;