import '../../globals.js';
/**
 * Helps writing buffer-array style triangles into buffers.
 *
 * @author Jonathan Olson <jonathan.olson@colorado.edu>
 */
import Vector3 from '../../dot/js/Vector3.js';
export default class TriangleArrayWriter {
    private readonly positionArray;
    private readonly normalArray;
    private readonly uvArray;
    private positionIndex;
    private normalIndex;
    private uvIndex;
    private offset;
    private offsetPosition;
    /**
     * @param positionArray
     * @param normalArray
     * @param uvArray
     * @param offset - How many vertices have been specified so far?
     * @param offsetPosition - How to transform all of the points
     */
    constructor(positionArray: Float32Array | null, normalArray: Float32Array | null, uvArray: Float32Array | null, offset?: number, offsetPosition?: Vector3);
    /**
     * Writes a position into the (optional) positionArray, and increments the offset.
     */
    position(x: number, y: number, z: number): void;
    /**
     * Writes a normal into the (optional) normalArray
     */
    normal(x: number, y: number, z: number): void;
    /**
     * Writes a UV into the (optional) uvArray
     */
    uv(u: number, v: number): void;
    /**
     * Returns the offset (previous offset + number of triangles added, counted from the positionArray)
     */
    getOffset(): number;
}
//# sourceMappingURL=TriangleArrayWriter.d.ts.map