import { f as HijriDate, F as FormatHijriOptions } from '../format-Kx-2gZxa.js';
export { H as HIJRI_ERA_AR, c as HIJRI_ERA_EN, d as HIJRI_MONTHS_AR, e as HIJRI_MONTHS_EN, g as formatHijriDate } from '../format-Kx-2gZxa.js';
import '../types-CK7PVYeU.js';

/** First Hijri year covered by the bundled Umm al-Qura table. */
declare const UMALQURA_FIRST_YEAR = 1300;
/** Last Hijri year covered by the bundled Umm al-Qura table. */
declare const UMALQURA_LAST_YEAR = 1599;
/** True when `year` is inside the table's authoritative range. */
declare function isUmalquraYear(year: number): boolean;
/** Umm al-Qura Y/M/D → integer JDN. Throws outside the supported range. */
declare function umalquraToJDN(year: number, month: number, day: number): number;
/** Integer JDN → Umm al-Qura date. Throws outside the supported range. */
declare function jdnToUmalqura(jdn: number): HijriDate;
/** Convert a Gregorian `Date` to an Umm al-Qura date. */
declare function gregorianToUmalqura(date: Date): HijriDate;
/** Convert an Umm al-Qura date to a Gregorian `Date` (UTC midnight). */
declare function umalquraToGregorian(year: number, month: number, day: number): Date;

/**
 * Convert a Gregorian `Date` to an official Umm al-Qura Hijri string in one
 * call. Deterministic across engines.
 *
 * @example formatHijri(new Date("2025-09-23"), { numerals: "arab" })
 * // "٦ ربيع الآخر ١٤٤٧ هـ"
 */
declare function formatHijri(date: Date, options?: FormatHijriOptions): string;

export { FormatHijriOptions, HijriDate, UMALQURA_FIRST_YEAR, UMALQURA_LAST_YEAR, formatHijri, umalquraToGregorian as fromHijri, gregorianToUmalqura, isUmalquraYear, jdnToUmalqura, gregorianToUmalqura as toHijri, umalquraToGregorian, umalquraToJDN };
