import React, { KeyboardEvent, ReactNode } from "react"; import { OptionInterface } from "./useSelect"; export declare const cn = "Combobox"; export declare const selectInputCn: string; export declare const surfaceClassName: string; export declare const surfaceMultiClassName: string; export declare const defaultPopperModifiers: { offset: { offset: string; }; preventOverflow: { enabled: boolean; }; hide: { enabled: boolean; }; }; export interface ComboboxSharedProps { options: OptionInterface[]; defaultValue?: OptionInterface; placeholder?: string; isCreatable?: boolean; isClearable?: boolean; isSearchable?: boolean; onCreate?: (v: OptionInterface) => any; onChange?: (v: OptionInterface | OptionInterface[]) => any; className?: string; disabled?: boolean; } interface NoOptionsProps { canCreate: boolean; searchValue: string; create: (v: OptionInterface) => any; } interface OptionProps { onClick: () => void; children: ReactNode; isHover: boolean; isSelected: boolean; hover?: () => void; id?: string; } export declare const Option: ({ children, onClick, isHover, isSelected, hover, id, }: OptionProps) => JSX.Element; export declare const NoOptions: ({ canCreate, searchValue, create, }: NoOptionsProps) => JSX.Element; interface ListboxProps { children: ReactNode; top: number; left: number; width?: string | number; } export declare const Listbox: ({ children, top, left, width, }: ListboxProps) => JSX.Element; interface TagProps { children: ReactNode; onRemove: () => void; } export declare const Tag: ({ children, onRemove }: TagProps) => JSX.Element; interface ContainerProps { isOpen: boolean; children: ReactNode; close: () => void; selectedId?: string; className?: string; disabled?: boolean; onKeyDown?: (event: KeyboardEvent) => void; } export declare const Container: React.ForwardRefExoticComponent>; export declare const Arrow: () => JSX.Element; interface ClearButtonProps { canClear: boolean; clear: () => void; } export declare const ClearButton: ({ canClear, clear }: ClearButtonProps) => JSX.Element | null; export {};