import React from 'react';
import { LayerBaseConfig } from '@kepler.gl/layers';
import { FieldPair, ColumnPairs, LayerColumns, ColumnLabels } from '@kepler.gl/types';
import ColumnSelectorFactory from './column-selector';
import { MinimalField } from '../../common/field-selector';
export type LayerColumnConfigProps<FieldOption extends MinimalField> = {
    columns: LayerColumns;
    fields: FieldOption[];
    assignColumnPairs: (key: string, pair: FieldPair) => LayerColumns;
    assignColumn: (key: string, field: FieldOption) => LayerColumns;
    updateLayerConfig: (newConfig: Partial<LayerBaseConfig>) => void;
    updateLayerType?: (newType: string) => void;
    columnPairs?: ColumnPairs | null;
    fieldPairs?: FieldPair[];
    columnLabels: ColumnLabels | null;
    isActive: boolean;
};
declare function LayerColumnConfigFactory(ColumnSelector: ReturnType<typeof ColumnSelectorFactory>): React.FC<LayerColumnConfigProps<MinimalField & {
    fieldIdx: number;
}>>;
declare namespace LayerColumnConfigFactory {
    var deps: (typeof ColumnSelectorFactory)[];
}
export default LayerColumnConfigFactory;
