UNPKG

newmax-utils

Version:
183 lines (182 loc) 11.8 kB
import moment from 'moment'; declare class MomentExtension { private typesOfTime; constructor(); /** * Возвращает timestamp начала текущего дня * @returns {number} timestamp начала текущего дня */ getTodayTimestamp(): number; /** * Возвращает timestamp начала вчерашнего дня * @returns {number} timestamp начала вчерашнего дня */ getYesterdayTimestamp(): number; /** * Возвращает timestamp начала прошлой недели * @returns {number} timestamp начала прошлой недели */ getLastWeekdayTimestamp(): number; /** * Возвращает timestamp начала прошлой недели * @returns {number} timestamp начала прошлой недели */ getEndLastWeekdayTimestamp(): number; /** * Преобразует дату в формат "YYYY-MM-DD" * @param {string} date - Дата в формате "DD.MM.YYYY" | "DD.MM.YYYYTHH:mm:ssZ" * @returns {string} Дата в формате "YYYY-MM-DD" */ reverseToSplash(date: string): string; /** * Преобразует дату в формат "DD.MM.YYYY" * @param {string} date - Дата в формате "YYYY-MM-DD" | "YYYY-MM-DDTHH:mm:ssZ" * @returns {string} Дата в формате "DD.MM.YYYY" */ reverseToDotted(date: string): string; /** * Получаем точный timestamp даты * (используем только, когда нужен timestamp с секундами) иначе используем метод startDate * @param {!string} date - Дата в формате передаваемой маски. * @param {string} [mask=undefined] - Формат маски на входе. Например: "2024-01-01T21:12:18Z". (optional) * @param {string} [format=x] - Формат маски на выходе. Default: "x". (optional) * @returns {string} Дата в формате "x" * @example * convertDateToTimestamp("2024-01-01") // 1704056400000 * convertDateToTimestamp("2024-01-01T12:00:00", "YYYY-MM-DDTHH:mm:ss", "x") // 1704099600000 */ convertDateToTimestamp(date: string, mask?: string | undefined, format?: string): string; /** * Преобразует timestamp в нужный формат даты. Default: 'YYYY-MM-DD' * @param {!string|number} date - Timestamp даты. * @param {string} [mask=x] - Формат маски на входе. Например: "x" | "X". (optional) * @param {string} [format=YYYY-MM-DD] - Формат маски на выходе. Default: "YYYY-MM-DD". (optional) * @returns {string} Дата в формате "YYYY-MM-DD" */ convertTimestampToDate(date: string | number, mask?: string, format?: string): string; /** * Преобразует текущую дату в нужный формат. Default: 'YYYY-MM-DD' * @param {string} [format=YYYY-MM-DD] - Формат маски на выходе. Defaults: "YYYY-MM-DD". (optional) * @returns {string} Дата в формате "YYYY-MM-DD" */ formatCurrentDate(format?: string): string; /** * Преобразует входящую дату в нужный формат. Default: 'YYYY-MM-DD' * @param {!string|number} date - Дата в формате передаваемой маски. * @param {!string} mask - Формат маски на входе. (required) * @param {string} [format=YYYY-MM-DD] - Формат маски на выходе. Defaults: "YYYY-MM-DD". (optional) * @returns {string} The formatted date. */ formatDateTo(date: string | number, mask: string, format?: string): string; /** * Форматирует дату в формате временной зоны. * @param {!string|number} date - Дата в формате передаваемой маски. * @param {string} [mask=undefined] - Формат маски на входе. * @returns {string} Дата в формате "YYYY-MM-DDTHH:mm:ss". */ formatDateToTimezone(date: string | number, mask?: string | undefined): string; /** * Возвращает начало дня для указанной даты. * @param {!string|number} date - Дата в формате передаваемой маски. * @param {!string} mask - Формат маски на входе. * @param {string} [format=YYYY-MM-DDTHH:mm:ss] - Формат маски на выходе. Default: "YYYY-MM-DDTHH:mm:ss". * @param {string} type - Тип окончания * @returns {string} Начало дня в указанном формате. */ startDate(date: string | number, mask: string | undefined, format?: string, type?: moment.unitOfTime.StartOf): string; /** * Возвращает конец дня для указанной даты. * @param {!string|number} date - Дата в формате передаваемой маски. * @param {!string} mask - Формат маски на входе. * @param {string} [format=YYYY-MM-DDTHH:mm:ss] - Формат маски на выходе. Default: "YYYY-MM-DDTHH:mm:ss". * @param {string} type - Тип окончания * @returns {string} Конец дня в указанном формате. */ endDate(date: string | number, mask: string | undefined, format?: string, type?: moment.unitOfTime.StartOf): string; /** * Возвращает начало указанного типа времени для текущей даты. * @param {!string} type - Тип времени. * @param {string} [format=YYYY-MM-DD] - Формат маски на выходе. Default: "YYYY-MM-DD". * @returns {string} Начало указанного типа времени в указанном формате. */ currentStartDateOf(type: string, format?: string): string; /** * Возвращает конец указанного типа времени для текущей даты. * @param {!string} type - Тип времени. * @param {string} [format=YYYY-MM-DD] - Формат маски на выходе. Default: "YYYY-MM-DD". * @returns {string} Конец указанного типа времени в указанном формате. */ currentEndDateOf(type: string, format?: string): string; /** * Добавляет указанное количество единиц времени к текущей дате. * @param {!number} amount - Количество единиц времени. * @param {!string} type - Единица времени. Default: "day". * @param {string} [format=YYYY-MM-DD] - Формат маски на выходе. Default: "YYYY-MM-DD". * @returns {string} Дата в указанном формате. */ addToCurrentDate(amount: number, type: string, format?: string): string; /** * Отнимает указанное количество единиц времени от текущей даты. * @param {!number} amount - Количество единиц времени. * @param {!string} type - Единица времени. Default: "day". * @param {string} [format=YYYY-MM-DD] - Формат маски на выходе. Default: "YYYY-MM-DD". * @returns {string} Дата в указанном формате. */ subtractToCurrentDate(amount: number, type: string, format?: string): string; /** * Добавляет указанное количество единиц времени к указанной дате. * @param {!string|number} date - Дата в формате передаваемой маски. * @param {!string} mask - Формат маски на входе. * @param {!number} amount - Количество единиц времени. * @param {!string} type - Единица времени. Default: "day". * @param {string} [format=YYYY-MM-DD] - Формат маски на выходе. Default: "YYYY-MM-DD". * @returns {string} Дата в указанном формате. */ addToDate(date: string | number, mask: string, amount: number, type: string, format?: string): string; /** * Отнимает указанное количество единиц времени от указанной даты. * @param {!string|number} date - Дата в формате передаваемой маски. * @param {!string} mask - Формат маски на входе. * @param {!number} amount - Количество единиц времени. * @param {!string} type - Единица времени. Default: "day". * @param {string} [format=YYYY-MM-DD] - Формат маски на выходе. Default: "YYYY-MM-DD". * @returns {string} Дата в указанном формате. */ subtractToDate(date: string | number, mask: string, amount: number, type: string, format?: string): string; /** * Добавляет указанное количество единиц времени к указанной дате. * @param {!string} date - Дата в формате "YYYY-MM-DD". * @param {!number} amount - Количество единиц времени. * @param {string} [type=day] - Единица времени. Default: "day". * @param {string} [format=YYYY-MM-DD] - Формат маски на выходе. Default: "YYYY-MM-DD". * @returns {string} Дата в указанном формате. */ addToSplashDate(date: string, amount: number, type?: string, format?: string): string; /** * Отнимает указанное количество единиц времени от указанной даты. * @param {!string} date - Дата в формате "YYYY-MM-DD". * @param {!number} amount - Количество единиц времени. * @param {string} [type=day] - Единица времени. Default: "day". * @param {string} [format=YYYY-MM-DD] - Формат маски на выходе. Default: "YYYY-MM-DD". * @returns {string} Дата в указанном формате. */ subtractToSplashDate(date: string, amount: number, type?: string, format?: string): string; /** * Проверяет валидность даты в формате "YYYY-MM-DD". * @param {!string} date - Дата в формате "YYYY-MM-DD". * @param {string} [mask=YYYY-MM-DD] - Формат маски на входе. Default: "YYYY-MM-DD" * @returns {boolean} Результат проверки. */ validateSplashDate(date: string, mask?: string): boolean; /** * Вычисляет разницу между двумя датами в указанной единице времени. * @param {!string} date1 - Первая дата в указанном формате. * @param {!string} date2 - Вторая дата в указанном формате. * @param {string} [type=day] - Единица времени. Default: "day". * @param {string} [mask=YYYY-MM-DD] - Формат дат. Default: "YYYY-MM-DD". * @returns {number} Разница между двумя датами в указанной единице времени. */ diffDate(date1: string, date2: string, type?: string, mask?: string): number; } export declare const Moment: MomentExtension; export {};