import { PropertyValues, TemplateResult } from "lit";
import { OrAssetWidget } from "../util/or-asset-widget";
import { WidgetManifest } from "../util/or-widget";
import { AssetWidgetConfig } from "../util/widget-config";
import { Asset, AssetDescriptor } from "@openremote/model";
import { LngLatLike, MapMarkerColours, OrMap, AssetWithLocation, OrMapMarkersChangedEvent } from "@openremote/or-map";
import "@openremote/or-map";
export interface MapWidgetConfig extends AssetWidgetConfig {
    zoom?: number;
    center?: LngLatLike;
    lat?: number;
    lng?: number;
    showLabels: boolean;
    showUnits: boolean;
    showGeoJson: boolean;
    boolColors: MapMarkerColours;
    textColors: [string, string][];
    thresholds: [number, string][];
    min?: number;
    max?: number;
    assetType?: string;
    allOfType?: boolean;
    valueType?: string;
    attributeName?: string;
    assetTypes: AssetDescriptor[];
    assetIds: string[];
    attributes: string[];
}
export declare class MapWidget extends OrAssetWidget {
    protected widgetConfig: MapWidgetConfig;
    protected _assetsOnScreen: AssetWithLocation[];
    protected _map?: OrMap;
    private markers;
    static getManifest(): WidgetManifest;
    connectedCallback(): void;
    disconnectedCallback(): void;
    refreshContent(force: boolean): void;
    protected updated(changedProps: PropertyValues): void;
    protected _loadAssets(): void;
    protected _fetchAssets(assetTypes: string[], attributeName: string, assetIds?: string[]): Promise<Asset[]>;
    protected render(): TemplateResult;
    protected _onMapMarkersChanged(e: OrMapMarkersChangedEvent): void;
    protected _loadMarkers(): void;
}
//# sourceMappingURL=map-widget.d.ts.map