import React from 'react';
import type { Option } from 'react-select';
import type { ILabelFilter } from './labelFilterUtils';
import './LabelFilter.less';
export interface ILabelFilterProps {
    labelsMap: {
        [key: string]: string[];
    };
    labelFilters: ILabelFilter[];
    updateLabelFilters: (labelFilters: ILabelFilter[]) => void;
}
export default class LabelFilter extends React.Component<ILabelFilterProps> {
    static defaultProps: ILabelFilterProps;
    private onAdd;
    private onDelete;
    private handleKeyChange;
    private handleValueChange;
    private getKeyOptions;
    private getValueOptions;
    render(): JSX.Element;
}
interface ILabelFilterSelectProps {
    handleKeyChange: (option: Option<string>) => void;
    handleValueChange: (options: Option<string>) => void;
    keyOptions: Array<Option<string>>;
    onDelete: () => void;
    selectedKey: string;
    selectedValue: string;
    valueOptions: Array<Option<string>>;
}
export declare const LabelFilterSelect: ({ handleKeyChange, handleValueChange, keyOptions, onDelete, selectedKey, selectedValue, valueOptions, }: ILabelFilterSelectProps) => JSX.Element;
export {};
