export {};
declare global {
    interface Date {
        addDays(days: number): Date;
        addYears(year: number): Date;
        addMonths(year: number): Date;
        addHours(year: number): Date;
        addMinutes(year: number): Date;
        addSeconds(year: number): Date;
        timeEqual(date1: dateType): Boolean;
        dateEqual(date1: dateType): Boolean;
        getDatePart(): Date;
        getTimeSpan(d: dateType): timeSpan;
        dateToString(format: string): string;
        toArray(): number[];
        chainSetFullYear(val: number): Date;
        chainSetMonth(val: number): Date;
        chainSetDate(val: number): Date;
        chainSetHours(val: number): Date;
        chainSetMinutes(val: number): Date;
        chainSetSeconds(val: number): Date;
        chainSetMilliseconds(val: number): Date;
    }
}
export declare type dateType = string | number | Date;
export interface timeSpan {
    years: number;
    totalMonths: number;
    totalDays: number;
    totalHours: number;
    totalMinutes: number;
    totalSeconds: number;
}
export declare function getTimeSpan(date1: Date, date2: Date): timeSpan;
export declare function immutableDate(d?: dateType): Date;
export declare function addSeconds(d: dateType, val: number): Date;
export declare function setSeconds(d: dateType, val: number): Date;
export declare function addMinutes(d: dateType, val: number): Date;
export declare function setMinutes(d: dateType, val: number): Date;
export declare function addHours(d: dateType, val: number): Date;
export declare function setHours(d: dateType, val: number): Date;
export declare function addYears(d: dateType, val: number): Date;
export declare function setFullYear(d: dateType, val: number): Date;
export declare function addMonths(d: dateType, val: number): Date;
export declare function setMonths(d: dateType, val: number): Date;
export declare function addDays(d: dateType, val: number): Date;
export declare function setDate(d: dateType, val: number): Date;
export declare function addMilliseconds(d: dateType, val: number): Date;
export declare function setMilliseconds(d: dateType, val: number): Date;
export declare function getToday(): Date;
export declare function getDatePart(d: dateType): Date;
export declare function timeEqual(d1: dateType, d2: dateType): boolean;
export declare function dateEqual(d1: dateType, d2: dateType, d1format?: string | undefined, d2format?: string | undefined): boolean;
export declare function parseDate(s: string, format: string, isUtc?: boolean): Date;
export declare function toArray(d: dateType): number[];
export declare function dateToString(d: dateType, format?: string): string;
