@etsoo/react
Version:
TypeScript ReactJs UI Independent Framework
19 lines (18 loc) • 690 B
TypeScript
import { IAction, IState } from "@etsoo/appscript";
import React from "react";
import { IProviderProps, IUICreator, IUpdate } from "./IState";
/**
* State
*/
export declare class State {
/**
* Generic to create state context and provider
* @param reducer Reduce function
* @param initState Init state
* @param uiCreator Additional UI creator
*/
static create<S extends IState, A extends IAction, U extends IUpdate<S, A>, P extends IProviderProps<A>>(reducer: React.Reducer<S, A>, initState: S, calls: U, uiCreator?: IUICreator<S, A, P>): {
context: React.Context<U>;
provider: React.FunctionComponent<React.PropsWithChildren<P>>;
};
}