import { Map as maplibreMap } from 'maplibre-gl';
import { Geofence, Polygon } from './types';
/**
 */
export interface DrawGeofencesOptions {
    fillColor?: string;
    fillOpacity?: number;
    borderColor?: string;
    borderWidth?: number;
    borderOpacity?: number;
    borderOffset?: number;
    visible?: boolean;
}
export interface DrawGeofencesOutput {
    sourceId: string;
    outlineLayerId: string;
    fillLayerId: string;
    show: () => void;
    hide: () => void;
    isVisible: () => void;
    setData: (data: any) => void;
}
/**
 * DrawPoints utility function for adding points to a map based on coordinate data or a FeatureCollection. Will add clustered points and styled markers by default with options for popups and other styles
 */
export declare function drawGeofences(sourceName: string, data: Polygon[] | Geofence[], map: maplibreMap, options?: DrawGeofencesOptions): DrawGeofencesOutput;
