locale.class.d.ts 5.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140
  1. export interface LocaleOptionsFormat {
  2. format: string[];
  3. standalone: string[];
  4. isFormat?: RegExp;
  5. }
  6. export declare type LocaleOptions = string[] | LocaleOptionsFormat;
  7. export declare const defaultLocaleMonths: string[];
  8. export declare const defaultLocaleMonthsShort: string[];
  9. export declare const defaultLocaleWeekdays: string[];
  10. export declare const defaultLocaleWeekdaysShort: string[];
  11. export declare const defaultLocaleWeekdaysMin: string[];
  12. export declare const defaultLongDateFormat: {
  13. [index: string]: string;
  14. };
  15. export declare const defaultOrdinal = "%d";
  16. export declare const defaultDayOfMonthOrdinalParse: RegExp;
  17. export declare type OrdinalDateFn = (num: number, token?: string) => string;
  18. export declare type PluralizeDateFn = (num: number, withoutSuffix: boolean, key?: string, isFuture?: boolean) => string;
  19. export interface LocaleData {
  20. abbr?: string;
  21. parentLocale?: string;
  22. months?: LocaleOptions | ((date: Date, format: string, isUTC?: boolean) => string | string[]);
  23. monthsShort?: LocaleOptions | ((date: Date, format: string, isUTC?: boolean) => string | string[]);
  24. monthsParseExact?: boolean;
  25. weekdays?: LocaleOptions | ((date: Date, format: string, isUTC?: boolean) => string | string[]);
  26. weekdaysShort?: string[] | ((date: Date, format: string, isUTC?: boolean) => string | string[]);
  27. weekdaysMin?: string[] | ((date: Date, format: string, isUTC?: boolean) => string | string[]);
  28. weekdaysParseExact?: boolean;
  29. longDateFormat?: {
  30. [index: string]: string;
  31. };
  32. calendar?: {
  33. [key: string]: (string | ((date: Date, now?: Date) => string) | ((dayOfWeek: number, isNextWeek: boolean) => string));
  34. };
  35. relativeTime?: {
  36. [key: string]: string | PluralizeDateFn;
  37. };
  38. dayOfMonthOrdinalParse?: RegExp;
  39. ordinal?: string | OrdinalDateFn;
  40. week?: {
  41. dow?: number;
  42. doy?: number;
  43. };
  44. invalidDate?: string;
  45. monthsRegex?: RegExp;
  46. monthsParse?: RegExp[];
  47. monthsShortRegex?: RegExp;
  48. monthsStrictRegex?: RegExp;
  49. monthsShortStrictRegex?: RegExp;
  50. longMonthsParse?: RegExp[];
  51. shortMonthsParse?: RegExp[];
  52. meridiemParse?: RegExp;
  53. meridiemHour?(hour: number, meridiem: string): number;
  54. preparse?(str: string): string;
  55. postformat?(str: string | number): string;
  56. meridiem?(hour: number, minute?: number, isLower?: boolean): string;
  57. isPM?(input: string): boolean;
  58. }
  59. export declare class Locale {
  60. parentLocale?: Locale;
  61. _abbr: string;
  62. _config: LocaleData;
  63. meridiemHour: (hour: number, meridiem: string) => number;
  64. _invalidDate: string;
  65. _week: {
  66. dow: number;
  67. doy: number;
  68. };
  69. _dayOfMonthOrdinalParse: RegExp;
  70. _ordinalParse: RegExp;
  71. _meridiemParse: RegExp;
  72. private _calendar;
  73. private _relativeTime;
  74. private _months;
  75. private _monthsShort;
  76. private _monthsRegex;
  77. private _monthsShortRegex;
  78. private _monthsStrictRegex;
  79. private _monthsShortStrictRegex;
  80. private _monthsParse;
  81. private _longMonthsParse;
  82. private _shortMonthsParse;
  83. private _monthsParseExact;
  84. private _weekdaysParseExact;
  85. private _weekdaysRegex;
  86. private _weekdaysShortRegex;
  87. private _weekdaysMinRegex;
  88. private _weekdaysStrictRegex;
  89. private _weekdaysShortStrictRegex;
  90. private _weekdaysMinStrictRegex;
  91. private _weekdays;
  92. private _weekdaysShort;
  93. private _weekdaysMin;
  94. private _weekdaysParse;
  95. private _minWeekdaysParse;
  96. private _shortWeekdaysParse;
  97. private _fullWeekdaysParse;
  98. private _longDateFormat;
  99. private _ordinal;
  100. constructor(config: LocaleData);
  101. set(config: LocaleData): void;
  102. calendar(key: string, date: Date, now: Date): string;
  103. longDateFormat(key: string): string;
  104. invalidDate: string;
  105. ordinal(num: number, token?: string): string;
  106. preparse(str: string): string;
  107. postformat(str: string): string;
  108. relativeTime(num: number, withoutSuffix: boolean, str: 'future' | 'past', isFuture: boolean): string;
  109. pastFuture(diff: number, output: string): string;
  110. /** Months */
  111. months(): string[];
  112. months(date: Date, format?: string, isUTC?: boolean): string;
  113. monthsShort(): string[];
  114. monthsShort(date?: Date, format?: string, isUTC?: boolean): string;
  115. monthsParse(monthName: string, format?: string, strict?: boolean): number;
  116. monthsRegex(isStrict: boolean): RegExp;
  117. monthsShortRegex(isStrict: boolean): RegExp;
  118. /** Week */
  119. week(date: Date, isUTC?: boolean): number;
  120. firstDayOfWeek(): number;
  121. firstDayOfYear(): number;
  122. /** Day of Week */
  123. weekdays(): string[];
  124. weekdays(date: Date, format?: string, isUTC?: boolean): string;
  125. weekdaysMin(): string[];
  126. weekdaysMin(date: Date, format?: string, isUTC?: boolean): string;
  127. weekdaysShort(): string[];
  128. weekdaysShort(date: Date, format?: string, isUTC?: boolean): string;
  129. weekdaysParse(weekdayName?: string, format?: string, strict?: boolean): number;
  130. weekdaysRegex(isStrict: boolean): RegExp;
  131. weekdaysShortRegex(isStrict?: boolean): RegExp;
  132. weekdaysMinRegex(isStrict?: boolean): RegExp;
  133. isPM(input: string): boolean;
  134. meridiem(hours: number, minutes: number, isLower: boolean): string;
  135. formatLongDate(key: string): string;
  136. private handleMonthStrictParse;
  137. private handleWeekStrictParse;
  138. private computeMonthsParse;
  139. private computeWeekdaysParse;
  140. }