import { ChangeEventHandler, Component, ReactNode } from 'react';
import { LayerInfo } from '../config.map.js';
export interface GroupedOptions {
    label: string;
    options: Option[];
}
export interface Option {
    label: string;
    value: string;
}
export interface LayerSwitcherDropdownState {
    layers?: Map<string, LayerInfo>;
    zoomToExtent: boolean;
    currentLayer: string;
}
export declare class LayerSwitcherDropdown extends Component<unknown, LayerSwitcherDropdownState> {
    _events: (() => boolean)[];
    state: LayerSwitcherDropdownState;
    componentDidMount(): void;
    componentWillUnmount(): void;
    onLayerChange: (opt: Option | null) => void;
    onZoomExtentChange: ChangeEventHandler<unknown>;
    render(): ReactNode;
    makeOptions(): {
        options: GroupedOptions[];
        current: Option | null;
    };
}
//# sourceMappingURL=layer.switcher.dropdown.d.ts.map