exome
Version:
State manager for deeply nested states
27 lines (26 loc) • 686 B
TypeScript
/**
* @module exome/rxjs
*/
import { type Exome } from "exome";
import { Observable } from "rxjs";
/**
* Subscribes to store instance update events and trigger Observable updates accordingly.
*
* @example:
* ```ts
* import { observableFromExome } from "exome/rxjs"
* import { counterStore } from "./counter.store.ts"
*
* observableFromExome(counterStore)
* .pipe(
* map(({ count }) => count),
* distinctUntilChanged()
* )
* .subscribe((value) => {
* console.log("Count changed to", value)
* });
*
* setInterval(counterStore.increment, 1000)
* ```
*/
export declare function observableFromExome<T extends Exome = Exome>(store: T): Observable<T>;