import { DateTime } from 'luxon'; import { ZmanimCalendar } from './ZmanimCalendar'; /** *
This class extends ZmanimCalendar and provides many more zmanim than available in the ZmanimCalendar. The basis * for most zmanim in this class are from the sefer Yisroel * Vehazmanim by Rabbi Yisrael Dovid Harfenes. * As an example of the number of different zmanim made available by this class, there are methods to return 18 * different calculations for alos (dawn), 18 for plag hamincha and 29 for tzais available in this * API. The real power of this API is the ease in calculating zmanim that are not part of the library. The methods for * zmanim calculations not present in this class or its superclass {@link ZmanimCalendar} are contained in the * {@link AstronomicalCalendar}, the base class of the calendars in our API since they are generic methods for calculating * time based on degrees or time before or after {@link #getSunrise() sunrise} and {@link #getSunset() sunset} and are of interest * for calculation beyond zmanim calculations. Here are some examples. *
First create the Calendar for the location you would like to calculate: * *
* String locationName = "Lakewood, NJ";
* double latitude = 40.0828; // Lakewood, NJ
* double longitude = -74.222; // Lakewood, NJ
* double elevation = 20; // optional elevation correction in Meters
* // the String parameter in getTimeZone() has to be a valid time zone listed in
* // {@link java.util.TimeZone#getAvailableIDs()}
* TimeZone timeZone = TimeZone.getTimeZone("America/New_York");
* GeoLocation location = new GeoLocation(locationName, latitude, longitude, elevation, timeZone);
* ComplexZmanimCalendar czc = new ComplexZmanimCalendar(location);
* // Optionally set the date or it will default to today's date
* czc.getCalendar().set(Calendar.MONTH, Calendar.FEBRUARY);
* czc.getCalendar().set(Calendar.DAY_OF_MONTH, 8);
*
* Note: For locations such as Israel where the beginning and end of daylight savings time can fluctuate from
* year to year, if your version of Java does not have an up to date time zone database, create a
* {@link java.util.SimpleTimeZone} with the known start and end of DST.
* To get alos calculated as 14° below the horizon (as calculated in the calendars published in Montreal),
* add {@link AstronomicalCalendar#GEOMETRIC_ZENITH} (90) to the 14° offset to get the desired time:
*
*
* Date alos14 = czc.getSunriseOffsetByDegrees({@link AstronomicalCalendar#GEOMETRIC_ZENITH} + 14);
*
* To get mincha gedola calculated based on the Magen Avraham (MGA) using a shaah zmanis based on the day starting
* 16.1° below the horizon (and ending 16.1° after sunset) the following calculation can be used:
*
* * Date minchaGedola = czc.getTimeOffset(czc.getAlos16point1Degrees(), czc.getShaahZmanis16Point1Degrees() * 6.5);*
* or even simpler using the included convenience methods *
* Date minchaGedola = czc.getMinchaGedola(czc.getAlos16point1Degrees(), czc.getShaahZmanis16Point1Degrees());* * A little more complex example would be calculating zmanim that rely on a shaah zmanis that is * not present in this library. While a drop more complex, it is still rather easy. An example would be to calculate * the Trumas Hadeshen's alos to * tzais based plag hamincha as calculated in the Machzikei Hadass calendar in Manchester, England. * A number of this calendar's zmanim are calculated based on a day starting at alos of 12° before * sunrise and ending at tzais of 7.083° after sunset. Be aware that since the alos and tzais * do not use identical degree-based offsets, this leads to chatzos being at a time other than the * {@link #getSunTransit() solar transit} (solar midday). To calculate this zman, use the following steps. Note * that plag hamincha is 10.75 hours after the start of the day, and the following steps are all that it takes. *
* Date plag = czc.getPlagHamincha(czc.getSunriseOffsetByDegrees({@link AstronomicalCalendar#GEOMETRIC_ZENITH} + 12),
* czc.getSunsetOffsetByDegrees({@link AstronomicalCalendar#GEOMETRIC_ZENITH} + ZENITH_7_POINT_083));
* * Something a drop more challenging, but still simple, would be calculating a zman using the same "complex" * offset day used in the above-mentioned Manchester calendar, but for a shaos zmaniyos based zman not * supported by this library, such as calculating the point that one should be makpid * not to eat on erev Shabbos or erev Yom Tov. This is 9 shaos zmaniyos into the day. *
* long shaahZmanis = czc.getTemporalHour(czc.getSunriseOffsetByDegrees({@link AstronomicalCalendar#GEOMETRIC_ZENITH} + 12),
* czc.getSunsetOffsetByDegrees({@link AstronomicalCalendar#GEOMETRIC_ZENITH} + ZENITH_7_POINT_083));
* Date sofZmanAchila = getTimeOffset(czc.getSunriseOffsetByDegrees({@link AstronomicalCalendar#GEOMETRIC_ZENITH} + 12),
* shaahZmanis * 9);
*
* Calculating this sof zman achila according to the GRA
* is simplicity itself.
* * Date sofZmanAchila = czc.getTimeOffset(czc.getSunrise(), czc.getShaahZmanisGra() * 9);* *
long millisecond length of a shaah zmanis. If the calculation can't be computed
* such as northern and southern locations even south of the Arctic Circle and north of the Antarctic Circle
* where the sun may not reach low enough below the horizon for this calculation, a {@link Long#MIN_VALUE}
* will be returned. See detailed explanation on top of the {@link AstronomicalCalendar} documentation.
*/
getShaahZmanis19Point8Degrees(): number;
/**
* Method to return a shaah zmanis (temporal hour) calculated using a 18° dip. This calculation divides
* the day based on the opinion of the Magen Avraham
* (MGA) that the day runs from dawn to dusk. Dawn for this calculation is when the sun is 18° below the
* eastern geometric horizon before sunrise. Dusk for this is when the sun is 18° below the western geometric
* horizon after sunset. This day is split into 12 equal parts with each part being a shaah zmanis.
*
* @return the long millisecond length of a shaah zmanis. If the calculation can't be computed
* such as northern and southern locations even south of the Arctic Circle and north of the Antarctic Circle
* where the sun may not reach low enough below the horizon for this calculation, a {@link Long#MIN_VALUE}
* will be returned. See detailed explanation on top of the {@link AstronomicalCalendar} documentation.
*/
getShaahZmanis18Degrees(): number;
/**
* Method to return a shaah zmanis (temporal hour) calculated using a dip of 26°. This calculation
* divides the day based on the opinion of the Magen
* Avraham (MGA) that the day runs from dawn to dusk. Dawn for this calculation is when the sun is
* {@link #getAlos26Degrees() 26°} below the eastern geometric horizon before sunrise. Dusk for this is when
* the sun is {@link #getTzais26Degrees() 26°} below the western geometric horizon after sunset. This day is
* split into 12 equal parts with each part being a shaah zmanis. Since zmanim that use this
* method are extremely late or early and at a point when the sky is a long time past the 18° point where the
* darkest point is reached, zmanim that use this should only be used lechumra, such as
* delaying the start of nighttime mitzvos.
*
* @return the long millisecond length of a shaah zmanis. If the calculation can't be computed
* such as northern and southern locations even south of the Arctic Circle and north of the Antarctic Circle
* where the sun may not reach low enough below the horizon for this calculation, a {@link Long#MIN_VALUE}
* will be returned. See detailed explanation on top of the {@link AstronomicalCalendar} documentation.
* @see #getShaahZmanis120Minutes()
*/
getShaahZmanis26Degrees(): number;
/**
* Method to return a shaah zmanis (temporal hour) calculated using a dip of 16.1°. This calculation
* divides the day based on the opinion that the day runs from dawn to dusk. Dawn for this calculation is when the
* sun is 16.1° below the eastern geometric horizon before sunrise and dusk is when the sun is 16.1° below
* the western geometric horizon after sunset. This day is split into 12 equal parts with each part being a
* shaah zmanis.
*
* @return the long millisecond length of a shaah zmanis. If the calculation can't be computed
* such as northern and southern locations even south of the Arctic Circle and north of the Antarctic Circle
* where the sun may not reach low enough below the horizon for this calculation, a {@link Long#MIN_VALUE}
* will be returned. See detailed explanation on top of the {@link AstronomicalCalendar} documentation.
*
* @see #getAlos16Point1Degrees()
* @see #getTzais16Point1Degrees()
* @see #getSofZmanShmaMGA16Point1Degrees()
* @see #getSofZmanTfilaMGA16Point1Degrees()
* @see #getMinchaGedola16Point1Degrees()
* @see #getMinchaKetana16Point1Degrees()
* @see #getPlagHamincha16Point1Degrees()
*/
getShaahZmanis16Point1Degrees(): number;
/**
* Method to return a shaah zmanis (solar hour) according to the opinion of the Magen Avraham (MGA). This calculation
* divides the day based on the opinion of the MGA that the day runs from dawn to dusk. Dawn for this calculation is
* 60 minutes before sunrise and dusk is 60 minutes after sunset. This day is split into 12 equal parts with each
* part being a shaah zmanis. Alternate methods of calculating a shaah zmanis are available in the
* subclass {@link ComplexZmanimCalendar}.
*
* @return the long millisecond length of a shaah zmanis. If the calculation can't be computed
* such as in the Arctic Circle where there is at least one day a year where the sun does not rise, and one
* where it does not set, a {@link Long#MIN_VALUE} will be returned. See detailed explanation on top of the
* {@link AstronomicalCalendar} documentation.
*
* @see #getAlos60()
* @see #getTzais60()
* @see #getPlagHamincha60Minutes()
*/
getShaahZmanis60Minutes(): number;
/**
* Method to return a shaah zmanis (solar hour) according to the opinion of the Magen Avraham (MGA). This calculation divides the day
* based on the opinion of the MGA that the day runs from dawn to dusk. Dawn for this calculation is 72 minutes
* before sunrise and dusk is 72 minutes after sunset. This day is split into 12 equal parts with each part
* being a shaah zmanis. Alternate methods of calculating a shaah zmanis are available in the
* subclass {@link ComplexZmanimCalendar}.
*
* @return the long millisecond length of a shaah zmanis. If the calculation can't be computed
* such as in the Arctic Circle where there is at least one day a year where the sun does not rise, and one
* where it does not set, a {@link Long#MIN_VALUE} will be returned. See detailed explanation on top of the
* {@link AstronomicalCalendar} documentation.
*/
getShaahZmanis72Minutes(): number;
/**
* Method to return a shaah zmanis (temporal hour) according to the opinion of the Magen Avraham (MGA) based on alos being
* {@link #getAlos72Zmanis() 72} minutes zmaniyos before {@link #getSunrise() sunrise}. This calculation
* divides the day based on the opinion of the MGA that the day runs from dawn to dusk. Dawn for this calculation
* is 72 minutes zmaniyos before sunrise and dusk is 72 minutes zmaniyos after sunset. This day
* is split into 12 equal parts with each part being a shaah zmanis. This is identical to 1/10th of the day
* from {@link #getSunrise() sunrise} to {@link #getSunset() sunset}.
*
* @return the long millisecond length of a shaah zmanis. If the calculation can't be computed
* such as in the Arctic Circle where there is at least one day a year where the sun does not rise, and one
* where it does not set, a {@link Long#MIN_VALUE} will be returned. See detailed explanation on top of the
* {@link AstronomicalCalendar} documentation.
* @see #getAlos72Zmanis()
* @see #getTzais72Zmanis()
*/
getShaahZmanis72MinutesZmanis(): number;
/**
* Method to return a shaah zmanis (temporal hour) calculated using a dip of 90 minutes. This calculation
* divides the day based on the opinion of the Magen
* Avraham (MGA) that the day runs from dawn to dusk. Dawn for this calculation is 90 minutes before sunrise
* and dusk is 90 minutes after sunset. This day is split into 12 equal parts with each part being a shaah zmanis.
*
* @return the long millisecond length of a shaah zmanis. If the calculation can't be computed
* such as in the Arctic Circle where there is at least one day a year where the sun does not rise, and one
* where it does not set, a {@link Long#MIN_VALUE} will be returned. See detailed explanation on top of the
* {@link AstronomicalCalendar} documentation.
*/
getShaahZmanis90Minutes(): number;
/**
* Method to return a shaah zmanis (temporal hour) according to the opinion of the Magen Avraham (MGA) based on alos being
* {@link #getAlos90Zmanis() 90} minutes zmaniyos before {@link #getSunrise() sunrise}. This calculation divides
* the day based on the opinion of the MGA that the day runs from dawn to dusk. Dawn for this calculation is 90 minutes
* zmaniyos before sunrise and dusk is 90 minutes zmaniyos after sunset. This day is split into 12 equal
* parts with each part being a shaah zmanis. This is 1/8th of the day from {@link #getSunrise() sunrise} to
* {@link #getSunset() sunset}.
*
* @return the long millisecond length of a shaah zmanis. If the calculation can't be computed
* such as in the Arctic Circle where there is at least one day a year where the sun does not rise, and one
* where it does not set, a {@link Long#MIN_VALUE} will be returned. See detailed explanation on top of the
* {@link AstronomicalCalendar} documentation.
* @see #getAlos90Zmanis()
* @see #getTzais90Zmanis()
*/
getShaahZmanis90MinutesZmanis(): number;
/**
* Method to return a shaah zmanis (temporal hour) according to the opinion of the Magen Avraham (MGA) based on alos being {@link
* #getAlos96Zmanis() 96} minutes zmaniyos before {@link #getSunrise() sunrise}. This calculation divides the
* day based on the opinion of the MGA that the day runs from dawn to dusk. Dawn for this calculation is 96 minutes
* zmaniyos before sunrise and dusk is 96 minutes zmaniyos after sunset. This day is split into 12
* equal parts with each part being a shaah zmanis. This is identical to 1/7.5th of the day from
* {@link #getSunrise() sunrise} to {@link #getSunset() sunset}.
*
* @return the long millisecond length of a shaah zmanis. If the calculation can't be computed
* such as in the Arctic Circle where there is at least one day a year where the sun does not rise, and one
* where it does not set, a {@link Long#MIN_VALUE} will be returned. See detailed explanation on top of the
* {@link AstronomicalCalendar} documentation.
* @see #getAlos96Zmanis()
* @see #getTzais96Zmanis()
*/
getShaahZmanis96MinutesZmanis(): number;
/**
* Method to return a shaah zmanis (temporal hour) according to the opinion of the
* Chacham Yosef Harari-Raful of Yeshivat Ateret Torah calculated with alos being 1/10th
* of sunrise to sunset day, or {@link #getAlos72Zmanis() 72} minutes zmaniyos of such a day before
* {@link #getSunrise() sunrise}, and tzais is usually calculated as {@link #getTzaisAteretTorah() 40
* minutes} (configurable to any offset via {@link #setAteretTorahSunsetOffset(double)}) after {@link #getSunset()
* sunset}. This day is split into 12 equal parts with each part being a shaah zmanis. Note that with this
* system, chatzos (midday) will not be the point that the sun is {@link #getSunTransit() halfway across
* the sky}.
*
* @return the long millisecond length of a shaah zmanis. If the calculation can't be computed
* such as in the Arctic Circle where there is at least one day a year where the sun does not rise, and one
* where it does not set, a {@link Long#MIN_VALUE} will be returned. See detailed explanation on top of the
* {@link AstronomicalCalendar} documentation.
* @see #getAlos72Zmanis()
* @see #getTzaisAteretTorah()
* @see #getAteretTorahSunsetOffset()
* @see #setAteretTorahSunsetOffset(double)
*/
getShaahZmanisAteretTorah(): number;
/**
* Method to return a shaah zmanis (temporal hour) used by some zmanim according to the opinion of
* Rabbi Yaakov Moshe Hillel as published in the
* luach of the Bais Horaah of Yeshivat Chevrat Ahavat Shalom that is based on a day starting 72 minutes before
* sunrise in degrees {@link #getAlos16Point1Degrees() alos 16.1°} and ending 14 minutes after sunset in
* degrees {@link #getTzaisGeonim3Point8Degrees() tzais 3.8°}. This day is split into 12 equal parts with
* each part being a shaah zmanis. Note that with this system, chatzos (midday) will not be the point
* that the sun is {@link #getSunTransit() halfway across the sky}. These shaos zmaniyos are used for Mincha
* Ketana and Plag Hamincha. The 14 minutes are based on 3/4 of an 18 minute mil, with half a minute added for
* Rav Yosi.
*
* @return the long millisecond length of a shaah zmanis. If the calculation can't be computed
* such as in the Arctic Circle where there is at least one day a year where the sun does not rise, and one
* where it does not set, a {@link Long#MIN_VALUE} will be returned. See detailed explanation on top of the
* {@link AstronomicalCalendar} documentation.
*
* @see #getMinchaKetanaAhavatShalom()
* @see #getPlagAhavatShalom()
*/
getShaahZmanisAlos16Point1ToTzais3Point8(): number;
/**
* Method to return a shaah zmanis (temporal hour) used by some zmanim according to the opinion of
* Rabbi Yaakov Moshe Hillel as published in the
* luach of the Bais Horaah of Yeshivat Chevrat Ahavat Shalom that is based on a day starting 72 minutes before
* sunrise in degrees {@link #getAlos16Point1Degrees() alos 16.1°} and ending 13.5 minutes after sunset in
* degrees {@link #getTzaisGeonim3Point7Degrees() tzais 3.7°}. This day is split into 12 equal parts with
* each part being a shaah zmanis. Note that with this system, chatzos (midday) will not be the point
* that the sun is {@link #getSunTransit() halfway across the sky}. These shaos zmaniyos are used for Mincha
* Gedola calculation.
*
* @return the long millisecond length of a shaah zmanis. If the calculation can't be computed
* such as in the Arctic Circle where there is at least one day a year where the sun does not rise, and one
* where it does not set, a {@link Long#MIN_VALUE} will be returned. See detailed explanation on top of the
* {@link AstronomicalCalendar} documentation.
*
* @see #getMinchaGedolaAhavatShalom()
*/
getShaahZmanisAlos16Point1ToTzais3Point7(): number;
/**
* Method to return a shaah zmanis (temporal hour) calculated using a dip of 96 minutes. This calculation
* divides the day based on the opinion of the Magen
* Avraham (MGA) that the day runs from dawn to dusk. Dawn for this calculation is 96 minutes before sunrise
* and dusk is 96 minutes after sunset. This day is split into 12 equal parts with each part being a shaah
* zmanis.
*
* @return the long millisecond length of a shaah zmanis. If the calculation can't be computed
* such as in the Arctic Circle where there is at least one day a year where the sun does not rise, and one
* where it does not set, a {@link Long#MIN_VALUE} will be returned. See detailed explanation on top of the
* {@link AstronomicalCalendar} documentation.
*/
getShaahZmanis96Minutes(): number;
/**
* Method to return a shaah zmanis (temporal hour) calculated using a dip of 120 minutes. This calculation
* divides the day based on the opinion of the Magen
* Avraham (MGA) that the day runs from dawn to dusk. Dawn for this calculation is 120 minutes before sunrise and
* dusk is 120 minutes after sunset. This day is split into 12 equal parts with each part being a shaah zmanis.
* Since zmanim that use this method are extremely late or early and at a point when the sky is a long time
* past the 18° point where the darkest point is reached, zmanim that use this should only be used
* lechumra only, such as delaying the start of nighttime mitzvos.
*
* @return the long millisecond length of a shaah zmanis. If the calculation can't be computed
* such as in the Arctic Circle where there is at least one day a year where the sun does not rise, and one
* where it does not set, a {@link Long#MIN_VALUE} will be returned. See detailed explanation on top of the
* {@link AstronomicalCalendar} documentation.
* @see #getShaahZmanis26Degrees()
*/
getShaahZmanis120Minutes(): number;
/**
* Method to return a shaah zmanis (temporal hour) according to the opinion of the Magen Avraham (MGA) based on alos being {@link
* #getAlos120Zmanis() 120} minutes zmaniyos before {@link #getSunrise() sunrise}. This calculation divides
* the day based on the opinion of the MGA that the day runs from dawn to dusk. Dawn for this calculation is
* 120 minutes zmaniyos before sunrise and dusk is 120 minutes zmaniyos after sunset. This day is
* split into 12 equal parts with each part being a shaah zmanis. This is identical to 1/6th of the day from
* {@link #getSunrise() sunrise} to {@link #getSunset() sunset}. Since zmanim that use this method are
* extremely late or early and at a point when the sky is a long time past the 18° point where the darkest point
* is reached, zmanim that use this should only be used lechumra such as delaying the start of
* nighttime mitzvos.
*
* @return the long millisecond length of a shaah zmanis. If the calculation can't be computed
* such as in the Arctic Circle where there is at least one day a year where the sun does not rise, and one
* where it does not set, a {@link Long#MIN_VALUE} will be returned. See detailed explanation on top of the
* {@link AstronomicalCalendar} documentation.
* @see #getAlos120Zmanis()
* @see #getTzais120Zmanis()
*/
getShaahZmanis120MinutesZmanis(): number;
/**
* This method should be used lechumra only and returns the time of plag hamincha based on sunrise
* being 120 minutes zmaniyos or 1/6th of the day before sunrise. This is calculated as 10.75 hours after
* {@link #getAlos120Zmanis() dawn}. The formula used is 10.75 * {@link #getShaahZmanis120MinutesZmanis()} after
* {@link #getAlos120Zmanis() dawn}. Since the zman based on an extremely early alos and a very
* late tzais, it should only be used lechumra.
*
* @deprecated This method should be used lechumra only since it returns a very late time (often after
* shkiah), and if used lekula can result in chillul Shabbos etc. There is no
* current plan to remove this method from the API, and this deprecation is intended to alert developers
* of the danger of using it.
*
* @return the Date of the time of plag hamincha. If the calculation can't be computed such as
* in the Arctic Circle where there is at least one day a year where the sun does not rise, and one where it
* does not set, a null will be returned. See detailed explanation on top of the
* {@link AstronomicalCalendar} documentation.
*
* @see #getShaahZmanis120MinutesZmanis()
* @see #getAlos120()
* @see #getTzais120()
* @see #getPlagHamincha26Degrees()
* @see #getPlagHamincha120Minutes()
*/
getPlagHamincha120MinutesZmanis(): DateTime | null;
/**
* This method should be used lechumra only and returns the time of plag hamincha according to the
* Magen Avraham with the day starting 120 minutes before sunrise and ending 120 minutes after sunset. This is
* calculated as 10.75 hours after {@link #getAlos120() dawn 120 minutes}. The formula used is 10.75 {@link
* #getShaahZmanis120Minutes()} after {@link #getAlos120()}. Since the zman based on an extremely early
* alos and a very late tzais, it should only be used lechumra.
*
* @deprecated This method should be used lechumra only since it returns a very late time (often after
* shkiah), and if used lekula can result in chillul Shabbos etc. There is no
* current plan to remove this method from the API, and this deprecation is intended to alert developers
* of the danger of using it.
*
* @return the Date of the time of plag hamincha. If the calculation can't be computed such as
* in the Arctic Circle where there is at least one day a year where the sun does not rise, and one where it
* does not set, a null will be returned. See detailed explanation on top of the
* {@link AstronomicalCalendar} documentation.
*
* @see #getShaahZmanis120Minutes()
* @see #getPlagHamincha26Degrees()
*/
getPlagHamincha120Minutes(): DateTime | null;
/**
* Method to return alos (dawn) calculated as 60 minutes before {@link #getSunrise() sunrise} or
* {@link #getSeaLevelSunrise() sea level sunrise} (depending on the {@link #isUseElevation()} setting). This is the
* time to walk the distance of 4 mil at 15 minutes a mil. This seems to be the opinion of the
* Chavas Yair in the Mekor Chaim, Orach Chaim Ch. 90,
* though the Mekor Chaim in Ch. 58 and in the Chut Hashani Ch. 97 states that a person walks 3 and a 1/3 mil in an hour, or an 18-minute mil.
* Also see the Divrei Malkiel Vol. 4, Ch. 20, page 34) who
* mentions the 15 minute mil lechumra by baking matzos. Also see the Maharik Ch. 173 where the questioner quoting the
* Ra'avan is of the opinion that the time to walk a
* mil is 15 minutes (5 mil in a little over an hour). There are many who believe that there is a
* ta'us sofer (scribe's error) in the Ra'avan, and it should 4 mil in a little over an hour, or an
* 18-minute mil. Time based offset calculations are based on the opinion of the
* Rishonim who stated that the time of the neshef
* (time between dawn and sunrise) does not vary by the time of year or location but purely depends on the time it takes to
* walk the distance of 4* mil. {@link #getTzaisGeonim9Point75Degrees()} is a related zman that is a
* degree-based calculation based on 60 minutes.
*
* @return the Date representing the time. If the calculation can't be computed such as in the Arctic
* Circle where there is at least one day a year where the sun does not rise, and one where it does not set,
* a null will be returned. See detailed explanation on top of the {@link AstronomicalCalendar}.
* documentation.
*
* @see #getTzais60()
* @see #getPlagHamincha60Minutes()
* @see #getShaahZmanis60Minutes()
*/
getAlos60(): DateTime | null;
/**
* Method to return alos (dawn) calculated using 72 minutes zmaniyos or 1/10th of the day before
* sunrise. This is based on an 18-minute mil so the time for 4 mil is
* 72 minutes which is 1/10th of a day (12 * 60 = 720) based on the day being from {@link #getSeaLevelSunrise() sea
* level sunrise} to {@link #getSeaLevelSunset() sea level sunset} or {@link #getSunrise() sunrise} to {@link #getSunset()
* sunset} (depending on the {@link #isUseElevation()} setting). The actual calculation is {@link #getSeaLevelSunrise()} -
* ({@link #getShaahZmanisGra()} * 1.2). This calculation is used in the calendars published by the Hisachdus Harabanim D'Artzos Habris Ve'Canada.
*
* @return the Date representing the time. If the calculation can't be computed such as in the Arctic
* Circle where there is at least one day a year where the sun does not rise, and one where it does not set,
* a null will be returned. See detailed explanation on top of the {@link AstronomicalCalendar}
* documentation.
* @see #getShaahZmanisGra()
*/
getAlos72Zmanis(): DateTime | null;
/**
* Method to return alos (dawn) calculated using 96 minutes before {@link #getSunrise() sunrise} or
* {@link #getSeaLevelSunrise() sea level sunrise} (depending on the {@link #isUseElevation()} setting) that is based
* on the time to walk the distance of 4 mil at 24 minutes a mil.
* Time based offset calculations for alos are based on the opinion of the Rishonim who stated that the time of the Neshef (time between
* dawn and sunrise) does not vary by the time of year or location but purely depends on the time it takes to walk the
* distance of 4 mil.
*
* @return the Date representing the time. If the calculation can't be computed such as in the Arctic
* Circle where there is at least one day a year where the sun does not rise, and one where it does not set,
* a null will be returned. See detailed explanation on top of the {@link AstronomicalCalendar}
* documentation.
*/
getAlos96(): DateTime | null;
/**
* Method to return alos (dawn) calculated using 90 minutes zmaniyos or 1/8th of the day before
* {@link #getSunrise() sunrise} or {@link #getSeaLevelSunrise() sea level sunrise} (depending on the {@link
* #isUseElevation()} setting). This is based on a 22.5-minute mil so the time for 4
* mil is 90 minutes which is 1/8th of a day (12 * 60) / 8 = 90. The day is calculated from {@link
* #getSeaLevelSunrise() sea level sunrise} to {@link #getSeaLevelSunset() sea level sunset} or {@link #getSunrise()
* sunrise} to {@link #getSunset() sunset} (depending on the {@link #isUseElevation()}. The actual calculation used
* is {@link #getSunrise()} - ({@link #getShaahZmanisGra()} * 1.5).
*
* @return the Date representing the time. If the calculation can't be computed such as in the Arctic
* Circle where there is at least one day a year where the sun does not rise, and one where it does not set,
* a null will be returned. See detailed explanation on top of the {@link AstronomicalCalendar}
* documentation.
* @see #getShaahZmanisGra()
*/
getAlos90Zmanis(): DateTime | null;
/**
* This method returns alos (dawn) calculated using 96 minutes zmaniyos or 1/7.5th of the day before
* {@link #getSunrise() sunrise} or {@link #getSeaLevelSunrise() sea level sunrise} (depending on the {@link
* #isUseElevation()} setting). This is based on a 24-minute mil so the time for 4 mil is 96
* minutes which is 1/7.5th of a day (12 * 60 / 7.5 = 96). The day is calculated from {@link #getSeaLevelSunrise() sea
* level sunrise} to {@link #getSeaLevelSunset() sea level sunset} or {@link #getSunrise() sunrise} to {@link #getSunset()
* sunset} (depending on the {@link #isUseElevation()}. The actual calculation used is {@link #getSunrise()} -
* ({@link #getShaahZmanisGra()} * 1.6).
*
* @return the Date representing the time. If the calculation can't be computed such as in the Arctic
* Circle where there is at least one day a year where the sun does not rise, and one where it does not set,
* a null will be returned. See detailed explanation on top of the {@link AstronomicalCalendar}
* documentation.
* @see #getShaahZmanisGra()
*/
getAlos96Zmanis(): DateTime | null;
/**
* Method to return alos (dawn) calculated using 90 minutes before {@link #getSeaLevelSunrise() sea level
* sunrise} based on the time to walk the distance of 4 mil at 22.5 minutes a
* mil. Time-based offset calculations for alos are based on the opinion of the Rishonim who stated that the time of the Neshef
* (time between dawn and sunrise) does not vary by the time of year or location but purely depends on the time it
* takes to walk the distance of 4 mil.
*
* @return the Date representing the time. If the calculation can't be computed such as in the Arctic
* Circle where there is at least one day a year where the sun does not rise, and one where it does not set,
* a null will be returned. See detailed explanation on top of the {@link AstronomicalCalendar}
* documentation.
*/
getAlos90(): DateTime | null;
/**
* This method should be used lechumra only and returns alos (dawn) calculated using 120 minutes
* before {@link #getSeaLevelSunrise() sea level sunrise} (no adjustment for elevation is made) based on the time
* to walk the distance of 5 mil (Ula) at 24 minutes a mil. Time based offset calculations for alos are
* based on the* opinion of the Rishonim
* who stated that the time of the neshef (time between dawn and sunrise) does not vary by the time of
* year or location but purely depends on the time it takes to walk the distance of 5 mil (Ula). Since
* this time is extremely early, it should only be used lechumra, such as not eating after this time on a fast
* day, and not as the start time for mitzvos that can only be performed during the day.
*
* @deprecated This method should be used lechumra only (such as stopping to eat at this time on a fast day),
* since it returns a very early time, and if used lekula can result in doing mitzvos hayom
* too early according to most opinions. There is no current plan to remove this method from the API, and this
* deprecation is intended to alert developers of the danger of using it.
*
* @return the Date representing the time. If the calculation can't be computed such as in the Arctic
* Circle where there is at least one day a year where the sun does not rise, and one where it does not set,
* a null will be returned. See detailed explanation on top of the {@link AstronomicalCalendar}
* documentation.
*
* @see #getTzais120()
* @see #getAlos26Degrees()
*/
getAlos120(): DateTime | null;
/**
* This method should be used lechumra only and method returns alos (dawn) calculated using
* 120 minutes zmaniyos or 1/6th of the day before {@link #getSunrise() sunrise} or {@link
* #getSeaLevelSunrise() sea level sunrise} (depending on the {@link #isUseElevation()} setting). This is based
* on a 24-minute mil so
* the time for 5 mil is 120 minutes which is 1/6th of a day (12 * 60 / 6 = 120). The day is calculated
* from {@link #getSeaLevelSunrise() sea level sunrise} to {@link #getSeaLevelSunset() sea level sunset} or
* {@link #getSunrise() sunrise} to {@link #getSunset() sunset} (depending on the {@link #isUseElevation()}. The
* actual calculation used is {@link #getSunrise()} - ({@link #getShaahZmanisGra()} * 2). Since this time is
* extremely early, it should only be used lechumra, such
* as not eating after this time on a fast day, and not as the start time for mitzvos that can only be
* performed during the day.
*
* @deprecated This method should be used lechumra only (such as stopping to eat at this time on a fast day),
* since it returns a very early time, and if used lekula can result in doing mitzvos hayom
* too early according to most opinions. There is no current plan to remove this method from the API, and this
* deprecation is intended to alert developers of the danger of using it.
*
* @return the Date representing the time. If the calculation can't be computed such as in the Arctic
* Circle where there is at least one day a year where the sun does not rise, and one where it does not set,
* a null will be returned. See detailed explanation on top of the {@link AstronomicalCalendar}
* documentation.
* @see #getAlos120()
* @see #getAlos26Degrees()
*/
getAlos120Zmanis(): DateTime | null;
/**
* This method should be used lechumra only and returns alos (dawn) calculated when the sun is {@link
* #ZENITH_26_DEGREES 26°} below the eastern geometric horizon before sunrise. This calculation is based on the same
* calculation of {@link #getAlos120() 120 minutes} but uses a degree-based calculation instead of 120 exact minutes. This
* calculation is based on the position of the sun 120 minutes before sunrise in Jerusalem around the equinox / equilux, which
* calculates to 26° below {@link #GEOMETRIC_ZENITH geometric zenith}. Since this time is extremely early, it should
* only be used lechumra only, such as not eating after this time on a fast day, and not as the start time for
* mitzvos that can only be performed during the day.
*
* @deprecated This method should be used lechumra only (such as stopping to eat at this time on a fast day),
* since it returns a very early time, and if used lekula can result in doing mitzvos hayom
* too early according to most opinions. There is no current plan to remove this method from the API, and this
* deprecation is intended to alert developers of the danger of using it.
*
* @return the Date representing alos. If the calculation can't be computed such as northern
* and southern locations even south of the Arctic Circle and north of the Antarctic Circle where the sun
* may not reach low enough below the horizon for this calculation, a null will be returned. See
* detailed explanation on top of the {@link AstronomicalCalendar} documentation.
* @see #ZENITH_26_DEGREES
* @see #getAlos120()
* @see #getTzais120()
* @see #getTzais26Degrees()
*/
getAlos26Degrees(): DateTime | null;
/**
* A method to return alos (dawn) calculated when the sun is {@link #ASTRONOMICAL_ZENITH 18°} below the
* eastern geometric horizon before sunrise.
*
* @return the Date representing alos. If the calculation can't be computed such as northern
* and southern locations even south of the Arctic Circle and north of the Antarctic Circle where the sun
* may not reach low enough below the horizon for this calculation, a null will be returned.
* See detailed explanation on top of the {@link AstronomicalCalendar} documentation.
* @see #ASTRONOMICAL_ZENITH
*/
getAlos18Degrees(): DateTime | null;
/**
* A method to return alos (dawn) calculated when the sun is {@link #ZENITH_19_DEGREES 19°} below the
* eastern geometric horizon before sunrise. This is the Rambam's alos according to Rabbi Moshe Kosower's Maaglei Tzedek, page 88, Ayeles Hashachar Vol. I, page 12, Yom Valayla Shel Torah, Ch. 34, p. 222 and
* Rabbi Yaakov Shakow's Luach Ikvei Hayom.
*
* @return the Date representing alos. If the calculation can't be computed such as northern
* and southern locations even south of the Arctic Circle and north of the Antarctic Circle where the sun
* may not reach low enough below the horizon for this calculation, a null will be returned.
* See detailed explanation on top of the {@link AstronomicalCalendar} documentation.
* @see #ASTRONOMICAL_ZENITH
*/
getAlos19Degrees(): DateTime | null;
/**
* Method to return alos (dawn) calculated when the sun is {@link #ZENITH_19_POINT_8 19.8°} below the
* eastern geometric horizon before sunrise. This calculation is based on the same calculation of
* {@link #getAlos90() 90 minutes} but uses a degree-based calculation instead of 90 exact minutes. This calculation
* is based on the position of the sun 90 minutes before sunrise in Jerusalem around the equinox / equilux, which
* calculates to 19.8° below {@link #GEOMETRIC_ZENITH geometric zenith}.
*
* @return the Date representing alos. If the calculation can't be computed such as northern
* and southern locations even south of the Arctic Circle and north of the Antarctic Circle where the sun
* may not reach low enough below the horizon for this calculation, a null will be returned. See
* detailed explanation on top of the {@link AstronomicalCalendar} documentation.
* @see #ZENITH_19_POINT_8
* @see #getAlos90()
*/
getAlos19Point8Degrees(): DateTime | null;
/**
* Method to return alos (dawn) calculated when the sun is {@link #ZENITH_16_POINT_1 16.1°} below the
* eastern geometric horizon before sunrise. This calculation is based on the same calculation of
* {@link #getAlos72() 72 minutes} but uses a degree-based calculation instead of 72 exact minutes. This calculation
* is based on the position of the sun 72 minutes before sunrise in Jerusalem around the equinox / equilux, which
* calculates to 16.1° below {@link #GEOMETRIC_ZENITH geometric zenith}.
*
* @return the Date representing alos. If the calculation can't be computed such as northern
* and southern locations even south of the Arctic Circle and north of the Antarctic Circle where the sun
* may not reach low enough below the horizon for this calculation, a null will be returned. See
* detailed explanation on top of the {@link AstronomicalCalendar} documentation.
* @see #ZENITH_16_POINT_1
* @see #getAlos72()
*/
getAlos16Point1Degrees(): DateTime | null;
/**
* This method returns misheyakir based on the position of the sun when it is {@link #ZENITH_11_DEGREES
* 11.5°} below {@link #GEOMETRIC_ZENITH geometric zenith} (90°). This calculation is used for calculating
* misheyakir according to some opinions. This calculation is based on the position of the sun 52 minutes
* before {@link #getSunrise() sunrise} in Jerusalem around the equinox / equilux,
* which calculates to 11.5° below {@link #GEOMETRIC_ZENITH geometric zenith}.
* @todo recalculate.
*
* @return the Date of misheyakir. If the calculation can't be computed such as northern and
* southern locations even south of the Arctic Circle and north of the Antarctic Circle where the sun may
* not reach low enough below the horizon for this calculation, a null will be returned. See
* detailed explanation on top of the {@link AstronomicalCalendar} documentation.
* @see #ZENITH_11_POINT_5
*/
getMisheyakir11Point5Degrees(): DateTime | null;
/**
* This method returns misheyakir based on the position of the sun when it is {@link #ZENITH_11_DEGREES
* 11°} below {@link #GEOMETRIC_ZENITH geometric zenith} (90°). This calculation is used for calculating
* misheyakir according to some opinions. This calculation is based on the position of the sun 48 minutes
* before {@link #getSunrise() sunrise} in Jerusalem around the equinox / equilux,
* which calculates to 11° below {@link #GEOMETRIC_ZENITH geometric zenith}.
*
* @return If the calculation can't be computed such as northern and southern locations even south of the Arctic
* Circle and north of the Antarctic Circle where the sun may not reach low enough below the horizon for
* this calculation, a null will be returned. See detailed explanation on top of the
* {@link AstronomicalCalendar} documentation.
* @see #ZENITH_11_DEGREES
*/
getMisheyakir11Degrees(): DateTime | null;
/**
* This method returns misheyakir based on the position of the sun when it is {@link #ZENITH_10_POINT_2
* 10.2°} below {@link #GEOMETRIC_ZENITH geometric zenith} (90°). This calculation is used for calculating
* misheyakir according to some opinions. This calculation is based on the position of the sun 45 minutes
* before {@link #getSunrise() sunrise} in Jerusalem around the equinox which calculates
* to 10.2° below {@link #GEOMETRIC_ZENITH geometric zenith}.
*
* @return the Date of misheyakir. If the calculation can't be computed such as
* northern and southern locations even south of the Arctic Circle and north of the Antarctic Circle where
* the sun may not reach low enough below the horizon for this calculation, a null will be returned.
* See detailed explanation on top of the {@link AstronomicalCalendar} documentation.
* @see #ZENITH_10_POINT_2
*/
getMisheyakir10Point2Degrees(): DateTime | null;
/**
* This method returns misheyakir based on the position of the sun when it is {@link #ZENITH_7_POINT_65
* 7.65°} below {@link #GEOMETRIC_ZENITH geometric zenith} (90°). The degrees are based on a 35/36-minute
* zman around the
* equinox / equilux, when the neshef (twilight) is the shortest. This time is based on Rabbi Moshe Feinstein who writes in Ohr Hachaim Vol. 4, Ch. 6)
* that misheyakir in New York is 35-40 minutes before sunrise, something that is a drop less than 8°.
* Rabbi Yisroel Taplin in Zmanei Yisrael (page 117) notes that Rabbi Yaakov Kamenetsky stated that it is not less than 36
* minutes before sunrise (maybe it is 40 minutes). Sefer Yisrael Vehazmanim (p. 7) quotes the Tamar Yifrach
* in the name of the Satmar Rov that one should be stringent
* not consider misheyakir before 36 minutes. This is also the accepted minhag in Lakewood that is used in the Yeshiva. This follows the opinion of Rabbi Shmuel Kamenetsky who provided the time of 35/36 minutes,
* but did not provide a degree-based time. Since this zman depends on the level of light, Rabbi Yaakov Shakow
* presented this degree-based calculations to Rabbi Shmuel Kamenetsky who agreed to them.
*
* @return the Date of misheyakir. If the calculation can't be computed such as
* northern and southern locations even south of the Arctic Circle and north of the Antarctic Circle where
* the sun may not reach low enough below the horizon for this calculation, a null will be returned.
* See detailed explanation on top of the {@link AstronomicalCalendar} documentation.
*
* @see #ZENITH_7_POINT_65
* @see #getMisheyakir9Point5Degrees()
*/
getMisheyakir7Point65Degrees(): DateTime | null;
/**
* This method returns misheyakir based on the position of the sun when it is {@link #ZENITH_9_POINT_5
* 9.5°} below {@link #GEOMETRIC_ZENITH geometric zenith} (90°). This calculation is based on Rabbi Dovid Kronglass's Calculation of 45 minutes in Baltimore
* as mentioned in Divrei Chachamim No. 24
* brought down by the Birur Halacha, Tinyana, Ch.
* 18. This calculates to 9.5°. Also see Rabbi Yaakov
* Yitzchok Neiman in Kovetz Eitz Chaim Vol. 9, p. 202 that the Vya'an Yosef did not want to rely on times earlier
* than 45 minutes in New York. This zman is also used in the calendars published by Rabbi Hershel Edelstein.
* As mentioned in Yisroel Vehazmanim, Rabbi Edelstein who was given the 45 minute zman by Rabbi Bick. The
* calendars published by the Edot Hamizrach communities
* also use this zman. This also follows the opinion of Rabbi Shmuel Kamenetsky who provided the time of 36 and 45 minutes, but did not provide a degree-based time. Since
* this zman depends on the level of light, Rabbi Yaakov Shakow presented these degree-based times to Rabbi Shmuel
* Kamenetsky who agreed to them.
*
* @return the Date of misheyakir. If the calculation can't be computed such as
* northern and southern locations even south of the Arctic Circle and north of the Antarctic Circle where
* the sun may not reach low enough below the horizon for this calculation, a null will be returned.
* See detailed explanation on top of the {@link AstronomicalCalendar} documentation.
*
* @see #ZENITH_9_POINT_5
* @see #getMisheyakir7Point65Degrees()
*/
getMisheyakir9Point5Degrees(): DateTime | null;
/**
* This method returns the latest zman krias shema (time to recite Shema in the morning) according to the
* opinion of the Magen Avraham (MGA) based on
* alos being {@link #getAlos19Point8Degrees() 19.8°} before {@link #getSunrise() sunrise}. This
* time is 3 {@link #getShaahZmanis19Point8Degrees() shaos zmaniyos} (solar hours) after {@link
* #getAlos19Point8Degrees() dawn} based on the opinion of the MGA that the day is calculated from dawn to nightfall
* with both being 19.8° below sunrise or sunset. This returns the time of 3 *
* {@link #getShaahZmanis19Point8Degrees()} after {@link #getAlos19Point8Degrees() dawn}.
*
* @return the Date of the latest zman krias shema. If the calculation can't be computed such
* as northern and southern locations even south of the Arctic Circle and north of the Antarctic Circle
* where the sun may not reach low enough below the horizon for this calculation, a null will be
* returned. See detailed explanation on top of the {@link AstronomicalCalendar} documentation.
* @see #getShaahZmanis19Point8Degrees()
* @see #getAlos19Point8Degrees()
*/
getSofZmanShmaMGA19Point8Degrees(): DateTime | null;
/**
* This method returns the latest zman krias shema (time to recite Shema in the morning) according to the
* opinion of the Magen Avraham (MGA) based
* on alos being {@link #getAlos16Point1Degrees() 16.1°} before {@link #getSunrise() sunrise}. This time
* is 3 {@link #getShaahZmanis16Point1Degrees() shaos zmaniyos} (solar hours) after
* {@link #getAlos16Point1Degrees() dawn} based on the opinion of the MGA that the day is calculated from
* dawn to nightfall with both being 16.1° below sunrise or sunset. This returns the time of
* 3 * {@link #getShaahZmanis16Point1Degrees()} after {@link #getAlos16Point1Degrees() dawn}.
*
* @return the Date of the latest zman krias shema. If the calculation can't be computed such
* as northern and southern locations even south of the Arctic Circle and north of the Antarctic Circle
* where the sun may not reach low enough below the horizon for this calculation, a null will be
* returned. See detailed explanation on top of the {@link AstronomicalCalendar} documentation.
* @see #getShaahZmanis16Point1Degrees()
* @see #getAlos16Point1Degrees()
*/
getSofZmanShmaMGA16Point1Degrees(): DateTime | null;
/**
* This method returns the latest zman krias shema (time to recite Shema in the morning) according to the
* opinion of the Magen Avraham (MGA) based
* on alos being {@link #getAlos18Degrees() 18°} before {@link #getSunrise() sunrise}. This time is 3
* {@link #getShaahZmanis18Degrees() shaos zmaniyos} (solar hours) after {@link #getAlos18Degrees() dawn}
* based on the opinion of the MGA that the day is calculated from dawn to nightfall with both being 18°
* below sunrise or sunset. This returns the time of 3 * {@link #getShaahZmanis18Degrees()} after
* {@link #getAlos18Degrees() dawn}.
*
* @return the Date of the latest zman krias shema. If the calculation can't be computed such
* as northern and southern locations even south of the Arctic Circle and north of the Antarctic Circle
* where the sun may not reach low enough below the horizon for this calculation, a null will be
* returned. See detailed explanation on top of the {@link AstronomicalCalendar} documentation.
* @see #getShaahZmanis18Degrees()
* @see #getAlos18Degrees()
*/
getSofZmanShmaMGA18Degrees(): DateTime | null;
/**
* This method returns the latest zman krias shema (time to recite Shema in the morning) according to the
* opinion of the Magen Avraham (MGA) based on
* alos being {@link #getAlos72() 72} minutes before {@link #getSunrise() sunrise}. This time is 3 {@link
* #getShaahZmanis72Minutes() shaos zmaniyos} (solar hours) after {@link #getAlos72() dawn} based on the opinion
* of the MGA that the day is calculated from a {@link #getAlos72() dawn} of 72 minutes before sunrise to
* {@link #getTzais72() nightfall} of 72 minutes after sunset. This returns the time of 3 * {@link
* #getShaahZmanis72Minutes()} after {@link #getAlos72() dawn}. This class returns an identical time to {@link
* #getSofZmanShmaMGA()} and is repeated here for clarity.
*
* @return the Date of the latest zman krias shema. If the calculation can't be computed such
* as in the Arctic Circle where there is at least one day a year where the sun does not rise, and one where
* it does not set, a null will be returned. See detailed explanation on top of the
* {@link AstronomicalCalendar} documentation.
* @see #isUseAstronomicalChatzosForOtherZmanim()
* @see #getShaahZmanis72Minutes()
* @see #getAlos72()
* @see #getSofZmanShmaMGA()
*/
getSofZmanShmaMGA72Minutes(): DateTime | null;
/**
* This method returns the latest zman krias shema (time to recite Shema in the morning) according
* to the opinion of the Magen Avraham (MGA) based
* on alos being {@link #getAlos72Zmanis() 72} minutes zmaniyos, or 1/10th of the day before
* {@link #getSunrise() sunrise}. This time is 3 {@link #getShaahZmanis90MinutesZmanis() shaos zmaniyos}
* (solar hours) after {@link #getAlos72Zmanis() dawn} based on the opinion of the MGA that the day is calculated
* from a {@link #getAlos72Zmanis() dawn} of 72 minutes zmaniyos, or 1/10th of the day before
* {@link #getSeaLevelSunrise() sea level sunrise} to {@link #getTzais72Zmanis() nightfall} of 72 minutes
* zmaniyos after {@link #getSeaLevelSunset() sea level sunset}. This returns the time of 3 *
* {@link #getShaahZmanis72MinutesZmanis()} after {@link #getAlos72Zmanis() dawn}.
*
* @return the Date of the latest zman krias shema. If the calculation can't be computed such
* as in the Arctic Circle where there is at least one day a year where the sun does not rise, and one where
* it does not set, a null will be returned. See detailed explanation on top of the
* {@link AstronomicalCalendar} documentation.
* @see #getShaahZmanis72MinutesZmanis()
* @see #getAlos72Zmanis()
* @see #isUseAstronomicalChatzosForOtherZmanim()
*/
getSofZmanShmaMGA72MinutesZmanis(): DateTime | null;
/**
* This method returns the latest zman krias shema (time to recite Shema in the morning) according
* to the opinion of the Magen Avraham (MGA) based on
* alos being {@link #getAlos90() 90} minutes before {@link #getSunrise() sunrise}. This time is 3
* {@link #getShaahZmanis90Minutes() shaos zmaniyos} (solar hours) after {@link #getAlos90() dawn} based on
* the opinion of the MGA that the day is calculated from a {@link #getAlos90() dawn} of 90 minutes before sunrise to
* {@link #getTzais90() nightfall} of 90 minutes after sunset. This returns the time of 3 *
* {@link #getShaahZmanis90Minutes()} after {@link #getAlos90() dawn}.
*
* @return the Date of the latest zman krias shema. If the calculation can't be computed such
* as in the Arctic Circle where there is at least one day a year where the sun does not rise, and one where
* it does not set, a null will be returned. See detailed explanation on top of the
* {@link AstronomicalCalendar} documentation.
* @see #getShaahZmanis90Minutes()
* @see #getAlos90()
* @see #isUseAstronomicalChatzosForOtherZmanim()
*/
getSofZmanShmaMGA90Minutes(): DateTime | null;
/**
* This method returns the latest zman krias shema (time to recite Shema in the morning) according to the
* opinion of the Magen Avraham (MGA) based
* on alos being {@link #getAlos90Zmanis() 90} minutes zmaniyos before {@link #getSunrise()
* sunrise}. This time is 3 {@link #getShaahZmanis90MinutesZmanis() shaos zmaniyos} (solar hours) after
* {@link #getAlos90Zmanis() dawn} based on the opinion of the MGA that the day is calculated from a {@link
* #getAlos90Zmanis() dawn} of 90 minutes zmaniyos before sunrise to {@link #getTzais90Zmanis() nightfall}
* of 90 minutes zmaniyos after sunset. This returns the time of 3 * {@link #getShaahZmanis90MinutesZmanis()}
* after {@link #getAlos90Zmanis() dawn}.
*
* @return the Date of the latest zman krias shema. If the calculation can't be computed such
* as in the Arctic Circle where there is at least one day a year where the sun does not rise, and one where
* it does not set, a null will be returned. See detailed explanation on top of the
* {@link AstronomicalCalendar} documentation.
* @see #getShaahZmanis90MinutesZmanis()
* @see #getAlos90Zmanis()
* @see #isUseAstronomicalChatzosForOtherZmanim()
*/
getSofZmanShmaMGA90MinutesZmanis(): DateTime | null;
/**
* This method returns the latest zman krias shema (time to recite Shema in the morning) according to the
* opinion of the Magen Avraham (MGA) based
* on alos being {@link #getAlos96() 96} minutes before {@link #getSunrise() sunrise}. This time is 3
* {@link #getShaahZmanis96Minutes() shaos zmaniyos} (solar hours) after {@link #getAlos96() dawn} based on
* the opinion of the MGA that the day is calculated from a {@link #getAlos96() dawn} of 96 minutes before
* sunrise to {@link #getTzais96() nightfall} of 96 minutes after sunset. This returns the time of 3 * {@link
* #getShaahZmanis96Minutes()} after {@link #getAlos96() dawn}.
*
* @return the Date of the latest zman krias shema. If the calculation can't be computed such
* as in the Arctic Circle where there is at least one day a year where the sun does not rise, and one where
* it does not set, a null will be returned. See detailed explanation on top of the
* {@link AstronomicalCalendar} documentation.
* @see #getShaahZmanis96Minutes()
* @see #getAlos96()
* @see #isUseAstronomicalChatzosForOtherZmanim()
*/
getSofZmanShmaMGA96Minutes(): DateTime | null;
/**
* This method returns the latest zman krias shema (time to recite Shema in the morning) according to the
* opinion of the Magen Avraham (MGA) based
* on alos being {@link #getAlos90Zmanis() 96} minutes zmaniyos before {@link #getSunrise()
* sunrise}. This time is 3 {@link #getShaahZmanis96MinutesZmanis() shaos zmaniyos} (solar hours) after
* {@link #getAlos96Zmanis() dawn} based on the opinion of the MGA that the day is calculated from a {@link
* #getAlos96Zmanis() dawn} of 96 minutes zmaniyos before sunrise to {@link #getTzais90Zmanis() nightfall}
* of 96 minutes zmaniyos after sunset. This returns the time of 3 * {@link #getShaahZmanis96MinutesZmanis()}
* after {@link #getAlos96Zmanis() dawn}.
*
* @return the Date of the latest zman krias shema. If the calculation can't be computed such
* as in the Arctic Circle where there is at least one day a year where the sun does not rise, and one where
* it does not set, a null will be returned. See detailed explanation on top of the
* {@link AstronomicalCalendar} documentation.
* @see #getShaahZmanis96MinutesZmanis()
* @see #getAlos96Zmanis()
* @see #isUseAstronomicalChatzosForOtherZmanim()
*/
getSofZmanShmaMGA96MinutesZmanis(): DateTime | null;
/**
* This method returns the latest zman krias shema (time to recite Shema in the morning) calculated
* as 3 hours (regular clock hours and not shaos zmaniyos) before {@link ZmanimCalendar#getChatzos()}.
* Generally known as part of the "Komarno" zmanim after Rav Yitzchak Eizik of
* Komarno, a proponent of this calculation, it actually predates him a lot. It is the opinion of the
* Shach in the Nekudas Hakesef (Yoreh Deah 184), Rav Moshe Lifshitz in his commentary
* Lechem Mishneh on Brachos 1:2. It is
* next brought down about 100 years later by the Yaavetz
* (in his siddur, Mor Uktziah Orach
* Chaim 1, Lechem Shamayim, Brachos 1:2
* and She'elos Yaavetz vol. 1 no. 40),
* Rav Yitzchak Eizik of Komarno in the Ma'aseh Oreg on Mishnayos Brachos 11:2, Shevus Yaakov, Chasan Sofer and others.
* See Yisrael Vehazmanim vol. 1 7:3, page 55 -
* 62. A variant of this calculation {@link #getSofZmanShmaFixedLocal()} uses {@link #getFixedLocalChatzos() fixed
* local chatzos} for calculating this type of zman.
*
* @return the Date of the latest zman krias shema. If the calculation can't be computed such
* as in the Arctic Circle where there is at least one day a year where the sun does not rise, and one where
* it does not set, a null will be returned. See detailed explanation on top of the
* {@link AstronomicalCalendar} documentation.
* @see ZmanimCalendar#getChatzos()
* @see #getSofZmanShmaFixedLocal()
* @see #getSofZmanTfila2HoursBeforeChatzos()
* @see #isUseAstronomicalChatzos()
*/
getSofZmanShma3HoursBeforeChatzos(): DateTime | null;
/**
* This method returns the latest zman krias shema (time to recite Shema in the morning) according to the
* opinion of the Magen Avraham (MGA) based
* on alos being {@link #getAlos120() 120} minutes or 1/6th of the day before {@link #getSunrise() sunrise}.
* This time is 3 {@link #getShaahZmanis120Minutes() shaos zmaniyos} (solar hours) after {@link #getAlos120()
* dawn} based on the opinion of the MGA that the day is calculated from a {@link #getAlos120() dawn} of 120 minutes
* before sunrise to {@link #getTzais120() nightfall} of 120 minutes after sunset. This returns the time of 3
* {@link #getShaahZmanis120Minutes()} after {@link #getAlos120() dawn}. This is an extremely early zman that
* is very much a chumra.
*
* @return the Date of the latest zman krias shema. If the calculation can't be computed such
* as in the Arctic Circle where there is at least one day a year where the sun does not rise, and one where
* it does not set, a null will be returned. See detailed explanation on top of the
* {@link AstronomicalCalendar} documentation.
* @see #getShaahZmanis120Minutes()
* @see #getAlos120()
* @see #isUseAstronomicalChatzosForOtherZmanim()
*/
getSofZmanShmaMGA120Minutes(): DateTime | null;
/**
* This method returns the latest zman krias shema (time to recite Shema in the morning) based
* on the opinion that the day starts at {@link #getAlos16Point1Degrees() alos 16.1°} and ends at
* {@link #getSeaLevelSunset() sea level sunset}. This is the opinion of the \u05D7\u05D9\u05D3\u05D5\u05E9\u05D9
* \u05D5\u05DB\u05DC\u05DC\u05D5\u05EA \u05D4\u05E8\u05D6\u05F4\u05D4 and the \u05DE\u05E0\u05D5\u05E8\u05D4 \u05D4\u05D8\u05D4\u05D5\u05E8\u05D4 as
* mentioned by Yisrael Vehazmanim vol 1, sec. 7,
* ch. 3 no. 16. Three shaos zmaniyos are calculated based on this day and added to {@link
* #getAlos16Point1Degrees() alos} to reach this time. This time is 3 shaos zmaniyos (solar hours)
* after {@link #getAlos16Point1Degrees() dawn} based on the opinion that the day is calculated from a {@link
* #getAlos16Point1Degrees() alos 16.1°} to {@link #getSeaLevelSunset() sea level sunset}.
* Note: Based on this calculation chatzos will not be at midday and {@link
* #isUseAstronomicalChatzosForOtherZmanim()} will be ignored.
*
* @return the Date of the latest zman krias shema based on this day. If the calculation can't
* be computed such as northern and southern locations even south of the Arctic Circle and north of the
* Antarctic Circle where the sun may not reach low enough below the horizon for this calculation, a null
* will be returned. See detailed explanation on top of the {@link AstronomicalCalendar} documentation.
* @see #getAlos16Point1Degrees()
* @see #getSeaLevelSunset()
*/
getSofZmanShmaAlos16Point1ToSunset(): DateTime | null;
/**
* This method returns the latest zman krias shema (time to recite Shema in the morning) based on the
* opinion that the day starts at {@link #getAlos16Point1Degrees() alos 16.1°} and ends at
* {@link #getTzaisGeonim7Point083Degrees() tzais 7.083°}. 3 shaos zmaniyos are calculated
* based on this day and added to {@link #getAlos16Point1Degrees() alos} to reach this time. This time is 3
* shaos zmaniyos (temporal hours) after {@link #getAlos16Point1Degrees() alos 16.1°} based on
* the opinion that the day is calculated from a {@link #getAlos16Point1Degrees() alos 16.1°} to
* {@link #getTzaisGeonim7Point083Degrees() tzais 7.083°}.
* Note: Based on this calculation chatzos will not be at midday and {@link
* #isUseAstronomicalChatzosForOtherZmanim()} will be ignored.
*
* @return the Date of the latest zman krias shema based on this calculation. If the
* calculation can't be computed such as northern and southern locations even south of the Arctic Circle and
* north of the Antarctic Circle where the sun may not reach low enough below the horizon for this
* calculation, a null will be returned. See detailed explanation on top of the
* {@link AstronomicalCalendar} documentation.
* @see #getAlos16Point1Degrees()
* @see #getTzaisGeonim7Point083Degrees()
*/
getSofZmanShmaAlos16Point1ToTzaisGeonim7Point083Degrees(): DateTime | null;
/**
* From the GRA in Kol Eliyahu on Berachos #173 that states that zman krias shema is calculated as half the
* time from {@link #getSeaLevelSunrise() sea level sunrise} to {@link #getFixedLocalChatzos() fixed local chatzos}.
* The GRA himself seems to contradict this when he stated that zman krias shema is 1/4 of the day from
* sunrise to sunset. See Sarah Lamoed #25 in Yisroel Vehazmanim Vol. III page 1016.
*
* @return the Date of the latest zman krias shema based on this calculation. If the
* calculation can't be computed such as in the Arctic Circle where there is at least one day a year where
* the sun does not rise, and one where it does not set, a null will be returned. See detailed
* explanation on top of the {@link AstronomicalCalendar} documentation.
* @see #getFixedLocalChatzos()
*
* @deprecated As per a conversation Rabbi Yisroel Twerski had with Rabbi Harfenes, this zman published in
* the Yisrael Vehazmanim was based on a misunderstanding and should not be used. This deprecated method
* will be removed pending confirmation from Rabbi Harfenes.
*/
getSofZmanShmaKolEliyahu(): DateTime | null;
/**
* This method returns the latest zman tfila (time to recite the morning prayers) according to the opinion
* of the Magen Avraham (MGA) based on
* alos being {@link #getAlos19Point8Degrees() 19.8°} before {@link #getSunrise() sunrise}. This time
* is 4 {@link #getShaahZmanis19Point8Degrees() shaos zmaniyos} (solar hours) after {@link
* #getAlos19Point8Degrees() dawn} based on the opinion of the MGA that the day is calculated from dawn to
* nightfall with both being 19.8° below sunrise or sunset. This returns the time of 4 * {@link
* #getShaahZmanis19Point8Degrees()} after {@link #getAlos19Point8Degrees() dawn}.
*
* @return the Date of the latest zman krias shema. If the calculation can't be computed such
* as northern and southern locations even south of the Arctic Circle and north of the Antarctic Circle
* where the sun may not reach low enough below the horizon for this calculation, a null will be
* returned. See detailed explanation on top of the {@link AstronomicalCalendar} documentation.
*
* @see #getShaahZmanis19Point8Degrees()
* @see #getAlos19Point8Degrees()
* @see #isUseAstronomicalChatzosForOtherZmanim()
*/
getSofZmanTfilaMGA19Point8Degrees(): DateTime | null;
/**
* This method returns the latest zman tfila (time to recite the morning prayers) according to the opinion
* of the Magen Avraham (MGA) based on
* alos being {@link #getAlos16Point1Degrees() 16.1°} before {@link #getSunrise() sunrise}. This time
* is 4 {@link #getShaahZmanis16Point1Degrees() shaos zmaniyos} (solar hours) after {@link
* #getAlos16Point1Degrees() dawn} based on the opinion of the MGA that the day is calculated from dawn to
* nightfall with both being 16.1° below sunrise or sunset. This returns the time of 4 * {@link
* #getShaahZmanis16Point1Degrees()} after {@link #getAlos16Point1Degrees() dawn}.
*
* @return the Date of the latest zman krias shema. If the calculation can't be computed such
* as northern and southern locations even south of the Arctic Circle and north of the Antarctic Circle
* where the sun may not reach low enough below the horizon for this calculation, a null will be
* returned. See detailed explanation on top of the {@link AstronomicalCalendar} documentation.
*
* @see #getShaahZmanis16Point1Degrees()
* @see #getAlos16Point1Degrees()
*/
getSofZmanTfilaMGA16Point1Degrees(): DateTime | null;
/**
* This method returns the latest zman tfila (time to recite the morning prayers) according to the opinion
* of the Magen Avraham (MGA) based on
* alos being {@link #getAlos18Degrees() 18°} before {@link #getSunrise() sunrise}. This time is 4
* {@link #getShaahZmanis18Degrees() shaos zmaniyos} (solar hours) after {@link #getAlos18Degrees() dawn}
* based on the opinion of the MGA that the day is calculated from dawn to nightfall with both being 18°
* below sunrise or sunset. This returns the time of 4 * {@link #getShaahZmanis18Degrees()} after
* {@link #getAlos18Degrees() dawn}.
*
* @return the Date of the latest zman krias shema. If the calculation can't be computed such
* as northern and southern locations even south of the Arctic Circle and north of the Antarctic Circle
* where the sun may not reach low enough below the horizon for this calculation, a null will be
* returned. See detailed explanation on top of the {@link AstronomicalCalendar} documentation.
*
* @see #getShaahZmanis18Degrees()
* @see #getAlos18Degrees()
*/
getSofZmanTfilaMGA18Degrees(): DateTime | null;
/**
* This method returns the latest zman tfila (time to recite the morning prayers) according to the opinion
* of the Magen Avraham (MGA) based on
* alos being {@link #getAlos72() 72} minutes before {@link #getSunrise() sunrise}. This time is 4
* {@link #getShaahZmanis72Minutes() shaos zmaniyos} (solar hours) after {@link #getAlos72() dawn} based on
* the opinion of the MGA that the day is calculated from a {@link #getAlos72() dawn} of 72 minutes before
* sunrise to {@link #getTzais72() nightfall} of 72 minutes after sunset. This returns the time of 4 *
* {@link #getShaahZmanis72Minutes()} after {@link #getAlos72() dawn}. This class returns an identical time to
* {@link #getSofZmanTfilaMGA()} and is repeated here for clarity.
*
* @return the Date of the latest zman tfila. If the calculation can't be computed such as in
* the Arctic Circle where there is at least one day a year where the sun does not rise, and one where it
* does not set, a null will be returned. See detailed explanation on top of the
* {@link AstronomicalCalendar} documentation.
* @see #getShaahZmanis72Minutes()
* @see #getAlos72()
* @see #getSofZmanShmaMGA()
*/
getSofZmanTfilaMGA72Minutes(): DateTime | null;
/**
* This method returns the latest zman tfila (time to the morning prayers) according to the opinion of the
* Magen Avraham (MGA) based on alos
* being {@link #getAlos72Zmanis() 72} minutes zmaniyos before {@link #getSunrise() sunrise}. This time is 4
* {@link #getShaahZmanis72MinutesZmanis() shaos zmaniyos} (solar hours) after {@link #getAlos72Zmanis() dawn}
* based on the opinion of the MGA that the day is calculated from a {@link #getAlos72Zmanis() dawn} of 72
* minutes zmaniyos before sunrise to {@link #getTzais72Zmanis() nightfall} of 72 minutes zmaniyos
* after sunset. This returns the time of 4 * {@link #getShaahZmanis72MinutesZmanis()} after {@link #getAlos72Zmanis() dawn}.
*
* @return the Date of the latest zman krias shema. If the calculation can't be computed such
* as in the Arctic Circle where there is at least one day a year where the sun does not rise, and one where
* it does not set, a null will be returned. See detailed explanation on top of the
* {@link AstronomicalCalendar} documentation.
* @see #getShaahZmanis72MinutesZmanis()
* @see #getAlos72Zmanis()
*/
getSofZmanTfilaMGA72MinutesZmanis(): DateTime | null;
/**
* This method returns the latest zman tfila (time to recite the morning prayers) according to the opinion
* of the Magen Avraham (MGA) based on
* alos being {@link #getAlos90() 90} minutes before {@link #getSunrise() sunrise}. This time is 4
* {@link #getShaahZmanis90Minutes() shaos zmaniyos} (solar hours) after {@link #getAlos90() dawn} based on
* the opinion of the MGA that the day is calculated from a {@link #getAlos90() dawn} of 90 minutes before sunrise to
* {@link #getTzais90() nightfall} of 90 minutes after sunset. This returns the time of 4 *
* {@link #getShaahZmanis90Minutes()} after {@link #getAlos90() dawn}.
*
* @return the Date of the latest zman tfila. If the calculation can't be computed such as in
* the Arctic Circle where there is at least one day a year where the sun does not rise, and one where it
* does not set, a null will be returned. See detailed explanation on top of the
* {@link AstronomicalCalendar} documentation.
* @see #getShaahZmanis90Minutes()
* @see #getAlos90()
*/
getSofZmanTfilaMGA90Minutes(): DateTime | null;
/**
* This method returns the latest zman tfila (time to the morning prayers) according to the opinion of the
* Magen Avraham (MGA) based on alos
* being {@link #getAlos90Zmanis() 90} minutes zmaniyos before {@link #getSunrise() sunrise}. This time is
* 4 {@link #getShaahZmanis90MinutesZmanis() shaos zmaniyos} (solar hours) after {@link #getAlos90Zmanis()
* dawn} based on the opinion of the MGA that the day is calculated from a {@link #getAlos90Zmanis() dawn}
* of 90 minutes zmaniyos before sunrise to {@link #getTzais90Zmanis() nightfall} of 90 minutes
* zmaniyos after sunset. This returns the time of 4 * {@link #getShaahZmanis90MinutesZmanis()} after
* {@link #getAlos90Zmanis() dawn}.
*
* @return the Date of the latest zman krias shema. If the calculation can't be computed such
* as in the Arctic Circle where there is at least one day a year where the sun does not rise, and one where
* it does not set, a null will be returned. See detailed explanation on top of the
* {@link AstronomicalCalendar} documentation.
* @see #getShaahZmanis90MinutesZmanis()
* @see #getAlos90Zmanis()
*/
getSofZmanTfilaMGA90MinutesZmanis(): DateTime | null;
/**
* This method returns the latest zman tfila (time to recite the morning prayers) according to the opinion
* of the Magen Avraham (MGA) based on
* alos being {@link #getAlos96() 96} minutes before {@link #getSunrise() sunrise}. This time is 4
* {@link #getShaahZmanis96Minutes() shaos zmaniyos} (solar hours) after {@link #getAlos96() dawn} based on
* the opinion of the MGA that the day is calculated from a {@link #getAlos96() dawn} of 96 minutes before
* sunrise to {@link #getTzais96() nightfall} of 96 minutes after sunset. This returns the time of 4 *
* {@link #getShaahZmanis96Minutes()} after {@link #getAlos96() dawn}.
*
* @return the Date of the latest zman tfila. If the calculation can't be computed such as in
* the Arctic Circle where there is at least one day a year where the sun does not rise, and one where it
* does not set, a null will be returned. See detailed explanation on top of the
* {@link AstronomicalCalendar} documentation.
* @see #getShaahZmanis96Minutes()
* @see #getAlos96()
*/
getSofZmanTfilaMGA96Minutes(): DateTime | null;
/**
* This method returns the latest zman tfila (time to the morning prayers) according to the opinion of the
* Magen Avraham (MGA) based on alos
* being {@link #getAlos96Zmanis() 96} minutes zmaniyos before {@link #getSunrise() sunrise}. This time is
* 4 {@link #getShaahZmanis96MinutesZmanis() shaos zmaniyos} (solar hours) after {@link #getAlos96Zmanis()
* dawn} based on the opinion of the MGA that the day is calculated from a {@link #getAlos96Zmanis() dawn}
* of 96 minutes zmaniyos before sunrise to {@link #getTzais96Zmanis() nightfall} of 96 minutes
* zmaniyos after sunset. This returns the time of 4 * {@link #getShaahZmanis96MinutesZmanis()} after
* {@link #getAlos96Zmanis() dawn}.
*
* @return the Date of the latest zman krias shema. If the calculation can't be computed such
* as in the Arctic Circle where there is at least one day a year where the sun does not rise, and one where
* it does not set, a null will be returned. See detailed explanation on top of the
* {@link AstronomicalCalendar} documentation.
* @see #getShaahZmanis90MinutesZmanis()
* @see #getAlos90Zmanis()
*/
getSofZmanTfilaMGA96MinutesZmanis(): DateTime | null;
/**
* This method returns the latest zman tfila (time to recite the morning prayers) according to the opinion
* of the Magen Avraham (MGA) based on
* alos being {@link #getAlos120() 120} minutes before {@link #getSunrise() sunrise} . This time is 4
* {@link #getShaahZmanis120Minutes() shaos zmaniyos} (solar hours) after {@link #getAlos120() dawn}
* based on the opinion of the MGA that the day is calculated from a {@link #getAlos120() dawn} of 120
* minutes before sunrise to {@link #getTzais120() nightfall} of 120 minutes after sunset. This returns the time of
* 4 * {@link #getShaahZmanis120Minutes()} after {@link #getAlos120() dawn}. This is an extremely early zman
* that is very much a chumra.
*
* @return the Date of the latest zman krias shema. If the calculation can't be computed such
* as in the Arctic Circle where there is at least one day a year where the sun does not rise, and one where
* it does not set, a null will be returned. See detailed explanation on top of the
* {@link AstronomicalCalendar} documentation.
* @see #getShaahZmanis120Minutes()
* @see #getAlos120()
*/
getSofZmanTfilaMGA120Minutes(): DateTime | null;
/**
* This method returns the latest zman tfila (time to recite the morning prayers) calculated as 2 hours
* before {@link ZmanimCalendar#getChatzos()}. This is based on the opinions that calculate
* sof zman krias shema as {@link #getSofZmanShma3HoursBeforeChatzos()}. This returns the time of 2 hours
* before {@link ZmanimCalendar#getChatzos()}.
*
* @return the Date of the latest zman krias shema. If the calculation can't be computed such
* as in the Arctic Circle where there is at least one day a year where the sun does not rise, and one where
* it does not set, a null will be returned. See detailed explanation on top of the
* {@link AstronomicalCalendar} documentation.
* @see ZmanimCalendar#getChatzos()
* @see #getSofZmanShma3HoursBeforeChatzos()
*/
getSofZmanTfila2HoursBeforeChatzos(): DateTime | null;
/**
* This method returns mincha gedola calculated as 30 minutes after {@link #getChatzos() chatzos}
* and not 1/2 of a {@link #getShaahZmanisGra() shaah zmanis} after {@link #getChatzos() chatzos} as
* calculated by {@link #getMinchaGedola}. Some use this time to delay the start of mincha in the winter when
* 1/2 of a {@link #getShaahZmanisGra() shaah zmanis} is less than 30 minutes. See
* {@link #getMinchaGedolaGreaterThan30()} for a convenience method that returns the later of the 2 calculations. One
* should not use this time to start mincha before the standard {@link #getMinchaGedola() mincha gedola}.
* See Shulchan Aruch Orach Chayim 234:1 and
* the Shaar Hatziyon seif katan ches. Since this calculation is a fixed 30 minutes of regular clock time after
* chatzos, even if {@link #isUseAstronomicalChatzosForOtherZmanim()} is false, this mincha
* gedola time will be affected by {@link #isUseAstronomicalChatzos()} and not by
* {@link #isUseAstronomicalChatzosForOtherZmanim()}.
*
* @return the Date of 30 minutes after chatzos. If the calculation can't be computed such as
* in the Arctic Circle where there is at least one day a year where the sun does not rise, and one where it
* does not set, a null will be returned. See detailed explanation on top of the
* {@link AstronomicalCalendar} documentation.
* @see #getMinchaGedola()
* @see #getMinchaGedolaGreaterThan30()
* @see #getChatzos()
* @see #isUseAstronomicalChatzos()
* @see #isUseAstronomicalChatzosForOtherZmanim()
*/
getMinchaGedola30Minutes(): DateTime | null;
/**
* This method returns the time of mincha gedola according to the Magen Avraham with the day starting 72
* minutes before sunrise and ending 72 minutes after sunset. This is the earliest time to pray mincha. For
* more information on this see the documentation on {@link #getMinchaGedola() mincha gedola}. This is
* calculated as 6.5 {@link #getTemporalHour() solar hours} after alos. The calculation used is 6.5 *
* {@link #getShaahZmanis72Minutes()} after {@link #getAlos72() alos}. If {@link
* #isUseAstronomicalChatzosForOtherZmanim()} is set to true, the calculation will be based on 0.5
* {@link #getHalfDayBasedShaahZmanis(Date, Date) half-day based sha'ah zmanis} between {@link #getChatzos()}
* and {@link #getTzais72()} after {@link #getChatzos()}.
*
* @see #getAlos72()
* @see #getMinchaGedola()
* @see #getMinchaKetana()
* @see ZmanimCalendar#getMinchaGedola()
* @see #getChatzos()
* @see #isUseAstronomicalChatzosForOtherZmanim()
* @return the Date of the time of mincha gedola. If the calculation can't be computed such as
* in the Arctic Circle where there is at least one day a year where the sun does not rise, and one where it
* does not set, a null will be returned. See detailed explanation on top of the
* {@link AstronomicalCalendar} documentation.
*/
getMinchaGedola72Minutes(): DateTime | null;
/**
* This method returns the time of mincha gedola according to the Magen Avraham with the day starting and
* ending 16.1° below the horizon. This is the earliest time to pray mincha. For more information on
* this see the documentation on {@link #getMinchaGedola() mincha gedola}. This is calculated as 6.5
* {@link #getTemporalHour() solar hours} after alos. The calculation used is 6.5 *
* {@link #getShaahZmanis16Point1Degrees()} after {@link #getAlos16Point1Degrees() alos}. If {@link
* #isUseAstronomicalChatzosForOtherZmanim()} is set to true, the calculation will be based on 0.5
* {@link #getHalfDayBasedShaahZmanis(Date, Date) half-day based sha'ah zmanis} between {@link #getChatzos()}
* and {@link #getAlos16Point1Degrees()} after {@link #getChatzos()}.
* @see #getShaahZmanis16Point1Degrees()
* @see #getMinchaGedola()
* @see #getMinchaKetana()
* @return the Date of the time of mincha gedola. If the calculation can't be computed such as
* northern and southern locations even south of the Arctic Circle and north of the Antarctic Circle where
* the sun may not reach low enough below the horizon for this calculation, a null will be returned.
* See detailed explanation on top of the {@link AstronomicalCalendar} documentation.
*/
getMinchaGedola16Point1Degrees(): DateTime | null;
/**
* This method returns the time of mincha gedola based on the opinion of Rabbi Yaakov Moshe Hillel as published in the luach
* of the Bais Horaah of Yeshivat Chevrat Ahavat Shalom that mincha gedola is calculated as half a shaah
* zmanis after chatzos with shaos zmaniyos calculated based on a day starting 72 minutes before sunrise
* {@link #getAlos16Point1Degrees() alos 16.1°} and ending 13.5 minutes after sunset {@link
* #getTzaisGeonim3Point7Degrees() tzais 3.7°}. Mincha gedola is the earliest time to pray mincha.
* The later of this time or 30 clock minutes after chatzos is returned. See {@link #getMinchaGedolaGreaterThan30()}
* (though that calculation is based on mincha gedola GRA).
* For more information about mincha gedola see the documentation on {@link #getMinchaGedola() mincha gedola}.
* Since calculation of this zman involves chatzos that is offset from the center of the astronomical day,
* {@link #isUseAstronomicalChatzosForOtherZmanim()} is N/A here.
* @return the Date of the mincha gedola. If the calculation can't be computed such as northern and
* southern locations even south of the Arctic Circle and north of the Antarctic Circle where the sun may not
* reach low enough below the horizon for this calculation, a null will be returned. See detailed
* explanation on top of the {@link AstronomicalCalendar} documentation.
*
* @see #getAlos16Point1Degrees()
* @see #getTzaisGeonim3Point7Degrees()
* @see #getShaahZmanisAlos16Point1ToTzais3Point7()
* @see #getMinchaGedolaGreaterThan30()
*/
getMinchaGedolaAhavatShalom(): DateTime | null;
/**
* This is a convenience method that returns the later of {@link #getMinchaGedola()} and
* {@link #getMinchaGedola30Minutes()}. In the winter when 1/2 of a {@link #getShaahZmanisGra() shaah zmanis} is
* less than 30 minutes {@link #getMinchaGedola30Minutes()} will be returned, otherwise {@link #getMinchaGedola()}
* will be returned. Since this calculation can be an offset of chatzos (if 30 clock minutes > 1/2 of a shaah
* zmanis), even if {@link #isUseAstronomicalChatzosForOtherZmanim()} is false, this mincha time
* may be affected by {@link #isUseAstronomicalChatzos()}.
*
* @return the Date of the later of {@link #getMinchaGedola()} and {@link #getMinchaGedola30Minutes()}.
* If the calculation can't be computed such as in the Arctic Circle where there is at least one day a year
* where the sun does not rise, and one where it does not set, a null will be returned. See detailed
* explanation on top of the {@link AstronomicalCalendar} documentation.
* @see #getMinchaGedola()
* @see #getMinchaGedola30Minutes()
* @see #isUseAstronomicalChatzos()
*/
getMinchaGedolaGreaterThan30(): DateTime | null;
/**
* FIXME check for synchronous
* This method returns the time of mincha ketana according to the Magen Avraham with the day starting and
* ending 16.1° below the horizon. This is the preferred earliest time to pray mincha according to the
* opinion of the Rambam and others. For more information on
* this see the documentation on {@link #getMinchaGedola() mincha gedola}. This is calculated as 9.5
* {@link #getTemporalHour() solar hours} after alos. The calculation used is 9.5 *
* {@link #getShaahZmanis16Point1Degrees()} after {@link #getAlos16Point1Degrees() alos}.
*
* @see #getShaahZmanis16Point1Degrees()
* @see #getMinchaGedola()
* @see #getMinchaKetana()
* @return the Date of the time of mincha ketana. If the calculation can't be computed such
* as northern and southern locations even south of the Arctic Circle and north of the Antarctic Circle
* where the sun may not reach low enough below the horizon for this calculation, a null will be
* returned. See detailed explanation on top of the {@link AstronomicalCalendar} documentation.
*/
getMinchaKetana16Point1Degrees(): DateTime | null;
/**
* This method returns the time of mincha ketana based on the opinion of Rabbi Yaakov Moshe Hillel as published in the luach
* of the Bais Horaah of Yeshivat Chevrat Ahavat Shalom that mincha ketana is calculated as 2.5 shaos
* zmaniyos before {@link #getTzaisGeonim3Point8Degrees() tzais 3.8°} with shaos zmaniyos
* calculated based on a day starting at {@link #getAlos16Point1Degrees() alos 16.1°} and ending at
* tzais 3.8°. Mincha ketana is the preferred earliest time to pray mincha according to
* the opinion of the Rambam and others. For more information
* on this see the documentation on {@link #getMinchaKetana() mincha ketana}.
*
* @return the Date of the time of mincha ketana. If the calculation can't be computed such as
* northern and southern locations even south of the Arctic Circle and north of the Antarctic Circle where the
* sun may not reach low enough below the horizon for this calculation, a null will be returned.
* See detailed explanation on top of the {@link AstronomicalCalendar} documentation.
*
* @see #getShaahZmanisAlos16Point1ToTzais3Point8()
* @see #getMinchaGedolaAhavatShalom()
* @see #getPlagAhavatShalom()
*/
getMinchaKetanaAhavatShalom(): DateTime | null;
/**
* This method returns the time of mincha ketana according to the Magen Avraham with the day
* starting 72 minutes before sunrise and ending 72 minutes after sunset. This is the preferred earliest time to pray
* mincha according to the opinion of the Rambam
* and others. For more information on this see the documentation on {@link #getMinchaGedola() mincha gedola}.
* This is calculated as 9.5 {@link #getShaahZmanis72Minutes()} after alos. The calculation used is 9.5 *
* {@link #getShaahZmanis72Minutes()} after {@link #getAlos72() alos}.
*
* @see #getShaahZmanis16Point1Degrees()
* @see #getMinchaGedola()
* @see #getMinchaKetana()
* @return the Date of the time of mincha ketana. If the calculation can't be computed such as
* in the Arctic Circle where there is at least one day a year where the sun does not rise, and one where it
* does not set, a null will be returned. See detailed explanation on top of the
* {@link AstronomicalCalendar} documentation.
*/
getMinchaKetana72Minutes(): DateTime | null;
/**
* This method returns the time of plag hamincha according to the Magen Avraham with the day starting 60
* minutes before sunrise and ending 60 minutes after sunset. This is calculated as 10.75 hours after
* {@link #getAlos60() dawn}. The formula used is 10.75 {@link #getShaahZmanis60Minutes()} after {@link #getAlos60()}.
*
* @return the Date of the time of plag hamincha. If the calculation can't be computed such as
* in the Arctic Circle where there is at least one day a year where the sun does not rise, and one where it
* does not set, a null will be returned. See detailed explanation on top of the
* {@link AstronomicalCalendar} documentation.
*
* @see #getShaahZmanis60Minutes()
* @see #getAlos60()
* @see #getTzais60()
*/
getPlagHamincha60Minutes(): DateTime | null;
/**
* This method should be used lechumra only and returns the time of plag hamincha according to the
* Magen Avraham with the day starting 72 minutes before sunrise and ending 72 minutes after sunset. This is calculated
* as 10.75 hours after {@link #getAlos72() dawn}. The formula used is 10.75 {@link #getShaahZmanis72Minutes()} after
* {@link #getAlos72()}. Since plag by this calculation can occur after sunset, it should only be used
* lechumra.
*
* @deprecated This method should be used lechumra only since it returns a very late time (often after
* shkiah), and if used lekula can result in chillul Shabbos etc. There is no
* current plan to remove this method from the API, and this deprecation is intended to alert developers
* of the danger of using it.
*
* @return the Date of the time of plag hamincha. If the calculation can't be computed such as
* in the Arctic Circle where there is at least one day a year where the sun does not rise, and one where it
* does not set, a null will be returned. See detailed explanation on top of the
* {@link AstronomicalCalendar} documentation.
*
* @see #getShaahZmanis72Minutes()
*/
getPlagHamincha72Minutes(): DateTime | null;
/**
* This method should be used lechumra only and returns the time of plag hamincha according to the
* Magen Avraham with the day starting 90 minutes before sunrise and ending 90 minutes after sunset. This is calculated
* as 10.75 hours after {@link #getAlos90() dawn}. The formula used is 10.75 {@link #getShaahZmanis90Minutes()} after
* {@link #getAlos90()}. Since plag by this calculation can occur after sunset, it should only be used
* lechumra.
*
* @deprecated This method should be used lechumra only since it returns a very late time (often after
* shkiah), and if used lekula can result in chillul Shabbos etc. There is no
* current plan to remove this method from the API, and this deprecation is intended to alert developers
* of the danger of using it.
*
* @return the Date of the time of plag hamincha. If the calculation can't be computed such as
* in the Arctic Circle where there is at least one day a year where the sun does not rise, and one where it
* does not set, a null will be returned. See detailed explanation on top of the
* {@link AstronomicalCalendar} documentation.
*
* @see #getShaahZmanis90Minutes()
*/
getPlagHamincha90Minutes(): DateTime | null;
/**
* This method should be used lechumra only and returns the time of plag hamincha according to the Magen
* Avraham with the day starting 96 minutes before sunrise and ending 96 minutes after sunset. This is calculated as 10.75
* hours after {@link #getAlos96() dawn}. The formula used is 10.75 {@link #getShaahZmanis96Minutes()} after
* {@link #getAlos96()}. Since plag by this calculation can occur after sunset, it should only be used
* lechumra.
*
* @deprecated This method should be used lechumra only since it returns a very late time (often after
* shkiah), and if used lekula can result in chillul Shabbos etc. There is no
* current plan to remove this method from the API, and this deprecation is intended to alert developers
* of the danger of using it.
*
* @return the Date of the time of plag hamincha. If the calculation can't be computed such as
* in the Arctic Circle where there is at least one day a year where the sun does not rise, and one where it
* does not set, a null will be returned. See detailed explanation on top of the
* {@link AstronomicalCalendar} documentation.
* @see #getShaahZmanis96Minutes()
*/
getPlagHamincha96Minutes(): DateTime | null;
/**
* This method should be used lechumra only and returns the time of plag hamincha. This is calculated
* as 10.75 hours after {@link #getAlos96Zmanis() dawn}. The formula used is 10.75 * {@link
* #getShaahZmanis96MinutesZmanis()} after {@link #getAlos96Zmanis() dawn}. Since plag by this calculation can
* occur after sunset, it should only be used lechumra.
*
* @deprecated This method should be used lechumra only since it returns a very late time (often after
* shkiah), and if used lekula can result in chillul Shabbos etc. There is no
* current plan to remove this method from the API, and this deprecation is intended to alert developers
* of the danger of using it.
*
* @return the Date of the time of plag hamincha. If the calculation can't be computed such as
* in the Arctic Circle where there is at least one day a year where the sun does not rise, and one where it
* does not set, a null will be returned. See detailed explanation on top of the
* {@link AstronomicalCalendar} documentation.
*/
getPlagHamincha96MinutesZmanis(): DateTime | null;
/**
* This method should be used lechumra only and returns the time of plag hamincha. This is calculated
* as 10.75 hours after {@link #getAlos90Zmanis() dawn}. The formula used is 10.75 * {@link
* #getShaahZmanis90MinutesZmanis()} after {@link #getAlos90Zmanis() dawn}. Since plag by this calculation can
* occur after sunset, it should only be used lechumra.
*
* @deprecated This method should be used lechumra only since it returns a very late time (often after
* shkiah), and if used lekula can result in chillul Shabbos etc. There is no
* current plan to remove this method from the API, and this deprecation is intended to alert developers
* of the danger of using it.
*
* @return the Date of the time of plag hamincha. If the calculation can't be computed such as
* in the Arctic Circle where there is at least one day a year where the sun does not rise, and one where it
* does not set, a null will be returned. See detailed explanation on top of the
* {@link AstronomicalCalendar} documentation.
*/
getPlagHamincha90MinutesZmanis(): DateTime | null;
/**
* This method should be used lechumra only and returns the time of plag hamincha. This is calculated as
* 10.75 hours after {@link #getAlos72Zmanis()}. The formula used is 10.75 * {@link #getShaahZmanis72MinutesZmanis()} after
* {@link #getAlos72Zmanis() dawn}. Since plag by this calculation can occur after sunset, it should only be used
* lechumra.
*
* @deprecated This method should be used lechumra only since it returns a very late time (often after
* shkiah), and if used lekula can result in chillul Shabbos etc. There is no
* current plan to remove this method from the API, and this deprecation is intended to alert developers
* of the danger of using it.
*
* @return the Date of the time of plag hamincha. If the calculation can't be computed such as
* in the Arctic Circle where there is at least one day a year where the sun does not rise, and one where it
* does not set, a null will be returned. See detailed explanation on top of the
* {@link AstronomicalCalendar} documentation.
*/
getPlagHamincha72MinutesZmanis(): DateTime | null;
/**
* This method should be used lechumra only and returns the time of plag hamincha based on the
* opinion that the day starts at {@link #getAlos16Point1Degrees() alos 16.1°} and ends at {@link
* #getTzais16Point1Degrees() tzais 16.1°}. This is calculated as 10.75 hours zmaniyos
* after {@link #getAlos16Point1Degrees() dawn}. The formula used is 10.75 * {@link #getShaahZmanis16Point1Degrees()}
* after {@link #getAlos16Point1Degrees()}. Since plag by this calculation can occur after sunset, it
* should only be used lechumra.
*
* @deprecated This method should be used lechumra only since it returns a very late time (often after
* shkiah), and if used lekula can result in chillul Shabbos etc. There is no
* current plan to remove this method from the API, and this deprecation is intended to alert developers
* of the danger of using it.
*
* @return the Date of the time of plag hamincha. If the calculation can't be computed such as
* northern and southern locations even south of the Arctic Circle and north of the Antarctic Circle where
* the sun may not reach low enough below the horizon for this calculation, a null will be
* returned. See detailed explanation on top of the {@link AstronomicalCalendar} documentation.
*
* @see #getShaahZmanis16Point1Degrees()
*/
getPlagHamincha16Point1Degrees(): DateTime | null;
/**
* This method should be used lechumra only and returns the time of plag hamincha based on the
* opinion that the day starts at {@link #getAlos19Point8Degrees() alos 19.8°} and ends at {@link
* #getTzais19Point8Degrees() tzais 19.8°}. This is calculated as 10.75 hours zmaniyos
* after {@link #getAlos19Point8Degrees() dawn}. The formula used is 10.75 * {@link
* #getShaahZmanis19Point8Degrees()} after {@link #getAlos19Point8Degrees()}. Since plag by this
* calculation can occur after sunset, it should only be used lechumra.
*
* @deprecated This method should be used lechumra only since it returns a very late time (often after
* shkiah), and if used lekula can result in chillul Shabbos etc. There is no
* current plan to remove this method from the API, and this deprecation is intended to alert developers
* of the danger of using it.
*
* @return the Date of the time of plag hamincha. If the calculation can't be computed such as
* northern and southern locations even south of the Arctic Circle and north of the Antarctic Circle where
* the sun may not reach low enough below the horizon for this calculation, a null will be
* returned. See detailed explanation on top of the {@link AstronomicalCalendar} documentation.
*
* @see #getShaahZmanis19Point8Degrees()
*/
getPlagHamincha19Point8Degrees(): DateTime | null;
/**
* This method should be used lechumra only and returns the time of plag hamincha based on the
* opinion that the day starts at {@link #getAlos26Degrees() alos 26°} and ends at {@link
* #getTzais26Degrees() tzais 26°}. This is calculated as 10.75 hours zmaniyos after {@link
* #getAlos26Degrees() dawn}. The formula used is 10.75 * {@link #getShaahZmanis26Degrees()} after {@link
* #getAlos26Degrees()}. Since the zman based on an extremely early alos and a very late
* tzais, it should only be used lechumra.
*
* @deprecated This method should be used lechumra only since it returns a very late time (often after
* shkiah), and if used lekula can result in chillul Shabbos etc. There is no
* current plan to remove this method from the API, and this deprecation is intended to alert developers
* of the danger of using it.
*
* @return the Date of the time of plag hamincha. If the calculation can't be computed such as
* northern and southern locations even south of the Arctic Circle and north of the Antarctic Circle where
* the sun may not reach low enough below the horizon for this calculation, a null will be
* returned. See detailed explanation on top of the {@link AstronomicalCalendar} documentation.
*
* @see #getShaahZmanis26Degrees()
* @see #getPlagHamincha120Minutes()
*/
getPlagHamincha26Degrees(): DateTime | null;
/**
* This method should be used lechumra only and returns the time of plag hamincha based on the
* opinion that the day starts at {@link #getAlos18Degrees() alos 18°} and ends at {@link
* #getTzais18Degrees() tzais 18°}. This is calculated as 10.75 hours zmaniyos after {@link
* #getAlos18Degrees() dawn}. The formula used is 10.75 * {@link #getShaahZmanis18Degrees()} after {@link
* #getAlos18Degrees()}. Since plag by this calculation can occur after sunset, it should only be used
* lechumra.
*
* @deprecated This method should be used lechumra only since it returns a very late time (often after
* shkiah), and if used lekula can result in chillul Shabbos etc. There is no
* current plan to remove this method from the API, and this deprecation is intended to alert developers
* of the danger of using it.
*
* @return the Date of the time of plag hamincha. If the calculation can't be computed such as
* northern and southern locations even south of the Arctic Circle and north of the Antarctic Circle where
* the sun may not reach low enough below the horizon for this calculation, a null will be
* returned. See detailed explanation on top of the {@link AstronomicalCalendar} documentation.
*
* @see #getShaahZmanis18Degrees()
*/
getPlagHamincha18Degrees(): DateTime | null;
/**
* This method should be used lechumra only and returns the time of plag hamincha based on the opinion
* that the day starts at {@link #getAlos16Point1Degrees() alos 16.1°} and ends at {@link #getSunset() sunset}.
* 10.75 shaos zmaniyos are calculated based on this day and added to {@link #getAlos16Point1Degrees()
* alos} to reach this time. This time is 10.75 shaos zmaniyos (temporal hours) after {@link
* #getAlos16Point1Degrees() dawn} based on the opinion that the day is calculated from a {@link #getAlos16Point1Degrees()
* dawn} of 16.1 degrees before sunrise to {@link #getSeaLevelSunset() sea level sunset}. This returns the time of 10.75 *
* the calculated shaah zmanis after {@link #getAlos16Point1Degrees() dawn}. Since plag by this
* calculation can occur after sunset, it should only be used lechumra.
*
*
* @return the Date of the plag. If the calculation can't be computed such as northern and southern
* locations even south of the Arctic Circle and north of the Antarctic Circle where the sun may not reach
* low enough below the horizon for this calculation, a null will be returned. See detailed
* explanation on top of the {@link AstronomicalCalendar} documentation.
*
* @see #getAlos16Point1Degrees()
* @see #getSeaLevelSunset()
*/
getPlagAlosToSunset(): DateTime | null;
/**
* This method returns the time of plag hamincha based on the opinion that the day starts at
* {@link #getAlos16Point1Degrees() alos 16.1°} and ends at {@link #getTzaisGeonim7Point083Degrees()
* tzais}. 10.75 shaos zmaniyos are calculated based on this day and added to {@link
* #getAlos16Point1Degrees() alos} to reach this time. This time is 10.75 shaos zmaniyos (temporal
* hours) after {@link #getAlos16Point1Degrees() dawn} based on the opinion that the day is calculated from a
* {@link #getAlos16Point1Degrees() dawn} of 16.1 degrees before sunrise to
* {@link #getTzaisGeonim7Point083Degrees() tzais} . This returns the time of 10.75 * the calculated
* shaah zmanis after {@link #getAlos16Point1Degrees() dawn}.
*
* @return the Date of the plag. If the calculation can't be computed such as northern and
* southern locations even south of the Arctic Circle and north of the Antarctic Circle where the sun may not
* reach low enough below the horizon for this calculation, a null will be returned. See
* detailed explanation on top of the {@link AstronomicalCalendar} documentation.
*
* @see #getAlos16Point1Degrees()
* @see #getTzaisGeonim7Point083Degrees()
*/
getPlagAlos16Point1ToTzaisGeonim7Point083Degrees(): DateTime | null;
/**
* This method returns the time of plag hamincha (the earliest time that Shabbos can be started) based on the
* opinion of Rabbi Yaakov Moshe Hillel as published in
* the luach of the Bais Horaah of Yeshivat Chevrat Ahavat Shalom that that plag hamincha is calculated
* as 1.25 shaos zmaniyos before {@link #getTzaisGeonim3Point8Degrees() tzais 3.8°} with shaos
* zmaniyos calculated based on a day starting at {@link #getAlos16Point1Degrees() alos 16.1°} and
* ending at tzais 3.8°.
*
* @return the Date of the plag. If the calculation can't be computed such as northern and
* southern locations even south of the Arctic Circle and north of the Antarctic Circle where the sun may not
* reach low enough below the horizon for this calculation, a null will be returned. See detailed
* explanation on top of the {@link AstronomicalCalendar} documentation.
*
* @see #getShaahZmanisAlos16Point1ToTzais3Point8()
* @see #getMinchaGedolaAhavatShalom()
* @see #getMinchaKetanaAhavatShalom()
*/
getPlagAhavatShalom(): DateTime | null;
/**
* Method to return the beginning of bain hashmashos of Rabbeinu Tam calculated when the sun is
* {@link #ZENITH_13_POINT_24 13.24°} below the western {@link #GEOMETRIC_ZENITH geometric horizon} (90°)
* after sunset. This calculation is based on the same calculation of {@link #getBainHashmashosRT58Point5Minutes()
* bain hashmashos Rabbeinu Tam 58.5 minutes} but uses a degree-based calculation instead of 58.5 exact
* minutes. This calculation is based on the position of the sun 58.5 minutes after sunset in Jerusalem around the equinox / equilux,
* which calculates to 13.24° below {@link #GEOMETRIC_ZENITH geometric zenith}.
* NOTE: As per Yisrael Vehazmanim Vol. III page 1028, No. 50, a dip of slightly less than 13° should be used.
* Calculations show that the proper dip to be 13.2456° (truncated to 13.24 that provides about 1.5 second
* earlier (lechumra) time) below the horizon at that time. This makes a difference of 1 minute and 10
* seconds in Jerusalem during the Equinox, and 1 minute 29 seconds during the solstice as compared to the proper
* 13.24° versus 13°. For NY during the solstice, the difference is 1-minute 56 seconds.
* @todo recalculate the above based on equilux/equinox calculations.
*
* @return the Date of the sun being 13.24° below {@link #GEOMETRIC_ZENITH geometric zenith}
* (90°). If the calculation can't be computed such as northern and southern locations even south of the
* Arctic Circle and north of the Antarctic Circle where the sun may not reach low enough below the horizon
* for this calculation, a null will be returned. See detailed explanation on top of the
* {@link AstronomicalCalendar} documentation.
*
* @see #ZENITH_13_POINT_24
* @see #getBainHashmashosRT58Point5Minutes()
*/
getBainHashmashosRT13Point24Degrees(): DateTime | null;
/**
* Misspelled method name that should be {@link #getBainHashmashosRT13Point24Degrees()}.
* @return the properly spelled version.
*/
getBainHasmashosRT13Point24Degrees(): DateTime | null;
/**
* This method returns the beginning of Bain hashmashos of Rabbeinu Tam calculated as a 58.5-minute offset
* after sunset. bain hashmashos is 3/4 of a mil before tzais or 3 1/4
* mil after sunset. With a mil calculated as 18 minutes, 3.25 * 18 = 58.5 minutes.
*
* @return the Date of 58.5 minutes after sunset. If the calculation can't be computed such as in the
* Arctic Circle where there is at least one day a year where the sun does not rise, and one where it does
* not set, a null will be returned. See detailed explanation on top of the
* {@link AstronomicalCalendar} documentation.
*
*/
getBainHashmashosRT58Point5Minutes(): DateTime | null;
/**
* Misspelled method name that should be {@link #getBainHashmashosRT58Point5Minutes()}.
* @return the properly spelled version.
* @deprecated
*/
getBainHasmashosRT58Point5Minutes(): DateTime | null;
/**
* This method returns the beginning of bain hashmashos based on the calculation of 13.5 minutes (3/4 of an
* 18-minute mil) before
* shkiah calculated as {@link #getTzaisGeonim7Point083Degrees() 7.083°}.
*
* @return the Date of the bain hashmashos of Rabbeinu Tam in this calculation. If the
* calculation can't be computed such as northern and southern locations even south of the Arctic Circle and
* north of the Antarctic Circle where the sun may not reach low enough below the horizon for this
* calculation, a null will be returned. See detailed explanation on top of the
* {@link AstronomicalCalendar} documentation.
* @see #getTzaisGeonim7Point083Degrees()
*/
getBainHashmashosRT13Point5MinutesBefore7Point083Degrees(): DateTime | null;
/**
* Misspelled method name that should be {@link #getBainHashmashosRT13Point5MinutesBefore7Point083Degrees()}.
* @return the properly spelled version.
* @deprecated
*/
getBainHasmashosRT13Point5MinutesBefore7Point083Degrees(): DateTime | null;
/**
* This method returns the beginning of bain hashmashos of Rabbeinu Tam calculated according to the
* opinion of the Divrei Yosef (see Yisrael Vehazmanim) calculated 5/18th (27.77%) of the time between
* alos (calculated as 19.8° before sunrise) and sunrise. This is added to sunset to arrive at the time
* for bain hashmashos of Rabbeinu Tam.
*
* @return the Date of bain hashmashos of Rabbeinu Tam for this calculation. If the
* calculation can't be computed such as northern and southern locations even south of the Arctic Circle and
* north of the Antarctic Circle where the sun may not reach low enough below the horizon for this
* calculation, a null will be returned. See detailed explanation on top of the
* {@link AstronomicalCalendar} documentation.
*/
getBainHashmashosRT2Stars(): DateTime | null;
/**
* Misspelled method name that should be {@link #getBainHashmashosRT2Stars()}.
* @return the properly spelled version.
* @deprecated
*/
getBainHasmashosRT2Stars(): DateTime | null;
/**
* This method returns the beginning of bain hashmashos (twilight) according to the Yereim (Rabbi Eliezer of Metz) calculated as 18 minutes
* or 3/4 of a 24-minute mil before sunset. According to the Yereim, bain hashmashos starts 3/4 of a mil before sunset and
* tzais or nightfall starts at sunset.
*
* @return the Date of 18 minutes before sunset. If the calculation can't be computed such as in the
* Arctic Circle where there is at least one day a year where the sun does not rise, and one where it does
* not set, a null will be returned. See detailed explanation on top of the
* {@link AstronomicalCalendar} documentation.
* @see #getBainHashmashosYereim3Point05Degrees()
*/
getBainHashmashosYereim18Minutes(): DateTime | null;
/**
* Misspelled method name that should be {@link #getBainHashmashosYereim18Minutes()}.
* @return the properly spelled version.
* @deprecated
*/
getBainHasmashosYereim18Minutes(): DateTime | null;
/**
* This method returns the beginning of bain hashmashos (twilight) according to the Yereim (Rabbi Eliezer of Metz) calculated as the sun's
* position 3.05° above the horizon around the equinox / equilux,
* its position 18 minutes or 3/4 of an 24-minute mil before sunset. According to
* the Yereim, bain hashmashos starts 3/4 of a mil before sunset and tzais or nightfall starts at
* sunset. Note that lechumra (of about 14 seconds) a refraction value of 0.5166° as opposed to the
* traditional 0.566° is used. This is more inline with the actual refraction in Eretz Yisrael and is
* brought down by Rabbi
* Yedidya Manet in his Zmanei Halacha
* Lema'aseh (p. 11). That is the first source that I am aware of that calculates degree-based Yereim
* zmanim. The 0.5166° refraction is also used by the Luach Itim
* Lebinah. Calculating the Yereim's bain hashmashos using 18-minute based degrees is also suggested
* in the upcoming 8th edition of the zmanim Kehilchasam. For more details, see the article The Yereim's Bein Hashmashos.
*
* @todo recalculate based on equinox/equilux
* @return the Date of the sun's position 3.05° minutes before sunset. If the calculation can't
* be computed such as in the Arctic Circle where there is at least one day a year where the sun does not
* rise, and one where it does not set, a null will be returned. See detailed explanation on
* top of the {@link AstronomicalCalendar} documentation.
*
* @see #ZENITH_MINUS_3_POINT_05
* @see #getBainHashmashosYereim18Minutes()
* @see #getBainHashmashosYereim2Point8Degrees()
* @see #getBainHashmashosYereim2Point1Degrees()
*/
getBainHashmashosYereim3Point05Degrees(): DateTime | null;
/**
* Misspelled method name that should be {@link #getBainHashmashosYereim3Point05Degrees()}.
* @return the properly spelled version.
* @deprecated
*/
getBainHasmashosYereim3Point05Degrees(): DateTime | null;
/**
* This method returns the beginning of bain hashmashos (twilight) according to the Yereim (Rabbi Eliezer of Metz) calculated as 16.875
* minutes or 3/4 of a 22.5-minute mil before sunset. According
* to the Yereim, bain hashmashos starts 3/4 of a mil before sunset and tzais or nightfall starts
* at sunset.
*
* @return the Date of 16.875 minutes before sunset. If the calculation can't be computed such as in the
* Arctic Circle where there is at least one day a year where the sun does not rise, and one where it does
* not set, a null will be returned. See detailed explanation on top of the
* {@link AstronomicalCalendar} documentation.
*
* @see #getBainHashmashosYereim2Point8Degrees()
*/
getBainHashmashosYereim16Point875Minutes(): DateTime | null;
/**
* Misspelled method name that should be {@link #getBainHashmashosYereim16Point875Minutes()}.
* @return the properly spelled version.
* @deprecated
*/
getBainHasmashosYereim16Point875Minutes(): DateTime | null;
/**
* This method returns the beginning of bain hashmashos (twilight) according to the Yereim (Rabbi Eliezer of Metz) calculated as the sun's
* position 2.8° above the horizon around the equinox / equilux,
* its position 16.875 minutes or 3/4 of an 18-minute mil before sunset. According to
* the Yereim, bain hashmashos starts 3/4 of a mil before sunset and tzais or nightfall
* starts at sunset. Details, including how the degrees were calculated can be seen in the documentation of
* {@link #getBainHashmashosYereim3Point05Degrees()}.
*
* @return the Date of the sun's position 2.8° minutes before sunset. If the calculation can't
* be computed such as in the Arctic Circle where there is at least one day a year where the sun does not
* rise, and one where it does not set, a null will be returned. See detailed explanation on
* top of the {@link AstronomicalCalendar} documentation.
*
* @see #ZENITH_MINUS_2_POINT_8
* @see #getBainHashmashosYereim16Point875Minutes()
* @see #getBainHashmashosYereim3Point05Degrees()
* @see #getBainHashmashosYereim2Point1Degrees()
*/
getBainHashmashosYereim2Point8Degrees(): DateTime | null;
/**
* Misspelled method name that should be {@link #getBainHashmashosYereim2Point8Degrees()}.
* @return the properly spelled version.
* @deprecated
*/
getBainHasmashosYereim2Point8Degrees(): DateTime | null;
/**
* This method returns the beginning of bain hashmashos (twilight) according to the Yereim (Rabbi Eliezer of Metz) calculated as 13.5 minutes
* or 3/4 of an 18-minute mil
* before sunset. According to the Yereim, bain hashmashos starts 3/4 of a mil before sunset and
* tzais or nightfall starts at sunset.
*
* @return the Date of 13.5 minutes before sunset. If the calculation can't be computed such as in the
* Arctic Circle where there is at least one day a year where the sun does not rise, and one where it does
* not set, a null will be returned. See detailed explanation on top of the
* {@link AstronomicalCalendar} documentation.
*
* @see #getBainHashmashosYereim2Point1Degrees()
*/
getBainHashmashosYereim13Point5Minutes(): DateTime | null;
/**
* Misspelled method name that should be {@link #getBainHashmashosYereim13Point5Minutes()}.
* @return the properly spelled version.
* @deprecated
*/
getBainHasmashosYereim13Point5Minutes(): DateTime | null;
/**
* This method returns the beginning of bain hashmashos according to the Yereim (Rabbi Eliezer of Metz) calculated as the sun's
* position 2.1° above the horizon around the equinox / equilux in
* Yerushalayim, its position 13.5 minutes or 3/4 of an 18-minute mil before sunset. According to the
* Yereim, bain hashmashos starts 3/4 of a mil before sunset and tzais or nightfall starts
* at sunset. Details, including how the degrees were calculated can be seen in the documentation of
* {@link #getBainHashmashosYereim3Point05Degrees()}.
*
* @return the Date of the sun's position 2.1° minutes before sunset. If the calculation can't be
* computed such as in the Arctic Circle where there is at least one day a year where the sun does not rise, and
* one where it does not set, a null will be returned. See detailed explanation on top of the
* {@link AstronomicalCalendar} documentation.
*
* @see #ZENITH_MINUS_2_POINT_1
* @see #getBainHashmashosYereim13Point5Minutes()
* @see #getBainHashmashosYereim2Point8Degrees()
* @see #getBainHashmashosYereim3Point05Degrees()
*/
getBainHashmashosYereim2Point1Degrees(): DateTime | null;
/**
* Misspelled method name that should be {@link #getBainHashmashosYereim2Point1Degrees()}.
* @return the properly spelled version.
* @deprecated
*/
getBainHasmashosYereim2Point1Degrees(): DateTime | null;
/**
* This method returns the tzais (nightfall) based on the opinion of the Geonim calculated at the
* sun's position at {@link #ZENITH_3_POINT_7 3.7°} below the western horizon.
*
* @return the Date representing the time when the sun is 3.7° below sea level.
* @see #ZENITH_3_POINT_7
*/
getTzaisGeonim3Point7Degrees(): DateTime | null;
/**
* This method returns the tzais (nightfall) based on the opinion of the Geonim calculated at the
* sun's position at {@link #ZENITH_3_POINT_8 3.8°} below the western horizon.
*
* @return the Date representing the time when the sun is 3.8° below sea level.
* @see #ZENITH_3_POINT_8
*/
getTzaisGeonim3Point8Degrees(): DateTime | null;
/**
* This method returns the tzais (nightfall) based on the opinion of the Geonim calculated at the
* sun's position at {@link #ZENITH_5_POINT_95 5.95°} below the western horizon.
*
* @return the Date representing the time when the sun is 5.95° below sea level. If the calculation
* can't be computed such as northern and southern locations even south of the Arctic Circle and north of
* the Antarctic Circle where the sun may not reach low enough below the horizon for this calculation, a
* null will be returned. See detailed explanation on top of the {@link AstronomicalCalendar}
* documentation.
* @see #ZENITH_5_POINT_95
*/
getTzaisGeonim5Point95Degrees(): DateTime | null;
/**
* This method returns the tzais (nightfall) based on the opinion of the Geonim calculated as 3/4
* of a mil based on an
* 18-minute mil, or 13.5 minutes. It is the sun's position at {@link #ZENITH_3_POINT_65 3.65°} below the western
* horizon. This is a very early zman and should not be relied on without Rabbinical guidance.
*
* @return the Date representing the time when the sun is 3.65° below sea level. If the calculation
* can't be computed such as northern and southern locations even south of the Arctic Circle and north of
* the Antarctic Circle where the sun may not reach low enough below the horizon for this calculation, a
* null will be returned. See detailed explanation on top of the {@link AstronomicalCalendar}
* documentation.
* @deprecated This will be removed since calculations show that this time is earlier than 13.5 minutes at
* the around the
* equinox / equilux in Jerusalem.
* @see #ZENITH_3_POINT_65
*/
getTzaisGeonim3Point65Degrees(): DateTime | null;
/**
* This method returns the tzais (nightfall) based on the opinion of the Geonim calculated as 3/4
* of a mil based on an
* 18-minute mil, or 13.5 minutes. It is the sun's position at {@link #ZENITH_3_POINT_676 3.676°} below the western
* horizon based on the calculations of Stanley Fishkind. This is a very early zman and should not be
* relied on without Rabbinical guidance.
*
* @return the Date representing the time when the sun is 3.676° below sea level. If the
* calculation can't be computed such as northern and southern locations even south of the Arctic Circle and
* north of the Antarctic Circle where the sun may not reach low enough below the horizon for this
* calculation, a null will be returned. See detailed explanation on top of the
* {@link AstronomicalCalendar} documentation.
* @deprecated This will be removed since calculations show that this time is earlier than 13.5 minutes at
* the around the
* equinox / equilux in Jerusalem.
* @see #ZENITH_3_POINT_676
*/
getTzaisGeonim3Point676Degrees(): DateTime | null;
/**
* This method returns the tzais (nightfall) based on the opinion of the Geonim calculated as 3/4
* of a mil based on a
* 24-minute mil, or 18 minutes. It is the sun's position at {@link #ZENITH_4_POINT_61 4.61°} below the
* western horizon. This is a very early zman and should not be relied on without Rabbinical guidance.
*
* @return the Date representing the time when the sun is 4.61° below sea level. If the calculation
* can't be computed such as northern and southern locations even south of the Arctic Circle and north of
* the Antarctic Circle where the sun may not reach low enough below the horizon for this calculation, a
* null will be returned. See detailed explanation on top of the {@link AstronomicalCalendar}
* documentation.
* @see #ZENITH_4_POINT_61
*/
getTzaisGeonim4Point61Degrees(): DateTime | null;
/**
* This method returns the tzais (nightfall) based on the opinion of the Geonim calculated as 3/4
* of a mil, based on a
* 22.5-minute mil, or 16 7/8 minutes. It is the sun's position at {@link #ZENITH_4_POINT_37 4.37°} below the western
* horizon. This is a very early zman and should not be relied on without Rabbinical guidance.
*
* @return the Date representing the time when the sun is 4.37° below sea level. If the calculation
* can't be computed such as northern and southern locations even south of the Arctic Circle and north of
* the Antarctic Circle where the sun may not reach low enough below the horizon for this calculation, a
* null will be returned. See detailed explanation on top of the {@link AstronomicalCalendar}
* documentation.
* @see #ZENITH_4_POINT_37
*/
getTzaisGeonim4Point37Degrees(): DateTime | null;
/**
* This method returns the tzais (nightfall) based on the opinion of the Geonim calculated as 3/4
* of a 24-minute mil,
* based on a mil being 24 minutes, and is calculated as 18 + 2 + 4 for a total of 24 minutes. It is the
* sun's position at {@link #ZENITH_5_POINT_88 5.88°} below the western horizon. This is a very early
* zman and should not be relied on without Rabbinical guidance.
*
* @todo Additional detailed documentation needed.
* @return the Date representing the time when the sun is 5.88° below sea level. If the calculation
* can't be computed such as northern and southern locations even south of the Arctic Circle and north of
* the Antarctic Circle where the sun may not reach low enough below the horizon for this calculation, a
* null will be returned. See detailed explanation on top of the {@link AstronomicalCalendar}
* documentation.
* @see #ZENITH_5_POINT_88
*/
getTzaisGeonim5Point88Degrees(): DateTime | null;
/**
* This method returns the tzais (nightfall) based on the opinion of the Geonim calculated as 3/4
* of a mil based on the
* sun's position at {@link #ZENITH_4_POINT_8 4.8°} below the western horizon. This is based on Rabbi Leo Levi's
* calculations. This is a very early zman and should not be relied on without Rabbinical guidance.
* @todo Additional documentation needed.
*
* @return the Date representing the time when the sun is 4.8° below sea level. If the calculation
* can't be computed such as northern and southern locations even south of the Arctic Circle and north of
* the Antarctic Circle where the sun may not reach low enough below the horizon for this calculation, a
* null will be returned. See detailed explanation on top of the {@link AstronomicalCalendar}
* documentation.
* @see #ZENITH_4_POINT_8
*/
getTzaisGeonim4Point8Degrees(): DateTime | null;
/**
* This method returns the tzais (nightfall) based on the opinion of the Geonim as calculated by
* Rabbi Yechiel Michel Tucazinsky. It is
* based on of the position of the sun no later than {@link #getTzaisGeonim6Point45Degrees() 31 minutes} after sunset
* in Jerusalem the height of the summer solstice and is 28 minutes after shkiah around the equinox / equilux. This
* computes to 6.45° below the western horizon.
* @todo Additional documentation details needed.
*
* @return the Date representing the time when the sun is 6.45° below sea level. If the
* calculation can't be computed such as northern and southern locations even south of the Arctic Circle and
* north of the Antarctic Circle where the sun may not reach low enough below the horizon for this
* calculation, a null will be returned. See detailed explanation on top of the
* {@link AstronomicalCalendar} documentation.
* @see #ZENITH_6_POINT_45
*/
getTzaisGeonim6Point45Degrees(): DateTime | null;
/**
* This method returns the tzais (nightfall) based on the opinion of the Geonim calculated when the
* sun's position {@link #ZENITH_7_POINT_083 7.083° (or 7° 5\u2032}) below the western horizon. This is often
* referred to as 7°5' or 7° and 5 minutes. This calculation is based on the observation of 3 medium-sized
* stars by Dr. Baruch (Berthold) Cohn in his luach Tabellen enthaltend die Zeitangaben für
* den Beginn der Nacht und des Tages für die Breitengrade + 66 bis -38 published in Strasbourg, France in 1899.
* This calendar was very popular in Europe, and many other calendars based their time on it. Rav Dovid Tzvi Hoffman in his
* Sh"Ut Melamed Leho'il in an exchange of letters with Baruch Cohn in Orach Chaim 30 agreed to this zman (page 36),
* as did the Sh"Ut Bnei Tziyon and the Tenuvas Sadeh. It is very close to the time of the Mekor Chesed of the Sefer chasidim. It is close to the position of the sun 30 minutes
* after sunset in Jerusalem around the equinox / equilux, but not
* Exactly. The actual position of the sun 30 minutes after sunset in Jerusalem at the equilux is 7.205° and 7.199°
* at the equinox. See Hazmanim Bahalacha vol 2, pages 520-521 for more details.
*
* @return the Date representing the time when the sun is 7.083° below sea level. If the
* calculation can't be computed such as northern and southern locations even south of the Arctic Circle and
* north of the Antarctic Circle where the sun may not reach low enough below the horizon for this
* calculation, a null will be returned. See detailed explanation on top of the
* {@link AstronomicalCalendar} documentation.
* @see #ZENITH_7_POINT_083
*/
getTzaisGeonim7Point083Degrees(): DateTime | null;
/**
* This method returns tzais (nightfall) based on the opinion of the Geonim calculated as 45 minutes
* after sunset during the summer solstice in New York, when the neshef (twilight) is the longest. The sun's
* position at this time computes to {@link #ZENITH_7_POINT_67 7.75°} below the western horizon. See Igros Moshe Even Haezer 4, Ch. 4 (regarding
* tzais for krias Shema). It is also mentioned in Rabbi Heber's Shaarei Zmanim on in
* chapter 10 (page 87) and
* chapter 12 (page 108). Also see the
* time of 45 minutes in Rabbi Simcha Bunim Cohen's The radiance of Shabbos as the earliest zman for New York.
* This zman is also listed in the Divrei
* Shalom Vol. III, chapter 75, and Bais Av"i
* Vol. III, chapter 117. This zman is also listed in the Divrei Shalom etc. chapter 177 (FIXME - could not
* be located). Since this zman depends on the level of light, Rabbi Yaakov Shakow presented this degree-based
* calculation to Rabbi Rabbi Shmuel Kamenetsky who agreed
* to it.
* @todo add hyperlinks to source of Divrei Shalom once it is located.
* @return the Date representing the time when the sun is 7.67° below sea level. If the
* calculation can't be computed such as northern and southern locations even south of the Arctic Circle and
* north of the Antarctic Circle where the sun may not reach low enough below the horizon for this
* calculation, a null will be returned. See detailed explanation on top of the
* {@link AstronomicalCalendar} documentation.
* @see #ZENITH_7_POINT_67
*/
getTzaisGeonim7Point67Degrees(): DateTime | null;
/**
* This method returns the tzais (nightfall) based on the opinion of the Geonim calculated at the
* sun's position at {@link #ZENITH_8_POINT_5 8.5°} below the western horizon.
*
* @return the Date representing the time when the sun is 8.5° below sea level. If the calculation
* can't be computed such as northern and southern locations even south of the Arctic Circle and north of
* the Antarctic Circle where the sun may not reach low enough below the horizon for this calculation, a
* null will be returned. See detailed explanation on top of the {@link AstronomicalCalendar}
* documentation.
* @see #ZENITH_8_POINT_5
*/
getTzaisGeonim8Point5Degrees(): DateTime | null;
/**
* This method returns the tzais (nightfall) based on the calculations used in the Luach Itim Lebinah as the stringent time for tzais. It is
* calculated at the sun's position at {@link #ZENITH_9_POINT_3 9.3°} below the western horizon.
*
* @return the Date representing the time when the sun is 9.3° below sea level. If the calculation
* can't be computed such as northern and southern locations even south of the Arctic Circle and north of
* the Antarctic Circle where the sun may not reach low enough below the horizon for this calculation, a
* null will be returned. See detailed explanation on top of the {@link AstronomicalCalendar}
* documentation.
*/
getTzaisGeonim9Point3Degrees(): DateTime | null;
/**
* This method returns the tzais (nightfall) based on the opinion of the Geonim calculated as 60
* minutes after sunset around the equinox / equilux, the
* day that a solar hour is 60 minutes in New York. The sun's position at this time computes to
* {@link #ZENITH_9_POINT_75 9.75°} below the western horizon. This is the opinion of Rabbi Eliyahu Henkin. This also follows the opinion of
* Rabbi Shmuel Kamenetsky. Rabbi Yaakov Shakow presented
* these degree-based times to Rabbi Shmuel Kamenetsky who agreed to them.
*
* @todo recalculate based on equinox / equilux.
* @return the Date representing the time when the sun is 9.75° below sea level. If the calculation
* can't be computed such as northern and southern locations even south of the Arctic Circle and north of
* the Antarctic Circle where the sun may not reach low enough below the horizon for this calculation, a
* null will be returned. See detailed explanation on top of the {@link AstronomicalCalendar}
* documentation.
*
* @see #getTzais60()
*/
getTzaisGeonim9Point75Degrees(): DateTime | null;
/**
* This method returns the tzais (nightfall) based on the opinion of the Chavas Yair and Divrei Malkiel that the time to walk the distance of a mil is 15 minutes, for a total of 60 minutes
* for 4 mil after {@link #getSeaLevelSunset() sea level sunset}. See detailed documentation explaining the 60 minute concept at
* {@link #getAlos60()}.
*
* @return the Date representing 60 minutes after sea level sunset. If the calculation can't be
* computed such as in the Arctic Circle where there is at least one day a year where the sun does not rise,
* and one where it does not set, a null will be returned. See detailed explanation on top of the
* {@link AstronomicalCalendar} documentation.
*
* @see #getAlos60()
* @see #getPlagHamincha60Minutes()
* @see #getShaahZmanis60Minutes()
*/
getTzais60(): DateTime | null;
/**
* This method returns tzais usually calculated as 40 minutes (configurable to any offset via
* {@link #setAteretTorahSunsetOffset(double)}) after sunset. Please note that Chacham Yosef Harari-Raful
* of Yeshivat Ateret Torah who uses this time, does so only for calculating various other zmanei hayom
* such as Sof Zman Krias Shema and Plag Hamincha. His calendars do not publish a zman
* for Tzais. It should also be noted that Chacham Harari-Raful provided a 25-minute zman
* for Israel. This API uses 40 minutes year round in any place on the globe by default. This offset can be changed
* by calling {@link #setAteretTorahSunsetOffset(double)}.
*
* @return the Date representing 40 minutes (configurable via {@link #setAteretTorahSunsetOffset})
* after sea level sunset. If the calculation can't be computed such as in the Arctic Circle where there is
* at least one day a year where the sun does not rise, and one where it does not set, a null will
* be returned. See detailed explanation on top of the {@link AstronomicalCalendar} documentation.
* @see #getAteretTorahSunsetOffset()
* @see #setAteretTorahSunsetOffset(double)
*/
getTzaisAteretTorah(): DateTime | null;
/**
* Returns the offset in minutes after sunset used to calculate tzais based on the calculations of
* Chacham Yosef Harari-Raful of Yeshivat Ateret Torah calculations. The default value is 40 minutes.
* This affects most zmanim, since almost all zmanim use subset as part of their calculation.
*
* @return the number of minutes after sunset for Tzait.
* @see #setAteretTorahSunsetOffset(double)
*/
getAteretTorahSunsetOffset(): number;
/**
* Allows setting the offset in minutes after sunset for the Ateret Torah zmanim. The default if unset is
* 40 minutes. Chacham Yosef Harari-Raful of Yeshivat Ateret Torah uses 40 minutes globally with the exception
* of Israel where a 25-minute offset is used. This 40-minute (or any other) offset can be overridden by this method.
* This offset impacts all Ateret Torah zmanim.
*
* @param ateretTorahSunsetOffset
* the number of minutes after sunset to use as an offset for the Ateret Torah tzais
* @see #getAteretTorahSunsetOffset()
*/
setAteretTorahSunsetOffset(ateretTorahSunsetOffset: number): void;
/**
* This method returns the latest zman krias shema (time to recite Shema in the morning) based on the
* calculation of Chacham Yosef Harari-Raful of Yeshivat Ateret Torah, that the day starts
* {@link #getAlos72Zmanis() 1/10th of the day} before sunrise and is usually calculated as ending
* {@link #getTzaisAteretTorah() 40 minutes after sunset} (configurable to any offset via
* {@link #setAteretTorahSunsetOffset(double)}). shaos zmaniyos are calculated based on this day and added
* to {@link #getAlos72Zmanis() alos} to reach this time. This time is 3
* {@link #getShaahZmanisAteretTorah() shaos zmaniyos} (temporal hours) after
* {@link #getAlos72Zmanis() alos 72 zmaniyos}. Note: Based on this calculation chatzos
* will not be at midday.
*
* @return the Date of the latest zman krias shema based on this calculation. If the
* calculation can't be computed such as in the Arctic Circle where there is at least one day a year where
* the sun does not rise, and one where it does not set, a null will be returned. See detailed
* explanation on top of the {@link AstronomicalCalendar} documentation.
* @see #getAlos72Zmanis()
* @see #getTzaisAteretTorah()
* @see #getAteretTorahSunsetOffset()
* @see #setAteretTorahSunsetOffset(double)
* @see #getShaahZmanisAteretTorah()
*/
getSofZmanShmaAteretTorah(): DateTime | null;
/**
* This method returns the latest zman tfila (time to recite the morning prayers) based on the calculation
* of Chacham Yosef Harari-Raful of Yeshivat Ateret Torah, that the day starts {@link #getAlos72Zmanis()
* 1/10th of the day} before sunrise and is usually calculated as ending {@link #getTzaisAteretTorah() 40 minutes
* after sunset} (configurable to any offset via {@link #setAteretTorahSunsetOffset(double)}). shaos zmaniyos
* are calculated based on this day and added to {@link #getAlos72Zmanis() alos} to reach this time. This time
* is 4 * {@link #getShaahZmanisAteretTorah() shaos zmaniyos} (temporal hours) after
* {@link #getAlos72Zmanis() alos 72 zmaniyos}.
* Note: Based on this calculation chatzos will not be at midday.
*
* @return the Date of the latest zman krias shema based on this calculation. If the
* calculation can't be computed such as in the Arctic Circle where there is at least one day a year where
* the sun does not rise, and one where it does not set, a null will be returned. See detailed
* explanation on top of the {@link AstronomicalCalendar} documentation.
* @see #getAlos72Zmanis()
* @see #getTzaisAteretTorah()
* @see #getShaahZmanisAteretTorah()
* @see #setAteretTorahSunsetOffset(double)
*/
getSofZmanTfilaAteretTorah(): DateTime | null;
/**
* @see #getSofZmanTfilaAteretTorah()
* @deprecated misspelled method name (all other methods spell tfila without an H), to be removed.
* @return the Date of the latest zman krias shema based on this calculation. If the
* calculation can't be computed such as in the Arctic Circle where there is at least one day a year where
* the sun does not rise, and one where it does not set, a null will be returned. See detailed
* explanation on top of the {@link AstronomicalCalendar} documentation.
*/
getSofZmanTfilahAteretTorah(): DateTime | null;
/**
* This method returns the time of mincha gedola based on the calculation of Chacham Yosef
* Harari-Raful of Yeshivat Ateret Torah, that the day starts {@link #getAlos72Zmanis() 1/10th of the day}
* before sunrise and is usually calculated as ending {@link #getTzaisAteretTorah() 40 minutes after sunset}
* (configurable to any offset via {@link #setAteretTorahSunsetOffset(double)}). This is the preferred earliest
* time to pray mincha according to the opinion of the Rambam and others. For more information on this see the documentation on {@link #getMinchaGedola() mincha
* gedola}. This is calculated as 6.5 {@link #getShaahZmanisAteretTorah() solar hours} after alos. The
* calculation used is 6.5 * {@link #getShaahZmanisAteretTorah()} after {@link #getAlos72Zmanis() alos}.
*
* @see #getAlos72Zmanis()
* @see #getTzaisAteretTorah()
* @see #getShaahZmanisAteretTorah()
* @see #getMinchaGedola()
* @see #getMinchaKetanaAteretTorah()
* @see ZmanimCalendar#getMinchaGedola()
* @see #getAteretTorahSunsetOffset()
* @see #setAteretTorahSunsetOffset(double)
*
* @return the Date of the time of mincha gedola. If the calculation can't be computed such as
* in the Arctic Circle where there is at least one day a year where the sun does not rise, and one where it
* does not set, a null will be returned. See detailed explanation on top of the
* {@link AstronomicalCalendar} documentation.
*/
getMinchaGedolaAteretTorah(): DateTime | null;
/**
* This method returns the time of mincha ketana based on the calculation of
* Chacham Yosef Harari-Raful of Yeshivat Ateret Torah, that the day starts
* {@link #getAlos72Zmanis() 1/10th of the day} before sunrise and is usually calculated as ending
* {@link #getTzaisAteretTorah() 40 minutes after sunset} (configurable to any offset via
* {@link #setAteretTorahSunsetOffset(double)}). This is the preferred earliest time to pray mincha
* according to the opinion of the Rambam and others.
* For more information on this see the documentation on {@link #getMinchaGedola() mincha gedola}. This is
* calculated as 9.5 {@link #getShaahZmanisAteretTorah() solar hours} after {@link #getAlos72Zmanis() alos}.
* The calculation used is 9.5 * {@link #getShaahZmanisAteretTorah()} after {@link #getAlos72Zmanis() alos}.
*
* @see #getAlos72Zmanis()
* @see #getTzaisAteretTorah()
* @see #getShaahZmanisAteretTorah()
* @see #getAteretTorahSunsetOffset()
* @see #setAteretTorahSunsetOffset(double)
* @see #getMinchaGedola()
* @see #getMinchaKetana()
* @return the Date of the time of mincha ketana. If the calculation can't be computed such as
* in the Arctic Circle where there is at least one day a year where the sun does not rise, and one where it
* does not set, a null will be returned. See detailed explanation on top of the
* {@link AstronomicalCalendar} documentation.
*/
getMinchaKetanaAteretTorah(): DateTime | null;
/**
* This method returns the time of plag hamincha based on the calculation of Chacham Yosef Harari-Raful
* of Yeshivat Ateret Torah, that the day starts {@link #getAlos72Zmanis() 1/10th of the day} before sunrise and is
* usually calculated as ending {@link #getTzaisAteretTorah() 40 minutes after sunset} (configurable to any offset
* via {@link #setAteretTorahSunsetOffset(double)}). shaos zmaniyos are calculated based on this day and
* added to {@link #getAlos72Zmanis() alos} to reach this time. This time is 10.75
* {@link #getShaahZmanisAteretTorah() shaos zmaniyos} (temporal hours) after {@link #getAlos72Zmanis()
* dawn}.
*
* @return the Date of the plag. If the calculation can't be computed such as in the Arctic Circle
* where there is at least one day a year where the sun does not rise, and one where it does not set, a null
* will be returned. See detailed explanation on top of the {@link AstronomicalCalendar} documentation.
* @see #getAlos72Zmanis()
* @see #getTzaisAteretTorah()
* @see #getShaahZmanisAteretTorah()
* @see #setAteretTorahSunsetOffset(double)
* @see #getAteretTorahSunsetOffset()
*/
getPlagHaminchaAteretTorah(): DateTime | null;
/**
* Method to return tzais (dusk) calculated as 72 minutes zmaniyos, or 1/10th of the day after
* {@link #getSeaLevelSunset() sea level sunset}. This is the way that the Minchas Cohen in Ma'amar 2:4 calculates Rebbeinu Tam's
* time of tzeis. It should be noted that this calculation results in the shortest time from sunset to
* tzais being during the winter solstice, the longest at the summer solstice and 72 clock minutes at the
* equinox. This does not match reality, since there is no direct relationship between the length of the day and
* twilight. The shortest twilight is during the equinox, the longest is during the summer solstice, and in the
* winter with the shortest daylight, the twilight period is longer than during the equinoxes.
*
* @return the Date representing the time. If the calculation can't be computed such as in the Arctic
* Circle where there is at least one day a year where the sun does not rise, and one where it does not set,
* a null will be returned. See detailed explanation on top of the {@link AstronomicalCalendar}
* documentation.
* @see #getAlos72Zmanis()
*/
getTzais72Zmanis(): DateTime | null;
/**
* A utility method to return alos (dawn) or tzais (dusk) based on a fractional day offset.
* @param hours the number of shaos zmaniyos (temporal hours) before sunrise or after sunset that defines dawn
* or dusk. If a negative number is passed in, it will return the time of alos (dawn) (subtracting the
* time from sunrise) and if a positive number is passed in, it will return the time of tzais (dusk)
* (adding the time to sunset). If 0 is passed in, a null will be returned (since we can't tell if it
* is sunrise or sunset based).
* @return the Date representing the time. If the calculation can't be computed such as in the Arctic
* Circle where there is at least one day a year where the sun does not rise, and one where it does not set,
* a null will be returned. A null will also be returned if 0 is passed in, since we can't
* tell if it is sunrise or sunset based. See detailed explanation on top of the {@link AstronomicalCalendar}
* documentation.
*/
private getZmanisBasedOffset;
/**
* Method to return tzais (dusk) calculated using 90 minutes zmaniyos or 1/8th of the day after {@link
* #getSeaLevelSunset() sea level sunset}. This time is known in Yiddish as the achtel (an eighth)
* zman.
*
* @return the Date representing the time. If the calculation can't be computed such as in the Arctic
* Circle where there is at least one day a year where the sun does not rise, and one where it does not set,
* a null will be returned. See detailed explanation on top of the {@link AstronomicalCalendar}
* documentation.
* @see #getAlos90Zmanis()
*/
getTzais90Zmanis(): DateTime | null;
/**
* Method to return tzais (dusk) calculated using 96 minutes zmaniyos or 1/7.5 of the day after
* {@link #getSeaLevelSunset() sea level sunset}.
*
* @return the Date representing the time. If the calculation can't be computed such as in the Arctic
* Circle where there is at least one day a year where the sun does not rise, and one where it does not set,
* a null will be returned. See detailed explanation on top of the {@link AstronomicalCalendar}
* documentation.
* @see #getAlos96Zmanis()
*/
getTzais96Zmanis(): DateTime | null;
/**
* Method to return tzais (dusk) calculated as 90 minutes after sea level sunset. This method returns
* tzais (nightfall) based on the opinion of the Magen Avraham that the time to walk the distance of a
* mil according to the
* Rambam's opinion is 18 minutes, for a total of 90
* minutes based on the opinion of Ula who calculated tzais as 5 mil after sea level
* shkiah (sunset). A similar calculation {@link #getTzais19Point8Degrees()} uses solar position
* calculations based on this time.
*
* @return the Date representing the time. If the calculation can't be computed such as in the Arctic
* Circle where there is at least one day a year where the sun does not rise, and one where it does not set,
* a null will be returned. See detailed explanation on top of the {@link AstronomicalCalendar}
* documentation.
* @see #getTzais19Point8Degrees()
* @see #getAlos90()
*/
getTzais90(): DateTime | null;
/**
* This method should be used lechumra only and returns tzais (nightfall) based on the calculations
* of Rav Chaim Naeh that the time to walk the
* distance of a mil
* according to the Rambam's opinion is 2/5 of an hour (24 minutes)
* for a total of 120 minutes based on the opinion of Ula who calculated tzais as 5 mil after
* sea level shkiah (sunset). A similar calculation {@link #getTzais26Degrees()} uses degree-based calculations
* based on this 120 minute calculation. Since the zman is extremely late and at a point that is long past the
* 18° point where the darkest point is reached, it should only be used lechumra, such as delaying the start
* of nighttime mitzvos.
*
* @deprecated This method should be used lechumra only since it returns a very late time, and if used
* lekula can result in chillul Shabbos etc. There is no current plan to remove this
* method from the API, and this deprecation is intended to alert developers of the danger of using it.
*
* @return the Date representing the time. If the calculation can't be computed such as in the Arctic
* Circle where there is at least one day a year where the sun does not rise, and one where it does not set,
* a null will be returned. See detailed explanation on top of the {@link AstronomicalCalendar}.
* documentation.
* @see #getTzais26Degrees()
* @see #getAlos120()
*/
getTzais120(): DateTime | null;
/**
* This method should be used lechumra only and returns tzais (dusk) calculated using 120 minutes
* zmaniyos after {@link #getSeaLevelSunset() sea level sunset}. Since the zman
* is extremely late and at a time when the sun is well below the 18° point (scientifically the darkest point) in
* most places on the globe, it should only be used lechumra, such as delaying the start of nighttime
* mitzvos.
*
* @deprecated This method should be used lechumra only since it returns a very late time, and if used
* lekula can result in chillul Shabbos etc. There is no current plan to remove this
* method from the API, and this deprecation is intended to alert developers of the danger of using it.
*
* @return the Date representing the time. If the calculation can't be computed such as in the Arctic
* Circle where there is at least one day a year where the sun does not rise, and one where it does not set,
* a null will be returned. See detailed explanation on top of the {@link AstronomicalCalendar}
* documentation.
* @see #getAlos120Zmanis()
* @see #getTzais120()
* @see #getTzais26Degrees()
*/
getTzais120Zmanis(): DateTime | null;
/**
* This calculates the time of tzais at the point when the sun is 16.1° below the horizon. This is
* the sun's dip below the horizon 72 minutes after sunset according Rabbeinu Tam's calculation of tzais
* around the equinox / equilux in
* Jerusalem. The question of equinox VS equilux is complex, with Rabbi Meir Posen in the Ohr Meir of the opinion that the equilux should be used. See
* Yisrael Vehazmanim vol I, 34:1:4. Rabbi Yedidya Manet in his Zmanei Halacha Lema'aseh (4th edition part 2, pages
* and 22 and 24) and Rabbi Yonah Mertzbuch (in a letter published by Rabbi Manet) are of the opinion that the
* astronomical equinox should be used. The difference adds up to about 9 seconds, too trivial to make much of a
* difference. For information on how this is calculated see the comments on {@link #getAlos16Point1Degrees()}.
*
* @return the Date representing the time. If the calculation can't be computed such as northern and
* southern locations even south of the Arctic Circle and north of the Antarctic Circle where the sun may
* not reach low enough below the horizon for this calculation, a null will be returned. See
* detailed explanation on top of the {@link AstronomicalCalendar} documentation.
* @see #getTzais72()
* @see #getAlos16Point1Degrees() for more information on this calculation.
*/
getTzais16Point1Degrees(): DateTime | null;
/**
* This method should be used lechumra only and returns tzais based on when the sun is 26°
* below the horizon. For information on how this is calculated see the comments on {@link #getAlos26Degrees()}.
* Since the zman is extremely late and at a point when it is long past the 18° point where the
* darkest point is reached, it should only be used lechumra such as delaying the start of nighttime
* mitzvos.
*
* @deprecated This method should be used lechumra only since it returns a very late time, and if used
* lekula can result in chillul Shabbos etc. There is no current plan to remove this
* method from the API, and this deprecation is intended to alert developers of the danger of using it.
*
* @return the Date representing the time. If the calculation can't be computed such as northern and
* southern locations even south of the Arctic Circle and north of the Antarctic Circle where the sun may
* not reach low enough below the horizon for this calculation, a null will be returned. See
* detailed explanation on top of the {@link AstronomicalCalendar} documentation.
* @see #getTzais120()
* @see #getAlos26Degrees()
*/
getTzais26Degrees(): DateTime | null;
/**
* For information on how this is calculated see the comments on {@link #getAlos18Degrees()}
*
* @return the Date representing the time. If the calculation can't be computed such as northern and
* southern locations even south of the Arctic Circle and north of the Antarctic Circle where the sun may
* not reach low enough below the horizon for this calculation, a null will be returned. See
* detailed explanation on top of the {@link AstronomicalCalendar} documentation.
* @see #getAlos18Degrees()
*/
getTzais18Degrees(): DateTime | null;
/**
* For information on how this is calculated see the comments on {@link #getAlos19Point8Degrees()}
*
* @return the Date representing the time. If the calculation can't be computed such as northern and
* southern locations even south of the Arctic Circle and north of the Antarctic Circle where the sun may
* not reach low enough below the horizon for this calculation, a null will be returned. See
* detailed explanation on top of the {@link AstronomicalCalendar} documentation.
* @see #getTzais90()
* @see #getAlos19Point8Degrees()
*/
getTzais19Point8Degrees(): DateTime | null;
/**
* A method to return tzais (dusk) calculated as 96 minutes after sea level sunset. For information on how
* this is calculated see the comments on {@link #getAlos96()}.
*
* @return the Date representing the time. If the calculation can't be computed such as in the Arctic
* Circle where there is at least one day a year where the sun does not rise, and one where it does not set,
* a null will be returned. See detailed explanation on top of the {@link AstronomicalCalendar}
* documentation.
* @see #getAlos96()
*/
getTzais96(): DateTime | null;
/**
* A method that returns the local time for fixed chatzos. This time is noon and midnight adjusted from
* standard time to account for the local latitude. The 360° of the globe divided by 24 calculates to 15°
* per hour with 4 minutes per degree, so at a longitude of 0 , 15, 30 etc... Chatzos is at exactly 12:00
* noon. This is the time of chatzos according to the Aruch Hashulchan in Orach Chaim 233:14 and Rabbi Moshe Feinstein in Igros Moshe Orach Chaim 1:24 and 2:20.
* Lakewood, N.J., with a longitude of -74.222, is 0.778 away from the closest multiple of 15 at -75°. This
* is multiplied by 4 to yield 3 minutes and 7 seconds for a chatzos of 11:56:53. This method is not tied
* to the theoretical 15° time zones, but will adjust to the actual time zone and Daylight saving time.
*
* @return the Date representing the local chatzos
* @see GeoLocation#getLocalMeanTimeOffset()
*/
getFixedLocalChatzos(): DateTime | null;
/**
* A method that returns the latest zman krias shema (time to recite Shema in the morning) calculated as 3
* clock hours before {@link #getFixedLocalChatzos()}. Note that there are opinions brought down in Yisrael Vehazmanim
* page 57 and Rav Yitzchak Silber's Shaos Shavos Bahalacha that this calculation is a mistake and regular
* chatzos should be used for clock-hour calculations as opposed to fixed local chatzos. According to
* these opinions it should be 3 clock hours before regular chatzos as calculated in {@link
* #getSofZmanShma3HoursBeforeChatzos()}.
*
* @return the Date of the latest zman krias shema calculated as 3 clock hours before
* {@link #getFixedLocalChatzos()}.
* @see #getFixedLocalChatzos()
* @see #getSofZmanShma3HoursBeforeChatzos()
* @see #getSofZmanTfilaFixedLocal()
*
* @deprecated This method of calculating sof zman Shma is considered a mistaken understanding of the proper
* calculation of this zman in the opinion of Rav Yitzchak Silber's Shaos Shavos Bahalacha. On pages 316-318 he discusses Rav Yisrael
* Harfenes's calculations and points to his seeming agreement that using fixed local chatzos as the focal
* point is problematic. See Yisrael Vehazmanim page 57. While the Yisrael Vehazmanim mentions
* this issue in vol. 1, it was not corrected in the calculations in vol. 3 and other parts of the sefer.
* A competent rabbinical authority should be consulted before using this zman. Instead, the use of {@link
* #getSofZmanShma3HoursBeforeChatzos()} should be used to calculate sof zman Tfila using 3 fixed
* clock hours. This will likely be removed in a future version.
*/
getSofZmanShmaFixedLocal(): DateTime | null;
/**
* This method returns the latest zman tfila (time to recite the morning prayers) calculated as 2 hours
* before {@link #getFixedLocalChatzos()}. See the documentation on {@link #getSofZmanShmaFixedLocal()} showing
* differing opinions on how the zman is calculated. According to many opinions {@link
* #getSofZmanTfila2HoursBeforeChatzos()} should be used as opposed to this zman.
*
* @return the Date of the latest zman tfila.
* @see #getFixedLocalChatzos()
* @see #getSofZmanShmaFixedLocal()
* @see #getSofZmanTfila2HoursBeforeChatzos()
*
* @deprecated This method of calculating sof zman Tfila is considered a mistaken understanding of the proper
* calculation of this zman in the opinion of Rav Yitzchak Silber's Shaos Shavos Bahalacha. On pages 316-318 he discusses Rav Yisrael
* Harfenes's calculations and points to his seeming agreement that using fixed local chatzos as the focal
* point is problematic. See Yisrael Vehazmanim page 57. While the Yisrael Vehazmanim mentions
* this issue in vol. 1, it was not corrected in the calculations in vol. 3 and other parts of the sefer.
* A competent rabbinical authority should be consulted before using this zman. Instead, the use of {@link
* #getSofZmanTfila2HoursBeforeChatzos()} should be used to calculate sof zman Tfila using using 2 fixed
* clock hours. This will likely be removed in a future version.
*/
getSofZmanTfilaFixedLocal(): DateTime | null;
/**
* Returns the Date of the molad based time if it occurs on the current date. Since Kiddush Levana
* can only be said during the day, there are parameters to limit it to between alos and tzais. If
* the time occurs between alos and tzais, tzais will be returned.
*
* @param moladBasedTime
* the molad based time such as molad, tchilas and sof zman Kiddush Levana
* @param alos
* optional start of day to limit molad times to the end of the night before or beginning of the next night.
* Ignored if either alos or tzais are null.
* @param tzais
* optional end of day to limit molad times to the end of the night before or beginning of the next night.
* Ignored if either tzais or alos are null
* @param techila
* is it the start of Kiddush Levana time or the end? If it is start roll it to the next tzais,
* and if it is the end, return the end of the previous night (alos passed in). Ignored if either
* alos or tzais are null.
* @return the molad based time. If the zman does not occur during the current date, null will be
* returned.
*/
private getMoladBasedTime;
/**
* Returns the latest time of Kiddush Levana according to the Maharil's opinion that it is calculated as
* halfway between molad and molad. This adds half the 29 days, 12 hours and 793 chalakim time between
* molad and molad (14 days, 18 hours, 22 minutes and 666 milliseconds) to the month's molad.
* The sof zman Kiddush Levana will be returned even if it occurs during the day. To limit the time to between
* tzais and alos, see {@link #getSofZmanKidushLevanaBetweenMoldos(Date, Date)}.
*
* @param alos
* the beginning of the Jewish day. If Kidush Levana occurs during the day (starting at alos and
* ending at tzais), the time returned will be alos. If either the alos or tzais parameters
* are null, no daytime adjustment will be made.
* @param tzais
* the end of the Jewish day. If Kidush Levana occurs during the day (starting at alos and ending at
* tzais), the time returned will be alos. If either the alos or tzais parameters are null, no daytime
* adjustment will be made.
* @return the Date representing the moment halfway between molad and molad. If the time occurs between
* alos and tzais, alos will be returned. If the zman will not occur on this
* day, a null will be returned.
* @see #getSofZmanKidushLevanaBetweenMoldos(Date, Date)
* @see #getSofZmanKidushLevana15Days()
* @see JewishCalendar#getSofZmanKidushLevanaBetweenMoldos()
*/
getSofZmanKidushLevanaBetweenMoldos(alos?: DateTime | null, tzais?: DateTime | null): DateTime | null;
/**
* Returns the latest time of Kiddush Levana according to the Maharil's opinion that it is calculated as
* halfway between molad and molad. This adds half the 29 days, 12 hours and 793 chalakim time between
* molad and molad (14 days, 18 hours, 22 minutes and 666 milliseconds) to the month's molad. If
* the time of sof zman Kiddush Levana occurs during the day (between
* {@link ZmanimCalendar#getAlos72() Alos} and {@link ZmanimCalendar#getTzais72() tzais}) it
* return the alos prior to the calculated sof zman Kiddush Levana. This method is available in
* the 1.3 release of the API but may change or be removed in the future since it depends on the still changing
* {@link JewishCalendar} and related classes.
*
* @return the Date representing the moment halfway between molad and molad. If the time occurs between
* alos and tzais, alos will be returned
* @see #getSofZmanKidushLevanaBetweenMoldos(Date, Date)
* @see #getSofZmanKidushLevana15Days()
* @see JewishCalendar#getSofZmanKidushLevanaBetweenMoldos()
*/
/**
* Returns the latest time of Kiddush Levana calculated as 15 days after the molad. This is the opinion of
* the Shulchan Aruch (Orach Chaim 426). It should be noted that some opinions hold that the
* Rema who brings down the opinion of the Maharil's of calculating
* {@link #getSofZmanKidushLevanaBetweenMoldos(Date, Date) half way between molad and molad} is of
* the opinion that the Mechaber agrees to his opinion. Also see the Aruch Hashulchan. For additional details on the subject,
* See Rabbi Dovid Heber's very detailed write-up in Siman Daled (chapter 4) of Shaarei
* Zmanim. The sof zman Kiddush Levana will be returned even if it occurs during the day. To limit the time to
* between tzais and alos, see {@link #getSofZmanKidushLevana15Days(Date, Date)}.
*
* @return the Date representing the moment 15 days after the molad. If the time occurs between
* alos and tzais, alos will be returned. If the zman will not occur on this day, a
* null will be returned.
*
* @see #getSofZmanKidushLevana15Days(Date, Date)
* @see #getSofZmanKidushLevanaBetweenMoldos()
* @see JewishCalendar#getSofZmanKidushLevana15Days()
*
*/
getSofZmanKidushLevana15Days(alos?: DateTime | null, tzais?: DateTime | null): DateTime | null;
/**
* Returns the latest time of Kiddush Levana calculated as 15 days after the molad. This is the opinion of
* the Shulchan Aruch (Orach Chaim 426). It should be noted that some opinions hold that the
* Rema who brings down the opinion of the Maharil's of calculating
* {@link #getSofZmanKidushLevanaBetweenMoldos(Date, Date) half way between molad and molad} is of
* the opinion that the Mechaber agrees to his opinion. Also see the Aruch Hashulchan. For additional details on the subject,
* See Rabbi Dovid Heber's very detailed write-up in Siman Daled (chapter 4) of Shaarei
* Zmanim. The sof zman Kiddush Levana will be returned even if it occurs during the day. To limit the time to
* between tzais and alos, see {@link #getSofZmanKidushLevana15Days(Date, Date)}.
*
* @return the Date representing the moment 15 days after the molad. If the time occurs between
* alos and tzais, alos will be returned
*
* @see #getSofZmanKidushLevana15Days(Date, Date)
* @see #getSofZmanKidushLevanaBetweenMoldos()
* @see JewishCalendar#getSofZmanKidushLevana15Days()
*/
/**
* Returns the earliest time of Kiddush Levana according to Rabbeinu Yonah's opinion that it can be said 3 days after the molad.
* If the time of tchilas zman Kiddush Levana occurs during the day (between alos and tzais passed to
* this method) it will return the following tzais. If null is passed for either alos or tzais, the actual
* tchilas zman Kiddush Levana will be returned, regardless of if it is during the day or not.
*
* @param alos
* the beginning of the Jewish day. If Kidush Levana occurs during the day (starting at alos and ending
* at tzais), the time returned will be tzais. If either the alos or tzais parameters
* are null, no daytime adjustment will be made.
* @param tzais
* the end of the Jewish day. If Kidush Levana occurs during the day (starting at alos and ending at
* tzais), the time returned will be tzais. If either the alos or tzais parameters
* are null, no daytime adjustment will be made.
*
* @return the Date representing the moment 3 days after the molad. If the time occurs between alos and
* tzais, tzais will be returned. If the zman will not occur on this day, a
* null will be returned.
* @see #getTchilasZmanKidushLevana3Days()
* @see #getTchilasZmanKidushLevana7Days(Date, Date)
* @see JewishCalendar#getTchilasZmanKidushLevana3Days()
*/
getTchilasZmanKidushLevana3Days(alos?: DateTime | null, tzais?: DateTime | null): DateTime | null;
/**
* Returns the earliest time of Kiddush Levana according to Rabbeinu Yonah's opinion that it can be said 3 days after the molad.
* If the time of tchilas zman Kiddush Levana occurs during the day (between alos and tzais passed to
* this method) it will return the following tzais. If null is passed for either alos or tzais, the actual
* tchilas zman Kiddush Levana will be returned, regardless of if it is during the day or not.
*
* @param alos
* the beginning of the Jewish day. If Kidush Levana occurs during the day (starting at alos and ending
* at tzais), the time returned will be tzais. If either the alos or tzais parameters
* are null, no daytime adjustment will be made.
* @param tzais
* the end of the Jewish day. If Kidush Levana occurs during the day (starting at alos and ending at
* tzais), the time returned will be tzais. If either the alos or tzais parameters are null, no
* daytime adjustment will be made.
*
* @return the Date representing the moment 3 days after the molad. If the time occurs between alos and
* tzais, tzais will be returned
* @see #getTchilasZmanKidushLevana3Days(Date, Date)
* @see #getTchilasZmanKidushLevana7Days()
* @see JewishCalendar#getTchilasZmanKidushLevana3Days()
*/
/**
* Returns the point in time of Molad as a Date Object. For the traditional day of week, hour,
* minute and chalakim, {@link JewishCalendar#getMoladAsDate()} and the not yet completed
* {@link HebrewDateFormatter} that will have formatting for this.
*
* @return the Date representing the moment of the molad. If the molad does not occur on this day, a
* null will be returned.
*
* @see #getTchilasZmanKidushLevana3Days()
* @see #getTchilasZmanKidushLevana7Days(Date, Date)
* @see JewishCalendar#getMoladAsDate()
*/
getZmanMolad(): DateTime | null;
/**
* Used by Molad based zmanim to determine if zmanim occur during the current day.
* @see #getMoladBasedTime(Date, Date, Date, boolean)
* @return previous midnight
*/
private getMidnightLastNight;
/**
* Used by Molad based zmanim to determine if zmanim occur during the current day.
* @see #getMoladBasedTime(Date, Date, Date, boolean)
* @return following midnight
*/
private getMidnightTonight;
/**
* Returns the earliest time of Kiddush Levana according to the opinions that it should not be said until 7
* days after the molad. The time will be returned even if it occurs during the day when Kiddush Levana
* can't be recited. Use {@link #getTchilasZmanKidushLevana7Days(Date, Date)} if you want to limit the time to night hours.
*
* @return the Date representing the moment 7 days after the molad regardless of it is day or night. If the zman
* will not occur on this day, a null will be returned.
* @see #getTchilasZmanKidushLevana7Days(Date, Date)
* @see JewishCalendar#getTchilasZmanKidushLevana7Days()
* @see #getTchilasZmanKidushLevana3Days()
*/
getTchilasZmanKidushLevana7Days(alos?: DateTime | null, tzais?: DateTime | null): DateTime | null;
/**
* Returns the earliest time of Kiddush Levana according to the opinions that it should not be said until 7
* days after the molad. The time will be returned even if it occurs during the day when Kiddush Levana
* can't be recited. Use {@link #getTchilasZmanKidushLevana7Days(Date, Date)} if you want to limit the time to night hours.
*
* @return the Date representing the moment 7 days after the molad. If the time occurs between alos and
* tzais, tzais will be returned
* @see #getTchilasZmanKidushLevana7Days(Date, Date)
* @see #getTchilasZmanKidushLevana3Days()
* @see JewishCalendar#getTchilasZmanKidushLevana7Days()
*/
/**
* This method returns the latest time one is allowed eating chametz on Erev Pesach according to
* the opinion of the GRA. This time is identical to the {@link
* #getSofZmanTfilaGRA() Sof zman tfilah GRA} and is provided as a convenience method for those who are
* unaware how this zman is calculated. This time is 4 hours into the day based on the opinion of the
* GRA that the day is calculated from sunrise to sunset.
* This returns the time 4 * {@link #getShaahZmanisGra()} after {@link #getSeaLevelSunrise() sea level sunrise}. If it
* is not erev Pesach, a null will be returned.
*
* @see ZmanimCalendar#getShaahZmanisGra()
* @see ZmanimCalendar#getSofZmanTfilaGRA()
* @return the Date one is allowed eating chametz on Erev Pesach. If it is not erev
* Pesach or the calculation can't be computed such as in the Arctic Circle where there is at least one
* day a year where the sun does not rise, and one where it does not set, a null will be returned.
* See detailed explanation on top of the {@link AstronomicalCalendar} documentation.
* @todo enable the calendar check for erev pesach and return null in all other cases.
*/
getSofZmanAchilasChametzGRA(): DateTime | null;
/**
* This method returns the latest time one is allowed eating chametz on Erev Pesach according to the
* opinion of the Magen Avraham (MGA) based on alos
* being {@link #getAlos72() 72} minutes before {@link #getSunrise() sunrise}. This time is identical to the
* {@link #getSofZmanTfilaMGA72Minutes() Sof zman tfilah MGA 72 minutes}. This time is 4 {@link #getShaahZmanisMGA()
* shaos zmaniyos} (temporal hours) after {@link #getAlos72() dawn} based on the opinion of the MGA that the day is
* calculated from a {@link #getAlos72() dawn} of 72 minutes before sunrise to {@link #getTzais72() nightfall} of 72 minutes
* after sunset. This returns the time of 4 * {@link #getShaahZmanisMGA()} after {@link #getAlos72() dawn}. If it is not
* erev Pesach, a null will be returned.
*
* @return the Date of the latest time of eating chametz. If it is not erev Pesach or the
* calculation can't be computed such as in the Arctic Circle where there is at least one day a year where the sun does
* not rise, and one where it does not set, a null will be returned. See detailed explanation on top of
* the {@link AstronomicalCalendar} documentation.
* @todo enable the calendar check for erev pesach and return null in all other cases.
* @see #getShaahZmanisMGA()
* @see #getAlos72()
* @see #getSofZmanTfilaMGA72Minutes()
*/
getSofZmanAchilasChametzMGA72Minutes(): DateTime | null;
/**
* This method returns the latest time one is allowed eating chametz on Erev Pesach according to the
* opinion of the Magen Avraham (MGA) based on alos
* being {@link #getAlos72Zmanis() 72 zmaniyos} minutes before {@link #getSunrise() sunrise}. This time is identical to the
* {@link #getSofZmanTfilaMGA72MinutesZmanis() Sof zman tfilah MGA 72 minutes zmanis}. This time is 4 {@link #getShaahZmanis72MinutesZmanis()
* shaos zmaniyos} (temporal hours) after {@link #getAlos72() dawn} based on the opinion of the MGA that the day is
* calculated from a {@link #getAlos72Zmanis() dawn} of 72 minutes zmanis before sunrise to {@link #getTzais72Zmanis() nightfall} of 72 minutes zmanis
* after sunset. This returns the time of 4 * {@link #getShaahZmanis72MinutesZmanis()} after {@link #getAlos72Zmanis() dawn}. If it is not
* erev Pesach, a null will be returned.
*
* @return the Date of the latest time of eating chametz. If it is not erev Pesach or the
* calculation can't be computed such as in the Arctic Circle where there is at least one day a year where the sun does
* not rise, and one where it does not set, a null will be returned. See detailed explanation on top of
* the {@link AstronomicalCalendar} documentation.
* @todo in v 3.0.0 enable the calendar check for erev pesach and return null in all other cases.
* @see #getShaahZmanis72MinutesZmanis()
* @see #getAlos72Zmanis()
* @see #getSofZmanTfilaMGA72MinutesZmanis()
*/
getSofZmanAchilasChametzMGA72MinutesZmanis(): DateTime | null;
/**
* This method returns the latest time one is allowed eating chametz on Erev Pesach according to the
* opinion of the Magen Avraham (MGA) based on alos
* being {@link #getAlos16Point1Degrees() 16.1°} before {@link #getSunrise() sunrise}. This time is 4 {@link
* #getShaahZmanis16Point1Degrees() shaos zmaniyos} (solar hours) after {@link #getAlos16Point1Degrees() dawn}
* based on the opinion of the MGA that the day is calculated from dawn to nightfall with both being 16.1°
* below sunrise or sunset. This returns the time of 4 {@link #getShaahZmanis16Point1Degrees()} after
* {@link #getAlos16Point1Degrees() dawn}. If it is not erev Pesach, a null will be returned.
*
* @return the Date of the latest time of eating chametz. If it is not erev Pesach or the
* calculation can't be computed such as northern and southern locations even south of the Arctic Circle and north
* of the Antarctic Circle where the sun may not reach low enough below the horizon for this calculation, a
* null will be returned. See detailed explanation on top of the {@link AstronomicalCalendar} documentation.
* @todo enable the calendar check for erev pesach and return null in all other cases.
* @see #getShaahZmanis16Point1Degrees()
* @see #getAlos16Point1Degrees()
* @see #getSofZmanTfilaMGA16Point1Degrees()
*/
getSofZmanAchilasChametzMGA16Point1Degrees(): DateTime | null;
/**
* FIXME adjust for synchronous
* This method returns the latest time for burning chametz on Erev Pesach according to the opinion
* of the GRA. This time is 5 hours into the day based on the
* opinion of the GRA that the day is calculated from
* sunrise to sunset. This returns the time 5 * {@link #getShaahZmanisGra()} after {@link #getSeaLevelSunrise() sea
* level sunrise}. If it is not erev Pesach, a null will be returned.
* @todo enable the calendar check for erev pesach and return null in all other cases.
* @see ZmanimCalendar#getShaahZmanisGra()
* @return the Date of the latest time for burning chametz on Erev Pesach. If it is not
* erev Pesach or the calculation can't be computed such as in the Arctic Circle where there is at least
* one day a year where the sun does not rise, and one where it does not set, a null will be
* returned. See detailed explanation on top of the {@link AstronomicalCalendar} documentation.
*/
getSofZmanBiurChametzGRA(): DateTime | null;
/**
* FIXME adjust for synchronous
* This method returns the latest time for burning chametz on Erev Pesach according to the opinion of
* the Magen Avraham (MGA) based on alos
* being {@link #getAlos72() 72} minutes before {@link #getSunrise() sunrise}. This time is 5 {@link
* #getShaahZmanisMGA() shaos zmaniyos} (temporal hours) after {@link #getAlos72() dawn} based on the opinion of
* the MGA that the day is calculated from a {@link #getAlos72() dawn} of 72 minutes before sunrise to {@link
* #getTzais72() nightfall} of 72 minutes after sunset. This returns the time of 5 * {@link #getShaahZmanisMGA()} after
* {@link #getAlos72() dawn}. If it is not erev Pesach, a null will be returned.
* @todo enable the calendar check for erev pesach and return null in all other cases.
* @return the Date of the latest time for burning chametz on Erev Pesach. If it is not
* erev Pesach or the calculation can't be computed such as in the Arctic Circle where there is at
* least one day a year where the sun does not rise, and one where it does not set, a null will be
* returned. See detailed explanation on top of the {@link AstronomicalCalendar} documentation.
* @see #getShaahZmanisMGA()
* @see #getAlos72()
*/
getSofZmanBiurChametzMGA72Minutes(): DateTime | null;
/**
* FIXME adjust for synchronous
* This method returns the latest time for burning chametz on Erev Pesach according to the opinion of
* the Magen Avraham (MGA) based on alos
* being {@link #getAlos72Zmanis() 72} minutes zmanis before {@link #getSunrise() sunrise}. This time is 5 {@link
* #getShaahZmanis72MinutesZmanis() shaos zmaniyos} (temporal hours) after {@link #getAlos72Zmanis() dawn} based on the opinion of
* the MGA that the day is calculated from a {@link #getAlos72Zmanis() dawn} of 72 minutes zmanis before sunrise to {@link
* #getTzais72Zmanis() nightfall} of 72 minutes zmanis after sunset. This returns the time of 5 * {@link #getShaahZmanis72MinutesZmanis()} after
* {@link #getAlos72Zmanis() dawn}. If it is not erev Pesach, a null will be returned.
* @todo in v 3.0.0 enable the calendar check for erev pesach and return null in all other cases.
* @return the Date of the latest time for burning chametz on Erev Pesach. If it is not
* erev Pesach or the calculation can't be computed such as in the Arctic Circle where there is at
* least one day a year where the sun does not rise, and one where it does not set, a null will be
* returned. See detailed explanation on top of the {@link AstronomicalCalendar} documentation.
* @see #getShaahZmanis72MinutesZmanis()
* @see #getAlos72Zmanis()
*/
getSofZmanBiurChametzMGA72MinutesZmanis(): DateTime | null;
/**
* FIXME adjust for synchronous
* This method returns the latest time for burning chametz on Erev Pesach according to the opinion
* of the Magen Avraham (MGA) based on alos
* being {@link #getAlos16Point1Degrees() 16.1°} before {@link #getSunrise() sunrise}. This time is 5
* {@link #getShaahZmanis16Point1Degrees() shaos zmaniyos} (solar hours) after {@link #getAlos16Point1Degrees()
* dawn} based on the opinion of the MGA that the day is calculated from dawn to nightfall with both being 16.1°
* below sunrise or sunset. This returns the time of 5 {@link #getShaahZmanis16Point1Degrees()} after
* {@link #getAlos16Point1Degrees() dawn}. If it is not erev Pesach, a null will be returned.
* @todo enable the calendar check for erev pesach and return null in all other cases.
* @return the Date of the latest time for burning chametz on Erev Pesach. If it is not
* erev Pesach or the calculation can't be computed such as northern and southern locations even south
* of the Arctic Circle and north of the Antarctic Circle where the sun may not reach low enough below the
* horizon for this calculation, a null will be returned. See detailed explanation on top of the
* {@link AstronomicalCalendar} documentation.
*
* @see #getShaahZmanis16Point1Degrees()
* @see #getAlos16Point1Degrees()
*/
getSofZmanBiurChametzMGA16Point1Degrees(): DateTime | null;
/**
* A method that returns the Baal Hatanya's
* netz amiti (sunrise) without {@link AstronomicalCalculator#getElevationAdjustment(double)
* elevation adjustment}. This forms the base for the Baal Hatanya's dawn-based calculations that are
* calculated as a dip below the horizon before sunrise.
*
* According to the Baal Hatanya, netz amiti, or true (halachic) sunrise, is when the top of the sun's
* disk is visible at an elevation similar to the mountains of Eretz Yisrael. The time is calculated as the point at which
* the center of the sun's disk is 1.583° below the horizon. This degree-based calculation can be found in Rabbi Shalom
* DovBer Levine's commentary on The Baal
* Hatanya's Seder Hachnasas Shabbos. From an elevation of 546 meters, the top of Har Hacarmel, the sun disappears when it is 1° 35' or 1.583°
* below the sea level horizon. This in turn is based on the Gemara Shabbos 35a. There are other opinions brought down by
* Rabbi Levine, including Rabbi Yosef Yitzchok Feigelstock who calculates it as the degrees below the horizon 4 minutes after
* sunset in Yerushalayim (on the equinox). That is brought down as 1.583°. This is identical to the 1° 35' zman
* and is probably a typo and should be 1.683°. These calculations are used by most Chabad calendars that use the Baal Hatanya's zmanim. See
* About Our
* Zmanim Calculations @ Chabad.org.
*
* Note: netz amiti is used only for calculating certain zmanim, and is intentionally unpublished. For
* practical purposes, daytime mitzvos like shofar and lulav should not be done until after the
* published time for netz / sunrise.
*
* @return the Date representing the exact sea level netz amiti (sunrise) time. If the calculation can't be
* computed such as in the Arctic Circle where there is at least one day a year where the sun does not rise, and one
* where it does not set, a null will be returned. See detailed explanation on top of the page.
*
* @see #getSunrise()
* @see #getSeaLevelSunrise()
* @see #getSunsetBaalHatanya()
* @see #ZENITH_1_POINT_583
*/
private getSunriseBaalHatanya;
/**
* A method that returns the Baal Hatanya's
* shkiah amiti (sunset) without {@link AstronomicalCalculator#getElevationAdjustment(double)
* elevation adjustment}. This forms the base for the Baal Hatanya's dusk-based calculations that are calculated
* as a dip below the horizon after sunset.
*
* According to the Baal Hatanya, shkiah amiti, true (halachic) sunset, is when the top of the
* sun's disk disappears from view at an elevation similar to the mountains of Eretz Yisrael.
* This time is calculated as the point at which the center of the sun's disk is 1.583 degrees below the horizon.
*
* Note: shkiah amiti is used only for calculating certain zmanim, and is intentionally unpublished. For
* practical purposes, all daytime mitzvos should be completed before the published time for shkiah / sunset.
*
* For further explanation of the calculations used for the Baal Hatanya's zmanim in this library, see
* About Our
* Zmanim Calculations @ Chabad.org.
*
* @return the Date representing the exact sea level shkiah amiti (sunset) time. If the calculation
* can't be computed such as in the Arctic Circle where there is at least one day a year where the sun does not
* rise, and one where it does not set, a null will be returned. See detailed explanation on top of
* the {@link AstronomicalCalendar} documentation.
*
* @see #getSunset()
* @see #getSeaLevelSunset()
* @see #getSunriseBaalHatanya()
* @see #ZENITH_1_POINT_583
*/
private getSunsetBaalHatanya;
/**
* A method that returns the Baal Hatanya's
* a shaah zmanis ({@link #getTemporalHour(Date, Date) temporal hour}). This forms the base for the
* Baal Hatanya's day based calculations that are calculated as a 1.583° dip below the horizon after sunset.
* According to the Baal Hatanya, shkiah amiti, true (halachic) sunset, is when the top of the
* sun's disk disappears from view at an elevation similar to the mountains of Eretz Yisrael.
* This time is calculated as the point at which the center of the sun's disk is 1.583 degrees below the horizon.
* A method that returns a shaah zmanis ({@link #getTemporalHour(Date, Date) temporal hour}) calculated
* based on the Baal Hatanya's netz
* amiti and shkiah amiti using a dip of 1.583° below the sea level horizon. This calculation divides
* the day based on the opinion of the Baal Hatanya that the day runs from {@link #getSunriseBaalHatanya() netz amiti}
* to {@link #getSunsetBaalHatanya() shkiah amiti}. The calculations are based on a day from {@link
* #getSunriseBaalHatanya() sea level netz amiti} to {@link #getSunsetBaalHatanya() sea level shkiah amiti}.
* The day is split into 12 equal parts with each one being a shaah zmanis. This method is similar to {@link
* #getTemporalHour}, but all calculations are based on a sea level sunrise and sunset.
* @return the long millisecond length of a shaah zmanis calculated from
* {@link #getSunriseBaalHatanya() netz amiti (sunrise)} to {@link #getSunsetBaalHatanya() shkiah amiti
* ("real" sunset)}. If the calculation can't be computed such as in the Arctic Circle where there is at least one day a
* year where the sun does not rise, and one where it does not set, {@link Long#MIN_VALUE} will be returned. See
* detailed explanation on top of the {@link AstronomicalCalendar} documentation.
*
* @see #getTemporalHour(Date, Date)
* @see #getSunriseBaalHatanya()
* @see #getSunsetBaalHatanya()
* @see #ZENITH_1_POINT_583
*/
getShaahZmanisBaalHatanya(): number;
/**
* Returns the Baal Hatanya's alos
* (dawn) calculated as the time when the sun is 16.9° below the eastern {@link #GEOMETRIC_ZENITH geometric horizon}
* before {@link #getSunrise() sunrise}. For more information the source of 16.9° see {@link #ZENITH_16_POINT_9}.
*
* @see #ZENITH_16_POINT_9
* @return The Date of dawn. If the calculation can't be computed such as northern and southern
* locations even south of the Arctic Circle and north of the Antarctic Circle where the sun may not reach
* low enough below the horizon for this calculation, a null will be returned. See detailed
* explanation on top of the {@link AstronomicalCalendar} documentation.
*/
getAlosBaalHatanya(): DateTime | null;
/**
* This method returns the latest zman krias shema (time to recite Shema in the morning). This time is 3
* {@link #getShaahZmanisBaalHatanya() shaos zmaniyos} (solar hours) after {@link #getSunriseBaalHatanya()
* netz amiti (sunrise)} based on the opinion of the Baal Hatanya that the day is calculated from
* sunrise to sunset. This returns the time 3 * {@link #getShaahZmanisBaalHatanya()} after {@link #getSunriseBaalHatanya()
* netz amiti (sunrise)}.
*
* @see ZmanimCalendar#getSofZmanShma(Date, Date)
* @see #getShaahZmanisBaalHatanya()
* @return the Date of the latest zman shema according to the Baal Hatanya. If the calculation
* can't be computed such as in the Arctic Circle where there is at least one day a year where the sun does
* not rise, and one where it does not set, a null will be returned. See detailed explanation on
* top of the {@link AstronomicalCalendar} documentation.
*/
getSofZmanShmaBaalHatanya(): DateTime | null;
/**
* This method returns the latest zman tfilah (time to recite the morning prayers). This time is 4
* hours into the day based on the opinion of the Baal Hatanya that the day is
* calculated from sunrise to sunset. This returns the time 4 * {@link #getShaahZmanisBaalHatanya()} after
* {@link #getSunriseBaalHatanya() netz amiti (sunrise)}.
*
* @see ZmanimCalendar#getSofZmanTfila(Date, Date)
* @see #getShaahZmanisBaalHatanya()
* @return the Date of the latest zman tfilah. If the calculation can't be computed such as in
* the Arctic Circle where there is at least one day a year where the sun does not rise, and one where it does
* not set, a null will be returned. See detailed explanation on top of the
* {@link AstronomicalCalendar} documentation.
*/
getSofZmanTfilaBaalHatanya(): DateTime | null;
/**
* This method returns the latest time one is allowed eating chametz on Erev Pesach according to the
* opinion of the Baal Hatanya. This time is identical to the {@link #getSofZmanTfilaBaalHatanya() Sof zman
* tfilah Baal Hatanya}. This time is 4 hours into the day based on the opinion of the Baal Hatanya that the day
* is calculated from sunrise to sunset. This returns the time 4 {@link #getShaahZmanisBaalHatanya()} after
* {@link #getSunriseBaalHatanya() netz amiti (sunrise)}.
* @todo enable the calendar check for erev pesach and return null in all other cases.
* @see #getShaahZmanisBaalHatanya()
* @see #getSofZmanTfilaBaalHatanya()
* @return the Date one is allowed eating chametz on Erev Pesach. If it is not erev
* Pesach or the calculation can't be computed such as in the Arctic Circle where there is at least one
* day a year where the sun does not rise, and one where it does not set, a null will be returned.
* See detailed explanation on top of the {@link AstronomicalCalendar} documentation.
*/
getSofZmanAchilasChametzBaalHatanya(): DateTime | null;
/**
* This method returns the latest time for burning chametz on Erev Pesach according to the opinion of
* the Baal Hatanya. This time is 5 hours into the day based on the opinion of the Baal Hatanya that the day is calculated
* from sunrise to sunset. This returns the time 5 * {@link #getShaahZmanisBaalHatanya()} after
* {@link #getSunriseBaalHatanya() netz amiti (sunrise)}. If it is not erev Pesach, a null will be returned.
* @todo enable the calendar check for erev pesach and return null in all other cases.
* @see #getShaahZmanisBaalHatanya()
* @return the Date of the latest time for burning chametz on Erev Pesach. If it is not
* erev Pesach or the calculation can't be computed such as in the Arctic Circle where there is at
* least one day a year where the sun does not rise, and one where it does not set, a null will be
* returned. See detailed explanation on top of the {@link AstronomicalCalendar} documentation.
*/
getSofZmanBiurChametzBaalHatanya(): DateTime | null;
/**
* This method returns the time of mincha gedola. Mincha gedola is the earliest time one can pray
* mincha. The Rambam is of the opinion that it is
* better to delay mincha until {@link #getMinchaKetanaBaalHatanya() mincha ketana} while the
* Ra"sh,
* Tur, GRA and others are of the opinion that mincha can be prayed
* lechatchila starting at mincha gedola. This is calculated as 6.5 {@link #getShaahZmanisBaalHatanya()
* sea level solar hours} after {@link #getSunriseBaalHatanya() netz amiti (sunrise)}. This calculation is based
* on the opinion of the Baal Hatanya that the day is calculated from sunrise to sunset. This returns the time 6.5
* * {@link #getShaahZmanisBaalHatanya()} after {@link #getSunriseBaalHatanya() netz amiti ("real" sunrise)}.
* @todo Consider adjusting this to calculate the time as 30 clock or zmaniyos minutes after either {@link
* #getSunTransit() astronomical chatzos} or {@link #getChatzosAsHalfDay() chatzos as half a day}
* for {@link AstronomicalCalculator calculators} that support it, based on {@link #isUseAstronomicalChatzos()}.
* @see #getMinchaGedola(Date, Date)
* @see #getShaahZmanisBaalHatanya()
* @see #getMinchaKetanaBaalHatanya()
* @return the Date of the time of mincha gedola according to the Baal Hatanya. If the calculation
* can't be computed such as in the Arctic Circle where there is at least one day a year where the sun does not rise,
* and one where it does not set, a null will be returned. See detailed explanation on top of the
* {@link AstronomicalCalendar} documentation.
*/
getMinchaGedolaBaalHatanya(): DateTime | null;
/**
* FIXME synchronous
* This is a convenience method that returns the later of {@link #getMinchaGedolaBaalHatanya()} and
* {@link #getMinchaGedola30Minutes()}. In the winter when 1/2 of a {@link #getShaahZmanisBaalHatanya()
* shaah zmanis} is less than 30 minutes {@link #getMinchaGedola30Minutes()} will be returned, otherwise
* {@link #getMinchaGedolaBaalHatanya()} will be returned.
* @todo Consider adjusting this to calculate the time as 30 clock or zmaniyos minutes after either {@link
* #getSunTransit() astronomical chatzos} or {@link #getChatzosAsHalfDay() chatzos as half a day}
* for {@link AstronomicalCalculator calculators} that support it, based on {@link #isUseAstronomicalChatzos()}.
* @return the Date of the later of {@link #getMinchaGedolaBaalHatanya()} and {@link #getMinchaGedola30Minutes()}.
* If the calculation can't be computed such as in the Arctic Circle where there is at least one day a year
* where the sun does not rise, and one where it does not set, a null will be returned. See detailed
* explanation on top of the {@link AstronomicalCalendar} documentation.
*/
getMinchaGedolaBaalHatanyaGreaterThan30(): DateTime | null;
/**
* This method returns the time of mincha ketana. This is the preferred earliest time to pray
* mincha in the opinion of the Rambam and others.
* For more information on this see the documentation on {@link #getMinchaGedolaBaalHatanya() mincha gedola}.
* This is calculated as 9.5 {@link #getShaahZmanisBaalHatanya() sea level solar hours} after {@link #getSunriseBaalHatanya()
* netz amiti (sunrise)}. This calculation is calculated based on the opinion of the Baal Hatanya that the
* day is calculated from sunrise to sunset. This returns the time 9.5 * {@link #getShaahZmanisBaalHatanya()} after {@link
* #getSunriseBaalHatanya() netz amiti (sunrise)}.
*
* @see #getMinchaKetana(Date, Date)
* @see #getShaahZmanisBaalHatanya()
* @see #getMinchaGedolaBaalHatanya()
* @return the Date of the time of mincha ketana. If the calculation can't be computed such as
* in the Arctic Circle where there is at least one day a year where the sun does not rise, and one where it
* does not set, a null will be returned. See detailed explanation on top of the
* {@link AstronomicalCalendar} documentation.
*/
getMinchaKetanaBaalHatanya(): DateTime | null;
/**
* This method returns the time of plag hamincha. This is calculated as 10.75 hours after sunrise. This
* calculation is based on the opinion of the Baal Hatanya that the day is calculated
* from sunrise to sunset. This returns the time 10.75 * {@link #getShaahZmanisBaalHatanya()} after
* {@link #getSunriseBaalHatanya() netz amiti (sunrise)}.
*
* @see #getPlagHamincha(Date, Date)
* @return the Date of the time of plag hamincha. If the calculation can't be computed such as
* in the Arctic Circle where there is at least one day a year where the sun does not rise, and one where it
* does not set, a null will be returned. See detailed explanation on top of the
* {@link AstronomicalCalendar} documentation.
*/
getPlagHaminchaBaalHatanya(): DateTime | null;
/**
* A method that returns tzais (nightfall) when the sun is 6° below the western geometric horizon
* (90°) after {@link #getSunset() sunset}. For information on the source of this calculation see
* {@link #ZENITH_6_DEGREES}.
*
* @return The Date of nightfall. If the calculation can't be computed such as northern and southern
* locations even south of the Arctic Circle and north of the Antarctic Circle where the sun may not reach
* low enough below the horizon for this calculation, a null will be returned. See detailed
* explanation on top of the {@link AstronomicalCalendar} documentation.
* @see #ZENITH_6_DEGREES
*/
getTzaisBaalHatanya(): DateTime | null;
/**
* A utility method to calculate zmanim based on Rav Moshe
* Feinstein as calculated in MTJ, Yeshiva of Staten Island, and Camp Yeshiva
* of Staten Island. The day is split in two, from alos / sunrise to fixed local chatzos, and the
* second half of the day, from fixed local chatzos to sunset / tzais. Morning based times are calculated
* based on the first 6 hours, and afternoon times based on the second half of the day.
* @deprecated This method will be replaced by the more generic {@link
* ZmanimCalendar#getHalfDayBasedZman(Date, Date, double)} method.
*
* @param startOfHalfDay
* The start of the half day. This would be alos or sunrise for morning based times and fixed
* local chatzos for the second half of the day.
* @param endOfHalfDay
* The end of the half day. This would be fixed local chatzos for morning based times and sunset
* or tzais for afternoon based times.
* @param hours
* the number of hours to offset the beginning of the first or second half of the day
*
* @return the Date of the zman based on calculation of the first or second half of the day. If
* the calculation can't be computed such as in the Arctic Circle where there is at least one day a year where
* the sun does not rise, and one where it does not set, a null will be returned. See detailed
* explanation on top of the {@link AstronomicalCalendar} documentation.
*
* @see ComplexZmanimCalendar#getFixedLocalChatzos()
*/
getFixedLocalChatzosBasedZmanim(startOfHalfDay: DateTime | null, endOfHalfDay: DateTime | null, hours: number): DateTime | null;
/**
* This method returns Rav Moshe Feinstein's opinion of the
* calculation of sof zman krias shema (latest time to recite Shema in the morning) according to the
* opinion of the Magen Avraham (MGA) that the
* day is calculated from dawn to nightfall, but calculated using the first half of the day only. The half a day starts
* at alos defined as {@link #getAlos18Degrees() 18°} and ends at {@link #getFixedLocalChatzos() fixed local
* chatzos}. Sof Zman Shema is 3 shaos zmaniyos (solar hours) after alos or half of this half-day.
*
* @return the Date of the latest zman krias shema. If the calculation can't be computed such
* as northern and southern locations even south of the Arctic Circle and north of the Antarctic Circle
* where the sun may not reach low enough below the horizon for this calculation, a null will be
* returned. See detailed explanation on top of the {@link AstronomicalCalendar} documentation.
* @see #getAlos18Degrees()
* @see #getFixedLocalChatzos()
* @see ZmanimCalendar#getHalfDayBasedZman(Date, Date, double)
*/
getSofZmanShmaMGA18DegreesToFixedLocalChatzos(): DateTime | null;
/**
* This method returns Rav Moshe Feinstein's opinion of the
* calculation of sof zman krias shema (latest time to recite Shema in the morning) according to the
* opinion of the Magen Avraham (MGA) that the
* day is calculated from dawn to nightfall, but calculated using the first half of the day only. The half a day starts
* at alos defined as {@link #getAlos16Point1Degrees() 16.1°} and ends at {@link #getFixedLocalChatzos() fixed local
* chatzos}. Sof Zman Shema is 3 shaos zmaniyos (solar hours) after this alos or half of this half-day.
*
* @return the Date of the latest zman krias shema. If the calculation can't be computed such
* as northern and southern locations even south of the Arctic Circle and north of the Antarctic Circle
* where the sun may not reach low enough below the horizon for this calculation, a null will be returned.
* See detailed explanation on top of the {@link AstronomicalCalendar} documentation.
* @see #getAlos16Point1Degrees()
* @see #getFixedLocalChatzos()
* @see #getHalfDayBasedZman(Date, Date, double)
*/
getSofZmanShmaMGA16Point1DegreesToFixedLocalChatzos(): DateTime | null;
/**
* This method returns Rav Moshe Feinstein's opinion of the
* calculation of sof zman krias shema (latest time to recite Shema in the morning) according to the
* opinion of the Magen Avraham (MGA) that the
* day is calculated from dawn to nightfall, but calculated using the first half of the day only. The half a day starts
* at alos defined as {@link #getAlos90() 90 minutes before sunrise} and ends at {@link #getFixedLocalChatzos()
* fixed local chatzos}. Sof Zman Shema is 3 shaos zmaniyos (solar hours) after this alos or
* half of this half-day.
*
* @return the Date of the latest zman krias shema. If the calculation can't be computed such
* as northern and southern locations even south of the Arctic Circle and north of the Antarctic Circle
* where the sun may not reach low enough below the horizon for this calculation, a null will be
* returned. See detailed explanation on top of the {@link AstronomicalCalendar} documentation.
* @see #getAlos90()
* @see #getFixedLocalChatzos()
* @see #getHalfDayBasedZman(Date, Date, double)
*/
getSofZmanShmaMGA90MinutesToFixedLocalChatzos(): DateTime | null;
/**
* This method returns Rav Moshe Feinstein's opinion of the
* calculation of sof zman krias shema (latest time to recite Shema in the morning) according to the
* opinion of the Magen Avraham (MGA) that the
* day is calculated from dawn to nightfall, but calculated using the first half of the day only. The half a day starts
* at alos defined as {@link #getAlos72() 72 minutes before sunrise} and ends at {@link #getFixedLocalChatzos()
* fixed local chatzos}. Sof Zman Shema is 3 shaos zmaniyos (solar hours) after this alos or
* half of this half-day.
*
* @return the Date of the latest zman krias shema. If the calculation can't be computed such
* as northern and southern locations even south of the Arctic Circle and north of the Antarctic Circle
* where the sun may not reach low enough below the horizon for this calculation, a null will be
* returned. See detailed explanation on top of the {@link AstronomicalCalendar} documentation.
* @see #getAlos72()
* @see #getFixedLocalChatzos()
* @see #getHalfDayBasedZman(Date, Date, double)
*/
getSofZmanShmaMGA72MinutesToFixedLocalChatzos(): DateTime | null;
/**
* This method returns Rav Moshe Feinstein's opinion of the
* calculation of sof zman krias shema (latest time to recite Shema in the morning) according to the
* opinion of the GRA that the day is calculated from
* sunrise to sunset, but calculated using the first half of the day only. The half a day starts at {@link #getSunrise()
* sunrise} and ends at {@link #getFixedLocalChatzos() fixed local chatzos}. Sof zman Shema is 3 shaos
* zmaniyos (solar hours) after sunrise or half of this half-day.
*
* @return the Date of the latest zman krias shema. If the calculation can't be computed such
* as northern and southern locations even south of the Arctic Circle and north of the Antarctic Circle
* where the sun may not reach low enough below the horizon for this calculation, a null will be
* returned. See detailed explanation on top of the {@link AstronomicalCalendar} documentation.
* @see #getSunrise()
* @see #getFixedLocalChatzos()
* @see #getHalfDayBasedZman(Date, Date, double)
*/
getSofZmanShmaGRASunriseToFixedLocalChatzos(): DateTime | null;
/**
* This method returns Rav Moshe Feinstein's opinion of the
* calculation of sof zman tfila (zman tfilah (the latest time to recite the morning prayers))
* according to the opinion of the GRA that the day is
* calculated from sunrise to sunset, but calculated using the first half of the day only. The half a day starts at
* {@link #getSunrise() sunrise} and ends at {@link #getFixedLocalChatzos() fixed local chatzos}. Sof zman tefila
* is 4 shaos zmaniyos (solar hours) after sunrise or 2/3 of this half-day.
*
* @return the Date of the latest zman krias shema. If the calculation can't be computed such
* as northern and southern locations even south of the Arctic Circle and north of the Antarctic Circle
* where the sun may not reach low enough below the horizon for this calculation, a null will be
* returned. See detailed explanation on top of the {@link AstronomicalCalendar} documentation.
* @see #getSunrise()
* @see #getFixedLocalChatzos()
* @see #getHalfDayBasedZman(Date, Date, double)
*/
getSofZmanTfilaGRASunriseToFixedLocalChatzos(): DateTime | null;
/**
* This method returns Rav Moshe Feinstein's opinion of
* the calculation of mincha gedola, the earliest time one can pray mincha GRA that is 30 minutes after {@link #getFixedLocalChatzos() fixed
* local chatzos}.
*
* @return the Date of the time of mincha gedola. If the calculation can't be computed such as
* in the Arctic Circle where there is at least one day a year where the sun does not rise, and one where it
* does not set, a null will be returned. See detailed explanation on top of the
* {@link AstronomicalCalendar} documentation.
*
* @see #getMinchaGedola()
* @see #getFixedLocalChatzos()
* @see #getMinchaKetanaGRAFixedLocalChatzosToSunset
*/
getMinchaGedolaGRAFixedLocalChatzos30Minutes(): DateTime | null;
/**
* This method returns Rav Moshe Feinstein's opinion
* of the calculation of mincha ketana (the preferred time to recite the mincha prayers according to
* the opinion of the Rambam and others) calculated according
* to the GRA that is 3.5 shaos zmaniyos (solar
* hours) after {@link #getFixedLocalChatzos() fixed local chatzos}.
*
* @return the Date of the time of mincha gedola. If the calculation can't be computed such as
* in the Arctic Circle where there is at least one day a year where the sun does not rise, and one where it
* does not set, a null will be returned. See detailed explanation on top of the
* {@link AstronomicalCalendar} documentation.
*
* @see #getMinchaGedola()
* @see #getFixedLocalChatzos()
* @see #getMinchaGedolaGRAFixedLocalChatzos30Minutes
* @see ZmanimCalendar#getHalfDayBasedZman(Date, Date, double)
*/
getMinchaKetanaGRAFixedLocalChatzosToSunset(): DateTime | null;
/**
* This method returns Rav Moshe Feinstein's opinion
* of the calculation of plag hamincha. This method returns plag hamincha calculated according to the
* GRA that the day ends at sunset and is 4.75 shaos
* zmaniyos (solar hours) after {@link #getFixedLocalChatzos() fixed local chatzos}.
*
* @return the Date of the time of mincha gedola. If the calculation can't be computed such as
* in the Arctic Circle where there is at least one day a year where the sun does not rise, and one where it
* does not set, a null will be returned. See detailed explanation on top of the
* {@link AstronomicalCalendar} documentation.
*
* @see #getPlagHamincha()
* @see #getFixedLocalChatzos()
* @see #getMinchaKetanaGRAFixedLocalChatzosToSunset
* @see #getMinchaGedolaGRAFixedLocalChatzos30Minutes
* @see ZmanimCalendar#getHalfDayBasedZman(Date, Date, double)
*/
getPlagHaminchaGRAFixedLocalChatzosToSunset(): DateTime | null;
/**
* Method to return tzais (dusk) calculated as 50 minutes after sea level sunset. This method returns
* tzais (nightfall) based on the opinion of Rabbi Moshe Feinstein for the New York area. This time should
* not be used for latitudes other than ones similar to the latitude of the NY area.
*
* @return the Date representing the time. If the calculation can't be computed such as in the Arctic
* Circle where there is at least one day a year where the sun does not rise, and one where it does not set,
* a null will be returned. See detailed explanation on top of the {@link AstronomicalCalendar}
* documentation.
*/
getTzais50(): DateTime | null;
/**
* A method for calculating samuch lemincha ketana, / near mincha ketana time that is half an hour before
* {@link #getMinchaKetana()} or is 9 * {@link #getShaahZmanisGra() shaos zmaniyos} (solar hours) after {@link
* #getSunrise() sunrise} or {@link #getSeaLevelSunrise() sea level sunrise} (depending on the {@link #isUseElevation()}
* setting), calculated according to the GRA using a day starting at
* sunrise and ending at sunset. This is the time that eating or other activity can't begin prior to praying mincha.
* The calculation used is 9 * {@link #getShaahZmanis16Point1Degrees()} after {@link #getAlos16Point1Degrees() alos
* 16.1°}. See the Mechaber and Mishna Berurah
* 232 and 249:2.
*
* @see #getShaahZmanisGra()
* @see #getSamuchLeMinchaKetana16Point1Degrees()
* @see #isUseAstronomicalChatzosForOtherZmanim()
* @return the Date of the time of samuch lemincha ketana. If the calculation can't be computed such
* as northern and southern locations even south of the Arctic Circle and north of the Antarctic Circle
* where the sun may not reach low enough below the horizon for this calculation, a null will be
* returned. See detailed explanation on top of the {@link AstronomicalCalendar} documentation.
*/
getSamuchLeMinchaKetanaGRA(): DateTime | null;
/**
* A method for calculating samuch lemincha ketana, / near mincha ketana time that is half an hour
* before {@link #getMinchaGedola16Point1Degrees()} or 9 * shaos zmaniyos (temporal hours) after the start of
* the day, calculated using a day starting and ending 16.1° below the horizon. This is the time that eating or other
* activity can't begin prior to praying mincha. The calculation used is 9 * {@link
* #getShaahZmanis16Point1Degrees()} after {@link #getAlos16Point1Degrees() alos 16.1°}. See the Mechaber and Mishna Berurah 232 and 249:2.
*
* @see #getShaahZmanis16Point1Degrees()
* @return the Date of the time of samuch lemincha ketana. If the calculation can't be computed such
* as northern and southern locations even south of the Arctic Circle and north of the Antarctic Circle
* where the sun may not reach low enough below the horizon for this calculation, a null will be returned.
* See detailed explanation on top of the {@link AstronomicalCalendar} documentation.
*/
getSamuchLeMinchaKetana16Point1Degrees(): DateTime | null;
/**
* A method for calculating samuch lemincha ketana, / near mincha ketana time that is half an hour before
* {@link #getMinchaKetana72Minutes()} or 9 * shaos zmaniyos (temporal hours) after the start of the day,
* calculated using a day starting 72 minutes before sunrise and ending 72 minutes after sunset. This is the time that eating
* or other activity can't begin prior to praying mincha. The calculation used is 9 * {@link
* #getShaahZmanis16Point1Degrees()} after {@link #getAlos16Point1Degrees() alos 16.1°}. See the Mechaber and Mishna Berurah 232 and 249:2. *
* @see #getShaahZmanis16Point1Degrees()
* @return the Date of the time of samuch lemincha ketana. If the calculation can't be computed such
* as northern and southern locations even south of the Arctic Circle and north of the Antarctic Circle
* where the sun may not reach low enough below the horizon for this calculation, a null will be returned.
* See detailed explanation on top of the {@link AstronomicalCalendar} documentation.
*/
getSamuchLeMinchaKetana72Minutes(): DateTime | null;
getClassName(): string;
}