import { ModuleWithProviders, Type } from '@angular/core';
import { ZoomLevelConfiguration, MarkerTypeConfiguration, GeometryPolygonConfiguration, InitialPositionConfiguration } from '../../configurations';
import { GeoJsonRepository } from '../repositories';
import * as i0 from "@angular/core";
import * as i1 from "./map.component";
import * as i2 from "@angular/common";
import * as i3 from "@asymmetrik/ngx-leaflet";
export declare class MapModule {
    private readonly geometryPolygonConfiguration;
    private readonly markerType;
    private readonly zoomLevel;
    private readonly initialPosition;
    private readonly geoJsonRepository;
    static forRoot(geometryPolygonConfiguration: GeometryPolygonConfiguration, zoomLevelConfiguration: ZoomLevelConfiguration, initialPositionConfiguration: InitialPositionConfiguration, markerTypeConfiguration: MarkerTypeConfiguration, geoJsonRepository: Type<GeoJsonRepository>): ModuleWithProviders<MapModule>;
    constructor(geometryPolygonConfiguration: GeometryPolygonConfiguration, markerType: MarkerTypeConfiguration, zoomLevel: ZoomLevelConfiguration, initialPosition: InitialPositionConfiguration, geoJsonRepository: GeoJsonRepository);
    static ɵfac: i0.ɵɵFactoryDeclaration<MapModule, [{ optional: true; }, { optional: true; }, { optional: true; }, { optional: true; }, { optional: true; }]>;
    static ɵmod: i0.ɵɵNgModuleDeclaration<MapModule, [typeof i1.MapComponent], [typeof i2.CommonModule, typeof i3.LeafletModule], [typeof i1.MapComponent]>;
    static ɵinj: i0.ɵɵInjectorDeclaration<MapModule>;
}
