import "../../libs/Mobiscroll/js/mobiscroll.jquery.min";
import * as moment from "moment";
import { MbscCalendarOptions } from "../../libs/Mobiscroll/js/mobiscroll.jquery.min";
/**
 * Datepicker module options
 */
export interface ICalendarModuleOptions {
    /**
     * Date format to when a date is picked
     */
    dateFormat?: string;
    /**
     * Time format to when a date is picked
     */
    timeFormat?: string;
    /**
     * Localization "da" is default, use "en" for english version
     */
    lang?: string;
    /**
     * This event is triggered when a date is selceted
     */
    onSetDate?: (event: any, inst: any) => void;
    /**
     * This event is triggered when a Set button is clicked
     */
    onSet?: (event: any, inst: any) => void;
    /**
     * This event is triggered when the datepicker is initialized
     */
    onInit?: (event: any, inst: any) => void;
    /**
     * Min date for datepicker
     */
    min?: moment.Moment;
    /**
     * Max date for datepicker
     */
    max?: moment.Moment;
    /**
     * Rendering mode, default value is "calender". Possible values: ['time', 'calendar'], ['date', 'calendar'] or [calendar]
     */
    calenderTypeOption?: DatetimePickerTypeEnum;
    /**
     * If true, the scroll wheels are circular.
     */
    circular?: boolean | boolean[];
    /**
     * If true clear button is visible on mobile devices
     */
    allowClear?: boolean;
    /**
     * Optional: Override additional mobiscroll settings. Does not override datepicker settings defined in ICalendarModuleOptions.
     */
    additionalMbscCalenderOptions?: MbscCalendarOptions;
}
export declare enum DatetimePickerTypeEnum {
    Time = 1,
    Date = 2,
    DateAndTime = 3
}
export default class DatetimePickerModule {
    $element: JQuery;
    private readonly moduleInitKey;
    /**
     * Init the datepicker
     * @param selector Selector or HTML element for the datepicker you want to initialize
     * @param options Options for the datepicker
     */
    init(selector: string | HTMLElement, options?: ICalendarModuleOptions): void;
    getInstance(selector: string): any;
    setDate(selector: string, date: moment.Moment): void;
    private initCalendarModule;
    private getCalendarModules;
}
