import { DateTimeType } from './Props';
import { DateMode } from './Props';
interface DateOptions {
    timeZone?: string;
    weekStartsOn?: number;
}
export declare const compatibleFmt: (fmt?: string | undefined) => string | undefined;
declare function transDateWithZone(dd: Date, options?: DateOptions, back?: boolean): Date;
declare function addDays(date: Date, offset: number, options: DateOptions): Date;
declare function addMonths(date: Date, offset: number, options: DateOptions): Date;
declare function addSeconds(date: Date, offset: number, options: DateOptions): Date;
declare function addYears(date: Date, offset: number, options: DateOptions): Date;
declare function changeDate(date: Date, type: DateMode, num: number, options: DateOptions): Date;
declare function getDateInfo(date: Date, type: DateMode, options: DateOptions): number;
declare function compareAsc(dateA: DateTimeType, dateB: DateTimeType): number;
declare function isSameMonth(date1: Date, date2: Date, options?: DateOptions): boolean;
declare function isSameDay(date1: Date, date2: Date, options: DateOptions): boolean;
declare function isSameWeek(date1: Date, date2: Date, options: DateOptions): boolean;
declare function isSameQuarter(date1: Date, date2: Date, options: DateOptions): boolean;
declare function isValid(date: DateTimeType): boolean;
declare function parse(d: string, fmt?: string, options?: DateOptions): Date;
declare function toDate(day: DateTimeType, options?: DateOptions): Date;
declare function getDaysOfMonth(dirtyDate: DateTimeType, options: DateOptions): Date[];
declare function isInvalid(date: unknown): boolean;
declare function toDateWithFormat(dirtyDate: DateTimeType, fmt?: string, def?: Date, options?: DateOptions): Date;
declare function compareDay(dateLeft: Date, dateRight: Date, pad: number | undefined, options: DateOptions): number;
declare function compareMonth(dateLeft: Date, dateRight: Date, pad: number | undefined, options: DateOptions): number;
declare function compareWeek(dateLeft: Date, dateRight: Date, pad: number | undefined, options: DateOptions): number;
declare function compareYear(dateLeft: Date, dateRight: Date, pad: number | undefined, options: DateOptions): number;
declare function compareQuarter(dateLeft: Date, dateRight: Date, pad: number | undefined, options: DateOptions): number;
declare function newDate(defaultDate?: Date | DateTimeType, options?: DateOptions): Date;
declare function setTime(date: Date, old: Date, options?: DateOptions): Date;
declare function cloneTime(date: Date, old: Date, fmt?: string, options?: DateOptions): Date;
declare function formatDateWithDefaultTime(date: Date, value: Date | undefined, defaultTime: Date | undefined, fmt: string, options: DateOptions): string | Date;
declare function clearHMS(date: Date, options: DateOptions): Date;
declare function compareDateArray(arr1: Date[], arr2: Date[], type: string | undefined, options: DateOptions): boolean;
declare function resetTimeByFormat(value: Date | undefined, fo: string, options: DateOptions): Date | null;
declare function formatted(date: Date, fmt: string | Function, options: DateOptions): any;
declare const _default: {
    clearHMS: typeof clearHMS;
    addDays: typeof addDays;
    addMonths: typeof addMonths;
    addYears: typeof addYears;
    addSeconds: typeof addSeconds;
    cloneTime: typeof cloneTime;
    compareAsc: typeof compareAsc;
    compareMonth: typeof compareMonth;
    compareWeek: typeof compareWeek;
    compareDay: typeof compareDay;
    compareQuarter: typeof compareQuarter;
    getDaysOfMonth: typeof getDaysOfMonth;
    format: typeof formatted;
    isInvalid: typeof isInvalid;
    isSameDay: typeof isSameDay;
    isSameMonth: typeof isSameMonth;
    isSameWeek: typeof isSameWeek;
    isSameQuarter: typeof isSameQuarter;
    isValid: typeof isValid;
    newDate: typeof newDate;
    setTime: typeof setTime;
    parse: typeof parse;
    toDate: typeof toDate;
    toDateWithFormat: typeof toDateWithFormat;
    formatDateWithDefaultTime: typeof formatDateWithDefaultTime;
    compareDateArray: typeof compareDateArray;
    compareYear: typeof compareYear;
    TIME_FORMAT: string;
    resetTimeByFormat: typeof resetTimeByFormat;
    changeDate: typeof changeDate;
    getDateInfo: typeof getDateInfo;
    compatibleFmt: (fmt?: string | undefined) => string | undefined;
    transDateWithZone: typeof transDateWithZone;
};
export default _default;
