UNPKG

hyperformula-dc

Version:

HyperFormula is a JavaScript engine for efficient processing of spreadsheet-like data and formulas

62 lines (61 loc) 2.47 kB
/** * @license * Copyright (c) 2021 Handsoncode. All rights reserved. */ import { Config } from './Config'; import { ExtendedNumber } from './interpreter/InterpreterValue'; import { Maybe } from './Maybe'; export interface SimpleDate { year: number; month: number; day: number; } export interface SimpleTime { hours: number; minutes: number; seconds: number; } export declare type SimpleDateTime = SimpleDate & SimpleTime; export declare type DateTime = SimpleTime | SimpleDate | SimpleDateTime; export declare function instanceOfSimpleDate(obj: any): obj is SimpleDate; export declare function instanceOfSimpleTime(obj: any): obj is SimpleTime; export declare const maxDate: SimpleDate; export declare class DateTimeHelper { private readonly config; private readonly minDateAboluteValue; private readonly maxDateValue; private readonly epochYearZero; private readonly parseDateTime; private readonly leapYear1900; constructor(config: Config); getWithinBounds(dayNumber: number): Maybe<number>; dateStringToDateNumber(dateTimeString: string): Maybe<ExtendedNumber>; private parseSingleFormat; parseDateTimeFromConfigFormats(dateTimeString: string): Partial<{ dateTime: DateTime; dateFormat: string; timeFormat: string; }>; private parseDateTimeFromFormats; getNullYear(): number; getEpochYearZero(): number; isValidDate(date: SimpleDate): boolean; dateToNumber(date: SimpleDate): number; relativeNumberToAbsoluteNumber(arg: number): number; numberToSimpleDate(arg: number): SimpleDate; numberToSimpleDateTime(arg: number): SimpleDateTime; leapYearsCount(year: number): number; private countLeapDays; private dateToNumberFromZero; private isLeapYear; daysInMonth(year: number, month: number): number; endOfMonth(date: SimpleDate): SimpleDate; toBasisUS(start: SimpleDate, end: SimpleDate): [SimpleDate, SimpleDate]; yearLengthForBasis(start: SimpleDate, end: SimpleDate): number; } export declare function offsetMonth(date: SimpleDate, offset: number): SimpleDate; export declare function truncateDayInMonth(date: SimpleDate): SimpleDate; export declare function roundToNearestSecond(arg: number): number; export declare function numberToSimpleTime(arg: number): SimpleTime; export declare function timeToNumber(time: SimpleTime): number; export declare function toBasisEU(date: SimpleDate): SimpleDate;