import { ComponentType, FunctionComponent, ReactNode } from 'react'; export declare type Dakpan, I extends boolean> = [ FunctionComponent>, DakpanHook, DakpanHoc ]; export declare type DakpanHook> = (nullable?: T) => T extends false ? [S, MappedActions] : [S | undefined, MappedActions | undefined]; export declare type DakpanHoc> = (map: (state: S, actions: MappedActions) => H) =>

(component: ComponentType

) => ComponentType

; export declare type DakpanContext> = undefined | { state: S; actions: MappedActions; }; export declare type ProviderProps = { children?: ReactNode; } & (I extends true ? {} : { value: S; reinitialize?: boolean; }); export declare type Actions = { [action: string]: (...args: any[]) => (state: S, get: () => S) => S | undefined | Promise; }; export declare type MappedActions> = { [K in keyof A]: ((...args: Parameters) => Promise) & { c: (...args: Parameters) => () => Promise; }; }; export declare type InitialState = S | (() => S); //# sourceMappingURL=types.d.ts.map