import { EventEmitter, InjectOptions, OnChanges, OnDestroy, OnInit, SimpleChanges } from '@angular/core'; import { ObjectEvent } from 'ol/Object'; import { Coordinate } from 'ol/coordinate'; import { LinearRing, 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"; /** * Polygon geometry component. * @name nol-polygon-geometry * @order 1 */ export declare class NolPolygonGeometryComponent implements OnInit, OnChanges, OnDestroy { nolCoordinates: Coordinate[][] | number[]; nolLayout?: GeometryLayout; nolEnds?: number[]; nolProperties?: Record; nolChange: EventEmitter; nolError: EventEmitter; nolPropertychange: EventEmitter; private readonly destroyRef; private readonly host; private readonly linearRings; private initialCoordinates; private instance; getInstance(): Polygon; changed(): void; addLinearRing(linearRing: LinearRing): void; removeLinearRing(linearRing: LinearRing): void; ngOnInit(): void; ngOnChanges({ nolCoordinates, nolProperties }: SimpleChanges): void; ngOnDestroy(): void; private setCoordinates; private checkEndsAndLayout; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; } export declare function injectPolygonGeometry(): NolPolygonGeometryComponent; export declare function injectPolygonGeometry(options: InjectOptions & { optional?: false; }): NolPolygonGeometryComponent; export declare function injectPolygonGeometry(options: InjectOptions): NolPolygonGeometryComponent | null;