import React from 'react';
type TOption<T extends string | number> = {
    label: string;
    value: T;
};
export type TOptionGroup<T extends string | number> = {
    values: ReadonlyArray<TOption<T>>;
    label?: string | null;
};
type FilterMenuProps<T extends string | number> = {
    label: string;
    open?: boolean;
    multiple?: boolean;
    options: ReadonlyArray<TOptionGroup<T>>;
    headerNode?: React.ReactNode;
    onSelect: (value: T, optionGroup: TOptionGroup<T>) => void;
} & ({
    multiple: true;
    selectedValue: Array<T>;
} | {
    multiple?: false;
    selectedValue?: T;
});
export declare function FilterMenu<T extends string | number>({ label, open, multiple, options, selectedValue, headerNode, onSelect, }: FilterMenuProps<T>): import("react/jsx-runtime").JSX.Element;
export {};
