import { Dispatch } from "react"; import { Signal } from "../styles/css-var"; export declare const equalValue: (v1: any, v2: any) => boolean; declare type ChangeEventContext = { after: T; before: T; } & U; export declare type InputAttributes = { $name?: string; $bind?: { [key: string]: any; }; $disabled?: boolean; $readOnly?: boolean; $defaultValue?: T; $value?: T; $dispatch?: Dispatch; $change?: (ctx: ChangeEventContext) => (boolean | void); $changed?: (ctx: ChangeEventContext) => void; $signal?: Signal; }; export declare type InputAttributesWithoutDispatch = Omit, "$dispatch">; declare type Options = { effect?: (val: T) => void; mountEffect?: (val: T) => void; bindEffect?: (val: T) => void; stateEffect?: (val: T) => void; validation?: (val: T) => boolean; setChangeCtx?: (ctx: ChangeEventContext) => ChangeEventContext; }; declare const useValue: (attrs: InputAttributes, opts?: Options) => { val: T; set: import("react").MutableRefObject<(v: T) => T>; buf: import("react").MutableRefObject; }; export default useValue;