import ICurve from "../interface/ICurve";
import MeshAppendable from "./core/MeshAppendable";
import { Point3dType } from "../utils/isPoint";
import { BufferGeometry, Line, LineBasicMaterial } from "three";
export default class Curve extends MeshAppendable implements ICurve {
    static componentName: string;
    static defaults: Partial<import("../interface/utils/Defaults").default<ICurve>>;
    static schema: Required<import("../interface/utils/extractProps").ExtractProps<ICurve>>;
    $geometry: BufferGeometry | undefined;
    $material: LineBasicMaterial | undefined;
    $mesh: Line | undefined;
    private _helper;
    get helper(): boolean;
    set helper(val: boolean);
    private _subdivide;
    get subdivide(): number;
    set subdivide(val: number);
    private _points;
    get points(): Point3dType[];
    set points(val: Point3dType[]);
    addPoint(pt: Point3dType): void;
}
