UNPKG

@nteract/myths

Version:

A redux-observable framework for better locality of dependencies

19 lines (18 loc) 1.02 kB
import { RecordOf } from "immutable"; import { Middleware, ReducersMapObject, Store } from "redux"; import { Epic } from "redux-observable"; import { MythicAction, MythicPackage } from "./types"; declare type UnionOfProperty<U, P extends string> = (U extends { [key in P]: any; } ? U[P] : never); export declare const makeConfigureStore: <STATE = {}>() => <DEPS, PKGS extends MythicPackage<string, any>>(definition: { packages: PKGS[]; reducers?: ReducersMapObject<Pick<STATE, Exclude<keyof STATE, "__private__">>, any> | undefined; epics?: Epic<any, any, any, any>[] | undefined; epicMiddleware?: Middleware<{}, any, import("redux").Dispatch<import("redux").AnyAction>>[] | undefined; epicDependencies?: DEPS | undefined; enhancer?: ((enhancer: any) => any) | undefined; }) => (initialState?: STATE | undefined) => Store<RecordOf<STATE & { __private__: { [key in UnionOfProperty<PKGS, "name">]: UnionOfProperty<PKGS, "initialState">; }; }>, MythicAction<string, string, any>>; export {};