import { PropsWithChildren } from 'react';
import { MeasurementToolsProviderProps, MeasurementToolsStore } from './types';
/**
 * React context provider that manages measurement tool state across multiple map instances.
 *
 * @remarks
 * Supports distance, area, and buffer measurements with multi-unit, localization, and
 * per-map configuration. Works with `MeasurementTools` and `MeasurementTools.Controls`.
 *
 * @example
 * ```tsx
 * <MeasurementToolsProvider values={[{
 *   mapId: 'main-map',
 *   modeSelected: 'distance',
 *   unit: 'kilometer',
 *   enabled: false,
 * }]}>
 *   <MeasurementTools mapId="main-map" />
 * </MeasurementToolsProvider>
 * ```
 */
export declare function MeasurementToolsProvider({ children, values, }: PropsWithChildren<MeasurementToolsProviderProps>): import("react/jsx-runtime").JSX.Element;
/**
 * Hook to access measurement tools state from the nearest `MeasurementToolsProvider` context.
 *
 * @param selector - Zustand selector function to pick specific state values.
 * @returns The selected state value.
 *
 * @remarks
 * Throws an error if used outside of a `MeasurementToolsProvider`.
 */
export declare function useMeasurementToolsState<T>(selector: (state: MeasurementToolsStore) => T): T;
