index.js.flow 18 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595
  1. // @flow
  2. // This file is generated automatically by `scripts/build/typings.js`. Please, don't change it.
  3. export type Interval = {
  4. start: Date | number,
  5. end: Date | number,
  6. }
  7. export type Locale = {
  8. code?: string,
  9. formatDistance?: (...args: Array<any>) => any,
  10. formatRelative?: (...args: Array<any>) => any,
  11. localize?: {
  12. ordinalNumber: (...args: Array<any>) => any,
  13. era: (...args: Array<any>) => any,
  14. quarter: (...args: Array<any>) => any,
  15. month: (...args: Array<any>) => any,
  16. day: (...args: Array<any>) => any,
  17. dayPeriod: (...args: Array<any>) => any,
  18. },
  19. formatLong?: {
  20. date: (...args: Array<any>) => any,
  21. time: (...args: Array<any>) => any,
  22. dateTime: (...args: Array<any>) => any,
  23. },
  24. match?: {
  25. ordinalNumber: (...args: Array<any>) => any,
  26. era: (...args: Array<any>) => any,
  27. quarter: (...args: Array<any>) => any,
  28. month: (...args: Array<any>) => any,
  29. day: (...args: Array<any>) => any,
  30. dayPeriod: (...args: Array<any>) => any,
  31. },
  32. options?: {
  33. weekStartsOn?: 0 | 1 | 2 | 3 | 4 | 5 | 6,
  34. firstWeekContainsDate?: 1 | 2 | 3 | 4 | 5 | 6 | 7,
  35. },
  36. }
  37. export type Duration = {
  38. years?: number,
  39. months?: number,
  40. weeks?: number,
  41. days?: number,
  42. hours?: number,
  43. minutes?: number,
  44. seconds?: number,
  45. }
  46. export type Day = 0 | 1 | 2 | 3 | 4 | 5 | 6
  47. type CurriedFn1<A, R> = <A>(a: A) => R
  48. type CurriedFn2<A, B, R> = <A>(
  49. a: A
  50. ) => CurriedFn1<B, R> | (<A, B>(a: A, b: B) => R)
  51. type CurriedFn3<A, B, C, R> = <A>(
  52. a: A
  53. ) =>
  54. | CurriedFn2<B, C, R>
  55. | (<A, B>(
  56. a: A,
  57. b: B
  58. ) => CurriedFn1<C, R> | (<A, B, C>(a: A, b: B, c: C) => R))
  59. type CurriedFn4<A, B, C, D, R> = <A>(
  60. a: A
  61. ) =>
  62. | CurriedFn3<B, C, D, R>
  63. | (<A, B>(
  64. a: A,
  65. b: B
  66. ) =>
  67. | CurriedFn2<C, D, R>
  68. | (<A, B, C>(
  69. a: A,
  70. b: B,
  71. c: C
  72. ) => CurriedFn1<D, R> | (<A, B, C, D>(a: A, b: B, c: C, d: D) => R)))
  73. declare module.exports: {
  74. add: CurriedFn2<Duration, Date | number, Date>,
  75. addBusinessDays: CurriedFn2<number, Date | number, Date>,
  76. addDays: CurriedFn2<number, Date | number, Date>,
  77. addHours: CurriedFn2<number, Date | number, Date>,
  78. addISOWeekYears: CurriedFn2<number, Date | number, Date>,
  79. addMilliseconds: CurriedFn2<number, Date | number, Date>,
  80. addMinutes: CurriedFn2<number, Date | number, Date>,
  81. addMonths: CurriedFn2<number, Date | number, Date>,
  82. addQuarters: CurriedFn2<number, Date | number, Date>,
  83. addSeconds: CurriedFn2<number, Date | number, Date>,
  84. addWeeks: CurriedFn2<number, Date | number, Date>,
  85. addYears: CurriedFn2<number, Date | number, Date>,
  86. areIntervalsOverlapping: CurriedFn2<Interval, Interval, boolean>,
  87. areIntervalsOverlappingWithOptions: CurriedFn3<
  88. {
  89. inclusive?: boolean,
  90. },
  91. Interval,
  92. Interval,
  93. boolean
  94. >,
  95. closestIndexTo: CurriedFn2<(Date | number)[], Date | number, number>,
  96. closestTo: CurriedFn2<(Date | number)[], Date | number, Date>,
  97. compareAsc: CurriedFn2<Date | number, Date | number, number>,
  98. compareDesc: CurriedFn2<Date | number, Date | number, number>,
  99. differenceInBusinessDays: CurriedFn2<Date | number, Date | number, number>,
  100. differenceInCalendarDays: CurriedFn2<Date | number, Date | number, number>,
  101. differenceInCalendarISOWeeks: CurriedFn2<
  102. Date | number,
  103. Date | number,
  104. number
  105. >,
  106. differenceInCalendarISOWeekYears: CurriedFn2<
  107. Date | number,
  108. Date | number,
  109. number
  110. >,
  111. differenceInCalendarMonths: CurriedFn2<Date | number, Date | number, number>,
  112. differenceInCalendarQuarters: CurriedFn2<
  113. Date | number,
  114. Date | number,
  115. number
  116. >,
  117. differenceInCalendarWeeks: CurriedFn2<Date | number, Date | number, number>,
  118. differenceInCalendarWeeksWithOptions: CurriedFn3<
  119. {
  120. weekStartsOn?: 0 | 1 | 2 | 3 | 4 | 5 | 6,
  121. locale?: Locale,
  122. },
  123. Date | number,
  124. Date | number,
  125. number
  126. >,
  127. differenceInCalendarYears: CurriedFn2<Date | number, Date | number, number>,
  128. differenceInDays: CurriedFn2<Date | number, Date | number, number>,
  129. differenceInHours: CurriedFn2<Date | number, Date | number, number>,
  130. differenceInISOWeekYears: CurriedFn2<Date | number, Date | number, number>,
  131. differenceInMilliseconds: CurriedFn2<Date | number, Date | number, number>,
  132. differenceInMinutes: CurriedFn2<Date | number, Date | number, number>,
  133. differenceInMonths: CurriedFn2<Date | number, Date | number, number>,
  134. differenceInQuarters: CurriedFn2<Date | number, Date | number, number>,
  135. differenceInSeconds: CurriedFn2<Date | number, Date | number, number>,
  136. differenceInWeeks: CurriedFn2<Date | number, Date | number, number>,
  137. differenceInYears: CurriedFn2<Date | number, Date | number, number>,
  138. eachDayOfInterval: CurriedFn1<Interval, Date[]>,
  139. eachDayOfIntervalWithOptions: CurriedFn2<
  140. {
  141. step?: number,
  142. },
  143. Interval,
  144. Date[]
  145. >,
  146. eachHourOfInterval: CurriedFn1<Interval, Date[]>,
  147. eachHourOfIntervalWithOptions: CurriedFn2<
  148. {
  149. step?: number,
  150. },
  151. Interval,
  152. Date[]
  153. >,
  154. eachMinuteOfInterval: CurriedFn1<Interval, Date[]>,
  155. eachMinuteOfIntervalWithOptions: CurriedFn2<
  156. {
  157. step?: number,
  158. },
  159. Interval,
  160. Date[]
  161. >,
  162. eachMonthOfInterval: CurriedFn1<Interval, Date[]>,
  163. eachQuarterOfInterval: CurriedFn1<Interval, Date[]>,
  164. eachWeekendOfInterval: CurriedFn1<Interval, Date[]>,
  165. eachWeekendOfMonth: CurriedFn1<Date | number, Date[]>,
  166. eachWeekendOfYear: CurriedFn1<Date | number, Date[]>,
  167. eachWeekOfInterval: CurriedFn1<Interval, Date[]>,
  168. eachWeekOfIntervalWithOptions: CurriedFn2<
  169. {
  170. weekStartsOn?: 0 | 1 | 2 | 3 | 4 | 5 | 6,
  171. locale?: Locale,
  172. },
  173. Interval,
  174. Date[]
  175. >,
  176. eachYearOfInterval: CurriedFn1<Interval, Date[]>,
  177. endOfDay: CurriedFn1<Date | number, Date>,
  178. endOfDecade: CurriedFn1<Date | number, Date>,
  179. endOfDecadeWithOptions: CurriedFn2<
  180. {
  181. additionalDigits?: 0 | 1 | 2,
  182. },
  183. Date | number,
  184. Date
  185. >,
  186. endOfHour: CurriedFn1<Date | number, Date>,
  187. endOfISOWeek: CurriedFn1<Date | number, Date>,
  188. endOfISOWeekYear: CurriedFn1<Date | number, Date>,
  189. endOfMinute: CurriedFn1<Date | number, Date>,
  190. endOfMonth: CurriedFn1<Date | number, Date>,
  191. endOfQuarter: CurriedFn1<Date | number, Date>,
  192. endOfSecond: CurriedFn1<Date | number, Date>,
  193. endOfWeek: CurriedFn1<Date | number, Date>,
  194. endOfWeekWithOptions: CurriedFn2<
  195. {
  196. weekStartsOn?: 0 | 1 | 2 | 3 | 4 | 5 | 6,
  197. locale?: Locale,
  198. },
  199. Date | number,
  200. Date
  201. >,
  202. endOfYear: CurriedFn1<Date | number, Date>,
  203. format: CurriedFn2<string, Date | number, string>,
  204. formatDistance: CurriedFn2<Date | number, Date | number, string>,
  205. formatDistanceStrict: CurriedFn2<Date | number, Date | number, string>,
  206. formatDistanceStrictWithOptions: CurriedFn3<
  207. {
  208. locale?: Locale,
  209. roundingMethod?: 'floor' | 'ceil' | 'round',
  210. unit?: 'second' | 'minute' | 'hour' | 'day' | 'month' | 'year',
  211. addSuffix?: boolean,
  212. },
  213. Date | number,
  214. Date | number,
  215. string
  216. >,
  217. formatDistanceWithOptions: CurriedFn3<
  218. {
  219. locale?: Locale,
  220. addSuffix?: boolean,
  221. includeSeconds?: boolean,
  222. },
  223. Date | number,
  224. Date | number,
  225. string
  226. >,
  227. formatDuration: CurriedFn1<Duration, string>,
  228. formatDurationWithOptions: CurriedFn2<
  229. {
  230. locale?: Locale,
  231. delimiter?: string,
  232. zero?: boolean,
  233. format?: string[],
  234. },
  235. Duration,
  236. string
  237. >,
  238. formatISO: CurriedFn1<Date | number, string>,
  239. formatISO9075: CurriedFn1<Date | number, string>,
  240. formatISO9075WithOptions: CurriedFn2<
  241. {
  242. representation?: 'complete' | 'date' | 'time',
  243. format?: 'extended' | 'basic',
  244. },
  245. Date | number,
  246. string
  247. >,
  248. formatISODuration: CurriedFn1<Duration, string>,
  249. formatISOWithOptions: CurriedFn2<
  250. {
  251. representation?: 'complete' | 'date' | 'time',
  252. format?: 'extended' | 'basic',
  253. },
  254. Date | number,
  255. string
  256. >,
  257. formatRelative: CurriedFn2<Date | number, Date | number, string>,
  258. formatRelativeWithOptions: CurriedFn3<
  259. {
  260. weekStartsOn?: 0 | 1 | 2 | 3 | 4 | 5 | 6,
  261. locale?: Locale,
  262. },
  263. Date | number,
  264. Date | number,
  265. string
  266. >,
  267. formatRFC3339: CurriedFn1<Date | number, string>,
  268. formatRFC3339WithOptions: CurriedFn2<
  269. {
  270. fractionDigits?: 0 | 1 | 2 | 3,
  271. },
  272. Date | number,
  273. string
  274. >,
  275. formatRFC7231: CurriedFn1<Date | number, string>,
  276. formatWithOptions: CurriedFn3<
  277. {
  278. useAdditionalDayOfYearTokens?: boolean,
  279. useAdditionalWeekYearTokens?: boolean,
  280. firstWeekContainsDate?: number,
  281. weekStartsOn?: 0 | 1 | 2 | 3 | 4 | 5 | 6,
  282. locale?: Locale,
  283. },
  284. string,
  285. Date | number,
  286. string
  287. >,
  288. fromUnixTime: CurriedFn1<number, Date>,
  289. getDate: CurriedFn1<Date | number, number>,
  290. getDay: CurriedFn1<Date | number, 0 | 1 | 2 | 3 | 4 | 5 | 6>,
  291. getDayOfYear: CurriedFn1<Date | number, number>,
  292. getDaysInMonth: CurriedFn1<Date | number, number>,
  293. getDaysInYear: CurriedFn1<Date | number, number>,
  294. getDecade: CurriedFn1<Date | number, number>,
  295. getHours: CurriedFn1<Date | number, number>,
  296. getISODay: CurriedFn1<Date | number, number>,
  297. getISOWeek: CurriedFn1<Date | number, number>,
  298. getISOWeeksInYear: CurriedFn1<Date | number, number>,
  299. getISOWeekYear: CurriedFn1<Date | number, number>,
  300. getMilliseconds: CurriedFn1<Date | number, number>,
  301. getMinutes: CurriedFn1<Date | number, number>,
  302. getMonth: CurriedFn1<Date | number, number>,
  303. getOverlappingDaysInIntervals: CurriedFn2<Interval, Interval, number>,
  304. getQuarter: CurriedFn1<Date | number, number>,
  305. getSeconds: CurriedFn1<Date | number, number>,
  306. getTime: CurriedFn1<Date | number, number>,
  307. getUnixTime: CurriedFn1<Date | number, number>,
  308. getWeek: CurriedFn1<Date | number, number>,
  309. getWeekOfMonth: CurriedFn1<Date | number, number>,
  310. getWeekOfMonthWithOptions: CurriedFn2<
  311. {
  312. weekStartsOn?: 0 | 1 | 2 | 3 | 4 | 5 | 6,
  313. locale?: Locale,
  314. },
  315. Date | number,
  316. number
  317. >,
  318. getWeeksInMonth: CurriedFn1<Date | number, number>,
  319. getWeeksInMonthWithOptions: CurriedFn2<
  320. {
  321. weekStartsOn?: 0 | 1 | 2 | 3 | 4 | 5 | 6,
  322. locale?: Locale,
  323. },
  324. Date | number,
  325. number
  326. >,
  327. getWeekWithOptions: CurriedFn2<
  328. {
  329. firstWeekContainsDate?: 1 | 2 | 3 | 4 | 5 | 6 | 7,
  330. weekStartsOn?: 0 | 1 | 2 | 3 | 4 | 5 | 6,
  331. locale?: Locale,
  332. },
  333. Date | number,
  334. number
  335. >,
  336. getWeekYear: CurriedFn1<Date | number, number>,
  337. getWeekYearWithOptions: CurriedFn2<
  338. {
  339. firstWeekContainsDate?: 1 | 2 | 3 | 4 | 5 | 6 | 7,
  340. weekStartsOn?: 0 | 1 | 2 | 3 | 4 | 5 | 6,
  341. locale?: Locale,
  342. },
  343. Date | number,
  344. number
  345. >,
  346. getYear: CurriedFn1<Date | number, number>,
  347. intervalToDuration: CurriedFn1<Interval, Duration>,
  348. intlFormat: CurriedFn3<
  349. {
  350. locale?: string | string[],
  351. },
  352. {
  353. timeZone?: string,
  354. hour12?: boolean,
  355. formatMatcher?: 'basic' | 'best fit',
  356. timeZoneName?: 'short' | 'long',
  357. second?: 'numeric' | '2-digit',
  358. minute?: 'numeric' | '2-digit',
  359. hour?: 'numeric' | '2-digit',
  360. day?: 'numeric' | '2-digit',
  361. month?: 'numeric' | '2-digit' | 'narrow' | 'short' | 'long',
  362. year?: 'numeric' | '2-digit',
  363. era?: 'narrow' | 'short' | 'long',
  364. weekday?: 'narrow' | 'short' | 'long',
  365. localeMatcher?: 'lookup' | 'best fit',
  366. },
  367. Date | number,
  368. string
  369. >,
  370. isAfter: CurriedFn2<Date | number, Date | number, boolean>,
  371. isBefore: CurriedFn2<Date | number, Date | number, boolean>,
  372. isDate: CurriedFn1<any, boolean>,
  373. isEqual: CurriedFn2<Date | number, Date | number, boolean>,
  374. isExists: CurriedFn3<number, number, number, boolean>,
  375. isFirstDayOfMonth: CurriedFn1<Date | number, boolean>,
  376. isFriday: CurriedFn1<Date | number, boolean>,
  377. isLastDayOfMonth: CurriedFn1<Date | number, boolean>,
  378. isLeapYear: CurriedFn1<Date | number, boolean>,
  379. isMatch: CurriedFn2<string, string, boolean>,
  380. isMatchWithOptions: CurriedFn3<
  381. {
  382. useAdditionalDayOfYearTokens?: boolean,
  383. useAdditionalWeekYearTokens?: boolean,
  384. firstWeekContainsDate?: 1 | 2 | 3 | 4 | 5 | 6 | 7,
  385. weekStartsOn?: 0 | 1 | 2 | 3 | 4 | 5 | 6,
  386. locale?: Locale,
  387. },
  388. string,
  389. string,
  390. boolean
  391. >,
  392. isMonday: CurriedFn1<Date | number, boolean>,
  393. isSameDay: CurriedFn2<Date | number, Date | number, boolean>,
  394. isSameHour: CurriedFn2<Date | number, Date | number, boolean>,
  395. isSameISOWeek: CurriedFn2<Date | number, Date | number, boolean>,
  396. isSameISOWeekYear: CurriedFn2<Date | number, Date | number, boolean>,
  397. isSameMinute: CurriedFn2<Date | number, Date | number, boolean>,
  398. isSameMonth: CurriedFn2<Date | number, Date | number, boolean>,
  399. isSameQuarter: CurriedFn2<Date | number, Date | number, boolean>,
  400. isSameSecond: CurriedFn2<Date | number, Date | number, boolean>,
  401. isSameWeek: CurriedFn2<Date | number, Date | number, boolean>,
  402. isSameWeekWithOptions: CurriedFn3<
  403. {
  404. weekStartsOn?: 0 | 1 | 2 | 3 | 4 | 5 | 6,
  405. locale?: Locale,
  406. },
  407. Date | number,
  408. Date | number,
  409. boolean
  410. >,
  411. isSameYear: CurriedFn2<Date | number, Date | number, boolean>,
  412. isSaturday: CurriedFn1<Date | number, boolean>,
  413. isSunday: CurriedFn1<Date | number, boolean>,
  414. isThursday: CurriedFn1<Date | number, boolean>,
  415. isTuesday: CurriedFn1<Date | number, boolean>,
  416. isValid: CurriedFn1<any, boolean>,
  417. isWednesday: CurriedFn1<Date | number, boolean>,
  418. isWeekend: CurriedFn1<Date | number, boolean>,
  419. isWithinInterval: CurriedFn2<Interval, Date | number, boolean>,
  420. lastDayOfDecade: CurriedFn1<Date | number, Date>,
  421. lastDayOfISOWeek: CurriedFn1<Date | number, Date>,
  422. lastDayOfISOWeekYear: CurriedFn1<Date | number, Date>,
  423. lastDayOfMonth: CurriedFn1<Date | number, Date>,
  424. lastDayOfQuarter: CurriedFn1<Date | number, Date>,
  425. lastDayOfQuarterWithOptions: CurriedFn2<
  426. {
  427. additionalDigits?: 0 | 1 | 2,
  428. },
  429. Date | number,
  430. Date
  431. >,
  432. lastDayOfWeek: CurriedFn1<Date | number, Date>,
  433. lastDayOfWeekWithOptions: CurriedFn2<
  434. {
  435. weekStartsOn?: 0 | 1 | 2 | 3 | 4 | 5 | 6,
  436. locale?: Locale,
  437. },
  438. Date | number,
  439. Date
  440. >,
  441. lastDayOfYear: CurriedFn1<Date | number, Date>,
  442. lightFormat: CurriedFn2<string, Date | number, string>,
  443. max: CurriedFn1<(Date | number)[], Date>,
  444. milliseconds: CurriedFn1<Duration, number>,
  445. min: CurriedFn1<(Date | number)[], Date>,
  446. nextDay: CurriedFn2<Day, Date | number, Date>,
  447. nextFriday: CurriedFn1<Date | number, Date>,
  448. nextMonday: CurriedFn1<Date | number, Date>,
  449. nextSaturday: CurriedFn1<Date | number, Date>,
  450. nextSunday: CurriedFn1<Date | number, Date>,
  451. nextThursday: CurriedFn1<Date | number, Date>,
  452. nextTuesday: CurriedFn1<Date | number, Date>,
  453. nextWednesday: CurriedFn1<Date | number, Date>,
  454. parse: CurriedFn3<Date | number, string, string, Date>,
  455. parseISO: CurriedFn1<string, Date>,
  456. parseISOWithOptions: CurriedFn2<
  457. {
  458. additionalDigits?: 0 | 1 | 2,
  459. },
  460. string,
  461. Date
  462. >,
  463. parseJSON: CurriedFn1<string | number | Date, Date>,
  464. parseWithOptions: CurriedFn4<
  465. {
  466. useAdditionalDayOfYearTokens?: boolean,
  467. useAdditionalWeekYearTokens?: boolean,
  468. firstWeekContainsDate?: 1 | 2 | 3 | 4 | 5 | 6 | 7,
  469. weekStartsOn?: 0 | 1 | 2 | 3 | 4 | 5 | 6,
  470. locale?: Locale,
  471. },
  472. Date | number,
  473. string,
  474. string,
  475. Date
  476. >,
  477. roundToNearestMinutes: CurriedFn1<Date | number, Date>,
  478. roundToNearestMinutesWithOptions: CurriedFn2<
  479. {
  480. nearestTo?: number,
  481. },
  482. Date | number,
  483. Date
  484. >,
  485. set: CurriedFn2<
  486. {
  487. milliseconds?: number,
  488. seconds?: number,
  489. minutes?: number,
  490. hours?: number,
  491. date?: number,
  492. month?: number,
  493. year?: number,
  494. },
  495. Date | number,
  496. Date
  497. >,
  498. setDate: CurriedFn2<number, Date | number, Date>,
  499. setDay: CurriedFn2<number, Date | number, Date>,
  500. setDayOfYear: CurriedFn2<number, Date | number, Date>,
  501. setDayWithOptions: CurriedFn3<
  502. {
  503. weekStartsOn?: 0 | 1 | 2 | 3 | 4 | 5 | 6,
  504. locale?: Locale,
  505. },
  506. number,
  507. Date | number,
  508. Date
  509. >,
  510. setHours: CurriedFn2<number, Date | number, Date>,
  511. setISODay: CurriedFn2<number, Date | number, Date>,
  512. setISOWeek: CurriedFn2<number, Date | number, Date>,
  513. setISOWeekYear: CurriedFn2<number, Date | number, Date>,
  514. setMilliseconds: CurriedFn2<number, Date | number, Date>,
  515. setMinutes: CurriedFn2<number, Date | number, Date>,
  516. setMonth: CurriedFn2<number, Date | number, Date>,
  517. setQuarter: CurriedFn2<number, Date | number, Date>,
  518. setSeconds: CurriedFn2<number, Date | number, Date>,
  519. setWeek: CurriedFn2<number, Date | number, Date>,
  520. setWeekWithOptions: CurriedFn3<
  521. {
  522. firstWeekContainsDate?: 1 | 2 | 3 | 4 | 5 | 6 | 7,
  523. weekStartsOn?: 0 | 1 | 2 | 3 | 4 | 5 | 6,
  524. locale?: Locale,
  525. },
  526. number,
  527. Date | number,
  528. Date
  529. >,
  530. setWeekYear: CurriedFn2<number, Date | number, Date>,
  531. setWeekYearWithOptions: CurriedFn3<
  532. {
  533. firstWeekContainsDate?: 1 | 2 | 3 | 4 | 5 | 6 | 7,
  534. weekStartsOn?: 0 | 1 | 2 | 3 | 4 | 5 | 6,
  535. locale?: Locale,
  536. },
  537. number,
  538. Date | number,
  539. Date
  540. >,
  541. setYear: CurriedFn2<number, Date | number, Date>,
  542. startOfDay: CurriedFn1<Date | number, Date>,
  543. startOfDecade: CurriedFn1<Date | number, Date>,
  544. startOfHour: CurriedFn1<Date | number, Date>,
  545. startOfISOWeek: CurriedFn1<Date | number, Date>,
  546. startOfISOWeekYear: CurriedFn1<Date | number, Date>,
  547. startOfMinute: CurriedFn1<Date | number, Date>,
  548. startOfMonth: CurriedFn1<Date | number, Date>,
  549. startOfQuarter: CurriedFn1<Date | number, Date>,
  550. startOfSecond: CurriedFn1<Date | number, Date>,
  551. startOfWeek: CurriedFn1<Date | number, Date>,
  552. startOfWeekWithOptions: CurriedFn2<
  553. {
  554. weekStartsOn?: 0 | 1 | 2 | 3 | 4 | 5 | 6,
  555. locale?: Locale,
  556. },
  557. Date | number,
  558. Date
  559. >,
  560. startOfWeekYear: CurriedFn1<Date | number, Date>,
  561. startOfWeekYearWithOptions: CurriedFn2<
  562. {
  563. firstWeekContainsDate?: 1 | 2 | 3 | 4 | 5 | 6 | 7,
  564. weekStartsOn?: 0 | 1 | 2 | 3 | 4 | 5 | 6,
  565. locale?: Locale,
  566. },
  567. Date | number,
  568. Date
  569. >,
  570. startOfYear: CurriedFn1<Date | number, Date>,
  571. sub: CurriedFn2<Duration, Date | number, Date>,
  572. subBusinessDays: CurriedFn2<number, Date | number, Date>,
  573. subDays: CurriedFn2<number, Date | number, Date>,
  574. subHours: CurriedFn2<number, Date | number, Date>,
  575. subISOWeekYears: CurriedFn2<number, Date | number, Date>,
  576. subMilliseconds: CurriedFn2<number, Date | number, Date>,
  577. subMinutes: CurriedFn2<number, Date | number, Date>,
  578. subMonths: CurriedFn2<number, Date | number, Date>,
  579. subQuarters: CurriedFn2<number, Date | number, Date>,
  580. subSeconds: CurriedFn2<number, Date | number, Date>,
  581. subWeeks: CurriedFn2<number, Date | number, Date>,
  582. subYears: CurriedFn2<number, Date | number, Date>,
  583. toDate: CurriedFn1<Date | number, Date>,
  584. maxTime: number,
  585. minTime: number,
  586. }