UNPKG

@captaincodeman/rdx

Version:

Small state library. Like Redux, but smaller

14 lines (10 loc) 335 B
import { Model, ModelDispatch } from './model' interface Models { [name: string]: Model } type ModelsState<M extends Models> = { [K in keyof M]: M[K] extends Model<infer S> ? S : never } type ModelsDispatch<M extends Models> = { [K in keyof M]: M[K] extends Model<infer S, infer R, infer E> ? ModelDispatch<S, R, E> : never }