UNPKG

dayjs-business-days2

Version:

Day.js plugin to add support for calculating dates only accounting for Business days

45 lines (40 loc) 1.53 kB
import { Dayjs, PluginFunc } from 'dayjs'; declare const plugin: PluginFunc; export as namespace plugin export = plugin; declare namespace plugin { interface BusinessDaysPluginOptions { holidays?: string[]; holidayFormat?: string; additionalWorkingDays?: string[]; additionalWorkingDayFormat?: string; workingWeekdays?: number[]; } interface BusinessDaysPlugin { isHoliday(): boolean; isBusinessDay(): boolean; isAdditionalWorkingDay(): boolean; businessDaysAdd(days: number): Dayjs; businessDaysSubtract(days: number): Dayjs; businessDiff(date: Dayjs): number; nextBusinessDay(): Dayjs; prevBusinessDay(): Dayjs; businessDaysInMonth(): Dayjs[]; lastBusinessDayOfMonth(): Dayjs; businessWeeksInMonth(): Dayjs[][]; } } declare module 'dayjs' { // eslint-disable-next-line @typescript-eslint/no-empty-interface, no-shadow interface Dayjs extends plugin.BusinessDaysPlugin { } function getWorkingWeekdays(): number[]; function setWorkingWeekdays(workingWeekdays: number[]): void; function getHolidays(): string[]; function setHolidays(holidays: string[]): void; function getHolidayFormat(): string | undefined; function setHolidayFormat(holidayFormat: string): void; function getAdditionalWorkingDays(): string[]; function setAdditionalWorkingDays(additionalWorkingDays: string[]): void; function getAdditionalWorkingDayFormat(): string | undefined; function setAdditionalWorkingDayFormat(additionalWorkingDayFormat: string): void; }