index.js.flow 1.29 KB
// @flow
// This file is generated automatically by `scripts/build/typings.js`. Please, don't change it.

type Interval = {
  start: Date | number,
  end: Date | number
}

type Options = {
  weekStartsOn?: 0 | 1 | 2 | 3 | 4 | 5 | 6,
  firstWeekContainsDate?: 1 | 2 | 3 | 4 | 5 | 6 | 7,
  additionalDigits?: 0 | 1 | 2,
  locale?: Locale,
  includeSeconds?: boolean,
  addSuffix?: boolean,
  unit?: 'second' | 'minute' | 'hour' | 'day' | 'month' | 'year',
  roundingMethod?: 'floor' | 'ceil' | 'round',
  awareOfUnicodeTokens?: boolean,
  step?: number
}

type Locale = {
  formatDistance: Function,
  formatRelative: Function,
  localize: {
    ordinalNumber: Function,
    era: Function,
    quarter: Function,
    month: Function,
    day: Function,
    dayPeriod: Function
  },
  formatLong: Object,
  date: Function,
  time: Function,
  dateTime: Function,
  match: {
    ordinalNumber: Function,
    era: Function,
    quarter: Function,
    month: Function,
    day: Function,
    dayPeriod: Function
  },
  options?: {
    weekStartsOn?: 0 | 1 | 2 | 3 | 4 | 5 | 6,
    firstWeekContainsDate?: 1 | 2 | 3 | 4 | 5 | 6 | 7
  }
}

type CurriedFn1<A, R> = <A>(a: A) => R

type CurriedFn2<A, B, R> = <A>(
  a: A
) => CurriedFn1<B, R> | (<A, B>(a: A, b: B) => R)

declare module.exports: CurriedFn2<Options, any, boolean>