import EventEmitter from '@antv/event-emitter'; import { Scene, IPlotLayer } from '../../types'; export interface LayerGroupOption { name?: string; } export declare class LayerGroup extends EventEmitter { /** * 图层组名称 */ name: string; /** * 子图层 */ layers: IPlotLayer[]; /** * 地图容器 */ scene: Scene | undefined; constructor(layers?: IPlotLayer[], option?: LayerGroupOption); /** * 图层组添加到地图上 */ addTo(scene: Scene): void; /** * 图层组是否有该图层 */ hasLayer(layer: IPlotLayer): boolean; /** * 增加图层 */ addLayer(layer: IPlotLayer): void; /** * 移除 layer 图层 */ removeLayer(layer: IPlotLayer): boolean; /** * 获取所有的地图图层 */ getLayers(): IPlotLayer[]; /** * 获取所有的带交互图层 */ getInteractionLayers(): IPlotLayer[]; /** * 根据图层 ID 获取图层对象 */ getLayer(id: string): IPlotLayer | undefined; /** * 根据图层 name 获取图层对象 */ getLayerByName(name: string): IPlotLayer | undefined; /** * 移除所有的图层对象 */ removeAllLayer(): void; /** * 是否图层组为空 */ isEmpty(): boolean; }