import { IShapeBounding, IShapeSettings, ISceneChildProps, IBufferIndex, IRepetition, IPropArguments } from '../types'; import { SceneChild } from '../SceneChild'; import { ShapeBase } from './ShapeBase'; /** * Container of ShapeBase or Group, it applies transformations on each repetition * * @category Scene.Containers */ declare class Shape = ISceneChildProps> extends ShapeBase { /** * child shape * * @type {(SceneChild)} */ shape?: SceneChild; /** * regenerate child shape each repetition * * @type {boolean} */ shapeUseParent: boolean; /** * Creates an instance of Shape. * * @param {ShapeSettings} [settings={}] */ constructor(settings: IShapeSettings); /** * Check if shape is static * * @returns {boolean} */ isStatic(): boolean; /** * Check if shape has static index * * @returns {boolean} */ isStaticIndexed(): boolean; /** * Find shape by id or name * * @param {number | string} idOrName * @returns {(SceneChild | null)} */ find(idOrName: number | string): SceneChild | null; /** * Return length of buffer * * @param {PropArguments} propArguments * @returns {number} */ getBufferLength(propArguments?: PropArguments): number; /** * Return a buffer of children shape or loop generated buffer * * @protected * @param {number} generateId * @param {PropArguments} propArguments * @returns {Float32Array} */ protected generateBuffer(generateId: number, propArguments: PropArguments): Float32Array; /** * Return bounding * * @param {boolean} bDirectSceneChild * @returns {IShapeBounding} */ getShapeBounding(): IShapeBounding; /** * Add to indexed buffer * * @protected * @param {number} frameLength * @param {IRepetition} repetition * @returns {number} nextIndex */ protected addIndex(frameLength: number, repetition: IRepetition, singleRepetitionBounding: IShapeBounding): void; /** * Set parent of indexed * * @static * @param {(IBufferIndex )} current * @param {IBufferIndex} parent * @returns {(IBufferIndex )} */ static setIndexedParent(current: IBufferIndex, parent: IBufferIndex): IBufferIndex; /** * Set shape * * @param {(SceneChild | undefined)} [shape] */ setShape(shape: SceneChild | undefined): void; } export { Shape }; //# sourceMappingURL=Shape.d.ts.map