import { Context } from "../context/context";
import { BaseSvg } from "./base-svg";
import { Vector3 } from "three";
interface SvgPolygonEventMap {
    'area': {
        area: number;
    };
}
export declare class SvgPolygon extends BaseSvg<SvgPolygonEventMap> {
    circles: SVGElement[];
    lines: SVGElement[];
    isClose: boolean;
    constructor(context: Context);
    setEnable(enable: boolean): void;
    get lastLine(): SVGElement;
    addCircle(circle: SVGElement): void;
    addLine(line: SVGElement): void;
    registryEvent(): void;
    unRegistryEvent(): void;
    onUpdate: () => void;
    onPointermove: (e: PointerEvent) => void;
    onPointerleave: () => void;
    onPointerdown: (e: PointerEvent) => void;
    /**
     * 检测是否可以吸附
     * 坐标点最少3个  传入的坐标点和第一个坐标的像素相差不超过5个像素
     */
    checkAdsorb(x: number, y: number): boolean;
    addPoint(vector: Vector3): void;
    calculatedArea(): number;
    dispose(): void;
}
export {};
