/**
 * Build a {@link MeshShape3D} from a Three-style indexed triangle buffer.
 *
 * Pipeline:
 *  1. {@link bt_mesh_from_indexed_geometry} reconstructs a
 *     {@link BinaryTopology} (vertex / edge / loop / face cycles).
 *  2. {@link compute_tetrahedral_mesh_from_surface} tetrahedralises the
 *     volume enclosed by the surface, carving away exterior tets.
 *  3. The tet mesh is **compacted** — the carving pass leaves the free
 *     list populated with low-index slots, and downstream consumers
 *     (`tetrahedral_mesh_to_bvh` iterates by index, the shape's
 *     `recompute_cached` does the same) expect a hole-free range.
 *     Compaction relocates live tets so indices `[0, count)` are dense.
 *  4. The flat positions + indices are kept verbatim on the shape for
 *     fast support-function and triangle-distance queries.
 *  5. A {@link BVH} is built over the tet AABBs, used by
 *     {@link MeshShape3D#contains_point} for O(log N) point-in-mesh
 *     queries that correctly handle disconnected meshes (which the
 *     previous tet-walker did not).
 *
 * The caller's buffers are NOT cloned — they're attached to the shape
 * directly. Don't mutate them after handing them in.
 *
 * @param {Float32Array} positions flat `(x, y, z)` per vertex
 * @param {Uint32Array}  indices  three uint32 per triangle (CCW winding)
 * @returns {MeshShape3D}
 */
export function shape_mesh_from_geometry(positions: Float32Array, indices: Uint32Array): MeshShape3D;
import { MeshShape3D } from "./MeshShape3D.js";
//# sourceMappingURL=shape_mesh_from_geometry.d.ts.map