import { defineStore } from 'pinia' import { AppStoreEnum } from '#lib/enums' interface CancelPromotion { // Reactive variable to control the visibility of the cancel promotion modal. isOpenCancelPromotionModal: boolean // Reactive variable to control the visibility of the confirm cancel promotion modal. isOpenConfirmCancelPromotionModal: boolean // Reactive variable to control the visibility of the withdraw error with promotion modal. isOpenWithdrawErrorModal: boolean, isOpenWithdrawUsingPromotionModal: boolean, isOpenUsingPromotionModal: boolean, } export const usePromotionStore = defineStore(AppStoreEnum.Promotion, { state: (): CancelPromotion => ({ isOpenCancelPromotionModal: false, isOpenConfirmCancelPromotionModal: false, isOpenWithdrawErrorModal: false, isOpenWithdrawUsingPromotionModal: false, isOpenUsingPromotionModal: false, }), actions: { setOpenCancelPromotionModal(value: boolean) { this.isOpenCancelPromotionModal = value }, setOpenConfirmCancelPromotionModal(value: boolean) { this.isOpenConfirmCancelPromotionModal = value }, setOpenWithdrawErrorModal(value: boolean) { this.isOpenWithdrawErrorModal = value }, setOpenWithdrawUsingPromotionModal(value: boolean) { this.isOpenWithdrawUsingPromotionModal = value }, setOpenUsingPromotionModal(value: boolean) { this.isOpenUsingPromotionModal = value }, }, })