import { type MutableRefObject, type Ref, type SyntheticEvent } from "react"; import type { TokenizedInputNextProps } from "./TokenizedInputNext"; export interface TokenizedInputNextState { activeIndices: number[]; expanded: boolean | undefined; highlightedIndex: number | undefined; selectedItems: Item[]; value: string | undefined; } export interface TokenizedInputNextHelpers { setHighlightedIndex: (value?: number) => void; setValue: (value: string) => void; setSelectedItems: (selectedItems: Item[]) => void; updateExpanded: (event: SyntheticEvent, expanded: boolean) => void; } export interface TokenizedInputNextRefs { textAreaRef: Ref; pillsRef: MutableRefObject>; clearButtonRef: (newNode: HTMLButtonElement) => void; expandButtonRef: Ref; statusAdornmentRef: Ref; containerRef: Ref; } interface useTokenizedInputNextResult { /** * The tokenized input state */ state: TokenizedInputNextState; /** * First hidden element when collapsed */ firstHiddenIndex: number | null; /** * Utility functions for modifying tokenized input state */ helpers: TokenizedInputNextHelpers; /** * Refs for tokenized input items. */ refs: TokenizedInputNextRefs; /** * Properties applied to a basic tokenized input component */ inputProps: Omit, "helpers" | "onChange">; } export declare function useTokenizedInputNext(props: TokenizedInputNextProps): useTokenizedInputNextResult; export {};