import { Action as ReduxAction } from 'redux' export interface MainState { loading: boolean error?: string } export type Action = | ActionWithoutPayload | ActionWithPayload export type ActionWithoutPayload = ReduxAction export interface ActionWithPayload extends ReduxAction { payload: P }