countdownAmount = function countdownAmount(total) {
	var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};


	if (typeof total !== 'number') {
		throw 'Can\'t start counter, the "milliseconds" parameter is required';
	}

	// set base options
	options = mergeObjects({ units: 'seconds', target: 0, amount: 1000, interval: 1000 }, options);

	// set private target
	var target = options.target;
	var current = total;

	// counter api
	var counter = createCounter({
		target: target,
		onended: function onended() {}
	});

	setTimeout(function () {

		// count method
		var count = function count(runtime) {

			current = total - runtime / options.interval * options.amount;

			// test if reached target date
			if (current <= target) {

				// set final value
				counter.value = options.target;

				// set output to zero
				counter.onupdate(counter.value / TimeUnit[options.units]);

				// stop timer
				counter.timer.stop();

				// we're done!
				counter.onended();

				// really done!
				return;
			}

			// set value
			counter.value = current;

			// calculate duration
			counter.onupdate(counter.value / TimeUnit[options.units]);
		};

		// set our counter, don't start automatically as we want to call onload first
		counter.timer = setTimer(count, options.interval, { autostart: false });

		// ready!
		counter.complete = true;
		counter.onload();

		// start timer automatically
		counter.timer.start();
	}, 0);

	return counter;
}
Countdown Value
@param total - total milliseconds to count down
@param options