//#region ../../node_modules/.pnpm/luxon@3.5.0/node_modules/luxon/src/impl/english.js
/**
* @private
*/
const monthsLong = [
	"January",
	"February",
	"March",
	"April",
	"May",
	"June",
	"July",
	"August",
	"September",
	"October",
	"November",
	"December"
];
const monthsShort = [
	"Jan",
	"Feb",
	"Mar",
	"Apr",
	"May",
	"Jun",
	"Jul",
	"Aug",
	"Sep",
	"Oct",
	"Nov",
	"Dec"
];
const monthsNarrow = [
	"J",
	"F",
	"M",
	"A",
	"M",
	"J",
	"J",
	"A",
	"S",
	"O",
	"N",
	"D"
];
function months(length) {
	switch (length) {
		case "narrow": return [...monthsNarrow];
		case "short": return [...monthsShort];
		case "long": return [...monthsLong];
		case "numeric": return [
			"1",
			"2",
			"3",
			"4",
			"5",
			"6",
			"7",
			"8",
			"9",
			"10",
			"11",
			"12"
		];
		case "2-digit": return [
			"01",
			"02",
			"03",
			"04",
			"05",
			"06",
			"07",
			"08",
			"09",
			"10",
			"11",
			"12"
		];
		default: return null;
	}
}
const weekdaysLong = [
	"Monday",
	"Tuesday",
	"Wednesday",
	"Thursday",
	"Friday",
	"Saturday",
	"Sunday"
];
const weekdaysShort = [
	"Mon",
	"Tue",
	"Wed",
	"Thu",
	"Fri",
	"Sat",
	"Sun"
];
const weekdaysNarrow = [
	"M",
	"T",
	"W",
	"T",
	"F",
	"S",
	"S"
];
function weekdays(length) {
	switch (length) {
		case "narrow": return [...weekdaysNarrow];
		case "short": return [...weekdaysShort];
		case "long": return [...weekdaysLong];
		case "numeric": return [
			"1",
			"2",
			"3",
			"4",
			"5",
			"6",
			"7"
		];
		default: return null;
	}
}
const meridiems = ["AM", "PM"];
const erasLong = ["Before Christ", "Anno Domini"];
const erasShort = ["BC", "AD"];
const erasNarrow = ["B", "A"];
function eras(length) {
	switch (length) {
		case "narrow": return [...erasNarrow];
		case "short": return [...erasShort];
		case "long": return [...erasLong];
		default: return null;
	}
}
function meridiemForDateTime(dt) {
	return meridiems[dt.hour < 12 ? 0 : 1];
}
function weekdayForDateTime(dt, length) {
	return weekdays(length)[dt.weekday - 1];
}
function monthForDateTime(dt, length) {
	return months(length)[dt.month - 1];
}
function eraForDateTime(dt, length) {
	return eras(length)[dt.year < 0 ? 0 : 1];
}
function formatRelativeTime(unit, count, numeric = "always", narrow = false) {
	const units = {
		years: ["year", "yr."],
		quarters: ["quarter", "qtr."],
		months: ["month", "mo."],
		weeks: ["week", "wk."],
		days: [
			"day",
			"day",
			"days"
		],
		hours: ["hour", "hr."],
		minutes: ["minute", "min."],
		seconds: ["second", "sec."]
	};
	const lastable = [
		"hours",
		"minutes",
		"seconds"
	].indexOf(unit) === -1;
	if (numeric === "auto" && lastable) {
		const isDay = unit === "days";
		switch (count) {
			case 1: return isDay ? "tomorrow" : `next ${units[unit][0]}`;
			case -1: return isDay ? "yesterday" : `last ${units[unit][0]}`;
			case 0: return isDay ? "today" : `this ${units[unit][0]}`;
			default:
		}
	}
	const isInPast = Object.is(count, -0) || count < 0, fmtValue = Math.abs(count), singular = fmtValue === 1, lilUnits = units[unit], fmtUnit = narrow ? singular ? lilUnits[1] : lilUnits[2] || lilUnits[1] : singular ? units[unit][0] : unit;
	return isInPast ? `${fmtValue} ${fmtUnit} ago` : `in ${fmtValue} ${fmtUnit}`;
}

//#endregion
export { eraForDateTime, eras, formatRelativeTime, meridiemForDateTime, meridiems, monthForDateTime, months, monthsShort, weekdayForDateTime, weekdays, weekdaysLong, weekdaysShort };
//# sourceMappingURL=english.mjs.map