UNPKG

alinea

Version:

[![npm](https://img.shields.io/npm/v/alinea.svg)](https://npmjs.org/package/alinea) [![install size](https://packagephobia.com/badge?p=alinea)](https://packagephobia.com/result?p=alinea)

14 lines (13 loc) 503 B
import { Observable as MicroObservable } from 'micro-observables'; export interface Observable<T> { (): T; micro: MicroObservable<T>; select<U>(selector: (val: T) => U | Observable<U>): Observable<U>; } export declare namespace Observable { interface Writable<T> extends Observable<T> { (value: T): void; } } export declare function observable<T>(value: T): Observable.Writable<T>; export declare function useObservable<T>(observable: Observable<T> | MicroObservable<T>): T;