import { Select2Data, Select2Group, Select2Option, Select2UpdateValue, Select2Value } from './select2-interfaces';
export declare class Select2Utils {
    static getOptionByValue(data: Select2Data, value: Select2Value): Select2Option | null;
    static getOptionsByValue(data: Select2Data, value: Select2UpdateValue | null | undefined, multiple: boolean | null | undefined): Select2Option | Select2Option[] | null;
    static getFirstAvailableOption(data: Select2Data): Select2Option | null;
    static optionIsNotInFilteredData(filteredData: Select2Data, option: Select2Option | null): boolean;
    static getPreviousOption(filteredData: Select2Data, hoveringOption: Select2Option | null): Select2Option | null;
    static getNextOption(filteredData: Select2Data | null, hoveringOption: Select2Option | null): Select2Option | null;
    static getFirstOption(filteredData: Select2Data): Select2Option | null;
    static getLastOption(filteredData: Select2Data): Select2Option | null;
    static isGroup(element: Select2Group | Select2Option): element is Select2Group;
    static isOption(element: Select2Group | Select2Option): element is Select2Option;
    static getReduceData(data: Select2Data, maxResults?: number): {
        result: Select2Data;
        reduce: boolean;
    };
    static getFilteredData(data: Select2Data, searchText: string | null, editPattern?: (str: string) => string): Select2Data;
    static getFilteredSelectedData(data: Select2Data, selectedOptions: Select2Option | Select2Option[] | null): Select2Data;
    static isSearchboxHidden(data: Select2Data, minCountForSearch?: number): boolean;
    static isSelected(options: Select2Option | Select2Option[] | null, option: Select2Option, multiple: boolean | null | undefined): "true" | "false";
    static removeSelection(options: Select2Option | Select2Option[] | null, option: Select2Option): void;
    private static getOptionsCount;
    private static isNullOrUndefined;
    private static containSearchText;
    private static protectPattern;
    private static formatSansUnicode;
    private static formatPattern;
}
//# sourceMappingURL=select2-utils.d.ts.map