import { ILayerService, IStartStopService, GeojsonPlusLayer, ILayerAction, LayerServerServiceOptions, MapDatasource, IMapLayer } from '..';
import { Socket } from 'socket.io-client';
export declare class LayerServerService implements ILayerService, IStartStopService {
    get socket(): Socket | undefined;
    get mapDraw(): any;
    id: string;
    title?: string | undefined;
    options?: LayerServerServiceOptions;
    type: string;
    layers: IMapLayer[];
    manager?: MapDatasource;
    constructor(init?: Partial<LayerServerService>);
    getInstance(init?: Partial<ILayerService>): IStartStopService;
    updateLayerList(): Promise<void>;
    loadFeatureTypes(): Promise<void>;
    Start(manager: MapDatasource): Promise<void>;
    disableLayerSocket(gl: GeojsonPlusLayer): void;
    initLayerSocket(gl: GeojsonPlusLayer): void;
    updateLayer(layer: IMapLayer): void;
    getLayerActions(layer: IMapLayer): ILayerAction[];
    Stop(manager: MapDatasource): void;
    private createLiveLayer;
    private initLiveLayer;
    private updateLiveLayer;
    private updateLiveLayerFeature;
    private updateLiveLayerFeatures;
    private initEditableLayer;
    private removeExistingLayers;
}
