import React from 'react'; import SplitMapButtonFactory from './split-map-button'; import Toggle3dButtonFactory from './toggle-3d-button'; import LayerSelectorPanelFactory from './layer-selector-panel'; import MapLegendPanelFactory from './map-legend-panel'; import MapDrawPanelFactory from './map-draw-panel'; import LocalePanelFactory from './locale-panel'; import { Datasets, Editor, MapControls } from 'reducers'; import { Layer } from 'layers'; export type MapControlProps = { availableLocales: ReadonlyArray; datasets: Datasets; dragRotate: boolean; isSplit: boolean; primary: boolean; layers: Layer[]; layersToRender: { [key: string]: boolean; }; mapIndex: number; mapControls: MapControls; onTogglePerspective: () => void; onToggleSplitMap: () => void; onToggleMapControl: (control: string) => void; onSetEditorMode: (mode: string) => void; onToggleEditorVisibility: () => void; top: number; onSetLocale: () => void; locale: string; logoComponent: React.FC | React.ReactNode; readOnly?: boolean; scale?: number; mapLayers?: { [key: string]: boolean; }; editor: Editor; actionComponents: React.FC[] | React.Component[]; mapHeight?: number; }; declare function MapControlFactory(MapDrawPanel: ReturnType, Toggle3dButton: ReturnType, SplitMapButton: ReturnType, MapLegendPanel: ReturnType, LayerSelectorPanel: ReturnType, LocalePanel: ReturnType): React.NamedExoticComponent; declare namespace MapControlFactory { var deps: (typeof SplitMapButtonFactory | typeof Toggle3dButtonFactory | typeof LayerSelectorPanelFactory | typeof MapLegendPanelFactory | typeof MapDrawPanelFactory | typeof LocalePanelFactory)[]; } export default MapControlFactory;