UNPKG

2.21 kBTypeScriptView Raw
1import { Control, type Layer } from 'leaflet';
2import React, { type ForwardRefExoticComponent, type FunctionComponent, type ReactNode, type RefAttributes } from 'react';
3export interface LayersControlProps extends Control.LayersOptions {
4 children?: ReactNode;
5}
6export declare const useLayersControlElement: (props: LayersControlProps, context: Readonly<{
7 __version: number;
8 map: import("leaflet").Map;
9 layerContainer?: import("leaflet").LayerGroup<any> | import("@react-leaflet/core/lib/context").ControlledLayer | undefined;
10 layersControl?: Control.Layers | undefined;
11 overlayContainer?: Layer | undefined;
12 pane?: string | undefined;
13}>) => React.MutableRefObject<Readonly<{
14 instance: Control.Layers;
15 context: Readonly<{
16 __version: number;
17 map: import("leaflet").Map;
18 layerContainer?: import("leaflet").LayerGroup<any> | import("@react-leaflet/core/lib/context").ControlledLayer | undefined;
19 layersControl?: Control.Layers | undefined;
20 overlayContainer?: Layer | undefined;
21 pane?: string | undefined;
22 }>;
23 container?: any;
24}>>;
25export declare const useLayersControl: (props: LayersControlProps) => React.MutableRefObject<Readonly<{
26 instance: Control.Layers;
27 context: Readonly<{
28 __version: number;
29 map: import("leaflet").Map;
30 layerContainer?: import("leaflet").LayerGroup<any> | import("@react-leaflet/core/lib/context").ControlledLayer | undefined;
31 layersControl?: Control.Layers | undefined;
32 overlayContainer?: Layer | undefined;
33 pane?: string | undefined;
34 }>;
35 container?: any;
36}>>;
37export interface ControlledLayerProps {
38 checked?: boolean;
39 children: ReactNode;
40 name: string;
41}
42export declare const LayersControl: ForwardRefExoticComponent<LayersControlProps & RefAttributes<Control.Layers>> & {
43 BaseLayer: FunctionComponent<ControlledLayerProps>;
44 Overlay: FunctionComponent<ControlledLayerProps>;
45};
46type AddLayerFunc = (layersControl: Control.Layers, layer: Layer, name: string) => void;
47export declare function createControlledLayer(addLayerToControl: AddLayerFunc): (props: ControlledLayerProps) => JSX.Element | null;
48export {};