import { Layer, Control, DomUtil } from 'leaflet'; import { LayerContainer, Map, MapControl, MapControlProps } from 'react-leaflet'; export interface baseLayer { name: string; title: string; } export interface overlay { checked: boolean; groupTitle: string; name: string; title: string; } export interface RLGLCProps extends MapControlProps { baseLayers: Array; checkedBaseLayer: string; exclusiveGroups?: Array; overlays?: Array; onBaseLayerChange?(id: string): void; onOverlayChange?(newOverlays: Array ): void leaflet?: { map?: Map; pane?: string; layerContainer?: LayerContainer; popupContainer?: Layer; } } export class ReactLeafletGroupedLayerControl extends MapControl { public div: HTMLElement; public groups: Array; public state: { open: boolean }; public props: RLGLCProps; public id: number; }