@blac/react
Version:
Demo [https://blac-react-demo.vercel.app/](https://blac-react-demo.vercel.app/)
20 lines (18 loc) • 798 B
TypeScript
import { BlocConstructor, BlocGeneric, BlocHookDependencyArrayFn, BlocState, InferPropsFromGeneric } from 'blac';
type HookTypes<B extends BlocConstructor<BlocGeneric>> = [
BlocState<InstanceType<B>>,
InstanceType<B>
];
export interface BlocHookOptions<B extends BlocGeneric<any, any>> {
id?: string;
dependencySelector?: BlocHookDependencyArrayFn<B>;
props?: InferPropsFromGeneric<B>;
inferStateUsage?: boolean;
}
export declare class UseBlocClass {
static ridUsedKeys: Map<string, Set<string>>;
static getUsedKeys: (rid: string) => Set<string>;
static useBloc<B extends BlocConstructor<BlocGeneric>, O extends BlocHookOptions<InstanceType<B>>>(bloc: B, options?: O): HookTypes<B>;
}
declare const useBloc: typeof UseBlocClass.useBloc;
export default useBloc;