@open-game-system/app-bridge-react
Version:
React hooks and components for the app-bridge ecosystem
30 lines (27 loc) • 1.28 kB
TypeScript
import * as react from 'react';
import { ReactNode } from 'react';
import * as react_jsx_runtime from 'react/jsx-runtime';
import { BridgeStores, Bridge, Store } from '@open-game-system/app-bridge-types';
declare function createBridgeContext<TStores extends BridgeStores>(): {
Provider: react.MemoExoticComponent<({ children, bridge, }: {
children: ReactNode;
bridge: Bridge<TStores>;
}) => react_jsx_runtime.JSX.Element>;
createStoreContext: <K extends keyof TStores>(storeKey: K) => {
Provider: react.MemoExoticComponent<({ children }: {
children: ReactNode;
}) => react_jsx_runtime.JSX.Element | null>;
Loading: react.MemoExoticComponent<({ children }: {
children: ReactNode;
}) => react_jsx_runtime.JSX.Element | null>;
useStore: () => Store<TStores[K]["state"], TStores[K]["events"]>;
useSelector: <T>(selector: (state: TStores[K]["state"]) => T) => T;
};
Supported: react.MemoExoticComponent<({ children }: {
children: ReactNode;
}) => react_jsx_runtime.JSX.Element | null>;
Unsupported: react.MemoExoticComponent<({ children }: {
children: ReactNode;
}) => react_jsx_runtime.JSX.Element | null>;
};
export { createBridgeContext };