import type { Draft } from 'immer'; type InferArgs = T extends (...args: infer A) => unknown ? A : never; type SliceActions = { [actionName: string]: (...args: never[]) => (draft: Draft) => Draft | void; }; export type SliceConfig> = { name: Name; value: Value; actions: Actions; }; type ImmerActions> = { [K in keyof Actions]: (...args: InferArgs) => (prev: Value) => Value; }; export declare function createSliceWithImmer>(config: SliceConfig): { actions: ImmerActions; name: Name; value: Value; }; export {};