import type { JsxCustomElementAttributes, JsxElementProps, JsxRenderable } from '@ecopages/jsx'; import { type RuiListboxOptionData } from '../listbox'; import type { RuiCombobox as RuiComboboxElement, RuiComboboxProps } from './combobox.script'; import './combobox.script'; export type RuiComboboxControlProps = JsxElementProps; /** Input row wrapper for the combobox input and toggle button. * * @cssclass rui-combobox__control - Bordered control-height row. */ export declare function RuiComboboxControl({ children, class: className, ...props }: RuiComboboxControlProps): JsxRenderable; export type RuiComboboxInputProps = JsxElementProps & { placeholder?: string; disabled?: boolean; }; /** Text input with `role="combobox"`. Place inside `RuiComboboxControl`. * * @cssclass rui-combobox__input - Combobox text input. */ export declare function RuiComboboxInput({ placeholder, disabled, class: className, ...props }: RuiComboboxInputProps): JsxRenderable; export type RuiComboboxTriggerProps = JsxElementProps & { disabled?: boolean; }; /** Toggle button for opening the listbox popup. */ export declare function RuiComboboxTrigger({ children, class: className, aria, disabled, ...props }: RuiComboboxTriggerProps): JsxRenderable; export type RuiComboboxListboxProps = JsxElementProps; /** Popup shell for the combobox listbox. Place an embedded `RuiListbox` inside. * * @cssclass rui-combobox__listbox - Popup shell (adds `rui-popover rui-popover--listbox rui-floating`). */ export declare function RuiComboboxListbox({ children, class: className, ...props }: RuiComboboxListboxProps): JsxRenderable; export type RuiComboboxOptionData = RuiListboxOptionData; /** * Combobox view. Pair with `RuiLabel` (sibling or via `RuiField`) for the visible name — * do not nest a combobox-specific label. */ export declare function RuiCombobox({ options, children, ...props }: JsxCustomElementAttributes): JsxRenderable;