import { CBARAssetProperties, CBARTangibleAsset } from "./CBARAsset"; import { CBARSurface } from "../components/CBARSurface"; import * as THREE from "three"; import { CBAREvent } from "../CBARTypes"; export interface CBARSurfaceAssetProperties extends CBARAssetProperties { } export declare abstract class CBARSurfaceAsset extends CBARTangibleAsset { protected _surface?: CBARSurface; get surface(): CBARSurface | undefined; set surface(surface: CBARSurface | undefined); existsAtPoint(coords: THREE.Vector2): boolean; load(basePath: string | undefined, json: CBARSurfaceAssetProperties): Promise; data(): any; get description(): string; abstract addedToSurface(surface: CBARSurface): void; removeFromScene(): void; get surfaceRotation(): number; set surfaceRotation(value: number); get surfacePosition(): THREE.Vector2; set surfacePosition(value: THREE.Vector2); setSurfacePosition(xPos: number, yPos: number): void; get surfaceElevation(): number; set surfaceElevation(value: number); private _dragStartPosition; private _dragStartRotation; private _dragMethod; get menuPoint(): import("../CBARTypes").Point2D | undefined; handleEvent(event: CBAREvent): void; }