exome
Version:
State manager for deeply nested states
26 lines (25 loc) • 664 B
TypeScript
/**
* @module exome/svelte
*/
import { type Exome } from "exome";
/**
* Subscribes to store instance update events and trigger updates to component accordingly.
*
* @example:
* ```html
* <script lang="ts">
* import { useStore } from "exome/svelte"
* import { counterStore } from "./counter.store.ts"
*
* const { increment } = counterStore
* const count = useStore(counterStore, s => s.count)
* </script>
*
* <main>
* <button on:click={increment}>{$count}</button>
* </main>
* ```
*/
export declare function useStore<T extends Exome, R = T>(store: T, selector?: (state: T) => R): {
subscribe(cb: (value: R) => void): () => void;
};