import { SelectableCollection } from './selectable-collection.model';
import { SelectableData } from './selectable-data.model';
export declare class Calendar {
    /**
     * Generates an array of localized month names in German (e.g., "Januar", "Februar", ...).
     *
     * @returns {string[]} Array of full German month names from January to December.
     */
    static get germanMonthNames(): string[];
    /**
     * Creates a list of selectable month objects where month numbers are 1-based (January = 1).
     *
     * @returns {SelectableData<number>[]} Array of selectable months with 1-based index.
     */
    static get selectableMonths(): SelectableData<number>[];
    /**
     * Creates a list of selectable month objects where month numbers are 0-based (January = 0).
     * This is useful for Date-related APIs where months start at 0.
     *
     * @returns {SelectableData<number>[]} Array of selectable months with 0-based index.
     */
    static get selectableMonthsZeroIndexed(): SelectableData<number>[];
    /**
     * Generates a numeric range of years starting from 'startYear' up to the current year.
     *
     * @returns {number[]} Array of years, inclusive of the current year.
     */
    static getYearsFrom(startYear: number): number[];
    /**
     * Converts the range of years from 'startYear' to selectable values for UI components.
     *
     * @returns {SelectableCollection<number>} Array of selectable year options.
     */
    static getSelectableYearsFrom(startYear: number): SelectableCollection<number>;
    /**
     * Generates a numeric range of years starting from 2018 up to the current year.
     *
     * @returns {number[]} Array of years, inclusive of the current year.
     */
    static get yearsFrom2018(): number[];
    /**
     * Converts the range of years from 2018 to selectable values for UI components.
     *
     * @returns {SelectableCollection<number>} Array of selectable year options.
     */
    static get selectableYearsFrom2018(): SelectableCollection<number>;
    /**
     * Generates an array of localized weekday names in German for the first week of May 2023.
     * The names are returned in either long or short format, depending on the input.
     *
     * @param {('long' | 'short')} format - Desired format for weekday names ('long' or 'short').
     * @returns {string[]} Array of weekday names in specified format.
     */
    private static generateGermanWeekdayNames;
    static get germanWeekdayNames(): string[];
    static get germanWeekdayAbbreviations(): string[];
}
