UNPKG

@tubular/time

Version:

Date/time, IANA timezones, leap seconds, TAI/UTC conversions, calendar with settable Julian/Gregorian switchover

112 lines 4.27 kB
export declare const MIN_YEAR = -271820; export declare const MAX_YEAR = 275759; export declare const MINUTE_MSEC = 60000; export declare const HOUR_MSEC = 3600000; export declare const DAY_MSEC = 86400000; export declare const DAY_SEC = 86400; export declare const DAY_MINUTES = 1440; export declare const UNIX_TIME_ZERO_AS_JULIAN_DAY = 2440587.5; export declare const JD_J2000 = 2451545; export declare const DELTA_TDT_SEC = 32.184; export declare const DELTA_TDT_MSEC = 32184; export declare const DELTA_TDT_DAYS: number; export declare const DELTA_MJD = 2400000.5; export declare const enEras: string[]; export declare const enMonths: string[]; export declare const enMonthsShort: string[]; export declare const enWeekdays: string[]; export declare const enWeekdaysShort: string[]; export declare const enWeekdaysMin: string[]; declare type Formatter = (dt: any, fmt: string, localeOverride?: string | string[]) => string; export declare let formatter: Formatter; export declare const setFormatter: (fmt: Formatter) => any; declare type DeltaTUpdater = (post2019values?: number[], lastKnownLeapSecond?: YMDDate) => void; export declare let deltaTUpdater: DeltaTUpdater; export declare const setDeltaTUpdater: (dtu: DeltaTUpdater) => any; /** * Specifies a calendar date by year, month, and day. Optionally provides day number and boolean flag indicating Julian * or Gregorian. */ export interface YMDDate { /** Year as signed integer (0 = 1 BCE, -1 = 2 BCE, etc.). */ y?: number; year?: number; /** Quarter as 1-4. */ q?: number; quarter?: number; /** Month as 1-12. */ m?: number; month?: number; /** Day of month. */ d?: number; day?: number; /** Day of week as 0-6 for Sunday-Saturday. */ dow?: number; dayOfWeek?: number; /** Day of week month index, 1-5, e.g. 2 for 2nd Tuesday of the month. */ dowmi?: number; dayOfWeekMonthIndex?: number; /** Day of year. */ dy?: number; dayOfYear?: number; /** Day number where 1970-01-01 = 0. */ n?: number; epochDay?: number; /** true if this is a Julian calendar date, false for Gregorian. */ j?: boolean; isJulian?: boolean; /** ISO year for week of year. */ yw?: number; yearByWeek?: number; /** ISO week of year. */ w?: number; week?: number; /** ISO day or week. */ dw?: number; dayByWeek?: number; /** Locale year for week of year. */ ywl?: number; yearByWeekLocale?: number; /** Locale week of year. */ wl?: number; weekLocale?: number; /** Locale day or week. */ dwl?: number; dayByWeekLocale?: number; /** Error, if any. */ error?: string; } export interface DateAndTime extends YMDDate { hrs?: number; hour?: number; min?: number; minute?: number; sec?: number; second?: number; millis?: number; utcOffset?: number; dstOffset?: number; occurrence?: number; deltaTai?: number; /** Julian days, ephemeris. */ jde?: number; /** Modified Julian days, ephemeris. */ mjde?: number; /** Julian days, UT. */ jdu?: number; /** Modified Julian days, UT. */ mjdu?: number; } export declare function syncDateAndTime<T extends YMDDate | DateAndTime>(obj: T): T; export declare function purgeAliasFields<T extends YMDDate | DateAndTime>(obj: T, keepLongForm?: boolean): T; export declare function minimizeFields<T extends YMDDate | DateAndTime>(obj: T): T; export declare function orderFields<T extends YMDDate | DateAndTime>(obj: T): T; export declare function validateDateAndTime(obj: YMDDate | DateAndTime): void; export declare function parseISODateTime(date: string, allowLeapSecond?: boolean): DateAndTime; export declare function parseTimeOffset(offset: string, roundToMinutes?: boolean): number; export declare function getDatePart(format: Intl.DateTimeFormat, date: number, partName: string): string; export declare function getDatePart(fields: Intl.DateTimeFormatPart[], partName: string): string; export declare function getDateValue(format: Intl.DateTimeFormat, date: number, partName: string): number; export declare function getDateValue(fields: Intl.DateTimeFormatPart[], partName: string): number; export {}; //# sourceMappingURL=common.d.ts.map