import { Curve, Float32BufferAttribute, Vector3 } from 'three'; import { AGeometryGenerator } from '../AGeometryGenerator'; import { IGeometry } from '../../../core/IGeometry'; import { UiObjectConfig } from 'uiconfig.js'; export interface TubeGeometryGeneratorParams { path: Curve; tubularSegments: number; radius: number; radialSegments: number; closed: boolean; } /** * Generates a tube geometry with circular cross-section along a 3D curve path. * Uses three.js TubeGeometry internally. */ export declare class TubeGeometryGenerator extends AGeometryGenerator { constructor(type?: string, defaultParams?: Partial); defaultParams: TubeGeometryGeneratorParams; protected _generateData(params: TubeGeometryGeneratorParams): { indices: number[]; vertices: Float32BufferAttribute; normals: Float32BufferAttribute; uvs: Float32BufferAttribute; }; createUiConfig(geometry: IGeometry): UiObjectConfig[]; } //# sourceMappingURL=../../../src/plugins/geometry/primitives/TubeGeometryGenerator.d.ts.map