import { Term } from '@rdfjs/types';
import { Plugin, PluginOptions } from '../plugin';
import { Editor } from '../theme';
import { ShaclPropertyTemplate } from '../property-template';
import { Geometry } from './map-util';
import * as L from 'leaflet';
export declare class LeafletPlugin extends Plugin {
    map: L.Map | undefined;
    currentEditor: Editor | undefined;
    createdGeometry: Geometry | undefined;
    displayedShape: L.Polygon | L.Marker | undefined;
    constructor(options: PluginOptions);
    initEditMode(form: HTMLElement): HTMLDialogElement;
    createEditor(template: ShaclPropertyTemplate, value?: Term): HTMLElement;
    createViewer(_: ShaclPropertyTemplate, value: Term): HTMLElement;
    drawAndZoomToGeometry(geometry: Geometry | undefined, map: L.Map): void;
    saveChanges(): void;
}
