/** * Acts like a controlled component when value and onChange are provided. * Acts like an uncontrolled component otherwise. */ export interface UseControlledValueProps { value?: TValue; onChange?(value: TValue): void; defaultValue?: TValue; fallbackValue: TValue; } /** * Allows an input to work as either a controlled or uncontrolled component depending * on which props are provided. */ export declare function useControlledValue(options: UseControlledValueProps): { value: TValue; onChange(value: TValue): void; };