import { type Dispatch, type RefObject, type SetStateAction } from "react"; import type { BaseOption, SmartSelectKinds } from "./type"; import type { ComboOptionState } from "./use-async-options"; export interface SmartSelectContext { readonly kindAndValue: SmartSelectKinds; readonly open: boolean; readonly onOpenChange: (b: boolean) => void; readonly openKeys: string[]; readonly closeKeys: string[]; readonly options: BaseOption[]; readonly openOnClick: boolean; readonly closeOnSelect: boolean; readonly onOptionSelect: (b: BaseOption) => void; readonly onOptionsChange: (b: BaseOption[]) => void; readonly rtl: boolean; readonly inputRef: RefObject; readonly trigger: HTMLElement | null; readonly setTrigger: Dispatch>; readonly activeId: string | null; readonly setActiveId: Dispatch>; readonly container: HTMLElement | null; readonly setContainer: Dispatch>; readonly query: string; readonly onQueryChange: (change: string) => void; readonly comboState: ComboOptionState; readonly preventNextOpen: { current: boolean; }; } export declare const SmartSelectProvider: import("react").Provider; export declare const useSmartSelect: () => SmartSelectContext;