import { FlowCoreDataSource, SelectionPopupFn } from '../../../core/flow-core-map/flow-core-data-source'; import { HTMLStencilElement } from '../../../stencil-public-runtime'; /** * @since 1.0 * @status stable * * @reactive * * @slot - Specify data source parameters and data joins. */ export declare class FlowMapDataSource { private mutationObserver; el: HTMLStencilElement; flowMap: HTMLFlowMapElement; /** @internal */ _datasource: FlowCoreDataSource; /** * The unique name of the data source. * * @deprecated Use `id` attribute instead. */ name: string; /** The type of the data source. */ type: 'vector' | 'geojson' | 'raster'; /** Set to `true` to enable clustering of data points. (For GeoJSON point data sources only) */ cluster: boolean; /** The cluster radius for clustering of data points. (For GeoJSON point data sources only) */ clusterRadius: number; /** The maximum zoom level at which clustering of data points will occur. Above this zoom level * data points will not be clustered. (For GeoJSON point data sources only) */ clusterMaxZoom: number; /** An optional limit applied when querying data */ limit?: number; /** The feature property that uniquely identifies feature. Required for data joins. */ featureId?: string; /** Specify to override application-wide API key for this data source. */ apiKey?: string; /** * The vector source layer to display. Defaults to 'geometry' for vector-type data sources. * Omit for GeoJSON-type data sources. */ sourceLayer?: string; /** * Enable automatic feature selection support for single or multiple features. */ selectionMode?: 'none' | 'single' | 'multi'; /** * Set to bind selected feature IDs to a Flo.w application state property. Binding is two-way. * Set the associated application state property to programmatically modify feature * selection for this data source. * * @reactive */ selectionState?: string; /** * Set to bind selected feature properties to a Flo.w application state property. Binding is one-way. * The application state property is updated automatically when map feature selection changes. * Setting the application state property programmatically has no effect. * * @reactive */ selectionFeatureState?: string; /** * Set to `true` to clear the selection whenever the map is clicked (empty area or a feature from another data source). */ selectionClear: boolean; /** * Set to automatically open a popup when a map feature from this data source is clicked. The popup can be configured * by specifying the ID of a registered `` or programmatically by specifying a function that returns a * `FlowCoreMapPopupOptions` object. */ selectionPopup: string | SelectionPopupFn; private updateOptions; /** * The source of the data. For vector data, specify a Flo.w tile source ID or a TileJSON URL. * For GeoJSON data, specify a GeoJSON URL or a reactive expression returning GeoJSON data. * * @reactive */ src: string | GeoJSON.FeatureCollection; private updateSrc; componentWillLoad(): Promise; componentDidLoad(): Promise; disconnectedCallback(): Promise; closeAllPopups(): Promise; closePopup(featureId: string | number): Promise; private setDataSourceParameters; private getOptions; render(): any; }