/** * @Author: Rostislav Simonik * @Date: 2019-02-23T12:18:54+01:00 * @Email: rostislav.simonik@technologystudio.sk * @Copyright: Technology Studio **/ import type { HandlerAction, Redux, ReduxHandler } from '@txo/redux'; export type ContextActionAttributes = { context?: string; }; export type ContextActionCreator | undefined, ADDITIONAL_ACTION_ATTRIBUTES extends ContextActionAttributes | undefined = ContextActionAttributes> = (attributes: ATTRIBUTES, actionAttribues?: ADDITIONAL_ACTION_ATTRIBUTES) => HandlerAction & ADDITIONAL_ACTION_ATTRIBUTES; export type InternalContextState = { [state: string]: InternalContextState | STATE | undefined; } | STATE | undefined; export type ContextState = InternalContextState | STATE | Record; export type ContextRedux>> = Redux, INNER_STATE, HANDLER_KEY, HANDLERS>;