import { State, StateChange, SubscribeOptions, UnknownState } from "./state.js"; import { Slice } from "./slice.js"; import { StoreCallbacks } from "./config.js"; //#region src/core/store.d.ts interface StoreOptions extends StoreCallbacks {} declare function createStore(): (slice: Slice, options?: StoreOptions) => Store; declare function isStore(value: unknown): value is AnyStore; interface BaseStore { [key: string]: unknown; readonly $state: State; readonly target: Target | null; readonly destroyed: boolean; readonly state: State$1; attach(target: Target): () => void; destroy(): void; subscribe(callback: StateChange, options?: SubscribeOptions): () => void; } type Store = BaseStore & State; type AnyStore = BaseStore; type UnknownStore = Store; type InferStoreTarget = S extends Store ? T : never; type InferStoreState = S extends Store ? State : never; //#endregion export { AnyStore, BaseStore, InferStoreState, InferStoreTarget, Store, StoreOptions, UnknownStore, createStore, isStore }; //# sourceMappingURL=store.d.ts.map