import { EventEmitter, InjectOptions, OnChanges, OnDestroy, OnInit, SimpleChanges } from '@angular/core'; import { ObjectEvent } from 'ol/Object'; import { Coordinate } from 'ol/coordinate'; import { MultiPolygon, Polygon } from 'ol/geom'; import { GeometryLayout } from 'ol/geom/Geometry'; import BaseEvent from 'ol/events/Event'; import { NolSafeAny } from 'ngx-ol-library/core'; import * as i0 from "@angular/core"; /** * Multi-polygon geometry component. * @name nol-multi-polygon-geometry * @order 1 */ export declare class NolMultiPolygonGeometryComponent implements OnInit, OnChanges, OnDestroy { nolCoordinates: number[] | (Polygon | Coordinate[][])[]; nolLayout?: GeometryLayout; nolEndss?: number[][]; nolProperties?: Record; nolChange: EventEmitter; nolError: EventEmitter; nolPropertychange: EventEmitter; private readonly destroyRef; private readonly host; private readonly polygons; private initialCoordinates; private instance; getInstance(): MultiPolygon; changed(): void; addPolygon(polygon: Polygon): number; removePolygon(polygon: Polygon): Polygon | undefined; ngOnInit(): void; ngOnChanges({ nolCoordinates, nolProperties }: SimpleChanges): void; ngOnDestroy(): void; private setCoordinates; private checkEndsAndLayout; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; } export declare function injectMultiPolygonGeometry(): NolMultiPolygonGeometryComponent; export declare function injectMultiPolygonGeometry(options: InjectOptions & { optional?: false; }): NolMultiPolygonGeometryComponent; export declare function injectMultiPolygonGeometry(options: InjectOptions): NolMultiPolygonGeometryComponent | null;