UNPKG

@yamada-ui/react

Version:

React UI components of the Yamada, by the Yamada, for the Yamada built with React and Emotion

39 lines (38 loc) 2.15 kB
import { ChangeEventHandler, Dispatch, SetStateAction } from "react"; //#region src/hooks/use-controllable-state/index.d.ts interface UseControllableStateMethods<Y> { onChange?: (value: Y) => void; onUpdate?: (prev: Y, next: Y) => boolean; } interface UseControllableStateProps<Y> extends UseControllableStateMethods<Y> { defaultValue?: (() => Y) | Y; value?: Y; } declare function useControllableState<Y>(props: UseControllableStateMethods<Y> & { value: Y; defaultValue?: (() => Y) | Y; }): [Y, Dispatch<SetStateAction<Y>>]; declare function useControllableState<Y>(props: UseControllableStateMethods<Y> & { defaultValue: (() => Y) | Y; value?: Y; }): [Y, Dispatch<SetStateAction<Y>>]; declare function useControllableState<Y>(props: UseControllableStateProps<Y>): [Y, Dispatch<SetStateAction<Y>>]; interface UseControllableEventStateMethods<Y extends HTMLInputElement | HTMLSelectElement | HTMLTextAreaElement> { onChange?: ChangeEventHandler<Y>; } interface UseControllableEventStateProps<Y extends boolean | number | string, M extends HTMLInputElement | HTMLSelectElement | HTMLTextAreaElement> extends UseControllableEventStateMethods<M> { defaultValue?: (() => Y) | Y; value?: Y; } declare function useControllableEventState<Y extends boolean | number | string, M extends HTMLInputElement | HTMLSelectElement | HTMLTextAreaElement>(props: UseControllableEventStateMethods<M> & { value: Y; defaultValue?: (() => Y) | Y; }): [Y, ChangeEventHandler<M>]; declare function useControllableEventState<Y extends boolean | number | string, M extends HTMLInputElement | HTMLSelectElement | HTMLTextAreaElement>(props: UseControllableEventStateMethods<M> & { defaultValue: (() => Y) | Y; value?: Y; }): [Y, ChangeEventHandler<M>]; declare function useControllableEventState<Y extends boolean | number | string, M extends HTMLInputElement | HTMLSelectElement | HTMLTextAreaElement>(props: UseControllableEventStateProps<Y, M>): [Y, ChangeEventHandler<M>]; //#endregion export { UseControllableEventStateProps, UseControllableStateProps, useControllableEventState, useControllableState }; //# sourceMappingURL=index.d.ts.map