import { CalendarHeatmapViewType } from '../../../../../../../../../types';
import { CalendarHeatmapChartData } from '../../data.js';
export interface MonthData {
    year: number;
    month: number;
}
export interface MonthInfo extends MonthData {
    monthName: string;
    shortMonthName: string;
}
/**
 * Creates a Date from MonthData
 */
export declare function convertMonthDataToDate(monthData: MonthData): Date;
/**
 * Creates a MonthData from a Date
 */
export declare function convertDateToMonthData(date: Date): MonthData;
/**
 * Compares two MonthData objects chronologically
 * @returns negative if a < b, positive if a > b, zero if equal
 */
export declare function compareMonthData(a: MonthData, b: MonthData): number;
export declare function shouldUseShortMonthNames(width: number): boolean;
export declare function generateAvailableMonthsFromData(chartData: CalendarHeatmapChartData, dateFormatter: (date: Date, format: string) => string): MonthInfo[];
export declare function getAvailableMonths(chartData: CalendarHeatmapChartData, dateFormatter: (date: Date, format: string) => string, initialMonth?: MonthData, viewType?: CalendarHeatmapViewType): MonthInfo[];
export declare function getInitialViewIndex(availableMonths: MonthInfo[], initialDate?: Date): number;
export declare function getMonthsPerView(viewType: CalendarHeatmapViewType): number;
export declare function getGridLayout(viewType: CalendarHeatmapViewType): {
    columns: string;
    rows: string;
};
export declare function getDisplayMonths(availableMonths: MonthInfo[], currentMonth: MonthData, viewType: CalendarHeatmapViewType): MonthInfo[];
