import { ReactElement } from "react";
import { IntlShape } from "react-intl";
/**
 * @internal
 */
export interface IMultiSelectRenderItemProps<T> {
    item: T;
    isSelected: boolean;
}
/**
 * @internal
 */
export interface IMultiSelectListProps<T> {
    intl: IntlShape;
    height?: number;
    width?: number;
    itemHeight?: number;
    isInverted?: boolean;
    isSearching?: boolean;
    isMobile?: boolean;
    selectAllCheckbox?: boolean;
    selectedItems?: T[];
    items?: T[];
    itemsCount?: number;
    filteredItemsCount?: number;
    isSelected?: (item: T) => boolean;
    maxSelectionSize?: number;
    onScrollEnd?: (visibleRowsStartIndex: number, visibleRowsEndIndex: number) => void;
    onSelectAll?: () => void;
    onSelectNone?: () => void;
    renderItem: (props: IMultiSelectRenderItemProps<T>) => ReactElement;
    tagName?: string;
    listClassNames?: string;
}
/**
 * @internal
 */
export declare const MultiSelectList: import("react").FC<import("react-intl").WithIntlProps<IMultiSelectListProps<unknown>>> & {
    WrappedComponent: import("react").ComponentType<IMultiSelectListProps<unknown>>;
};
//# sourceMappingURL=MultiSelectList.d.ts.map