import { type MatchSegment } from "../utils/koreanSearchUtils";
export type UseKoreanSearchOptions = {
    /** 검색 대상 필드를 여러 개 지정할 때 사용. getSearchField와 함께 사용하지 않는다. */
    getSearchFields?: never;
};
declare function useKoreanSearch<T>(items: T[], getSearchField: (item: T) => string): {
    searchTerm: string;
    setSearchTerm: React.Dispatch<React.SetStateAction<string>>;
    filteredItems: T[];
    resetSearch: () => void;
    isMatch: (source: string, target: string) => boolean;
    disassembleHangul: (text: string) => string;
    getMatchSegments: (source: string, target: string) => MatchSegment[];
    filterAndSort: <U>(items: U[], target: string, getField: (item: U) => string) => U[];
};
export default useKoreanSearch;
