react-rooks
Version:
Store management for React and React Native with simple hooks !
25 lines (24 loc) • 1.52 kB
TypeScript
import type { RookStore, RookContext, UseStoreHookReturn, RookStoreReducer, RookReducers, RookComponent } from "./type";
export declare const createUseRook: <Store extends RookStore>(context: RookContext<Store>) => <StoreKey extends keyof Store>(key?: StoreKey) => UseStoreHookReturn<Store, StoreKey>;
export declare function createRook<Store extends RookStore>({ defaultStore, storeReducer, reducers, }: {
init?: undefined;
defaultStore: Store;
storeReducer?: RookStoreReducer<Store>;
reducers?: RookReducers<Store>;
}): [
RookComponent,
<StoreKey extends Extract<keyof Store, string> | undefined = undefined>(key?: StoreKey) => UseStoreHookReturn<Store, StoreKey>
];
export declare function createRook<const DefaultStore extends RookStore, const Store extends RookStore>({ defaultStore, init, storeReducer, reducers, }: {
defaultStore?: DefaultStore;
init: (initStore: DefaultStore) => Promise<Store>;
storeReducer?: RookStoreReducer<Store>;
reducers?: RookReducers<Store>;
}): [
RookComponent,
<StoreKey extends Extract<keyof Store, string> | undefined = undefined>(key?: StoreKey) => UseStoreHookReturn<Store, StoreKey>
];
export declare const createStoreRook: <Store extends RookStore>(defaultStore: Store, { reducers, storeReducer, }?: {
reducers?: RookReducers<Store>;
storeReducer?: RookStoreReducer<Store>;
}) => [RookComponent, <StoreKey extends Extract<keyof Store, string> | undefined = undefined>(key?: StoreKey) => UseStoreHookReturn<Store, StoreKey>];