///
///
import Countdown = require('./countdown/Countdown');
import Parser = require('./parser/Parser');
export interface LibOptions extends Countdown.Options, Parser.ParserOptions {
/**
* Class name that should be added to the provided root elements once the countdown has finished.
*
* Defaults to {@see DEFAULT_FINISHED_CLASS}
*/
finishedClass?: string;
/**
* Class name that should be removed from the provided root elements once the countdown has initialized.
*/
loadingClass?: string;
}
export interface InputOptions extends LibOptions {
/**
* Instant that the countdown will be counting down to.
*
* Accepts either a Date instance or milliseconds since UNIX epoch (1st Jan 1970 00:00 UTC)
*/
endTime: number | Date;
/**
* DOM element(s) that will be injected with the countdown.
*
* By default the {@see AttributeTemplateParser} is used to determine the format of the countdown.
* This parser uses data contained in the pre-existing DOM tree of the targets to inject the countdown.
*/
target: HTMLElement | ArrayLikeShim;
}
/**
* Entry point for the library, initializes a countdown using the target DOM and moment specified in the options.
*/
export declare function countdown(opts: InputOptions): Countdown.Controller;