import { Color } from '@deck.gl/core';
import { scaleLinear, scaleQuantize, scaleQuantile, scaleOrdinal, scaleSqrt, scaleLog, scalePoint, scaleThreshold } from 'd3-scale';
import { Layers, Pin, ArrowDown, ArrowUp, Clipboard, Cancel } from 'components/common/icons';
import { RGBAColor } from 'reducers';
export declare const ACTION_PREFIX = "@@kepler.gl/";
export declare const CLOUDFRONT = "https://d1a3f4spazzrp4.cloudfront.net/kepler.gl";
export declare const ICON_PREFIX: string;
export declare const DEFAULT_MAPBOX_API_URL = "https://api.mapbox.com";
/**
* Modal id: data table
* @constant
* @type {string}
* @public
*/
export declare const DATA_TABLE_ID = "dataTable";
/**
* Modal id: delete dataset confirm dialog
* @constant
* @type {string}
* @public
*/
export declare const DELETE_DATA_ID = "deleteData";
/**
* Modal id: add data modal
* @constant
* @type {string}
* @public
*/
export declare const ADD_DATA_ID = "addData";
/**
* Modal id: export image modal
* @constant
* @type {string}
* @public
*/
export declare const EXPORT_IMAGE_ID = "exportImage";
/**
* Modal id: export data modal
* @constant
* @type {string}
* @public
*/
export declare const EXPORT_DATA_ID = "exportData";
/**
* Modal id: add custom map style modal
* @constant
* @type {string}
* @public
*/
export declare const ADD_MAP_STYLE_ID = "addMapStyle";
/**
* Modal id: export map modal
* @constant
* @type {string}
* @public
*/
export declare const EXPORT_MAP_ID = "exportMap";
/**
* Modal id: save map modal
* @constant
* @type {string}
* @public
*/
export declare const SAVE_MAP_ID = "saveMap";
/**
* Modal id: confirm to overwrite saved map
* @constant
* @type {string}
* @public
*/
export declare const OVERWRITE_MAP_ID = "overwriteMap";
/**
* Modal id: share map url modal
* @constant
* @type {string}
* @public
*/
export declare const SHARE_MAP_ID = "shareMap";
export declare const KEPLER_GL_NAME = "kepler.gl";
export declare const KEPLER_GL_VERSION = "__PACKAGE_VERSION__";
export declare const KEPLER_GL_WEBSITE = "http://kepler.gl/";
export declare const DIMENSIONS: {
sidePanel: {
width: number;
margin: {
top: number;
left: number;
bottom: number;
right: number;
};
headerHeight: number;
};
mapControl: {
width: number;
padding: number;
mapLegend: {
pinned: {
bottom: number;
right: number;
};
};
};
};
/**
* Theme name that can be passed to `KeplerGl` `prop.theme`.
* Available themes are `THEME.light` and `THEME.dark`. Default theme is `THEME.dark`
* @constant
* @type {object}
* @public
* @example
* ```js
* const Map = () =>
* ```
*/
export declare const THEME: {
light: "light";
dark: "dark";
base: "base";
};
export declare const SIDEBAR_PANELS: {
id: string;
label: string;
iconComponent: typeof Layers;
onClick: any;
}[];
export declare const PANELS: {
id: string;
label: string;
iconComponent: typeof Layers;
onClick: any;
}[];
type DEFAULT_LAYER_GROUP = {
slug: string;
filter: (value: any) => boolean;
defaultVisibility: boolean;
};
export declare const DEFAULT_LAYER_GROUPS: DEFAULT_LAYER_GROUP[];
export declare const DEFAULT_MAP_STYLES: ({
id: string;
label: string;
url: string;
icon: string;
layerGroups: DEFAULT_LAYER_GROUP[];
} | {
id: string;
label: string;
url: string;
icon: string;
layerGroups?: undefined;
})[];
export declare const GEOJSON_FIELDS: {
geojson: string[];
};
export declare const ICON_FIELDS: {
icon: string[];
};
export declare const TRIP_POINT_FIELDS: [string, string][];
export declare const TRIP_ARC_FIELDS: {
lat0: string;
lng0: string;
lat1: string;
lng1: string;
};
export declare const FILTER_TYPES: {
range: "range";
select: "select";
input: "input";
timeRange: "timeRange";
multiSelect: "multiSelect";
polygon: "polygon";
};
export declare const SCALE_TYPES: {
ordinal: "ordinal";
quantile: "quantile";
quantize: "quantize";
linear: "linear";
sqrt: "sqrt";
log: "log";
point: "point";
custom: "custom";
logarithmic: "logarithmic";
identity: "identity";
};
export declare const SCALE_FUNC: {
linear: typeof scaleLinear;
quantize: typeof scaleQuantize;
quantile: typeof scaleQuantile;
ordinal: typeof scaleOrdinal;
sqrt: typeof scaleSqrt;
log: typeof scaleLog;
point: typeof scalePoint;
custom: typeof scaleThreshold;
identity: any;
};
export declare const ALL_FIELD_TYPES: {
boolean: "boolean";
date: "date";
geojson: "geojson";
integer: "integer";
real: "real";
string: "string";
timestamp: "timestamp";
point: "point";
};
export declare const SORT_ORDER: {
ASCENDING: "ASCENDING";
DESCENDING: "DESCENDING";
UNSORT: "UNSORT";
};
export declare const TABLE_OPTION: {
SORT_ASC: "SORT_ASC";
SORT_DES: "SORT_DES";
UNSORT: "UNSORT";
PIN: "PIN";
UNPIN: "UNPIN";
COPY: "COPY";
};
export declare const TABLE_OPTION_LIST: ({
value: "SORT_ASC";
display: string;
icon: typeof ArrowUp;
condition: (props: any) => boolean;
} | {
value: "SORT_DES";
display: string;
icon: typeof ArrowDown;
condition: (props: any) => boolean;
} | {
value: "UNSORT";
display: string;
icon: typeof Cancel;
condition: (props: any) => any;
} | {
value: "PIN";
display: string;
icon: typeof Pin;
condition: (props: any) => boolean;
} | {
value: "UNPIN";
display: string;
icon: typeof Cancel;
condition: (props: any) => any;
} | {
value: "COPY";
display: string;
icon: typeof Clipboard;
condition?: undefined;
})[];
export declare const FILED_TYPE_DISPLAY: {
boolean: {
label: string;
color: string;
};
date: {
label: string;
color: string;
};
geojson: {
label: string;
color: string;
};
integer: {
label: string;
color: string;
};
real: {
label: string;
color: string;
};
string: {
label: string;
color: string;
};
timestamp: {
label: string;
color: string;
};
point: {
label: string;
color: string;
};
};
export declare const FIELD_COLORS: {
default: string;
};
export declare const HIGHLIGH_COLOR_3D: RGBAColor;
export declare const CHANNEL_SCALES: {
color: "color";
radius: "radius";
size: "size";
customMarker: "customMarker";
colorAggr: "colorAggr";
sizeAggr: "sizeAggr";
identity: "identity";
};
export declare const AGGREGATION_TYPES: {
count: 'count';
average: 'average';
maximum: 'maximum';
minimum: 'minimum';
median: 'median';
stdev: 'stdev';
sum: 'sum';
variance: 'variance';
mode: 'mode';
countUnique: 'count unique';
anyValue: 'any_value';
};
export declare const FIELD_TYPES_AGGREGATORS: {
date: any;
geojson: any;
integer: ("sum" | "count" | "average" | "maximum" | "minimum" | "stdev" | "variance")[];
real: ("sum" | "count" | "average" | "maximum" | "minimum" | "stdev" | "variance")[];
string: ("mode" | "any_value")[];
timestamp: any;
point: any;
};
export declare const FIELD_AGGREGATORS: ({
id: "count";
displayName: string;
} | {
id: "average";
displayName: string;
} | {
id: "maximum";
displayName: string;
} | {
id: "minimum";
displayName: string;
} | {
id: "stdev";
displayName: string;
} | {
id: "sum";
displayName: string;
} | {
id: "variance";
displayName: string;
} | {
id: "mode";
displayName: string;
} | {
id: "any_value";
displayName: string;
})[];
export declare const linearFieldScaleFunctions: {
color: ("quantile" | "quantize" | "custom")[];
radius: "sqrt"[];
size: ("log" | "linear" | "sqrt")[];
customMarker: "ordinal"[];
identity: any[];
};
export declare const linearFieldAggrScaleFunctions: {
colorAggr: {
count: "custom"[];
average: ("quantile" | "quantize" | "custom")[];
maximum: ("quantile" | "quantize" | "custom")[];
minimum: ("quantile" | "quantize" | "custom")[];
median: ("quantile" | "quantize" | "custom")[];
stdev: ("quantile" | "quantize" | "custom")[];
sum: ("quantile" | "quantize" | "custom")[];
variance: ("quantile" | "quantize" | "custom")[];
};
sizeAggr: {
count: ("log" | "linear" | "sqrt")[];
average: ("log" | "linear" | "sqrt")[];
maximum: ("log" | "linear" | "sqrt")[];
minimum: ("log" | "linear" | "sqrt")[];
median: ("log" | "linear" | "sqrt")[];
stdev: ("log" | "linear" | "sqrt")[];
sum: ("log" | "linear" | "sqrt")[];
variance: ("log" | "linear" | "sqrt")[];
};
};
export declare const ordinalFieldScaleFunctions: {
color: "ordinal"[];
radius: "point"[];
size: "point"[];
customMarker: "ordinal"[];
identity: any[];
};
export declare const ordinalFieldAggrScaleFunctions: {
colorAggr: {
mode: "ordinal"[];
any_value: "ordinal"[];
"count unique": ("quantile" | "quantize" | "custom")[];
};
sizeAggr: {
mode: "ordinal"[];
any_value: "ordinal"[];
};
};
export declare const notSupportedScaleOpts: {
color: any[];
radius: any[];
size: any[];
customMarker: any[];
identity: any[];
};
export declare const notSupportAggrOpts: {
colorAggr: {};
sizeAggr: {};
};
/**
* Default aggregation are based on ocunt
*/
export declare const DEFAULT_AGGREGATION: {
colorAggr: {
count: ("quantile" | "quantize" | "custom")[];
};
sizeAggr: {
count: ("log" | "linear" | "sqrt")[];
};
};
/**
* Define what type of scale operation is allowed on each type of fields
*/
export declare const FIELD_OPTS: {
string: {
type: string;
scale: {
colorAggr: {
mode: "ordinal"[];
any_value: "ordinal"[];
"count unique": ("quantile" | "quantize" | "custom")[];
};
sizeAggr: {
mode: "ordinal"[];
any_value: "ordinal"[];
};
color: "ordinal"[];
radius: "point"[];
size: "point"[];
customMarker: "ordinal"[];
identity: any[];
};
format: {
legend: (d: any) => any;
tooltip: any[];
};
};
real: {
type: string;
scale: {
colorAggr: {
count: "custom"[];
average: ("quantile" | "quantize" | "custom")[];
maximum: ("quantile" | "quantize" | "custom")[];
minimum: ("quantile" | "quantize" | "custom")[];
median: ("quantile" | "quantize" | "custom")[];
stdev: ("quantile" | "quantize" | "custom")[];
sum: ("quantile" | "quantize" | "custom")[];
variance: ("quantile" | "quantize" | "custom")[];
};
sizeAggr: {
count: ("log" | "linear" | "sqrt")[];
average: ("log" | "linear" | "sqrt")[];
maximum: ("log" | "linear" | "sqrt")[];
minimum: ("log" | "linear" | "sqrt")[];
median: ("log" | "linear" | "sqrt")[];
stdev: ("log" | "linear" | "sqrt")[];
sum: ("log" | "linear" | "sqrt")[];
variance: ("log" | "linear" | "sqrt")[];
};
color: ("quantile" | "quantize" | "custom")[];
radius: "sqrt"[];
size: ("log" | "linear" | "sqrt")[];
customMarker: "ordinal"[];
identity: any[];
};
format: {
legend: (d: any) => any;
tooltip: string[];
};
};
timestamp: {
type: string;
scale: {
colorAggr: {};
sizeAggr: {};
color: ("quantile" | "quantize" | "custom")[];
radius: "sqrt"[];
size: ("log" | "linear" | "sqrt")[];
customMarker: "ordinal"[];
identity: any[];
};
format: {
legend: (d: any) => any;
tooltip: string[];
};
};
integer: {
type: string;
scale: {
colorAggr: {
count: "custom"[];
average: ("quantile" | "quantize" | "custom")[];
maximum: ("quantile" | "quantize" | "custom")[];
minimum: ("quantile" | "quantize" | "custom")[];
median: ("quantile" | "quantize" | "custom")[];
stdev: ("quantile" | "quantize" | "custom")[];
sum: ("quantile" | "quantize" | "custom")[];
variance: ("quantile" | "quantize" | "custom")[];
};
sizeAggr: {
count: ("log" | "linear" | "sqrt")[];
average: ("log" | "linear" | "sqrt")[];
maximum: ("log" | "linear" | "sqrt")[];
minimum: ("log" | "linear" | "sqrt")[];
median: ("log" | "linear" | "sqrt")[];
stdev: ("log" | "linear" | "sqrt")[];
sum: ("log" | "linear" | "sqrt")[];
variance: ("log" | "linear" | "sqrt")[];
};
color: ("quantile" | "quantize" | "custom")[];
radius: "sqrt"[];
size: ("log" | "linear" | "sqrt")[];
customMarker: "ordinal"[];
identity: any[];
};
format: {
legend: (d: any) => any;
tooltip: string[];
};
};
boolean: {
type: string;
scale: {
colorAggr: {
mode: "ordinal"[];
any_value: "ordinal"[];
"count unique": ("quantile" | "quantize" | "custom")[];
};
sizeAggr: {
mode: "ordinal"[];
any_value: "ordinal"[];
};
color: "ordinal"[];
radius: "point"[];
size: "point"[];
customMarker: "ordinal"[];
identity: any[];
};
format: {
legend: (d: any) => any;
tooltip: string[];
};
};
date: {
scale: {
colorAggr: {
mode: "ordinal"[];
any_value: "ordinal"[];
"count unique": ("quantile" | "quantize" | "custom")[];
};
sizeAggr: {
mode: "ordinal"[];
any_value: "ordinal"[];
};
color: "ordinal"[];
radius: "point"[];
size: "point"[];
customMarker: "ordinal"[];
identity: any[];
};
format: {
legend: (d: any) => any;
tooltip: string[];
};
};
geojson: {
type: string;
scale: {
colorAggr: {};
sizeAggr: {};
color: any[];
radius: any[];
size: any[];
customMarker: any[];
identity: any[];
};
format: {
legend: (d: any) => string;
tooltip: any[];
};
};
};
export declare const CHANNEL_SCALE_SUPPORTED_FIELDS: {};
export declare const DEFAULT_LAYER_COLOR: {
tripArc: string;
begintrip_lat: string;
dropoff_lat: string;
request_lat: string;
};
export declare const DEFAULT_TOOLTIP_FIELDS: any[];
export declare const NO_VALUE_COLOR: Color;
export declare const UNKNOWN_COLOR: Color;
export declare const LAYER_BLENDINGS: {
additive: {
label: string;
blendFunc: string[];
blendEquation: string;
};
normal: {
label: string;
blendFunc: string[];
blendEquation: string[];
};
subtractive: {
label: string;
blendFunc: string[];
blendEquation: string[];
};
};
export declare const MAX_DEFAULT_TOOLTIPS = 5;
export declare const RESOLUTIONS: {
ONE_X: "ONE_X";
TWO_X: "TWO_X";
};
export declare const EXPORT_IMG_RATIOS: {
SCREEN: "SCREEN";
FOUR_BY_THREE: "FOUR_BY_THREE";
SIXTEEN_BY_NINE: "SIXTEEN_BY_NINE";
CUSTOM: "CUSTOM";
};
export type ImageRatioOption = {
id: keyof typeof EXPORT_IMG_RATIOS;
label: string;
hidden?: boolean;
getSize: (screenW: number, screenH: number) => {
width: number;
height: number;
};
};
export declare const ScreenRatioOption: ImageRatioOption;
export declare const CustomRatioOption: ImageRatioOption;
export declare const FourByThreeRatioOption: ImageRatioOption;
export declare const SixteenByNineRatioOption: ImageRatioOption;
export declare const EXPORT_IMG_RATIO_OPTIONS: ReadonlyArray;
export type ImageResolutionOption = {
id: keyof typeof RESOLUTIONS;
label: string;
available: boolean;
scale: number;
getSize: (screenW: number, screenH: number) => {
width: number;
height: number;
};
};
export declare const OneXResolutionOption: ImageResolutionOption;
export declare const TwoXResolutionOption: ImageResolutionOption;
export declare const EXPORT_IMG_RESOLUTION_OPTIONS: ReadonlyArray;
export declare const EXPORT_DATA_TYPE: {
CSV: "CSV";
};
export declare const EXPORT_DATA_TYPE_OPTIONS: {
id: "CSV";
label: string;
available: boolean;
}[];
export declare const EXPORT_MAP_FORMATS: {
HTML: "HTML";
JSON: "JSON";
};
export declare const EXPORT_HTML_MAP_MODES: {
READ: "READ";
EDIT: "EDIT";
};
export declare const EXPORT_MAP_FORMAT_OPTIONS: {
id: string;
label: any;
available: boolean;
}[];
export declare const EXPORT_HTML_MAP_MODE_OPTIONS: {
id: string;
label: string;
available: boolean;
url: string;
}[];
export declare const DEFAULT_UUID_COUNT = 6;
export declare const DEFAULT_NOTIFICATION_MESSAGE = "MESSAGE_NOT_PROVIDED";
export declare const DEFAULT_NOTIFICATION_TYPES: {
info: "info";
error: "error";
warning: "warning";
success: "success";
};
export declare const DEFAULT_NOTIFICATION_TOPICS: {
global: "global";
file: "file";
};
export declare const THROTTLE_NOTIFICATION_TIME = 2500;
export declare const BASE_SPEED = 600;
export declare const FPS = 60;
/**
* 4 Animation Window Types
* 1. free
* |-> |->
* Current time is a fixed range, animation controller calls next animation frames continuously to animation a moving window
* The increment id based on domain / BASE_SPEED * SPEED
*
* 2. incremental
* | |->
* Same as free, current time is a growing range, only the max value of range increment during animation.
* The increment is also based on domain / BASE_SPEED * SPEED
*
* 3. point
* o -> o
* Current time is a point, animation controller calls next animation frame continuously to animation a moving point
* The increment is based on domain / BASE_SPEED * SPEED
*
* 4. interval
* o ~> o
* Current time is a point. An array of sorted time steps need to be provided.
* animation controller calls next animation at a interval when the point jumps to the next step
*/
export declare const ANIMATION_WINDOW: {
free: "free";
incremental: "incremental";
point: "point";
interval: "interval";
};
export declare const DEFAULT_TIME_FORMAT = "MM/DD/YY HH:mm:ssa";
export declare const SPEED_CONTROL_RANGE: [number, number];
export declare const SPEED_CONTROL_STEP = 0.001;
export declare const GEOCODER_DATASET_NAME = "geocoder_dataset";
export declare const GEOCODER_LAYER_ID = "geocoder_layer";
export declare const GEOCODER_GEO_OFFSET = 0.05;
export declare const GEOCODER_ICON_COLOR: [number, number, number];
export declare const GEOCODER_ICON_SIZE = 80;
export declare const EDITOR_MODES: {
READ_ONLY: any;
DRAW_POLYGON: any;
DRAW_RECTANGLE: any;
EDIT: any;
};
export declare const EDITOR_AVAILABLE_LAYERS: string[];
/**
* Max number of filter value buffers that deck.gl provides
*/
export declare const MAX_GPU_FILTERS = 4;
export declare const MAP_THUMBNAIL_DIMENSION: {
width: number;
height: number;
};
export declare const MAP_INFO_CHARACTER: {
title: number;
description: number;
};
export declare const LOADING_METHODS: {
upload: "upload";
storage: "storage";
};
export declare const DATASET_FORMATS: {
row: "row";
geojson: "geojson";
csv: "csv";
keplergl: "keplergl";
};
export declare const MAP_CONTROLS: {
visibleLayers: "visibleLayers";
mapLegend: "mapLegend";
toggle3d: "toggle3d";
splitMap: "splitMap";
mapDraw: "mapDraw";
mapLocale: "mapLocale";
};
export declare const MASK_LAYER_ID = "mask_layer";
export declare const ZOOM_LEVEL_LIMITS: {
min: number;
max: number;
};
export {};