import { TdDatePickerProps } from '.';
import { TdCSSProperties } from './interface';
export declare const nextMonth: (date: Date) => Date;
export declare const prevMonth: (date: Date) => Date;
export declare function empty(mixedVar: any): mixedVar is undefined | null | false | '' | {};
export declare function toDash(strCamelCase: string): string;
export declare function setStyles(el: HTMLElement | SVGElement, styles: TdCSSProperties): void;
export declare function firstUpperCase(str: string): string;
export declare function isSame(date1: Date, date2: Date, type?: string): boolean;
export declare function outOfRanges(d: Date, min: any, max: any): boolean;
export declare function getToday(): Date;
export declare function getDateObj(date: Date): {
    year: number;
    month: number;
    date: number;
    hours: number;
    minutes: number;
    seconds: number;
    meridiem: string;
};
export declare function setDateTime(d: Date, hour: number, min: number, sec: number): Date;
export declare function subtractMonth(date: Date, num: any): Date;
export declare function addMonth(date: Date, num: number): Date;
export interface OptionsType {
    firstDayOfWeek: number;
    disableDate: TdDatePickerProps['disableDate'];
    minDate: Date;
    maxDate: Date;
    monthLocal?: string[];
}
export declare function getWeeks({ year, month }: {
    year: number;
    month: number;
}, { firstDayOfWeek, disableDate, minDate, maxDate, }: OptionsType): ({
    text: number;
    active: boolean;
    value: Date;
    disabled: boolean;
    now: boolean;
    firstDayOfMonth: boolean;
    lastDayOfMonth: boolean;
    type: string;
    additional?: undefined;
} | {
    text: string;
    active: boolean;
    value: Date;
    disabled: boolean;
    additional: boolean;
    type: string;
    now?: undefined;
    firstDayOfMonth?: undefined;
    lastDayOfMonth?: undefined;
} | {
    text: number;
    active: boolean;
    value: Date;
    disabled: boolean;
    additional: boolean;
    type: string;
    now?: undefined;
    firstDayOfMonth?: undefined;
    lastDayOfMonth?: undefined;
})[][];
export declare function getYears(year: number, { disableDate, minDate, maxDate, }: OptionsType): {
    value: Date;
    now: boolean;
    disabled: boolean;
    active: boolean;
    text: string;
}[][];
export declare function getMonths(year: number, params: OptionsType): {
    value: Date;
    now: boolean;
    disabled: boolean;
    active: boolean;
    text: string;
}[][];
interface DateTime {
    active: boolean;
    highlight: boolean;
    startOfRange: boolean;
    endOfRange: boolean;
    value: Date;
}
export declare function flagActive(data: any[], { ...args }: any): DateTime[][];
export declare function extractTimeFormat(dateFormat: string): string;
export {};
