/**
 * @module exome/solid
 */
import { type Exome } from "exome";
import { type Accessor } from "solid-js";
/**
 * Subscribes to store instance update events and trigger updates to component accordingly.
 *
 * @example:
 * ```ts
 * import { useStore } from "exome/solid"
 * import { counterStore } from "./counter.store.ts"
 *
 * function App() {
 *   const { count, increment } = useStore(counterStore, s => s.count)
 *
 *   return (
 *     <button onClick={increment}>{count}</button>
 *   );
 * }
 * ```
 */
export declare function useStore<T extends Exome, R = T>(store: T, selector?: (state: T) => R): Accessor<R>;
