
import { PREPARE_PROVIDER_FOR_USE } from './provider'

declare type IndexText = (itemList: any, extract?: any) => Promise<any[]>

declare type SearchText = (text: string, propertyList?: string[], rangeMin?: number, numOfRows?: number, extract?: any) => Promise<any[]>

interface TextSearchMultiplexer {
  PREPARE_PROVIDER_FOR_USE: PREPARE_PROVIDER_FOR_USE
  indexText: IndexText
  searchText: SearchText
}

export {
  TextSearchMultiplexer,
  IndexText,
  SearchText
}
