import { JSX } from 'react'; declare interface AxesClassNameObject { gridLines?: string; labels?: string; title?: string; axis?: string; } declare interface AxesStyleObject { gridLines?: React.CSSProperties; labels?: React.CSSProperties; title?: React.CSSProperties; axis?: React.CSSProperties; } declare interface ClassNameObject { title?: string; footnote?: string; source?: string; description?: string; tooltip?: string; xAxis?: AxesClassNameObject; yAxis?: AxesClassNameObject; legend?: string; graphContainer?: string; graphObjectValues?: string; dataConnectors?: string; mouseOverLine?: string; regLine?: string; dataCards?: string; colorLegend?: string; modal?: string; area?: string; } /** For using these maps you will have to install [`maplibre`](https://maplibre.org/maplibre-gl-js/docs/#npm) and [pmtiles](https://www.npmjs.com/package/pmtiles) package to your project */ export declare function GeoHubMapWithLayerSelection(props: Props): JSX.Element; declare type Languages = 'en' | 'ar' | 'az' | 'bn' | 'cy' | 'he' | 'hi' | 'ja' | 'ka' | 'km' | 'ko' | 'my' | 'ne' | 'zh' | 'custom'; declare interface MapLegendDataType { mapStyleName: string; legend: string | React.ReactNode; } declare interface Props { /** Title of the graph */ graphTitle?: string | React.ReactNode; /** Description of the graph */ graphDescription?: string | React.ReactNode; /** Footnote for the graph */ footNote?: string | React.ReactNode; /** Source data for the graph */ sources?: SourcesDataType[]; /** Accessibility label */ ariaLabel?: string; /** Background color of the graph */ backgroundColor?: string | boolean; /** Custom styles for the graph. Each object should be a valid React CSS style object. */ styles?: StyleObject; /** Custom class names */ classNames?: ClassNameObject; /** Width of the graph */ width?: number; /** Height of the graph */ height?: number; /** Minimum height of the graph */ minHeight?: number; /** Relative height scaling factor. This overwrites the height props */ relativeHeight?: number; /** Padding around the graph. Defaults to 0 if no backgroundColor is mentioned else defaults to 1rem */ padding?: string; /** URL for mapStyle JSON */ mapStyle: string; /** Starting center point of the map */ center?: [number, number]; /** Starting zoom level of the map */ zoomLevel?: number; /** List of the layers that the user select and switch between sing a drop down */ layerSelection: { layerID: string[]; name: string; }[]; /** Defines the legend for the map. mapLegend is of type { mapStyleName: string; legend: string | React.ReactNode }[] where mapStyleName corresponds to the each name in the layerSelection. */ mapLegend?: MapLegendDataType[]; /** List of layer IDs to be excluded from the visualization */ excludeLayers?: string[]; /** Language setting */ language?: Languages; /** Color theme */ theme?: 'light' | 'dark'; /** Theme for the UI elements */ uiMode?: 'light' | 'normal'; /** Unique ID for the graph */ graphID?: string; } declare interface SourcesDataType { source: string; link?: string; } declare interface StyleObject { title?: React.CSSProperties; footnote?: React.CSSProperties; source?: React.CSSProperties; description?: React.CSSProperties; graphContainer?: React.CSSProperties; tooltip?: React.CSSProperties; xAxis?: AxesStyleObject; yAxis?: AxesStyleObject; graphObjectValues?: React.CSSProperties; dataConnectors?: React.CSSProperties; mouseOverLine?: React.CSSProperties; regLine?: React.CSSProperties; dataCards?: React.CSSProperties; modal?: React.CSSProperties; area?: React.CSSProperties; } export { }