import * as moment from 'moment'; import { IKeyValue } from '../../definitions.interface'; import { DateTimeLikeTypeT, ICalendarConfigEntity, ICalendarEntity, ICalendarWeekEntity, IDateTimeConfigEntity, IDateTimeIndexConfigEntity, IDayOfYearEntity, IFromToDayOfYearEntity, IMinMaxDatesRangeConfigEntity, IPersonAgeConfigEntity, IWeekConfigEntity } from '../../definition'; export interface IDateConverter { appOnlineLifeTimeInHours: number; appOnlineLifeTimeInSeconds: number; currentDate: Date; uiDateFormat: string; weekdays: string[]; weekdaysShort: string[]; weekdaysShortest: string[]; addDays(cfg: IDateTimeConfigEntity): TDate; addDaysAsDate(cfg: IDateTimeConfigEntity): Date; addDaysToUiDate(cfg: IDateTimeConfigEntity): TDate; addDaysToUiDateAsDate(cfg: IDateTimeConfigEntity): Date; addDuration(cfg: IDateTimeConfigEntity): TDate; addMonths(cfg: IDateTimeConfigEntity): TDate; addMonthsAsDate(cfg: IDateTimeConfigEntity): Date; addQuarters(cfg: IDateTimeConfigEntity): TDate; addQuartersAsDate(cfg: IDateTimeConfigEntity): Date; addWeeks(cfg: IDateTimeConfigEntity): TDate; addWeeksAsDate(cfg: IDateTimeConfigEntity): Date; addYears(cfg: IDateTimeConfigEntity): TDate; addYearsAsDate(cfg: IDateTimeConfigEntity): Date; asAbsoluteDayOfYear(cfg?: IDateTimeConfigEntity): number; asCalendar(cfg?: ICalendarConfigEntity): ICalendarEntity; asCalendarWeekEntity(cfg?: ICalendarConfigEntity): ICalendarEntity; asCronDay(cfg?: IDateTimeConfigEntity): number; asDate(cfg: IDateTimeConfigEntity): Date; asDayOfYear(date?: Date): Date; asDayOfYearEntity(cfg?: IDateTimeConfigEntity): IDayOfYearEntity; asDaysOfMonth(cfg: IDateTimeConfigEntity): TDate[]; asDaysOfMonthAsDates(cfg: IDateTimeConfigEntity): Date[]; asEndUnitOf(cfg: IDateTimeConfigEntity): TDate; asFirstDayOfMonth(cfg?: IDateTimeConfigEntity): TDate; asFirstDayOfMonthAsDate(cfg?: IDateTimeConfigEntity): Date; asFirstDayOfQuarter(cfg?: IDateTimeConfigEntity): TDate; asFirstDayOfQuarterAsDate(cfg?: IDateTimeConfigEntity): Date; asFirstDayOfWeek(cfg?: IDateTimeConfigEntity): TDate; asFirstDayOfWeekAsDate(cfg?: IDateTimeConfigEntity): Date; asFirstDayOfYear(cfg?: IDateTimeConfigEntity): TDate; asFirstDayOfYearAsDate(cfg?: IDateTimeConfigEntity): Date; asLastDayOfMonth(cfg?: IDateTimeConfigEntity): TDate; asLastDayOfMonthAsDate(cfg?: IDateTimeConfigEntity): Date; asLastDayOfQuarter(cfg?: IDateTimeConfigEntity): TDate; asLastDayOfQuarterAsDate(cfg?: IDateTimeConfigEntity): Date; asLastDayOfWeek(cfg?: IDateTimeConfigEntity): TDate; asLastDayOfWeekAsDate(cfg?: IDateTimeConfigEntity): Date; asLastDayOfYear(cfg?: IDateTimeConfigEntity): TDate; asLastDayOfYearAsDate(cfg?: IDateTimeConfigEntity): Date; asMomentDate(cfg: IDateTimeConfigEntity): TDate; asPersonAge(cfg: IPersonAgeConfigEntity): number; asStartUnitOf(cfg: IDateTimeConfigEntity): TDate; asWeekdayNumber(cfg?: IDateTimeConfigEntity): number; compare(date1: DateTimeLikeTypeT, date2: DateTimeLikeTypeT): number; compareDayOfYearEntity(o1: IDayOfYearEntity, o2: IDayOfYearEntity): number; currentDateAsUiDateString(cfg?: IDateTimeConfigEntity): string; dateAsDateString(cfg: IDateTimeConfigEntity): string; dateAsDateTimeString(cfg: IDateTimeConfigEntity): string; dateAsPstDateString(cfg: IDateTimeConfigEntity): string; dateAsPstTimeString(cfg: IDateTimeConfigEntity): string; dateAsString(cfg: IDateTimeConfigEntity): string; dateAsUiDateString(cfg: IDateTimeConfigEntity): string; equal(date1: DateTimeLikeTypeT, date2: DateTimeLikeTypeT): boolean; fromDateTimeToDateString(cfg: IDateTimeConfigEntity): string; fromDateTimeToPstTimeString(cfg: IDateTimeConfigEntity): string; fromDateTimeToUiDateString(cfg: IDateTimeConfigEntity): string; fromDateTimeToUiDateTimeString(cfg: IDateTimeConfigEntity): string; fromDateToUiDateString(cfg: IDateTimeConfigEntity): string; fromDayOfYearEntity(entity: IDayOfYearEntity, cfg?: IDateTimeConfigEntity): TDate; fromDayOfYearEntityAsDate(entity: IDayOfYearEntity, cfg?: IDateTimeConfigEntity): Date; fromUiDateTimeToDateTimeString(cfg: IDateTimeConfigEntity): string; fromUiDateToDateTimeString(cfg: IDateTimeConfigEntity): string; getCalendarWeekEntity(cfg?: IDateTimeConfigEntity): ICalendarWeekEntity; getCurrentDate(): Date; getWeekday(cfg: IDateTimeConfigEntity): string; getWeekdays(cfg?: IWeekConfigEntity): string[]; getWeekdayShort(cfg: IDateTimeConfigEntity): string; getWeekdayShortest(cfg: IDateTimeConfigEntity): string; getWeekdaysShort(cfg?: IWeekConfigEntity): string[]; getWeekdaysShortest(cfg?: IWeekConfigEntity): string[]; isDateBelongToDatesRange(cfg: IMinMaxDatesRangeConfigEntity): boolean; isDateValid(cfg: IDateTimeConfigEntity): boolean; isDayOfYearBelongToDaysOfYearRange(range: IFromToDayOfYearEntity, entity: IDayOfYearEntity): boolean; isDayOfYearEqualOtherDayOfYear(entity1: IDayOfYearEntity, entity2: IDayOfYearEntity): boolean; isFuture(date1: DateTimeLikeTypeT, date2?: DateTimeLikeTypeT): boolean; isoWeekDayAsOrdinaryDay(cfg: IDateTimeIndexConfigEntity): number; isPast(date1: DateTimeLikeTypeT, date2?: DateTimeLikeTypeT): boolean; selectDaysOfYearRange(range: IFromToDayOfYearEntity, entity: IDayOfYearEntity): IFromToDayOfYearEntity; format(date: DateTimeLikeTypeT, inputFormat: string, outputFormat: string): string; fromDateTimeToArbitraryFormat(date: DateTimeLikeTypeT, outputFormat: string): string; fromDateTimeToDate(date: DateTimeLikeTypeT): string; fromDateTimeToTime(date: DateTimeLikeTypeT): string; fromDateTimeToDateTime(date: DateTimeLikeTypeT): string; splitToDateTimeFields(entity: TEntity, dateFieldName: string, timeFieldName: string, dateResolver: (entity: TEntity) => string): IKeyValue; tryAddXDurationAsMomentDate(unit: moment.DurationInputArg2, duration: moment.DurationInputArg1, date?: DateTimeLikeTypeT, inputFormat?: string): moment.Moment | DateTimeLikeTypeT; tryAddXDuration(unit: moment.DurationInputArg2, duration: moment.DurationInputArg1, date?: DateTimeLikeTypeT, inputFormat?: string): Date; tryAddXDays(duration: moment.DurationInputArg1, date?: DateTimeLikeTypeT, inputFormat?: string): Date; tryAddXMonths(duration: moment.DurationInputArg1, date?: DateTimeLikeTypeT, inputFormat?: string): Date; tryAddXQuarters(duration: moment.DurationInputArg1, date?: DateTimeLikeTypeT, inputFormat?: string): Date; tryAddXYears(duration: moment.DurationInputArg1, date?: DateTimeLikeTypeT, inputFormat?: string): Date; tryGetFirstDayOfWeekAsMomentDate(duration?: moment.DurationInputArg1, date?: DateTimeLikeTypeT, inputFormat?: string): moment.Moment; tryGetFirstDayOfWeek(duration?: moment.DurationInputArg1, date?: DateTimeLikeTypeT, inputFormat?: string): Date; isDateBelongsToCurrentWeek(date?: DateTimeLikeTypeT, inputFormat?: string): boolean; toMomentDate(date: DateTimeLikeTypeT, inputFormat?: string, strict?: boolean): moment.Moment; toDate(date: DateTimeLikeTypeT, inputFormat?: string): Date; get30DaysAgo(): Date; getXDaysAgo(days: number): Date; }