import type { BCMSGroup } from '@becomes/cms-sdk/types'; import type { BCMSStoreActionTypes, BCMSStoreGetterTypes, BCMSStoreMutationTypes, } from './enums'; import type { BCMSStoreActionAugments, BCMSStoreGetterQuery, BCMSStoreState, } from './main'; type EntityItem = BCMSGroup; export interface BCMSStoreGroupMutations { [BCMSStoreMutationTypes.group_set]( state: BCMSStoreState, payload: EntityItem | EntityItem[] ): void; [BCMSStoreMutationTypes.group_remove]( state: BCMSStoreState, payload: EntityItem | EntityItem[] ): void; } export interface BCMSStoreGroupGetters { [BCMSStoreGetterTypes.group_items](state: BCMSStoreState): EntityItem[]; [BCMSStoreGetterTypes.group_find]( state: BCMSStoreState ): (query: BCMSStoreGetterQuery) => EntityItem[]; [BCMSStoreGetterTypes.group_findOne]( state: BCMSStoreState ): (query: BCMSStoreGetterQuery) => EntityItem | undefined; } export interface BCMSStoreGroupActions { [BCMSStoreActionTypes.group_set]( ctx: BCMSStoreActionAugments, payload: EntityItem[] ): void; [BCMSStoreActionTypes.group_remove]( ctx: BCMSStoreActionAugments, payload: EntityItem | EntityItem[] ): void; }