/// /// import * as React from 'react'; import * as PropTypes from 'prop-types'; import * as MapboxGL from 'mapbox-gl'; import { SourceOptionData, Context } from './util/types'; export declare type MouseEvent = (evt: any) => any; export interface LineProps { linePaint?: MapboxGL.LinePaint; lineLayout?: MapboxGL.LineLayout; lineOnMouseMove?: MouseEvent; lineOnMouseEnter?: MouseEvent; lineOnMouseLeave?: MouseEvent; lineOnMouseDown?: MouseEvent; lineOnMouseUp?: MouseEvent; lineOnClick?: MouseEvent; } export interface CircleProps { circlePaint?: MapboxGL.CirclePaint; circleLayout?: MapboxGL.CircleLayout; circleOnMouseMove?: MouseEvent; circleOnMouseEnter?: MouseEvent; circleOnMouseLeave?: MouseEvent; circleOnMouseDown?: MouseEvent; circleOnMouseUp?: MouseEvent; circleOnClick?: MouseEvent; } export interface SymbolProps { symbolLayout?: MapboxGL.SymbolLayout; symbolPaint?: MapboxGL.SymbolPaint; symbolOnMouseMove?: MouseEvent; symbolOnMouseEnter?: MouseEvent; symbolOnMouseLeave?: MouseEvent; symbolOnMouseDown?: MouseEvent; symbolOnMouseUp?: MouseEvent; symbolOnClick?: MouseEvent; } export interface FillProps { fillLayout?: MapboxGL.FillLayout; fillPaint?: MapboxGL.FillPaint; fillOnMouseMove?: MouseEvent; fillOnMouseEnter?: MouseEvent; fillOnMouseLeave?: MouseEvent; fillOnMouseDown?: MouseEvent; fillOnMouseUp?: MouseEvent; fillOnClick?: MouseEvent; } export interface FillExtrusionProps { fillExtrusionLayout?: MapboxGL.FillExtrusionLayout; fillExtrusionPaint?: MapboxGL.FillExtrusionPaint; fillExtrusionOnMouseMove?: MouseEvent; fillExtrusionOnMouseEnter?: MouseEvent; fillExtrusionOnMouseLeave?: MouseEvent; fillExtrusionOnMouseDown?: MouseEvent; fillExtrusionOnMouseUp?: MouseEvent; fillExtrusionOnClick?: MouseEvent; } export interface Props extends LineProps, CircleProps, SymbolProps, FillProps, FillExtrusionProps { id?: string; data: SourceOptionData; layerOptions?: MapboxGL.Layer; sourceOptions?: MapboxGL.VectorSource | MapboxGL.RasterSource | MapboxGL.GeoJSONSource | MapboxGL.GeoJSONSourceRaw; before?: string; } export default class GeoJSONLayer extends React.Component { context: Context; static contextTypes: { map: PropTypes.Requireable; }; private id; private source; private layerIds; private buildLayerId; private createLayer; private mapLayerMouseHandlers; private onStyleDataChange; private initialize(); private unbind(); componentWillMount(): void; componentWillUnmount(): void; componentWillReceiveProps(props: Props): void; render(): null; }