/**@class java.time.chrono.ThaiBuddhistChronology
 implements java.io.Serializable

@extends java.time.chrono.AbstractChronology

 The Thai Buddhist calendar system.
 <p>
 This chronology defines the rules of the Thai Buddhist calendar system.
 This calendar system is primarily used in Thailand.
 Dates are aligned such that {@code 2484-01-01 (Buddhist)} is {@code 1941-01-01 (ISO)}.
 <p>
 The fields are defined as follows:
 <ul>
 <li>era - There are two eras, the current 'Buddhist' (ERA_BE) and the previous era (ERA_BEFORE_BE).
 <li>year-of-era - The year-of-era for the current era increases uniformly from the epoch at year one.
  For the previous era the year increases from one as time goes backwards.
  The value for the current era is equal to the ISO proleptic-year plus 543.
 <li>proleptic-year - The proleptic year is the same as the year-of-era for the
  current era. For the previous era, years have zero, then negative values.
  The value is equal to the ISO proleptic-year plus 543.
 <li>month-of-year - The ThaiBuddhist month-of-year exactly matches ISO.
 <li>day-of-month - The ThaiBuddhist day-of-month exactly matches ISO.
 <li>day-of-year - The ThaiBuddhist day-of-year exactly matches ISO.
 <li>leap-year - The ThaiBuddhist leap-year pattern exactly matches ISO, such that the two calendars
  are never out of step.
 </ul>

 @implSpec
 This class is immutable and thread-safe.

 @since 1.8
*/
var ThaiBuddhistChronology = {

/** Singleton instance of the Buddhist chronology.
*/
INSTANCE : "null",
/**Gets the ID of the chronology - 'ThaiBuddhist'.
 <p>
 The ID uniquely identifies the {@code Chronology}.
 It can be used to lookup the {@code Chronology} using {@link java.time.chrono.Chronology#of(String)}.
@return {String} the chronology ID - 'ThaiBuddhist'
@see #getCalendarType()
*/
getId : function(  ) {},

/**Gets the calendar type of the underlying calendar system - 'buddhist'.
 <p>
 The calendar type is an identifier defined by the
 <em>Unicode Locale Data Markup Language (LDML)</em> specification.
 It can be used to lookup the {@code Chronology} using {@link java.time.chrono.Chronology#of(String)}.
 It can also be used as part of a locale, accessible via
 {@link Locale#getUnicodeLocaleType(String)} with the key 'ca'.
@return {String} the calendar system type - 'buddhist'
@see #getId()
*/
getCalendarType : function(  ) {},

/**Obtains a local date in Thai Buddhist calendar system from the
 era, year-of-era, month-of-year and day-of-month fields.
@param {Object {Era}} era  the Thai Buddhist era, not null
@param {Number} yearOfEra  the year-of-era
@param {Number} month  the month-of-year
@param {Number} dayOfMonth  the day-of-month
@return {Object {java.time.chrono.ThaiBuddhistDate}} the Thai Buddhist local date, not null
@throws DateTimeException if unable to create the date
@throws ClassCastException if the {@code era} is not a {@code ThaiBuddhistEra}
*/
date : function(  ) {},

/**Obtains a local date in Thai Buddhist calendar system from the
 proleptic-year, month-of-year and day-of-month fields.
@param {Number} prolepticYear  the proleptic-year
@param {Number} month  the month-of-year
@param {Number} dayOfMonth  the day-of-month
@return {Object {java.time.chrono.ThaiBuddhistDate}} the Thai Buddhist local date, not null
@throws DateTimeException if unable to create the date
*/
date : function(  ) {},

/**Obtains a local date in Thai Buddhist calendar system from the
 era, year-of-era and day-of-year fields.
@param {Object {Era}} era  the Thai Buddhist era, not null
@param {Number} yearOfEra  the year-of-era
@param {Number} dayOfYear  the day-of-year
@return {Object {java.time.chrono.ThaiBuddhistDate}} the Thai Buddhist local date, not null
@throws DateTimeException if unable to create the date
@throws ClassCastException if the {@code era} is not a {@code ThaiBuddhistEra}
*/
dateYearDay : function(  ) {},

/**Obtains a local date in Thai Buddhist calendar system from the
 proleptic-year and day-of-year fields.
@param {Number} prolepticYear  the proleptic-year
@param {Number} dayOfYear  the day-of-year
@return {Object {java.time.chrono.ThaiBuddhistDate}} the Thai Buddhist local date, not null
@throws DateTimeException if unable to create the date
*/
dateYearDay : function(  ) {},

/**Obtains a local date in the Thai Buddhist calendar system from the epoch-day.
@param {Number} epochDay  the epoch day
@return {Object {java.time.chrono.ThaiBuddhistDate}} the Thai Buddhist local date, not null
@throws DateTimeException if unable to create the date
*/
dateEpochDay : function(  ) {},

/**
*/
dateNow : function(  ) {},

/**
*/
dateNow : function(  ) {},

/**
*/
dateNow : function(  ) {},

/**
*/
date : function(  ) {},

/**
*/
localDateTime : function(  ) {},

/**
*/
zonedDateTime : function(  ) {},

/**
*/
zonedDateTime : function(  ) {},

/**Checks if the specified year is a leap year.
 <p>
 Thai Buddhist leap years occur exactly in line with ISO leap years.
 This method does not validate the year passed in, and only has a
 well-defined result for years in the supported range.
@param {Number} prolepticYear  the proleptic-year to check, not validated for range
@return {Boolean} true if the year is a leap year
*/
isLeapYear : function(  ) {},

/**
*/
prolepticYear : function(  ) {},

/**
*/
eraOf : function(  ) {},

/**
*/
eras : function(  ) {},

/**
*/
range : function(  ) {},

/**
*/
resolveDate : function(  ) {},


};