+export const formatDurationMilliSeconds = (duration: number): string => {
+ duration = convertToInt(duration)
+ if (duration < 0) {
+ throw new RangeError('Duration cannot be negative')
+ }
+ const days = Math.floor(duration / (24 * 3600 * 1000))
+ const hours = Math.floor(millisecondsToHours(duration) - days * 24)
+ const minutes = Math.floor(
+ millisecondsToMinutes(duration) - days * 24 * 60 - hoursToMinutes(hours)
+ )
+ const seconds = Math.floor(
+ millisecondsToSeconds(duration) -
+ days * 24 * 3600 -
+ hoursToSeconds(hours) -
+ minutesToSeconds(minutes)
+ )
+ if (days === 0 && hours === 0 && minutes === 0 && seconds === 0) {
+ return formatDuration({ seconds }, { zero: true })
+ }
+ return formatDuration({
+ days,
+ hours,
+ minutes,
+ seconds
+ })
+}