type Primitive = string | number | boolean;
type SearchableListProps = {
    clearOnEmpty?: boolean;
    firstLetterCheck?: boolean;
    debounce?: boolean;
    delay?: number;
};
type SearchableListItem = Record<string, Primitive | unknown>;
type UseSearchableListHook<T extends SearchableListItem> = [
    T[],
    (value: T[]) => void,
    (value: Primitive) => void
];

declare const useSearchableList: <T extends SearchableListItem>(property: keyof T, props?: SearchableListProps) => UseSearchableListHook<T>;

export { type Primitive, type SearchableListItem, type SearchableListProps, type UseSearchableListHook, useSearchableList as default };
