UNPKG

anux-common

Version:

[![Build Status](https://travis-ci.com/Anupheaus/anux-common.svg?branch=master)](https://travis-ci.com/Anupheaus/anux-common) [![Codacy Badge](https://api.codacy.com/project/badge/Grade/dd0e0bd3a96247a5a78c02a812f949f8)](https://www.codacy.com/app/Anuphea

44 lines (43 loc) 1.43 kB
import moment from 'moment'; import 'moment/locale/en-gb'; import { TimeUnits } from '../models'; import './object'; export { moment }; declare global { interface IDateExtents { from: number; to: number; } interface IDatePeriod { from: number; to: number; fraction?: number; } interface IFromPeriodsResult { joinedPeriods: IDatePeriod[]; activePeriods: IDatePeriod[]; inactivePeriods: IDatePeriod[]; extents: IDateExtents; } interface DateConstructor { periods: { from(activePeriods: IDatePeriod[]): IFromPeriodsResult; from(activePeriods: IDatePeriod[], toTimeUnits: TimeUnits): IFromPeriodsResult; extents(periods: IDatePeriod[]): IDateExtents; doOverlap(period1: IDatePeriod, period2: IDatePeriod): boolean; }; random(): Date; random(from: Date): Date; random(from: Date, to: Date): Date; min(...dates: Date[]): Date; toNumber(date: string): number; format(date: number): string; hasExpired(date: number): boolean; createExpiry(minutes: number): number; timeTaken(timeStarted: number): number; timeSince(time: number, unit: moment.unitOfTime.Diff): number; } interface Date { relationToNow(template?: string): string; } }