import { BasePluginType } from '@modules/editor/plugin/plugin.type';
import Editor from '@modules/editor';
import { CSS2DObject } from 'three/examples/jsm/renderers/CSS2DRenderer';
import { Line2 } from 'three/examples/jsm/lines/Line2';
export declare const LineName = "ENTER_DISTANCE_LINE";
declare class EnterDistance implements BasePluginType {
    #private;
    private _turnOn;
    private _isDrawingLineMode;
    private _line;
    private _startPointMesh;
    private _endPointMesh;
    private _textLabel;
    private _startPointCord;
    private _endPointCord;
    constructor(editor: Editor);
    get line(): Line2 | null;
    get textLabel(): {
        [key: string]: CSS2DObject;
    };
    get isDrawingLineMode(): boolean;
    init(): void;
    turnOnOff(type: 'on' | 'off'): void;
    remove(): void;
    /**
     * ply가 로드되면 실행됨.
     * @param pointA
     * @param pointB
     */
    loadLine(pointA: number[], pointB: number[], distance?: number): void;
    /**
     * 거리 라벨 텍스트값 추가 및 수정
     * @param distance
     */
    setDistanceLabel(distance: number): void;
}
export default EnterDistance;
