import { ScheduleEvent, ScheduleEventHandler } from '../../utils/types'
import { Reward } from './models'

const rewardSchedules = {} as Record<ScheduleEvent, ScheduleEventHandler>

rewardSchedules['reward-daily-reset'] = async (data: Record<string, any>) => {
	interface Payload {
		reward: string
		schedule: string
	}
	const { reward: rewardId } = data as Payload
	const reward = await Reward.findById(rewardId)
	if (!reward || reward.limitType !== 'daily' || !reward.isMeetme) {
		return
	}
	reward.remaining = reward.total
	await reward.save()
}

export default rewardSchedules
