import { Mesh } from "../form/Mesh";
import { type Triangle, type Point } from "../primitive";
import type { CleanedMeshResult, CleanedPointsResult } from "./sync";
/** Clean a polygon soup (batch) into an indexed Mesh, off the main thread. */
export declare function cleaned(input: Triangle, tolerance?: number): Promise<Mesh>;
/** Clean a mesh, off the main thread. */
export declare function cleaned(input: Mesh, tolerance?: number): Promise<Mesh>;
/** Clean a mesh and return index maps, off the main thread. */
export declare function cleaned(input: Mesh, opts: {
    returnIndexMap: true;
    tolerance?: number;
}): Promise<CleanedMeshResult>;
/** Clean a point batch, off the main thread. */
export declare function cleaned(input: Point, tolerance?: number): Promise<Point>;
/** Clean a point batch and return an index map, off the main thread. */
export declare function cleaned(input: Point, opts: {
    returnIndexMap: true;
    tolerance?: number;
}): Promise<CleanedPointsResult>;
//# sourceMappingURL=async.d.ts.map