import { Action } from 'redux' import { Entity, EntityStore, EntityType } from '../types' export interface SetEntityAction extends Action { type: 'ENTITIES_SET_ENTITY' payload: { type: string entity: Entity } } export interface SetEntitiesAction extends Action { type: 'ENTITIES_SET_ENTITIES' payload: { entities: EntityStore } } export type EntitiesActions = SetEntityAction | SetEntitiesAction export const setEntity = (type: EntityType, entity: Entity): SetEntityAction => ({ type: 'ENTITIES_SET_ENTITY', payload: { type, entity, } }) export const setEntities = (entities: EntityStore): SetEntitiesAction => ({ type: 'ENTITIES_SET_ENTITIES', payload: { entities, } })