export class ImpostorBaker {
    /**
     *
     * @type {THREE.WebGLRenderer|null}
     * @private
     */
    private _renderer;
    /**
     *
     * @param {THREE.WebGLRenderer} v
     */
    set renderer(v: THREE.WebGLRenderer);
    /**
     *
     * @param {number[]|vec4} bounding_sphere
     * @param {{mesh:ShadedGeometry, transform:mat4}[]} objects
     * @param {number} resolution
     * @param {number} frames
     * @param {UvEncoder} encoder
     */
    bake_internal({ bounding_sphere, objects, resolution, frames, encoder }: number[] | vec4): ImpostorDescription;
    /**
     *
     * @param {{mesh:ShadedGeometry, transform:mat4}[]} objects objects that should make up the impostor. Baking will be done around the origin, so make sure to position meshes accordingly to make good use of texture space.
     * @param {number} frames how many views to capture for the atlas in each X and Y direction. Setting this to 4 will result in 16 (4*4) views captured, higher value will sacrifice detail but result in transitions being more smooth
     * @param {number} resolution resolution of the final asset, higher = more detail
     * @param {ImpostorCaptureType} type
     * @returns {ImpostorDescription}
     */
    bake({ objects, frames, resolution, type }: {
        mesh: ShadedGeometry;
        transform: mat4;
    }[]): ImpostorDescription;
}
import { ImpostorDescription } from "./ImpostorDescription.js";
import { mat4 } from "gl-matrix";
//# sourceMappingURL=ImpostorBaker.d.ts.map