export interface FilterOption {
    value: string;
    label: string;
}
export interface MultiSelectFilterProps {
    /** Button label when no selection */
    label: string;
    /** Available filter options */
    options: FilterOption[];
    /** Currently selected values */
    values: string[];
    /** Callback when selection changes */
    onChange: (values: string[]) => void;
    /** Additional class names for the trigger button */
    className?: string;
    /** data-cy attribute for E2E testing */
    'data-cy'?: string;
}
/**
 * MultiSelectFilter - Multi-select dropdown for filtering data
 *
 * Features:
 * - Multiple selection with checkboxes
 * - Selected items shown as badges
 * - Individual badge removal with X button
 * - No filter applied when empty (no "All" option needed)
 *
 * @example
 * <MultiSelectFilter
 *   label="Status"
 *   options={[
 *     { value: 'active', label: 'Active' },
 *     { value: 'inactive', label: 'Inactive' },
 *   ]}
 *   values={selectedStatuses}
 *   onChange={setSelectedStatuses}
 *   data-cy="filter-status"
 * />
 */
export declare function MultiSelectFilter({ label, options, values, onChange, className, 'data-cy': dataCy, }: MultiSelectFilterProps): import("react/jsx-runtime").JSX.Element;
//# sourceMappingURL=MultiSelectFilter.d.ts.map