import { AnyAction, Dispatch, Middleware, Reducer, Store, StoreEnhancer, Unsubscribe } from 'redux'; import { NgZone } from '@angular/core'; import { Observable } from 'rxjs'; import { NgRedux } from './ng-redux'; import { ObservableStore } from './observable-store'; import { Comparator, Selector } from './selectors'; /** @hidden */ export declare class RootStore extends NgRedux { private ngZone; private store; private store$; constructor(ngZone: NgZone); configureStore: (rootReducer: Reducer, initState: RootState, middleware?: Middleware<{}, any, Dispatch>[], enhancers?: StoreEnhancer[]) => void; provideStore: (store: Store) => void; getState: () => RootState; subscribe: (listener: () => void) => Unsubscribe; replaceReducer: (nextReducer: Reducer) => void; dispatch: Dispatch; select: (selector?: Selector, comparator?: Comparator) => Observable; configureSubStore: (basePath: (string | number)[], localReducer: Reducer) => ObservableStore; private setStore; private storeToObservable; }