import { NxsLocation } from 'nextalys-js-helpers/dist/geo-helpers'; export interface NxsMapMarker extends NxsLocation { icon?: string; iconSize?: number; draggable?: boolean; infoWindowContent?: string; description?: string; infoWindowOpen?: boolean; showInfowindowCloseButton?: boolean; infoWindowAlwaysOpen?: boolean; infoWindowOver?: boolean; meta?: T; offset?: NxsLocation; markerWidth?: number; markerHeight?: number; anchor?: 'top' | 'bottom' | 'left' | 'right' | 'top-left' | 'top-right' | 'bottom-left' | 'bottom-right'; closeOnClick?: boolean; } export interface NxsPolyline { points: NxsLocation[]; opacity?: number; width?: number; color?: string; meta?: T; } export interface NxsPolygon extends NxsPolyline { fill?: string; fillHover?: string; opacityHover?: number; fillSelected?: string; opacitySelected?: number; } export interface NxsMapsModuleOptions { defaultLat?: number; defaultLng?: number; defaultZoom?: number; defaultMarkerIcon?: string; debugMode?: boolean; } export type NxsPlacemark = NxsPolygon | NxsPolyline | NxsMapMarker; export type NxsAnySource = (NxsMapMarker | NxsPolygon | NxsPolyline); export type NxsMapFeatureType = 'LineString' | 'Point' | 'Polygon'; export interface NxsMapboxFeature { geometry: NxsGeometry; properties: any; } export interface MapboxClusterOptions { circleColor: string; textColor: string; textSize?: number; clusterMaxZoom?: number; clusterRadius?: number; } export interface NxsGeometry { type: NxsMapFeatureType; coordinates: (number[]) | (number[][]) | (number[][][]); } export declare class NxsMapboxLayerWrapper { delay?: number; before?: string; layerId: string; sourceName?: string; minZoom?: number; maxZoom?: number; private pSource; get source(): NxsAnySource[]; set source(val: NxsAnySource[]); sourceFeatures?: NxsMapboxFeature[]; clusterOptions?: MapboxClusterOptions; featureType: NxsMapFeatureType; layerType?: 'symbol' | 'line' | 'fill'; layout?: X; isDefaultLayerFromMarkers?: boolean; isDefaultLayerFromPolylines?: boolean; isDefaultLayerFromPolygons?: boolean; paint?: Y; static createFeaturesProperties(input: NxsMapMarker | NxsPolygon | NxsPolyline, featureType: NxsMapFeatureType, index: number): { fill: string; opacity: number; width: number; color: string; index: number; } | { icon: string; 'icon-size': number; description: string; index: number; 'icon-offset': number[]; 'icon-anchor': "top" | "bottom" | "left" | "right" | "top-left" | "top-right" | "bottom-left" | "bottom-right"; opacity?: undefined; width?: undefined; color?: undefined; } | { opacity: number; width: number; color: string; index: number; icon?: undefined; 'icon-size'?: undefined; description?: undefined; 'icon-offset'?: undefined; 'icon-anchor'?: undefined; } | { icon?: undefined; 'icon-size'?: undefined; description?: undefined; index?: undefined; 'icon-offset'?: undefined; 'icon-anchor'?: undefined; opacity?: undefined; width?: undefined; color?: undefined; }; static convertSourceToSourceFeatures(source: NxsAnySource[], featureType: NxsMapFeatureType): NxsMapboxFeature[]; static convertToGeometry(input: NxsPlacemark, type: NxsMapFeatureType): NxsGeometry; static fromGeometry(geometry: (number[]) | (number[][]), properties: any, type: NxsMapFeatureType): T; updateSource(source?: NxsAnySource[]): void; } export interface MapboxMapOptions { bindPolygonsHover?: 'legacy' | 'new'; polygonsSelectable?: boolean; addPolygonsBordersLineLayer?: boolean; polygonsBelowCustomLayers?: boolean; } //# sourceMappingURL=types.d.ts.map