import type { OptionRowData } from 'multiple-select-vanilla';
import type { SearchTerm } from '../enums/index.js';
import type { Column } from '../interfaces/index.js';
import type { SlickGrid } from '../core/index.js';
import type { TranslaterService } from './translater.service.js';
/**
 * Create the HTML DOM Element for a Select Editor or Filter, this is specific to these 2 types only and the unit tests are directly under them
 * @param {String} type - type of select DOM element to build, can be either 'editor' or 'filter'
 * @param {Array<Object>} collection - array of items to build the select html options
 * @param {Array<Object>} columnDef - column definition object
 * @param {Object} grid - Slick Grid object
 * @param {Boolean} isMultiSelect - are we building a multiple select element (false means it's a single select)
 * @param {Object} translaterService - optional Translater Service
 * @param {Array<*>} searchTerms - optional array of search term (used by the "filter" type only)
 * @returns object with 2 properties for the select element & a boolean value telling us if any of the search terms were found and selected in the dropdown
 */
export declare function buildMsSelectCollectionList(type: 'editor' | 'filter', collection: any[], columnDef: Column, grid: SlickGrid, isMultiSelect?: boolean, translaterService?: TranslaterService, searchTerms?: SearchTerm[]): {
    selectElement: HTMLSelectElement;
    dataCollection: OptionRowData[];
    hasFoundSearchTerm: boolean;
};
//# sourceMappingURL=domUtilities.d.ts.map