import { Matrix3D, Vector3D, Box, Sphere, Rectangle } from '@awayjs/core';
import { AttributesView, Short2Attributes } from '@awayjs/stage';
import { LineElements } from '../elements/LineElements';
export declare class LineElementsUtils {
    static hitTest(x: number, y: number, z: number, thickness: number, box: Box, lineElements: LineElements, count: number, offset?: number): boolean;
    static getBoxBounds(positionAttributes: AttributesView, indexAttributes: Short2Attributes, matrix3D: Matrix3D, thicknessScale: Vector3D, cache: Box, target: Box, count: number, offset?: number): Box;
    static mergeThinkness(target: Box, thicknessScale: Vector3D, matrix3D: Matrix3D): Box;
    static getSphereBounds(positionAttributes: AttributesView, center: Vector3D, matrix3D: Matrix3D, cache: Sphere, output: Sphere, count: number, offset?: number): Sphere;
    static prepareScale9(elem: LineElements, bounds: Rectangle, grid: Rectangle, clone: boolean): LineElements;
    private static restoreLineSegments;
    static updateScale9(elem: LineElements, originalRect: Rectangle, scaleX: number, scaleY: number, init?: boolean, copy?: boolean): LineElements;
}
//# sourceMappingURL=LineElementsUtils.d.ts.map