UNPKG

@cycle/state

Version:

Wraps your Cycle.js main function with reducer-driven state management

19 lines (18 loc) 821 B
export declare type MainFn<So, Si> = (sources: So) => Si; export declare type Reducer<T> = (state: T | undefined) => T | undefined; export declare type Getter<T, R> = (state: T | undefined) => R | undefined; export declare type Setter<T, R> = (state: T | undefined, childState: R | undefined) => T | undefined; export declare type Lens<T, R> = { get: Getter<T, R>; set: Setter<T, R>; }; export declare type ItemScopeFn = (key: string) => string | object; export declare type ItemKeyFn<S> = (state: S, index?: number) => string; export declare type ItemFactoryFn<S, So, Si> = (state: S, index?: number) => MainFn<So, Si>; export declare type Scope<T, R> = string | number | Lens<T, R>; export declare type InternalInstances<Si> = { dict: Map<string, Si>; arr: Array<Si & { _key: string; }>; };