import Layer, { LayerBaseConfig, LayerColorConfig, LayerColumn, LayerSizeConfig, VisualChannelDescription, VisualChannels } from './base-layer'; import { Datasets, Merge } from '../reducers'; import { KeplerTable } from '../utils'; type AggregationLayerColumns = { lat: LayerColumn; lng: LayerColumn; }; export type AggregationLayerData = { index: number; }; export declare const pointPosAccessor: ({ lat, lng }: AggregationLayerColumns) => (dc: any) => (d: any) => any[]; export declare const pointPosResolver: ({ lat, lng }: AggregationLayerColumns) => string; export declare const getValueAggrFunc: (field: any, aggregation: any) => (points: any) => any; export declare const getFilterDataFunc: (filterRange: any, getFilterValue: any) => (pt: any) => any; export declare const aggregateRequiredColumns: ['lat', 'lng']; export type AggregationLayerVisualChannelConfig = LayerColorConfig & LayerSizeConfig; export type AggregationLayerConfig = Merge & AggregationLayerVisualChannelConfig; export default class AggregationLayer extends Layer { getColorRange: any; config: AggregationLayerConfig; constructor(props?: { id?: string; } & Partial); get isAggregated(): true; get requiredLayerColumns(): ["lat", "lng"]; get columnPairs(): import("./base-layer").ColumnPairs; get noneLayerDataAffectingProps(): string[]; get visualChannels(): VisualChannels; /** * Get the description of a visualChannel config * @param key * @returns */ getVisualChannelDescription(key: string): VisualChannelDescription; getHoverData(object: any): any; /** * Aggregation layer handles visual channel aggregation inside deck.gl layer */ updateLayerVisualChannel({ dataContainer }: { dataContainer: any; }, channel: any): void; /** * Validate aggregation type on top of basic layer visual channel validation * @param channel */ validateVisualChannel(channel: any): void; /** * Validate aggregation type based on selected field */ validateAggregationType(channel: any): void; getAggregationOptions(channel: any): string[]; /** * Get scale options based on current field and aggregation type * @param channel * @returns */ getScaleOptions(channel: string): string[]; /** * Aggregation layer handles visual channel aggregation inside deck.gl layer */ updateLayerDomain(datasets: any, newFilter: any): AggregationLayer; updateLayerMeta(dataContainer: any, getPosition: any): void; calculateDataAttribute({ dataContainer, filteredIndex }: KeplerTable, getPosition: any): AggregationLayerData[]; formatLayerData(datasets: Datasets, oldLayerData: any): {}; getDefaultDeckLayerProps(opts: any): any; getDefaultAggregationLayerProp(opts: any): any; } export {};