import { IDynaduxConfig, TDynaduxReducerDispatch, IDynaduxReducerDic } from "../Dynadux/Dynadux"; export interface ICreateStoreConfig extends IDynaduxConfig { } export interface ICreateStoreAPI { state: TState; dispatch: TDynaduxReducerDispatch; createSection: (createSectionConfig: ICreateSectionConfig) => ICreateSectionAPI; addChangeEventListener: (cb: (sectionState: TState, action: string, payload?: any) => void) => void; removeChangeEventListener: (cb: (sectionState: TState, action: string, payload?: any) => void) => void; provider: IStoreProviderAPI; } export interface IStoreProviderAPI { store: ICreateStoreAPI; addChangeEventListener: (cb: (storeState: TState, action: string, payload?: any) => void) => void; removeChangeEventListener: (cb: (storeState: TState, action: string, payload?: any) => void) => void; } export interface ICreateSectionConfig { section: string; initialState: TSectionState; reducers: IDynaduxReducerDic; onChange?: (sectionState: TSectionState, action: string, payload?: any) => void; } export interface ICreateSectionAPI { storeState: TState; state: TSectionState; dispatch: TDynaduxReducerDispatch; addChangeEventListener: (cb: (sectionState: TSectionState, action: string, payload?: any) => void) => void; removeChangeEventListener: (cb: (sectionState: TSectionState, action: string, payload?: any) => void) => void; } export declare const createStore: (config?: ICreateStoreConfig) => ICreateStoreAPI; //# sourceMappingURL=createStore.d.ts.map