import { ContextManager } from '@zcomponent/core'; import * as THREE from 'three'; import { BufferGeometry, BufferGeometryConstructorProps } from './BufferGeometry'; /** * Interface for constructor properties of TorusKnotGeometry. */ interface TorusKnotGeometryConstructorProps extends BufferGeometryConstructorProps { /** * Radius of the torus. Default is 1. * @zprop * @zdefault 1 */ radius?: number; /** * Radius of the tube. Default is 0.4. * @zprop * @zdefault 0.4 */ tube?: number; /** * Default is 8 * @zprop * @zdefault 8 */ radialSegments?: number; /** * Default is 6 * @zprop * @zdefault 6 */ tubularSegments?: number; /** * This value determines, how many times the geometry winds around its axis of rotational symmetry. Default is 2. * @zprop * @zdefault 2 */ p?: number; /** * This value determines, how many times the geometry winds around a circle in the interior of the torus. Default is 3. * @zprop * @zdefault 3 */ q?: number; } /** * A Component for generating a torus knot geometries. * * Root element: [THREE.TorusKnotGeometry](https://threejs.org/docs/#api/en/geometries/TorusKnotGeometry) * * * @zcomponent * @zgroup Geometry * @zicon geometry * @ztag three/Geometry/TorusKnotGeometry * @zparents three/Object3D/Mesh/Mesh */ export declare class TorusKnotGeometry extends BufferGeometry { /** * Constructs a TorusKnotGeometry. * @param contextManager - The context manager. * @param props - The properties required to construct a TorusKnotGeometry. */ constructor(contextManager: ContextManager, props: TorusKnotGeometryConstructorProps); } export {};