import { ConfigImagery } from '@basemaps/config/build/config/imagery.js';
import { BBoxFeature } from '@linzjs/geojson';
import { BBoxFeatureCollection } from '@linzjs/geojson/build/types.js';
import { StyleSpecification } from 'maplibre-gl';
import { FormEventHandler } from 'react';
export interface DebugType {
    name: string;
    file: string;
    color: string;
    fill: boolean;
}
export declare const debugTypes: {
    source: {
        name: string;
        file: string;
        color: string;
        fill: boolean;
    };
    cog: {
        name: string;
        file: string;
        color: string;
        fill: boolean;
    };
    'capture-area': {
        name: string;
        file: string;
        color: string;
        fill: boolean;
    };
};
export declare class DebugMap {
    _layerLoading: Map<string, Promise<void>>;
    loadSourceLayer(map: maplibregl.Map, layerId: string, imagery: ConfigImagery, type: DebugType): Promise<void>;
    _loadSourceLayer(map: maplibregl.Map, layerId: string, imagery: ConfigImagery, type: DebugType): Promise<void>;
    _source: Map<string, Promise<BBoxFeatureCollection | BBoxFeature>>;
    fetchSourceLayer(imageryId: string, type: DebugType): Promise<BBoxFeatureCollection | BBoxFeature | undefined>;
    _styleJson: Promise<StyleSpecification> | null;
    get styleJson(): Promise<StyleSpecification>;
    adjustVector(map: maplibregl.Map, value: number): Promise<void>;
    adjustTopographic: FormEventHandler;
    adjustOsm: FormEventHandler;
    adjustLinzAerial: FormEventHandler;
    adjustRaster(map: maplibregl.Map, rasterId: 'osm' | 'linz-aerial', range: number): void;
    togglePurple: FormEventHandler;
    setPurple(isPurple: boolean): void;
    getTileServerUrl(tileServer: 'osm' | 'linz-aerial'): string;
}
