import type { StateCreator, StoreMutators, UseBoundStore } from "zustand";
import type { StoreApi } from "zustand/vanilla";
type ImmerStateCreator<T> = StateCreator<T, [["zustand/immer", never]], []>;
type ImmerStore<T> = UseBoundStore<StoreMutators<StoreApi<T>, never>["zustand/immer"]>;
/**
 * Creates a Zustand store with Immer middleware enabled.
 *
 * @param initializer - Function to initialize the store state and actions.
 * @returns A hook-based Zustand store.
 */
export declare function createImmerStore<T>(initializer: ImmerStateCreator<T>): ImmerStore<T>;
export {};
