import { SvelteComponentTyped } from "svelte"; export declare enum ListboxStates { Open = 0, Closed = 1 } export declare type ListboxOptionDataRef = { textValue: string; disabled: boolean; value: unknown; }; export declare type StateDefinition = { listboxState: ListboxStates; value: unknown; orientation: "vertical" | "horizontal"; labelRef: Writable; buttonRef: Writable; optionsRef: Writable; disabled: boolean; options: { id: string; dataRef: ListboxOptionDataRef; }[]; searchQuery: string; activeOptionIndex: number | null; closeListbox(): void; openListbox(): void; goToOption(focus: Focus, id?: string): void; search(value: string): void; clearSearch(): void; registerOption(id: string, dataRef: ListboxOptionDataRef): void; unregisterOption(id: string): void; select(value: unknown): void; }; export declare function useListboxContext(component: string): Readable; import { Focus } from "../../utils/calculate-active-index"; import type { Readable, Writable } from "svelte/store"; import type { SupportedAs } from "../../internal/elements"; declare class __sveltets_Render { props(): Omit, import("../../types").TInternalProps | "as" | "static" | "unmount"> & { as?: TAsProp | undefined; } & { /** Whether the entire `Listbox` and its children should be disabled */ disabled?: boolean | undefined; /** Whether the entire `Listbox` should be oriented horizontally instead of vertically */ horizontal?: boolean | undefined; /** The selected value */ value?: unknown; /** The name used when using this component inside a form. */ name?: string | undefined; }; events(): { change: CustomEvent; } & { [evt: string]: CustomEvent; }; slots(): { default: { open: boolean; }; }; } export declare type ListboxProps = ReturnType<__sveltets_Render['props']>; export declare type ListboxEvents = ReturnType<__sveltets_Render['events']>; export declare type ListboxSlots = ReturnType<__sveltets_Render['slots']>; export default class Listbox extends SvelteComponentTyped, ListboxEvents, ListboxSlots> { } export {};