import '../../../assert/js/assert.js';
import '../../../globals.js';
/**
 * Allows computing boolean operations on polygons (e.g. union, intersection, difference/complement)
 *
 * @author Jonathan Olson <jonathan.olson@colorado.edu>
 */
import { PolygonalFace, RasterTileLog, RationalFace, RenderPath } from '../imports.js';
import Bounds2 from '../../../dot/js/Bounds2.js';
import Vector2 from '../../../dot/js/Vector2.js';
export default class PolygonalBoolean {
    static union(...paths: RenderPath[]): Vector2[][];
    static intersection(...paths: RenderPath[]): Vector2[][];
    static difference(pathA: RenderPath, pathB: RenderPath): Vector2[][];
    static getOverlaps(pathA: RenderPath, pathB: RenderPath): {
        intersection: Vector2[][];
        aOnly: Vector2[][];
        bOnly: Vector2[][];
    };
    static cag<FaceData, OutputFace>(paths: RenderPath[], getFaceData: (face: RationalFace) => FaceData, createOutputFace: (face: PolygonalFace, faceData: FaceData, bounds: Bounds2) => OutputFace, isFaceDataCompatible: (faceData1: FaceData, faceData2: FaceData | null) => boolean, log: RasterTileLog | null): OutputFace[];
}
//# sourceMappingURL=PolygonalBoolean.d.ts.map