import type { ContextFn, DateArg } from "./types.js"; /** * @name constructNow * @category Generic Helpers * @summary Constructs a new current date using the passed value constructor. * @pure false * * @description * The function constructs a new current date using the constructor from * the reference date. It helps to build generic functions that accept date * extensions and use the current date. * * It defaults to `Date` if the passed reference date is a number or a string. * * @param date - The reference date to take constructor from * * @returns Current date initialized using the given date constructor * * @example * import { constructNow, isSameDay } from 'date-fns' * * function isToday( * date: DateArg, * ): boolean { * // If we were to use `new Date()` directly, the function would behave * // differently in different timezones and return false for the same date. * return isSameDay(date, constructNow(date)); * } */ export declare function constructNow< DateType extends Date, ResultDate extends Date = DateType, >(date: DateArg | ContextFn | undefined): ResultDate;