import { MapDatasource, IMapLayer } from './../.';
import { LngLatBounds } from 'mapbox-gl';
import { CsMap } from './..';
import mapboxgl from 'mapbox-gl';
import { BaseLayer } from './base-layer';
export declare class GeojsonLayer extends BaseLayer {
    isEditable?: boolean;
    isDraggable?: boolean;
    constructor(init?: Partial<IMapLayer>);
    get layout(): mapboxgl.Layout;
    set layout(value: mapboxgl.Layout);
    get opacity(): number | undefined;
    set opacity(value: number | undefined);
    get paint(): mapboxgl.SymbolPaint | mapboxgl.LinePaint | mapboxgl.FillPaint | mapboxgl.CirclePaint;
    set paint(value: mapboxgl.SymbolPaint | mapboxgl.LinePaint | mapboxgl.FillPaint | mapboxgl.CirclePaint);
    addImage(id: string, url: string): void;
    refreshSourceUrl(): Promise<void>;
    addLayer(widget: CsMap): void;
    getBounds(): LngLatBounds | undefined;
    getInstance(init?: Partial<IMapLayer>): GeojsonLayer;
    initLayer(manager: MapDatasource): Promise<IMapLayer>;
    moveLayer(beforeId?: string): void;
    removeLayer(widget: CsMap): void;
    setOpacity(value: number): void;
    protected registerLayerExtensions(): void;
    protected removeExtensions(): void;
}
