interface TimerObject {
  days: number;
  hours: number;
  minutes: number;
  seconds: number;
}

export function calculateTimeLeft(targetDate: string) {
  const difference = +new Date(targetDate) - +new Date();
  let timeLeft = {};

  if (0 < difference) {
    timeLeft = {
      days: Math.floor(difference / (1000 * 60 * 60 * 24)),
      hours: Math.floor((difference / (1000 * 60 * 60)) % 24),
      minutes: Math.floor((difference / 1000 / 60) % 60),
      seconds: Math.floor((difference / 1000) % 60),
    } as TimerObject;
  }

  return timeLeft as TimerObject;
}
