import { Draft } from "immer";
declare type Result<S> = [S, (f: (draft: Draft<S>) => void | S) => void, (replacement: S) => void, (objectToAssign: S) => void];
export declare function useImmerState<S = any>(initialValue: S | (() => S)): Result<S>;
export {};
