@benev/slate
Version:
frontend web stuff
19 lines (13 loc) • 321 B
text/typescript
export type Collector<P> = () => P
export type Responder<P> = (payload: P) => void
export type Lean = {
stop: () => void
collect: <P>(collector: Collector<P>) => P
}
export interface ReactorCore {
reaction<P>(
collector: Collector<P>,
responder?: Responder<P>,
): () => void
lean(actor: () => void): Lean
}