/**
 * Fills the closed gaps between 2D polygons using polygon boundaries and polylines as the boundary for creating new polygons.
 *
 * @since 4.31
 */
import type Polygon from "../Polygon.js";
import type Polyline from "../Polyline.js";

/**
 * Fills the gaps between polygons using the polylines as additional boundaries.
 *
 * @param polygons - The polygons to fill.
 * @param polylines - The polylines to use as boundaries.
 * @returns Returns the new polygons that were created in the closed empty areas bounded by some of the edges of `polygons` and `polylines`.
 * The newly created polygons do not overlap any existing `polygons` or `polylines`, and the boundary of a new polygon must contain at least one edge from `polylines`.
 * Since only polygons that intersect polylines will be used, it may be necessary to prefilter the input.
 * @example
 * // Auto complete a set of polygons using polylines as boundaries
 * const result = autoCompleteOperator.execute(polygons, polylines);
 */
export function execute(polygons: Polygon[], polylines: Polyline[]): Polygon[];

/**
 * Indicates if the operator supports input geometries that contain curves.
 * The value will always be `true`.
 */
export const supportsCurves: boolean;