office-ui-fabric-react
Version:
Reusable React components for building experiences for Office 365.
115 lines (114 loc) • 6.47 kB
TypeScript
import { DayOfWeek, FirstWeekOfYear, DateRangeType } from '../dateValues/DateValues';
/**
* Returns a date offset from the given date by the specified number of days.
* @param {Date} date - The origin date
* @param {number} days - The number of days to offset. 'days' can be negative.
* @return {Date} A new Date object offset from the origin date by the given number of days
*/
export declare function addDays(date: Date, days: number): Date;
/**
* Returns a date offset from the given date by the specified number of weeks.
* @param {Date} date - The origin date
* @param {number} weeks - The number of weeks to offset. 'weeks' can be negative.
* @return {Date} A new Date object offset from the origin date by the given number of weeks
*/
export declare function addWeeks(date: Date, weeks: number): Date;
/**
* Returns a date offset from the given date by the specified number of months.
* The method tries to preserve the day-of-month; however, if the new month does not have enough days
* to contain the original day-of-month, we'll use the last day of the new month.
* @param {Date} date - The origin date
* @param {number} months - The number of months to offset. 'months' can be negative.
* @return {Date} A new Date object offset from the origin date by the given number of months
*/
export declare function addMonths(date: Date, months: number): Date;
/**
* Returns a date offset from the given date by the specified number of years.
* The method tries to preserve the day-of-month; however, if the new month does not have enough days
* to contain the original day-of-month, we'll use the last day of the new month.
* @param {Date} date - The origin date
* @param {number} years - The number of years to offset. 'years' can be negative.
* @return {Date} A new Date object offset from the origin date by the given number of years
*/
export declare function addYears(date: Date, years: number): Date;
/**
* Returns a date that is the first day of the month of the provided date.
* @param {Date} date - The origin date
* @return {Date} A new Date object with the day set to the first day of the month.
*/
export declare function getMonthStart(date: Date): Date;
/**
* Returns a date that is the last day of the month of the provided date.
* @param {Date} date - The origin date
* @return {Date} A new Date object with the day set to the last day of the month.
*/
export declare function getMonthEnd(date: Date): Date;
/**
* Returns a date that is the first day of the year of the provided date.
* @param {Date} date - The origin date
* @return {Date} A new Date object with the day set to the first day of the year.
*/
export declare function getYearStart(date: Date): Date;
/**
* Returns a date that is the last day of the year of the provided date.
* @param {Date} date - The origin date
* @return {Date} A new Date object with the day set to the last day of the year.
*/
export declare function getYearEnd(date: Date): Date;
/**
* Returns a date that is a copy of the given date, aside from the month changing to the given month.
* The method tries to preserve the day-of-month; however, if the new month does not have enough days
* to contain the original day-of-month, we'll use the last day of the new month.
* @param {Date} date - The origin date
* @param {number} month - The 0-based index of the month to set on the date.
* @return {Date} A new Date object with the given month set.
*/
export declare function setMonth(date: Date, month: number): Date;
/**
* Compares two dates, and returns true if the two dates (not accounting for time-of-day) are equal.
* @return {boolean} True if the two dates represent the same date (regardless of time-of-day), false otherwise.
*/
export declare function compareDates(date1: Date, date2: Date): boolean;
/**
* Compare the date parts of two dates
* @param {Date} date1 - The first date to compare
* @param {Date} date2 - The second date to compare
* @returns {Number} A negative value if date1 is earlier than date2, 0 if the dates are equal, or a positive value
* if date1 is later than date2.
*/
export declare function compareDatePart(date1: Date, date2: Date): Number;
/**
* Gets the date range array including the specified date. The date range array is calculated as the list
* of dates accounting for the specified first day of the week and date range type.
* @param {Date} date - The input date
* @param {DateRangeType} dateRangeType - The desired date range type, i.e., day, week, month, etc.
* @param {DayOfWeek} firstDayOfWeek - The first day of the week.
* @param {DayOfWeek[]} workWeekDays - The allowed days in work week. If not provided, assumes all days are allowed.
* @returns {Date[]} An array of dates representing the date range containing the specified date.
*/
export declare function getDateRangeArray(date: Date, dateRangeType: DateRangeType, firstDayOfWeek: DayOfWeek, workWeekDays?: DayOfWeek[]): Date[];
/**
* Checks whether the specified date is in the given date range.
* @param {Date} date - The origin date
* @param {Date[]} dateRange - An array of dates to do the lookup on
* @returns {bool} True if the date matches one of the dates in the specified array, false otherwise.
*/
export declare function isInDateRangeArray(date: Date, dateRange: Date[]): boolean;
/**
* Returns the week number for a date.
* Week numbers are 1 - 52 (53) in a year
* @param {navigatedDate} Date - A date to find the week number for.
* @param {firstDayOfWeek} DayOfWeek - The first day of the week (0-6, Sunday = 0)
* @param {firstWeekOfYear} FirstWeekOfYear - The first week of the year (1-2)
* @return {weeksArray} The weeks number array for the current month.
*/
export declare function getWeekNumbersInMonth(weeksInMonth: number, firstDayOfWeek: DayOfWeek, firstWeekOfYear: FirstWeekOfYear, navigatedDate: Date): number[];
/**
* Returns the week number for a date.
* Week numbers are 1 - 52 (53) in a year
* @param {Date} date - A date to find the week number for.
* @param {DayOfWeek} firstDayOfWeek - The first day of the week (0-6, Sunday = 0)
* @param {firstWeekOfYear} firstWeekOfYear - The first week of the year (1-2)
* @return {Number} The week's number in the year.
*/
export declare function getWeekNumber(date: Date, firstDayOfWeek: DayOfWeek, firstWeekOfYear: FirstWeekOfYear): number;