UNPKG

@rtdui/hooks

Version:

React hooks library base on @mantine/hooks

14 lines (13 loc) 740 B
export type RtdStoreSubscriber<Value> = (value: Value) => void; type SetStateCallback<Value> = (value: Value) => Value; export interface RtdStore<Value> { getState: () => Value; setState: (value: Value | SetStateCallback<Value>) => void; updateState: (value: Value | SetStateCallback<Value>) => void; initialize: (value: Value) => void; subscribe: (callback: RtdStoreSubscriber<Value>) => () => void; } export type RtdStoreValue<Store extends RtdStore<any>> = ReturnType<Store["getState"]>; export declare function createStore<Value extends Record<string, any>>(initialState: Value): RtdStore<Value>; export declare function useStore<Store extends RtdStore<any>>(store: Store): ReturnType<Store["getState"]>; export {};