import { IRef, IStore, StoreEvent } from "./model"; import { IStoreOptions } from "./store-fsm"; export declare type IStoresMap = { [key: string]: IStore; }; declare type RefValueType> = V extends IRef ? T : never; export declare type ComposedState = { [key in keyof V]: RefValueType; }; export declare type ComposedStoreOf = IStore>; export declare class ComposedStore implements ComposedStoreOf { private readonly stores; private readonly ref; private readonly fsm; constructor(stores: M, opts?: IStoreOptions>); dispatch(f: StoreEvent>): void; dispatchSync(f: StoreEvent>): void; getSnapshot(): ComposedState; loadSnapshot(snapshot: ComposedState): void; deref(): ComposedState; } export {};