import * as zustand from 'zustand'; import { StoreMutatorIdentifier, StateCreator } from 'zustand'; import { T as TState, A as AnyFunction, a as TBaseStateApi, b as TCreatedStoreType, c as TEqualityChecker, d as TSelectorBuilder, e as TActionBuilder, f as TBaseStoreOptions, D as DefaultMutators, M as MiddlewareOption } from './extendActions-Qc-AX3wu.mjs'; export { s as ArrayElement, g as DevtoolsOptions, I as ImmerOptions, h as MutativeOptions, P as PersistOptions, R as RemoveNever, q as TBaseStateApiForBuilder, r as TCreatedStoreMutateType, j as TExtractMutatorFromMiddleware, k as TFlattenMiddlewares, l as TMiddleware, n as TStoreApiGet, o as TStoreApiSet, p as TStoreApiSubscribe, t as extendActions, i as immerMiddleware, m as mutativeMiddleware } from './extendActions-Qc-AX3wu.mjs'; export { devtools as devToolsMiddleware, persist as persistMiddleware } from 'zustand/middleware'; import 'mutative'; import 'immer'; import 'zustand/traditional'; type TStateApi = {}, TSelectors extends Record = {}> = Omit, 'extendActions' | 'extendSelectors'> & { store: TCreatedStoreType; useStore: TCreatedStoreType; useValue: { (key: K): StateType[K]; (key: K, ...args: Parameters): ReturnType; (key: 'state'): ReturnType['getState']>; (key: K, equalityFn?: TEqualityChecker): StateType[K]; (key: K, ...args: [ ...Parameters, TEqualityChecker>? ]): ReturnType; }; useState: { (key: K, equalityFn?: TEqualityChecker): [StateType[K], (value: StateType[K]) => void]; }; useTracked: (key: K) => StateType[K]; useTrackedStore: () => StateType; extendSelectors>(builder: SelectorBuilder): TStateApi>; extendActions>(builder: ActionBuilder): TStateApi, TSelectors>; }; type TStateApiForBuilder = {}, TSelectors extends Record = {}> = Omit, 'extendActions' | 'extendSelectors'>; /** * Creates zustand store with additional selectors and actions. * * @param {StateType | StateCreator} initializer - A function or object that initializes the state. * @param {TBaseStoreOptions} options - store create options. */ declare const createStore: , unknown][] = [], Mcs extends [keyof zustand.StoreMutators, unknown][] = [], CreateStoreOptions extends TBaseStoreOptions = TBaseStoreOptions>(initializer: StateType | StateCreator, options: CreateStoreOptions) => TStateApi, ...Mcs], {}, {}>; declare const createZustandStore: , unknown][] = [], Mcs extends [keyof zustand.StoreMutators, unknown][] = [], CreateStoreOptions extends TBaseStoreOptions = TBaseStoreOptions>(initializer: StateType | StateCreator, options: CreateStoreOptions) => TStateApi, ...Mcs], {}, {}>; declare function useStoreValue = {}, TSelectors extends Record = {}, K extends keyof StateType = keyof StateType>(store: TStateApi, key: K): StateType[K]; declare function useStoreValue = {}, TSelectors extends Record = {}, K extends keyof TSelectors = keyof TSelectors>(store: TStateApi, key: K, ...args: Parameters): ReturnType; declare function useStoreValue = {}, TSelectors extends Record = {}>(store: TStateApi, key: 'state'): StateType; declare function useStoreValue = {}, TSelectors extends Record = {}, K extends keyof StateType = keyof StateType>(store: TStateApi, key: K, equalityFn?: TEqualityChecker): StateType[K]; declare function useStoreValue = {}, TSelectors extends Record = {}, K extends keyof TSelectors = keyof TSelectors>(store: TStateApi, key: K, ...args: [ ...Parameters, TEqualityChecker>? ]): ReturnType; declare function useStoreState = {}, TSelectors extends Record = {}, K extends keyof StateType = keyof StateType>(store: TStateApi, key: K, equalityFn?: TEqualityChecker): [StateType[K], (value: StateType[K]) => void]; declare function useTrackedStore = {}, TSelectors extends Record = {}>(store: TStateApi): StateType; declare function useTracked = {}, TSelectors extends Record = {}, K extends keyof StateType = keyof StateType>(store: TStateApi, key: K): StateType[K]; /** * Use zustand store selector with optional equality function. * @example * const name = useStoreSelect(store, (state) => state.name, equalityFn) */ declare const useStoreSelect: , unknown][], TActions extends Record = {}, TSelectors extends Record = {}, U = StateType>(store: TStateApi, selector: (state: StateType) => U, equalityFn?: ((a: U, b: U) => boolean) | undefined) => U; declare const extendSelectors: , unknown][], TActions extends Record, TSelectors extends Record, Builder extends TSelectorBuilder>(builder: Builder, api: TStateApiForBuilder) => TStateApiForBuilder>; declare const getOptions: | undefined>(option: T, fallbackEnabled?: boolean) => { enabled: boolean; } & Omit, "enabled">; declare const storeFactory: , unknown][] = [], TActions extends Record = {}, TSelectors extends Record = {}>(api: TStateApiForBuilder) => TStateApi; export { AnyFunction, DefaultMutators, MiddlewareOption, TActionBuilder, TBaseStateApi, TBaseStoreOptions, TCreatedStoreType, TEqualityChecker, TSelectorBuilder, TState, type TStateApi, type TStateApiForBuilder, createStore, createZustandStore, extendSelectors, getOptions, storeFactory, useStoreSelect, useStoreState, useStoreValue, useTracked, useTrackedStore };