import { GeometryType, Curve, GeometryCollection } from "./internal"; /** * A restricted form of GeometryCollection where each Geometry in the collection * must be of type Curve. * @param curve type */ export declare abstract class MultiCurve extends GeometryCollection { /** * Constructor * @param type geometry type * @param hasZ has z * @param hasM has m */ protected constructor(type: GeometryType, hasZ: boolean, hasM: boolean); /** * Get the curves * @return curves */ getCurves(): Array; /** * Set the curves * @param curves curves */ setCurves(curves: Array): void; /** * Add a curve * @param curve curve */ addCurve(curve: T): void; /** * Add curves * @param curves curves */ addCurves(curves: Array): void; /** * Get the number of curves * @return number of curves */ numCurves(): number; /** * Returns the Nth curve * @param n nth line curve to return * @return curve */ getCurve(n: number): T; /** * Determine if this Multi Curve is closed for each Curve (start point = end * point) * * @return true if closed */ isClosed(): boolean; }