import { Subject } from 'rxjs/Subject'; import { DataSource } from '../../../datasource'; import { IgoMap } from '../../../map'; import { SubjectStatus } from '../../../utils'; import { LayerOptions } from './layer.interface'; export declare abstract class Layer { collapsed: boolean; dataSource: DataSource; map: IgoMap; ol: ol.layer.Layer; options: LayerOptions; status$: Subject; readonly id: string; title: string; zIndex: number; baseLayer: boolean; visible: boolean; opacity: number; readonly isInResolutionsRange: boolean; constructor(dataSource: DataSource, options?: LayerOptions); protected abstract createOlLayer(): ol.layer.Layer; add(map: IgoMap): void; remove(): void; }