import { KeplerTable } from '@kepler.gl/table';
import { Bin, ColorMap, ColorUI, Field } from '@kepler.gl/types';
import { ColorBreak, ColorBreakOrdinal } from '@kepler.gl/utils';
import React from 'react';
import ColumnStatsChartFactory from '../../common/column-stats-chart';
import CustomPaletteFactory, { SetColorUIFunc } from './custom-palette';
type EditButtonProps = {
    onClickEdit: () => void;
};
export declare const EditButton: React.FC<EditButtonProps>;
export type ColorBreaksDisplayProps = {
    currentBreaks?: ColorBreak[] | ColorBreakOrdinal[] | null;
    onEdit: (() => void) | null;
};
export declare const ColorBreaksDisplay: React.FC<ColorBreaksDisplayProps>;
export type CategoricalColorDisplayProps = {
    colorMap?: ColorMap;
    onEdit: (() => void) | null;
};
export declare const CategoricalColorDisplay: React.FC<CategoricalColorDisplayProps>;
export type ColorBreaksPanelProps = {
    colorBreaks: ColorBreak[] | ColorBreakOrdinal[] | null;
    colorUIConfig: ColorUI;
    dataset: KeplerTable | undefined;
    colorField: Field;
    isCustomBreaks: boolean;
    allBins: Bin[];
    filteredBins: Bin[];
    isFiltered: boolean;
    histogramDomain: number[];
    ordinalDomain: number[] | string[];
    setColorUI: SetColorUIFunc;
    onScaleChange: (v: string, visConfg?: Record<string, any>) => void;
    onApply: (e: React.MouseEvent) => void;
    onCancel: () => void;
};
declare function ColorBreaksPanelFactory(CustomPalette: ReturnType<typeof CustomPaletteFactory>, ColumnStatsChart: ReturnType<typeof ColumnStatsChartFactory>): React.FC<ColorBreaksPanelProps>;
declare namespace ColorBreaksPanelFactory {
    var deps: (typeof CustomPaletteFactory | typeof ColumnStatsChartFactory)[];
}
export default ColorBreaksPanelFactory;
