import { AnyAction, Dispatch, Middleware, MiddlewareAPI, StoreCreator } from 'redux';
declare type Listener<TStoreState> = (action: AnyAction, state: TStoreState) => void;
declare type ConfigureStore = ({ middlewares, }: {
    middlewares: Middleware[];
}) => ReturnType<StoreCreator>;
export declare class StandaloneStore<TStoreState> {
    private listeners;
    private store;
    constructor({ configureStore }: {
        configureStore: ConfigureStore;
    });
    dispatchAction: (action: AnyAction) => void;
    afterActionMiddleware: (store: MiddlewareAPI<Dispatch<AnyAction>, any>) => (next: Dispatch<AnyAction>) => (action: AnyAction) => AnyAction;
    getListeners: () => Listener<TStoreState>[];
    subscribe: (listener: Listener<TStoreState>) => void;
    unsubscribe: () => void;
}
export {};
