import { Actions } from '../interfaces' import { State } from './state' import { Subject, Stream, $ } from '../xs' export type Partial = { [P in keyof T]?: T[P]; } export interface pair { s: S a: A } export type StateP = State> export interface Machine { actions?: Actions update$: $> } export type PlanS = (i: Subject) => Machine