import { IPoint, Point } from './'; export interface IPointResult { index: number; point: IPoint | null; } export declare class SplinePointSet implements Iterable { static get notFound(): IPointResult; get first(): Point; get length(): number; private _boundary; private _points; constructor(points?: IPoint[]); [Symbol.iterator](): { next: () => IteratorResult; }; push(...points: IPoint[]): number; update(index: number, { x, y }: IPoint): IPointResult; find: (point: IPoint) => IPointResult; forEach: (predicateFn: (value: Point, index: number) => void) => void; remove(index: number): Point | undefined; indexOfClosest(coordinate: IPoint, maxRange: number, transform: (p: IPoint) => IPoint): number; closest: (coordinate: IPoint, maxRange: number, transform: (p: IPoint) => IPoint) => IPointResult; private _sort; private _allowedWithinBound; private _pointResult; }