/**
 *
 * @param {Iterable<TopoEdge>} edges
 * @param {Set<number>} restricted_vertices
 * @param {Uint32Heap} heap
 * @param {Map<number, Quadric3>} vertex_quadratics
 * @param {Map<number,TopoEdge>} edge_lookup
 */
export function edge_collapse_populate_heap(edges: Iterable<TopoEdge>, restricted_vertices: Set<number>, heap: Uint32Heap, vertex_quadratics: Map<number, Quadric3>, edge_lookup: Map<number, TopoEdge>): void;
/**
 *
 * @param {TopoMesh} mesh
 * @param {number} num_faces_to_remove
 * @param {Uint32Heap} heap
 * @param {Map<number,TopoEdge>} edge_lookup
 * @param {Set<number>} restricted_vertices
 * @param {Map<number, Quadric3>} vertex_quadratics
 */
export function edge_collapse_reduce_face_count(mesh: TopoMesh, num_faces_to_remove: number, heap: Uint32Heap, edge_lookup: Map<number, TopoEdge>, restricted_vertices: Set<number>, vertex_quadratics: Map<number, Quadric3>): void;
/**
 * Simplifies a given topology mesh by reducing number of faces. Preserves original vertices
 * NOTE: preserves outline of the mesh, that is the open edge
 * NOTE: assumes that face normals are set
 * @param {TopoMesh} mesh
 * @param {number} num_faces_to_remove desired number of faces to remove
 * @param {Set<number>} [restricted_vertices] vertices that are not allowed to be removed
 */
export function simplifyTopoMesh2(mesh: TopoMesh, num_faces_to_remove: number, restricted_vertices?: Set<number>): void;
import { Uint32Heap } from "../../../../collection/heap/Uint32Heap.js";
//# sourceMappingURL=simplifyTopoMesh2.d.ts.map