import { Feature, Optional } from 'triviality';
import { Action, Dispatch, Middleware, ReducersMapObject, Store, StoreEnhancer } from 'redux';
import { EnhancerOptions } from 'redux-devtools-extension';
import { Epic, EpicMiddleware } from 'redux-observable';
export declare class ReduxFeature<S = {}, A extends Action<any> = Action<any>> implements Feature {
    registries(): {
        reducers: () => Optional<ReducersMapObject<S, A>>;
        middleware: () => Middleware<{}, Dispatch<A>, Dispatch<import("redux").AnyAction>>[];
        epics: () => Epic<A, A, S, any>[];
        enhancers: () => StoreEnhancer<{}, {}>[];
    };
    setup(): void;
    devToolsOptions(): EnhancerOptions;
    store(): Store<any>;
    middlewareEnhancer(): StoreEnhancer<{
        dispatch: {};
    }, {}>;
    rootEpic(): Epic<A, A, S, any>;
    epicMiddleware(): EpicMiddleware<A, A, S, Dispatch<A>>;
}
