import type { Object3D } from 'three';
import type { Direction } from '../typing';
import { MoveHelperAbstract, type BaseHelperConfig } from './BaseHelper';
import { ArrowGroup } from '../utils/ArrowGroup';
import { CenterHandle } from '../utils/CenterHandle';
import { PlaneHandle } from '../utils/PlaneHandle';
import { Camera } from '@realsee/five';
import { tipsDom } from '../utils/tipsDom';
import * as THREE from 'three';
export declare class MoveHelper extends MoveHelperAbstract {
    name: string;
    xArrow?: ArrowGroup;
    yArrow?: ArrowGroup;
    zArrow?: ArrowGroup;
    centerHandle?: CenterHandle;
    xyPlane?: PlaneHandle;
    xzPlane?: PlaneHandle;
    yzPlane?: PlaneHandle;
    moveTips?: ReturnType<typeof tipsDom>;
    private container?;
    constructor(originObject3D: Object3D, config?: {
        container?: HTMLElement;
        xArrowEnable?: boolean;
        yArrowEnable?: boolean;
        zArrowEnable?: boolean;
        centerHandleEnable?: boolean;
        xyPlaneEnable?: boolean;
        xzPlaneEnable?: boolean;
        yzPlaneEnable?: boolean;
        moveTipsEnable?: boolean;
    } & BaseHelperConfig);
    update(camera: Camera): void;
    show(): void;
    setScaleByCamera(camera: THREE.PerspectiveCamera | THREE.OrthographicCamera): void;
    showDraggingHelper(directions: Direction[]): void;
    dispose(): void;
}
