import type { OsmFeatures } from "./landscape-types";
export type MvtTileFetcher = (zoom: number, x: number, y: number) => Promise<ArrayBuffer | null>;
export declare class MvtFetcher {
    private _fetchTile;
    constructor(fetchTile: MvtTileFetcher);
    fetchFeatures(lat: number, lng: number, elevZoom: number): Promise<OsmFeatures>;
    fetchFeaturesForRadius(lat: number, lng: number, elevZoom: number, radiusMeters: number): Promise<OsmFeatures>;
    private _fetchAndExtract;
    private _fetchAndParseTile;
    private _extractTile;
    private _extractPolygons;
    private _extractLines;
    private _geojsonToElements;
    private _polygonToElement;
}
