import { IDrawerProps, IPropArguments, IShapeLoopProps, IShapeLoopSettings, TSceneChildProp } from '../../types'; import { ShapeLoop } from '../ShapeLoop'; /** * * @category Shapes.Settings */ export declare type TSpiralType = 'ARCHIMEDE' | 'HYPERBOLIC' | 'FERMAT' | 'LITUUS' | 'LOGARITHMIC'; /** * * @category Shapes.Settings */ export interface ISpiralProps extends IShapeLoopProps { /** * type of spiral * @order -35 */ spiral?: TSpiralType; /** * number of twists * @order -34 */ twists?: TSceneChildProp; /** * twist start * @order -33 */ twistsStart?: TSceneChildProp; } /** * * @category Shapes.Settings */ export interface ISpiralSettings = IDrawerProps> extends ISpiralProps, IShapeLoopSettings { } /** * Spiral shape * * @category Shapes.ShapeLoop * @class Spiral * @extends {ShapeLoop} */ declare class Spiral = IDrawerProps> extends ShapeLoop> { private spiral; private r; /** * Spural types * * @static * @type {{ [name in TSpiralType]: TSpiralType }} * @memberof Spiral */ static readonly types: { [name in TSpiralType]: TSpiralType; }; /** * Creates an instance of Spiral. * * @param {SpiralSettings} [settings={}] * @memberof Spiral */ constructor(settings?: ISpiralSettings); protected generateLoopBuffer(propArguments: PropArguments): Float32Array; /** * Point position and scale factor for spiral types * * @static * @param {TSpiralType} spiral * @returns {number} * @memberof Spiral */ static getRFromTSpiralType(spiral: TSpiralType): (angle: number) => number; } export { Spiral }; //# sourceMappingURL=Spiral.d.ts.map