import type { DateFormat, DateLevel, MonthOfYear } from './apply-date-format.js';
export declare function subtractYearForFiscal(date: Date, selectedDateLevel: DateLevel, fiscalMonth: MonthOfYear): Date;
export declare function shiftMonthForFiscal(date: Date, fiscalMonth: MonthOfYear): Date;
/**
 * Substitutes any y, yy, yyyy, yyyp, yp masks with their numeric text and
 * returns a new date format string.
 *
 * Takes into consideration:
 * - the configured start month of the customer's fiscal year
 * - the currently selected date level for this particular column of data
 *
 * @param oldFormat
 * @param date
 * @param timeZone
 * @param selectedDateLevel
 * @param isFiscalOn
 * @param fiscalMonth
 */
export declare function newDateFormatWithExpandedYearsMasks(oldFormat: DateFormat, date: Date, timeZone: string, selectedDateLevel: DateLevel, isFiscalOn: boolean, fiscalMonth: MonthOfYear): DateFormat;
/**
 * Substitutes any QQ or Q with their escaped text describing the quarter number and
 * returns a new date format string.
 *
 * Takes into consideration:
 * - the configured start month of the customer's fiscal year
 * - the currently selected date level for this particular column of data
 * - avoid timezone shifts
 *
 * @param oldFormat
 * @param date
 * @param selectedDateLevel
 * @param fiscalMonth
 */
export declare function newDateFormatWithExpandedQuartersMasks(oldFormat: DateFormat, date: Date, selectedDateLevel: DateLevel, fiscalMonth: MonthOfYear): DateFormat;
