import { type Ref, type ComputedRef } from 'vue';
type Updater<T> = (updater: T | ((origin: T) => T)) => void;
/**
 * 对应 React 的 useControlledState。
 * 总是优先使用 props.value，否则使用内部状态。
 *
 * @param defaultStateValue 默认值 (对应 React 的 defaultStateValue)
 * @param value 外部传入的值 (对应 React 的 value prop)
 * @returns [当前合并值, 状态更新函数]
 */
export default function useControlledState<T>(defaultStateValue: T | (() => T), value?: Ref<T | undefined>): [ComputedRef<T>, Updater<T>];
export {};
