import { ContextManager } from '@zcomponent/core'; import * as THREE from 'three'; import { BufferGeometry, BufferGeometryConstructorProps } from './BufferGeometry'; /** * Interface for constructor properties of CylinderGeometry. */ interface CylinderGeometryConstructorProps extends BufferGeometryConstructorProps { /** * Radius of the cylinder at the top. Default is 1. * @zprop * @zdefault 1 */ radiusTop?: number; /** * Radius of the cylinder at the bottom. Default is 1. * @zprop * @zdefault 1 */ radiusBottom?: number; /** * Height of the cylinder. Default is 1. * @zprop * @zdefault 1 */ height?: number; /** * Number of segmented faces around the circumference of the cylinder. Default is 32 * @zprop * @zdefault 8 */ radialSegments?: number; /** * Number of rows of faces along the height of the cylinder. Default is 1. * @zprop * @zdefault 1 */ heightSegments?: number; /** * A Boolean indicating whether the ends of the cylinder are open or capped. Default is false, meaning capped. * @zprop * @zdefault false */ openEnded?: boolean; /** * Start angle for first segment, default = 0 (three o'clock position). * @zprop * @zdefault 0 */ thetaStart?: number; /** The central angle, often called theta, of the circular sector. The default is 2*Pi, which makes for a complete cylinder. * @zprop * @zdefault 6.283185307179586 */ thetaLength?: number; } /** * A Component for generating cylinder geometries. * * Root element: [THREE.CylinderGeometry](https://threejs.org/docs/#api/en/geometries/CylinderGeometry) * * @zcomponent * @zgroup Geometry * @zicon geometry * @ztag three/Geometry/CylinderGeometry * @zparents three/Object3D/Mesh/Mesh */ export declare class CylinderGeometry extends BufferGeometry { constructor(contextManager: ContextManager, props: CylinderGeometryConstructorProps); } export {};