import { Saga } from 'redux-saga'; import { PreloadedStoreState, NormalizedStoreOptions, StoreOptions, StoreMiddleware, StoreReducerFunction, StoreStateFromStateMap, StoreStateMap } from './types'; import { ReduxStoreContext } from './internal-types'; import { INTERNAL_SAGA_MANAGER_NAME, INTERNAL_STORE_UTILITY_DOMAIN } from './constants'; import { sagaManagerReducer, SagaCrashState } from './slices/saga-manager/saga-manager-slice'; import { storeUtilityReducer, StoreUtilityState } from './slices/store-utility/store-utility-slice'; import { SelectorFlushManager } from './utils/selector-core/throttled-selector-options'; import { SelectorTraceReporter } from './utils/selector-core/create-cached-selector'; type DefaultStoreReducersMap = { [INTERNAL_STORE_UTILITY_DOMAIN]: typeof storeUtilityReducer; [INTERNAL_SAGA_MANAGER_NAME]: typeof sagaManagerReducer; }; type DefaultStoreStateMap = { [INTERNAL_STORE_UTILITY_DOMAIN]: StoreUtilityState; [INTERNAL_SAGA_MANAGER_NAME]: SagaCrashState; }; export type StoreReducersInput = { [Domain in keyof TStateMap]: StoreReducerFunction; }; export type StoreReducersMap = StoreReducersInput> = DefaultStoreReducersMap & TReducers; export type StoreBoundState = StoreStateFromStateMap; export type StoreMiddlewareInput = StoreMiddleware | StoreMiddleware[]; export declare abstract class StoreRuntime = StoreReducersInput> { private reducers; private middlewares; private readonly sagaMiddleware; private tasksStarted; private storeContext; private selectorFlushManager; private disposeDevTools; private selectorTracingEnabled; private maxLoggedSelectorAccessedPathCount; protected readonly storeOptions: NormalizedStoreOptions; constructor(reducersMap?: TReducers & StoreReducersInput, middleware?: StoreMiddlewareInput, options?: StoreOptions); private registerReducer; addMiddleware(middleware: StoreMiddlewareInput): void; private getMiddlewarePipeline; private runSagaSafely; private createExtendedDefaultState; private stopSagas; private getOrCreateSelectorFlushManager; private disposeSelectorFlushManager; getReducers(): StoreReducersMap; get state(): StoreBoundState; get dispatch(): ReduxStoreContext['store']['dispatch']; /** * Return an existing store context that should prevent re-initialization. * Defaults to the instance-level context (guards against double init()); * framework-specific subclasses can override to consult external contexts. */ protected getExistingStoreContext(): ReduxStoreContext | undefined; protected initStoreContext(initialState?: PreloadedStoreState): ReduxStoreContext | undefined; protected getSelectorFlushManager(): SelectorFlushManager; protected getSelectorTraceReporter(): SelectorTraceReporter; private reportSelectorTrace; traceSelectors(): void; protected startSagaManager(storeContext: ReduxStoreContext): void; initDevTool(): () => void; dispose(): void; runSaga(saga: TSaga): () => void; } export {}; //# sourceMappingURL=store-runtime.d.ts.map