import type { Dispatch } from 'react' import actionTypes from './action-types' import type { SetBoldActionType, SetHeaderActionType, SetItalicActionType, SetListActionType, SetDisabled, ResetFormatType, SetLinkActionType, } from './types' const setBold = (dispatch: Dispatch) => (payload: SetBoldActionType['payload']) => dispatch({ type: actionTypes.bold, payload }) const setItalic = (dispatch: Dispatch) => (payload: SetItalicActionType['payload']) => dispatch({ type: actionTypes.italic, payload }) const setHeader = (dispatch: Dispatch) => (payload: SetHeaderActionType['payload']) => dispatch({ type: actionTypes.header, payload }) const setList = (dispatch: Dispatch) => (payload: SetListActionType['payload']) => dispatch({ type: actionTypes.list, payload }) const setLink = (dispatch: Dispatch) => (payload: SetLinkActionType['payload']) => dispatch({ type: actionTypes.link, payload }) const setDisabled = (dispatch: Dispatch) => (payload: boolean) => dispatch({ type: actionTypes.disabled, payload }) const resetFormat = (dispatch: Dispatch) => () => dispatch({ type: actionTypes.resetFormat }) const actions = { setBold, setItalic, setHeader, setList, setLink, setDisabled, resetFormat, } export default actions