import { Nullable } from '../../../../../lib/types';
import { SourceLayerEventHandlers, TangramCustomLayer, TangramEventConfig, TangramLeafletLayer, TangramScene, TangramSourceConfig, TangramSourceNames } from '../types';
type UseGetLeafletLayerProps = {
    eventHandlers?: SourceLayerEventHandlers;
    defaultLayers?: TangramCustomLayer[];
};
export declare const useGetLeafletLayer: ({ eventHandlers, defaultLayers, }: UseGetLeafletLayerProps) => {
    layer: Nullable<TangramLeafletLayer>;
    scene: TangramScene | null;
    config: Nullable<TangramEventConfig>;
    addSource: (sourceName: TangramSourceNames) => void;
    getSource: (sourceName: TangramSourceConfig["name"]) => null;
    updateSource: (sourceName: TangramSourceConfig["name"], newUrl: TangramSourceConfig["url"]) => void;
    reloadSource: (sourceName: TangramSourceNames) => void;
    addLayer: (layer: TangramCustomLayer) => void;
    removeLayer: (layer: TangramCustomLayer) => void;
    addStyle: ({ name, style }: {
        name: string;
        style: object;
    }) => void;
    getLayerVisibility: (layer: TangramCustomLayer) => true;
    toggleLayerVisibility: ({ layer, visible }: {
        layer: TangramCustomLayer;
        visible: boolean;
    }) => void;
    getSources: () => string[];
    getLayers: () => string[];
    removeLayers: () => void;
};
export {};
//# sourceMappingURL=useGetLeafletLayer.d.ts.map