import * as React from 'react'; import OlMap from 'ol/Map'; import { IBaseToolProps } from './tool/BaseTool'; import { LayersManager } from './LayersManager'; import { ToolsManager } from './ToolsManager'; export interface IAfterData { olMap: OlMap; layersManager: LayersManager; toolsManager: ToolsManager; } export type after = (data: IAfterData) => void; export interface IRolProps { /** * unique id is mandatory. */ uid: string; /** * Children. */ children: React.ReactNode; /** * Class name. */ className?: string; /** * Style. */ style?: React.CSSProperties; /** * Style. */ olMapStyle?: React.CSSProperties; /** * Keyboard Event Target. */ keyboardEventTarget?: any; ignoreDefaultInteractions?: boolean; /** * After mount callback. */ afterMount?: after; /** * After update callback. */ afterUpdate?: after; } export interface IRolState { /** * Changed counter. */ changedCounter: number; } export declare class Rol extends React.Component { static defaultProps: { className: string; }; /** * OpenLayers map. */ private olMap; /** * Div. */ private divMap; /** * Layers manager. */ private layersManager; /** * Tools manager. */ private toolsManager; constructor(props: IRolProps); componentDidMount(): void; componentDidUpdate(prevProps: IRolProps, prevState: IRolState, snap: never): void; refresh: () => void; renderProjections(): React.ReactElement[]; renderChildren(): React.ReactElement[]; render(): React.ReactNode; }