import { IotCluster, IotMapDisplay } from './iot-map-types';
import { IotMapConfig } from './iot-map-config';
import { IotMapManager } from './iot-map-manager';
/**
 * Class IotMapCluster to display a manual cluster
 */
export declare class IotMapCluster extends IotMapDisplay {
    private data;
    private map;
    readonly config: IotMapConfig;
    private selected;
    /**
     * Constructor for manual cluster
     * @param cluster - Structure containing all cluster information
     * @param config - configuration to use to display cluster
     */
    constructor(cluster: IotCluster, map: IotMapManager, config: IotMapConfig);
    /**
     * Removes the current cluster from the map
     */
    removeCluster(): void;
    /**
     * Select / unselect cluster, according to parameter
     * @param selected - if true, cluster must be displayed as selected
     * @remarks a selected cluster has a popup displayed and tab (optional) is hidden
     */
    select(selected: boolean): void;
    /**
     * @returns structure containing all cluster information
     */
    getData(): IotCluster;
    /**
     * Store structure containing all cluster information
     * @param data - structure containing all manual cluster information
     */
    setData(data: IotCluster): void;
    /**
     * Force cluster redrawing
     */
    redraw(): void;
    /**
     * zoom in and center the map on cluster clicked
     * This will change map bounds, and can make cluster opening
     */
    elementClicked(): void;
}
