import type { FastContext } from "../createFastContext"; export declare function useValue(context: FastContext, key: K): S[K]; export declare function useShallow(context: FastContext, selector: (s: S) => R): R; export declare function useComputed(context: FastContext, selector: (s: S) => R, equality?: (a: R, b: R) => boolean): R; export declare function useActions(context: FastContext): A; export declare function useWatch(context: FastContext, selector: (state: S) => R, effect: (value: R, prev: R | undefined) => void, equality?: (a: R, b: R) => boolean): void; export declare function useWhen(context: FastContext, predicate: (state: S) => R, effect: (value: R, state: S) => void): void; export declare function useAsyncStatus(context: FastContext, loadingKey: LK, errorKey?: EK): { loading: S[LK]; error: S[EK] | undefined; }; export declare function extendContext(context: FastContext): { useValue: (key: K) => S[K]; useShallow: (selector: (s: S) => R) => R; useComputed: (selector: (s: S) => R, equality?: (a: R, b: R) => boolean) => R; useActions: () => A; useWatch: (selector: (state: S) => R, effect: (value: R, prev: R | undefined) => void, equality?: (a: R, b: R) => boolean) => void; useWhen: (predicate: (state: S) => R, effect: (value: R, state: S) => void) => void; useAsyncStatus: (loadingKey: LK, errorKey?: EK) => { loading: S[LK]; error: S[keyof S] | undefined; }; state(): S; get(): S; set: (updater: (s: S) => void) => void; replace: (next: S) => void; batch: import("..").Store["batch"]; transaction: import("..").Store["transaction"]; subscribe: import("..").Store["subscribe"]; update(fn: (state: S) => void): void; commit(fn: (state: S) => void): void; use: (selector?: ((state: S) => T) | undefined, equality?: ((a: T, b: T) => boolean) | undefined) => T; useState(): S; computed: (selector: (s: S) => R, equality?: ((a: R, b: R) => boolean) | undefined) => { use(): R; value(): R; subscribe(callback: (value: R) => void): () => void; }; select: (selector: (s: S) => R, equality?: ((a: R, b: R) => boolean) | undefined) => { use(): R; value(): R; subscribe(callback: (value: R) => void): () => void; }; peek(selector?: ((state: S) => T) | undefined): T; when: (predicate: (state: S) => R, effect: (value: R, state: S) => void) => () => void; watch(selector: (state: S) => R, effect: (value: R, prev: R | undefined) => void, equality?: ((a: R, b: R) => boolean) | undefined): () => void; scope(state: S, options?: { merge?: import("..").MergeMode; }): FastContext; devtools: (callback: (info: { state: S; }) => void) => () => void; actions: A extends import("..").StateActionMap ? { [K in keyof A]: (...args: Parameters extends [any, ...infer P] ? P : never) => void; } : undefined; };