import { ContextManager } from '@zcomponent/core'; import * as THREE from 'three'; import { Object3D } from '../Object3D'; /** * Constructor properties. */ export interface LineConstructorProps { /** * The geometry of the line. */ geometry?: THREE.BufferGeometry; /** * The material of the line. */ material?: THREE.Material; /** * If this node contains a Curve, this property determines how many points are used to create the geometry from the curve. * @zui * @zdefault 50 */ pointsForCurve?: number; } /** * * A continuous line. * * This is nearly the same as LineSegments; the only difference is that it is rendered using `gl.LINE_STRIP` instead of `gl.LINES`. * * Root element: [THREE.Line](https://threejs.org/docs/index.html#api/en/objects/Line) * @zcomponent * @zgroup Lines * @zicon deployed_code * @ztag three/Object3D/Line/Line * @ztag three/CurveHost/Line * @zparents three/Object3D/Group/** */ export declare class Line extends Object3D { element: THREE.Line; private _geometry; /** * Creates a new line. * @param contextManager - Context manager. * @param props - Properties. * @param rootConstructor - Constructor for the root element. */ constructor(contextManager: ContextManager, props: LineConstructorProps, rootConstructor?: new (geometry: THREE.BufferGeometry, material: THREE.Material) => THREE.Line); private _updateFromCurve; private _attachCurve; dispose(): never; }