/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck import { constructNow } from '../constructNow/index.ts'; import type { ContextOptions } from '../types.ts'; /** * The {@link endOfTomorrow} function options. */ export interface EndOfTomorrowOptions extends ContextOptions {} /** * @name endOfTomorrow * @category Day Helpers * @summary Return the end of tomorrow. * @pure false * * @description * Return the end of tomorrow. * * @typeParam DateType - The `Date` type, the function operates on. Gets inferred from passed arguments. Allows to use extensions like [`UTCDate`](https://github.com/date-fns/utc). * @typeParam ResultDate - The result `Date` type, it is the type returned from the context function if it is passed, or inferred from the arguments. * * @param options - The options * @returns The end of tomorrow * * @example * // If today is 6 October 2014: * const result = endOfTomorrow() * //=> Tue Oct 7 2014 23:59:59.999 */ export function endOfTomorrow( options?: EndOfTomorrowOptions | undefined, ): ResultDate { const now = constructNow(options?.in); const year = now.getFullYear(); const month = now.getMonth(); const day = now.getDate(); const date = constructNow(options?.in); date.setFullYear(year, month, day + 1); date.setHours(23, 59, 59, 999); return options?.in ? options.in(date) : (date as ResultDate); } /* eslint-enable */