import { ResourceElement, Unsubscribe } from "@assistant-ui/tap";
export interface Store<TState> {
    /**
     * Get the current state of the store.
     */
    getState(): TState;
    /**
     * Subscribe to the store.
     */
    subscribe(listener: () => void): Unsubscribe;
    /**
     * Synchronously flush all the updates to the store.
     */
    flushSync(): void;
}
export declare const asStore: <TState, TProps>(props: ResourceElement<TState, TProps>, options?: {
    key?: string | number;
} | undefined) => ResourceElement<Store<TState>, ResourceElement<TState, TProps>>;
//# sourceMappingURL=store.d.ts.map