cscg24-guacamole

CSCG 2024 Challenge 'Guacamole Mashup'
git clone https://git.sinitax.com/sinitax/cscg24-guacamole
Log | Files | Refs | sfeed.txt

moment.d.ts (23327B)


      1/**
      2 * @param strict Strict parsing disables the deprecated fallback to the native Date constructor when
      3 * parsing a string.
      4 */
      5declare function moment(inp?: moment.MomentInput, strict?: boolean): moment.Moment;
      6/**
      7 * @param strict Strict parsing requires that the format and input match exactly, including delimiters.
      8 * Strict parsing is frequently the best parsing option. For more information about choosing strict vs
      9 * forgiving parsing, see the [parsing guide](https://momentjs.com/guides/#/parsing/).
     10 */
     11declare function moment(inp?: moment.MomentInput, format?: moment.MomentFormatSpecification, strict?: boolean): moment.Moment;
     12/**
     13 * @param strict Strict parsing requires that the format and input match exactly, including delimiters.
     14 * Strict parsing is frequently the best parsing option. For more information about choosing strict vs
     15 * forgiving parsing, see the [parsing guide](https://momentjs.com/guides/#/parsing/).
     16 */
     17declare function moment(inp?: moment.MomentInput, format?: moment.MomentFormatSpecification, language?: string, strict?: boolean): moment.Moment;
     18
     19declare namespace moment {
     20  type RelativeTimeKey = 's' | 'ss' | 'm' | 'mm' | 'h' | 'hh' | 'd' | 'dd' | 'w' | 'ww' | 'M' | 'MM' | 'y' | 'yy';
     21  type CalendarKey = 'sameDay' | 'nextDay' | 'lastDay' | 'nextWeek' | 'lastWeek' | 'sameElse' | string;
     22  type LongDateFormatKey = 'LTS' | 'LT' | 'L' | 'LL' | 'LLL' | 'LLLL' | 'lts' | 'lt' | 'l' | 'll' | 'lll' | 'llll';
     23
     24  interface Locale {
     25    calendar(key?: CalendarKey, m?: Moment, now?: Moment): string;
     26
     27    longDateFormat(key: LongDateFormatKey): string;
     28    invalidDate(): string;
     29    ordinal(n: number): string;
     30
     31    preparse(inp: string): string;
     32    postformat(inp: string): string;
     33    relativeTime(n: number, withoutSuffix: boolean,
     34                 key: RelativeTimeKey, isFuture: boolean): string;
     35    pastFuture(diff: number, absRelTime: string): string;
     36    set(config: Object): void;
     37
     38    months(): string[];
     39    months(m: Moment, format?: string): string;
     40    monthsShort(): string[];
     41    monthsShort(m: Moment, format?: string): string;
     42    monthsParse(monthName: string, format: string, strict: boolean): number;
     43    monthsRegex(strict: boolean): RegExp;
     44    monthsShortRegex(strict: boolean): RegExp;
     45
     46    week(m: Moment): number;
     47    firstDayOfYear(): number;
     48    firstDayOfWeek(): number;
     49
     50    weekdays(): string[];
     51    weekdays(m: Moment, format?: string): string;
     52    weekdaysMin(): string[];
     53    weekdaysMin(m: Moment): string;
     54    weekdaysShort(): string[];
     55    weekdaysShort(m: Moment): string;
     56    weekdaysParse(weekdayName: string, format: string, strict: boolean): number;
     57    weekdaysRegex(strict: boolean): RegExp;
     58    weekdaysShortRegex(strict: boolean): RegExp;
     59    weekdaysMinRegex(strict: boolean): RegExp;
     60
     61    isPM(input: string): boolean;
     62    meridiem(hour: number, minute: number, isLower: boolean): string;
     63  }
     64
     65  interface StandaloneFormatSpec {
     66    format: string[];
     67    standalone: string[];
     68    isFormat?: RegExp;
     69  }
     70
     71  interface WeekSpec {
     72    dow: number;
     73    doy?: number;
     74  }
     75
     76  type CalendarSpecVal = string | ((m?: MomentInput, now?: Moment) => string);
     77  interface CalendarSpec {
     78    sameDay?: CalendarSpecVal;
     79    nextDay?: CalendarSpecVal;
     80    lastDay?: CalendarSpecVal;
     81    nextWeek?: CalendarSpecVal;
     82    lastWeek?: CalendarSpecVal;
     83    sameElse?: CalendarSpecVal;
     84
     85    // any additional properties might be used with moment.calendarFormat
     86    [x: string]: CalendarSpecVal | undefined;
     87  }
     88
     89  type RelativeTimeSpecVal = (
     90    string |
     91    ((n: number, withoutSuffix: boolean,
     92      key: RelativeTimeKey, isFuture: boolean) => string)
     93  );
     94  type RelativeTimeFuturePastVal = string | ((relTime: string) => string);
     95
     96  interface RelativeTimeSpec {
     97    future?: RelativeTimeFuturePastVal;
     98    past?: RelativeTimeFuturePastVal;
     99    s?: RelativeTimeSpecVal;
    100    ss?: RelativeTimeSpecVal;
    101    m?: RelativeTimeSpecVal;
    102    mm?: RelativeTimeSpecVal;
    103    h?: RelativeTimeSpecVal;
    104    hh?: RelativeTimeSpecVal;
    105    d?: RelativeTimeSpecVal;
    106    dd?: RelativeTimeSpecVal;
    107    w?: RelativeTimeSpecVal;
    108    ww?: RelativeTimeSpecVal;
    109    M?: RelativeTimeSpecVal;
    110    MM?: RelativeTimeSpecVal;
    111    y?: RelativeTimeSpecVal;
    112    yy?: RelativeTimeSpecVal;
    113  }
    114
    115  interface LongDateFormatSpec {
    116    LTS: string;
    117    LT: string;
    118    L: string;
    119    LL: string;
    120    LLL: string;
    121    LLLL: string;
    122
    123    // lets forget for a sec that any upper/lower permutation will also work
    124    lts?: string;
    125    lt?: string;
    126    l?: string;
    127    ll?: string;
    128    lll?: string;
    129    llll?: string;
    130  }
    131
    132  type MonthWeekdayFn = (momentToFormat: Moment, format?: string) => string;
    133  type WeekdaySimpleFn = (momentToFormat: Moment) => string;
    134
    135  interface LocaleSpecification {
    136    months?: string[] | StandaloneFormatSpec | MonthWeekdayFn;
    137    monthsShort?: string[] | StandaloneFormatSpec | MonthWeekdayFn;
    138
    139    weekdays?: string[] | StandaloneFormatSpec | MonthWeekdayFn;
    140    weekdaysShort?: string[] | StandaloneFormatSpec | WeekdaySimpleFn;
    141    weekdaysMin?: string[] | StandaloneFormatSpec | WeekdaySimpleFn;
    142
    143    meridiemParse?: RegExp;
    144    meridiem?: (hour: number, minute:number, isLower: boolean) => string;
    145
    146    isPM?: (input: string) => boolean;
    147
    148    longDateFormat?: LongDateFormatSpec;
    149    calendar?: CalendarSpec;
    150    relativeTime?: RelativeTimeSpec;
    151    invalidDate?: string;
    152    ordinal?: (n: number) => string;
    153    ordinalParse?: RegExp;
    154
    155    week?: WeekSpec;
    156
    157    // Allow anything: in general any property that is passed as locale spec is
    158    // put in the locale object so it can be used by locale functions
    159    [x: string]: any;
    160  }
    161
    162  interface MomentObjectOutput {
    163    years: number;
    164    /* One digit */
    165    months: number;
    166    /* Day of the month */
    167    date: number;
    168    hours: number;
    169    minutes: number;
    170    seconds: number;
    171    milliseconds: number;
    172  }
    173  interface argThresholdOpts {
    174    ss?: number;
    175    s?: number;
    176    m?: number;
    177    h?: number;
    178    d?: number;
    179    w?: number | null;
    180    M?: number;
    181  }
    182
    183  interface Duration {
    184    clone(): Duration;
    185
    186    humanize(argWithSuffix?: boolean, argThresholds?: argThresholdOpts): string;
    187    
    188    humanize(argThresholds?: argThresholdOpts): string;
    189
    190    abs(): Duration;
    191
    192    as(units: unitOfTime.Base): number;
    193    get(units: unitOfTime.Base): number;
    194
    195    milliseconds(): number;
    196    asMilliseconds(): number;
    197
    198    seconds(): number;
    199    asSeconds(): number;
    200
    201    minutes(): number;
    202    asMinutes(): number;
    203
    204    hours(): number;
    205    asHours(): number;
    206
    207    days(): number;
    208    asDays(): number;
    209
    210    weeks(): number;
    211    asWeeks(): number;
    212
    213    months(): number;
    214    asMonths(): number;
    215
    216    years(): number;
    217    asYears(): number;
    218
    219    add(inp?: DurationInputArg1, unit?: DurationInputArg2): Duration;
    220    subtract(inp?: DurationInputArg1, unit?: DurationInputArg2): Duration;
    221
    222    locale(): string;
    223    locale(locale: LocaleSpecifier): Duration;
    224    localeData(): Locale;
    225
    226    toISOString(): string;
    227    toJSON(): string;
    228
    229    isValid(): boolean;
    230
    231    /**
    232     * @deprecated since version 2.8.0
    233     */
    234    lang(locale: LocaleSpecifier): Moment;
    235    /**
    236     * @deprecated since version 2.8.0
    237     */
    238    lang(): Locale;
    239    /**
    240     * @deprecated
    241     */
    242    toIsoString(): string;
    243  }
    244
    245  interface MomentRelativeTime {
    246    future: any;
    247    past: any;
    248    s: any;
    249    ss: any;
    250    m: any;
    251    mm: any;
    252    h: any;
    253    hh: any;
    254    d: any;
    255    dd: any;
    256    M: any;
    257    MM: any;
    258    y: any;
    259    yy: any;
    260  }
    261
    262  interface MomentLongDateFormat {
    263    L: string;
    264    LL: string;
    265    LLL: string;
    266    LLLL: string;
    267    LT: string;
    268    LTS: string;
    269
    270    l?: string;
    271    ll?: string;
    272    lll?: string;
    273    llll?: string;
    274    lt?: string;
    275    lts?: string;
    276  }
    277
    278  interface MomentParsingFlags {
    279    empty: boolean;
    280    unusedTokens: string[];
    281    unusedInput: string[];
    282    overflow: number;
    283    charsLeftOver: number;
    284    nullInput: boolean;
    285    invalidMonth: string | null;
    286    invalidFormat: boolean;
    287    userInvalidated: boolean;
    288    iso: boolean;
    289    parsedDateParts: any[];
    290    meridiem: string | null;
    291  }
    292
    293  interface MomentParsingFlagsOpt {
    294    empty?: boolean;
    295    unusedTokens?: string[];
    296    unusedInput?: string[];
    297    overflow?: number;
    298    charsLeftOver?: number;
    299    nullInput?: boolean;
    300    invalidMonth?: string;
    301    invalidFormat?: boolean;
    302    userInvalidated?: boolean;
    303    iso?: boolean;
    304    parsedDateParts?: any[];
    305    meridiem?: string | null;
    306  }
    307
    308  interface MomentBuiltinFormat {
    309    __momentBuiltinFormatBrand: any;
    310  }
    311
    312  type MomentFormatSpecification = string | MomentBuiltinFormat | (string | MomentBuiltinFormat)[];
    313
    314  namespace unitOfTime {
    315    type Base = (
    316      "year" | "years" | "y" |
    317      "month" | "months" | "M" |
    318      "week" | "weeks" | "w" |
    319      "day" | "days" | "d" |
    320      "hour" | "hours" | "h" |
    321      "minute" | "minutes" | "m" |
    322      "second" | "seconds" | "s" |
    323      "millisecond" | "milliseconds" | "ms"
    324    );
    325
    326    type _quarter = "quarter" | "quarters" | "Q";
    327    type _isoWeek = "isoWeek" | "isoWeeks" | "W";
    328    type _date = "date" | "dates" | "D";
    329    type DurationConstructor = Base | _quarter;
    330
    331    type DurationAs = Base;
    332
    333    type StartOf = Base | _quarter | _isoWeek | _date | null;
    334
    335    type Diff = Base | _quarter;
    336
    337    type MomentConstructor = Base | _date;
    338
    339    type All = Base | _quarter | _isoWeek | _date |
    340      "weekYear" | "weekYears" | "gg" |
    341      "isoWeekYear" | "isoWeekYears" | "GG" |
    342      "dayOfYear" | "dayOfYears" | "DDD" |
    343      "weekday" | "weekdays" | "e" |
    344      "isoWeekday" | "isoWeekdays" | "E";
    345  }
    346
    347  interface MomentInputObject {
    348    years?: number;
    349    year?: number;
    350    y?: number;
    351
    352    months?: number;
    353    month?: number;
    354    M?: number;
    355
    356    days?: number;
    357    day?: number;
    358    d?: number;
    359
    360    dates?: number;
    361    date?: number;
    362    D?: number;
    363
    364    hours?: number;
    365    hour?: number;
    366    h?: number;
    367
    368    minutes?: number;
    369    minute?: number;
    370    m?: number;
    371
    372    seconds?: number;
    373    second?: number;
    374    s?: number;
    375
    376    milliseconds?: number;
    377    millisecond?: number;
    378    ms?: number;
    379  }
    380
    381  interface DurationInputObject extends MomentInputObject {
    382    quarters?: number;
    383    quarter?: number;
    384    Q?: number;
    385
    386    weeks?: number;
    387    week?: number;
    388    w?: number;
    389  }
    390
    391  interface MomentSetObject extends MomentInputObject {
    392    weekYears?: number;
    393    weekYear?: number;
    394    gg?: number;
    395
    396    isoWeekYears?: number;
    397    isoWeekYear?: number;
    398    GG?: number;
    399
    400    quarters?: number;
    401    quarter?: number;
    402    Q?: number;
    403
    404    weeks?: number;
    405    week?: number;
    406    w?: number;
    407
    408    isoWeeks?: number;
    409    isoWeek?: number;
    410    W?: number;
    411
    412    dayOfYears?: number;
    413    dayOfYear?: number;
    414    DDD?: number;
    415
    416    weekdays?: number;
    417    weekday?: number;
    418    e?: number;
    419
    420    isoWeekdays?: number;
    421    isoWeekday?: number;
    422    E?: number;
    423  }
    424
    425  interface FromTo {
    426    from: MomentInput;
    427    to: MomentInput;
    428  }
    429
    430  type MomentInput = Moment | Date | string | number | (number | string)[] | MomentInputObject | null | undefined;
    431  type DurationInputArg1 = Duration | number | string | FromTo | DurationInputObject | null | undefined;
    432  type DurationInputArg2 = unitOfTime.DurationConstructor;
    433  type LocaleSpecifier = string | Moment | Duration | string[] | boolean;
    434
    435  interface MomentCreationData {
    436    input: MomentInput;
    437    format?: MomentFormatSpecification;
    438    locale: Locale;
    439    isUTC: boolean;
    440    strict?: boolean;
    441  }
    442
    443  interface Moment extends Object {
    444    format(format?: string): string;
    445
    446    startOf(unitOfTime: unitOfTime.StartOf): Moment;
    447    endOf(unitOfTime: unitOfTime.StartOf): Moment;
    448
    449    add(amount?: DurationInputArg1, unit?: DurationInputArg2): Moment;
    450    /**
    451     * @deprecated reverse syntax
    452     */
    453    add(unit: unitOfTime.DurationConstructor, amount: number|string): Moment;
    454
    455    subtract(amount?: DurationInputArg1, unit?: DurationInputArg2): Moment;
    456    /**
    457     * @deprecated reverse syntax
    458     */
    459    subtract(unit: unitOfTime.DurationConstructor, amount: number|string): Moment;
    460
    461    calendar(): string;
    462    calendar(formats: CalendarSpec): string;
    463    calendar(time?: MomentInput, formats?: CalendarSpec): string;
    464
    465    clone(): Moment;
    466
    467    /**
    468     * @return Unix timestamp in milliseconds
    469     */
    470    valueOf(): number;
    471
    472    // current date/time in local mode
    473    local(keepLocalTime?: boolean): Moment;
    474    isLocal(): boolean;
    475
    476    // current date/time in UTC mode
    477    utc(keepLocalTime?: boolean): Moment;
    478    isUTC(): boolean;
    479    /**
    480     * @deprecated use isUTC
    481     */
    482    isUtc(): boolean;
    483
    484    parseZone(): Moment;
    485    isValid(): boolean;
    486    invalidAt(): number;
    487
    488    hasAlignedHourOffset(other?: MomentInput): boolean;
    489
    490    creationData(): MomentCreationData;
    491    parsingFlags(): MomentParsingFlags;
    492
    493    year(y: number): Moment;
    494    year(): number;
    495    /**
    496     * @deprecated use year(y)
    497     */
    498    years(y: number): Moment;
    499    /**
    500     * @deprecated use year()
    501     */
    502    years(): number;
    503    quarter(): number;
    504    quarter(q: number): Moment;
    505    quarters(): number;
    506    quarters(q: number): Moment;
    507    month(M: number|string): Moment;
    508    month(): number;
    509    /**
    510     * @deprecated use month(M)
    511     */
    512    months(M: number|string): Moment;
    513    /**
    514     * @deprecated use month()
    515     */
    516    months(): number;
    517    day(d: number|string): Moment;
    518    day(): number;
    519    days(d: number|string): Moment;
    520    days(): number;
    521    date(d: number): Moment;
    522    date(): number;
    523    /**
    524     * @deprecated use date(d)
    525     */
    526    dates(d: number): Moment;
    527    /**
    528     * @deprecated use date()
    529     */
    530    dates(): number;
    531    hour(h: number): Moment;
    532    hour(): number;
    533    hours(h: number): Moment;
    534    hours(): number;
    535    minute(m: number): Moment;
    536    minute(): number;
    537    minutes(m: number): Moment;
    538    minutes(): number;
    539    second(s: number): Moment;
    540    second(): number;
    541    seconds(s: number): Moment;
    542    seconds(): number;
    543    millisecond(ms: number): Moment;
    544    millisecond(): number;
    545    milliseconds(ms: number): Moment;
    546    milliseconds(): number;
    547    weekday(): number;
    548    weekday(d: number): Moment;
    549    isoWeekday(): number;
    550    isoWeekday(d: number|string): Moment;
    551    weekYear(): number;
    552    weekYear(d: number): Moment;
    553    isoWeekYear(): number;
    554    isoWeekYear(d: number): Moment;
    555    week(): number;
    556    week(d: number): Moment;
    557    weeks(): number;
    558    weeks(d: number): Moment;
    559    isoWeek(): number;
    560    isoWeek(d: number): Moment;
    561    isoWeeks(): number;
    562    isoWeeks(d: number): Moment;
    563    weeksInYear(): number;
    564    isoWeeksInYear(): number;
    565    isoWeeksInISOWeekYear(): number;
    566    dayOfYear(): number;
    567    dayOfYear(d: number): Moment;
    568
    569    from(inp: MomentInput, suffix?: boolean): string;
    570    to(inp: MomentInput, suffix?: boolean): string;
    571    fromNow(withoutSuffix?: boolean): string;
    572    toNow(withoutPrefix?: boolean): string;
    573
    574    diff(b: MomentInput, unitOfTime?: unitOfTime.Diff, precise?: boolean): number;
    575
    576    toArray(): [number, number, number, number, number, number, number];
    577    toDate(): Date;
    578    toISOString(keepOffset?: boolean): string;
    579    inspect(): string;
    580    toJSON(): string;
    581    unix(): number;
    582
    583    isLeapYear(): boolean;
    584    /**
    585     * @deprecated in favor of utcOffset
    586     */
    587    zone(): number;
    588    zone(b: number|string): Moment;
    589    utcOffset(): number;
    590    utcOffset(b: number|string, keepLocalTime?: boolean): Moment;
    591    isUtcOffset(): boolean;
    592    daysInMonth(): number;
    593    isDST(): boolean;
    594
    595    zoneAbbr(): string;
    596    zoneName(): string;
    597
    598    isBefore(inp?: MomentInput, granularity?: unitOfTime.StartOf): boolean;
    599    isAfter(inp?: MomentInput, granularity?: unitOfTime.StartOf): boolean;
    600    isSame(inp?: MomentInput, granularity?: unitOfTime.StartOf): boolean;
    601    isSameOrAfter(inp?: MomentInput, granularity?: unitOfTime.StartOf): boolean;
    602    isSameOrBefore(inp?: MomentInput, granularity?: unitOfTime.StartOf): boolean;
    603    isBetween(a: MomentInput, b: MomentInput, granularity?: unitOfTime.StartOf, inclusivity?: "()" | "[)" | "(]" | "[]"): boolean;
    604
    605    /**
    606     * @deprecated as of 2.8.0, use locale
    607     */
    608    lang(language: LocaleSpecifier): Moment;
    609    /**
    610     * @deprecated as of 2.8.0, use locale
    611     */
    612    lang(): Locale;
    613
    614    locale(): string;
    615    locale(locale: LocaleSpecifier): Moment;
    616
    617    localeData(): Locale;
    618
    619    /**
    620     * @deprecated no reliable implementation
    621     */
    622    isDSTShifted(): boolean;
    623
    624    // NOTE(constructor): Same as moment constructor
    625    /**
    626     * @deprecated as of 2.7.0, use moment.min/max
    627     */
    628    max(inp?: MomentInput, format?: MomentFormatSpecification, strict?: boolean): Moment;
    629    /**
    630     * @deprecated as of 2.7.0, use moment.min/max
    631     */
    632    max(inp?: MomentInput, format?: MomentFormatSpecification, language?: string, strict?: boolean): Moment;
    633
    634    // NOTE(constructor): Same as moment constructor
    635    /**
    636     * @deprecated as of 2.7.0, use moment.min/max
    637     */
    638    min(inp?: MomentInput, format?: MomentFormatSpecification, strict?: boolean): Moment;
    639    /**
    640     * @deprecated as of 2.7.0, use moment.min/max
    641     */
    642    min(inp?: MomentInput, format?: MomentFormatSpecification, language?: string, strict?: boolean): Moment;
    643
    644    get(unit: unitOfTime.All): number;
    645    set(unit: unitOfTime.All, value: number): Moment;
    646    set(objectLiteral: MomentSetObject): Moment;
    647
    648    toObject(): MomentObjectOutput;
    649  }
    650
    651  export var version: string;
    652  export var fn: Moment;
    653
    654  // NOTE(constructor): Same as moment constructor
    655  /**
    656   * @param strict Strict parsing disables the deprecated fallback to the native Date constructor when
    657   * parsing a string.
    658   */
    659  export function utc(inp?: MomentInput, strict?: boolean): Moment;
    660  /**
    661   * @param strict Strict parsing requires that the format and input match exactly, including delimiters.
    662   * Strict parsing is frequently the best parsing option. For more information about choosing strict vs
    663   * forgiving parsing, see the [parsing guide](https://momentjs.com/guides/#/parsing/).
    664   */
    665  export function utc(inp?: MomentInput, format?: MomentFormatSpecification, strict?: boolean): Moment;
    666  /**
    667   * @param strict Strict parsing requires that the format and input match exactly, including delimiters.
    668   * Strict parsing is frequently the best parsing option. For more information about choosing strict vs
    669   * forgiving parsing, see the [parsing guide](https://momentjs.com/guides/#/parsing/).
    670   */
    671  export function utc(inp?: MomentInput, format?: MomentFormatSpecification, language?: string, strict?: boolean): Moment;
    672
    673  export function unix(timestamp: number): Moment;
    674
    675  export function invalid(flags?: MomentParsingFlagsOpt): Moment;
    676  export function isMoment(m: any): m is Moment;
    677  export function isDate(m: any): m is Date;
    678  export function isDuration(d: any): d is Duration;
    679
    680  /**
    681   * @deprecated in 2.8.0
    682   */
    683  export function lang(language?: string): string;
    684  /**
    685   * @deprecated in 2.8.0
    686   */
    687  export function lang(language?: string, definition?: Locale): string;
    688
    689  export function locale(language?: string): string;
    690  export function locale(language?: string[]): string;
    691  export function locale(language?: string, definition?: LocaleSpecification | null | undefined): string;
    692
    693  export function localeData(key?: string | string[]): Locale;
    694
    695  export function duration(inp?: DurationInputArg1, unit?: DurationInputArg2): Duration;
    696
    697  // NOTE(constructor): Same as moment constructor
    698  export function parseZone(inp?: MomentInput, format?: MomentFormatSpecification, strict?: boolean): Moment;
    699  export function parseZone(inp?: MomentInput, format?: MomentFormatSpecification, language?: string, strict?: boolean): Moment;
    700
    701  export function months(): string[];
    702  export function months(index: number): string;
    703  export function months(format: string): string[];
    704  export function months(format: string, index: number): string;
    705  export function monthsShort(): string[];
    706  export function monthsShort(index: number): string;
    707  export function monthsShort(format: string): string[];
    708  export function monthsShort(format: string, index: number): string;
    709
    710  export function weekdays(): string[];
    711  export function weekdays(index: number): string;
    712  export function weekdays(format: string): string[];
    713  export function weekdays(format: string, index: number): string;
    714  export function weekdays(localeSorted: boolean): string[];
    715  export function weekdays(localeSorted: boolean, index: number): string;
    716  export function weekdays(localeSorted: boolean, format: string): string[];
    717  export function weekdays(localeSorted: boolean, format: string, index: number): string;
    718  export function weekdaysShort(): string[];
    719  export function weekdaysShort(index: number): string;
    720  export function weekdaysShort(format: string): string[];
    721  export function weekdaysShort(format: string, index: number): string;
    722  export function weekdaysShort(localeSorted: boolean): string[];
    723  export function weekdaysShort(localeSorted: boolean, index: number): string;
    724  export function weekdaysShort(localeSorted: boolean, format: string): string[];
    725  export function weekdaysShort(localeSorted: boolean, format: string, index: number): string;
    726  export function weekdaysMin(): string[];
    727  export function weekdaysMin(index: number): string;
    728  export function weekdaysMin(format: string): string[];
    729  export function weekdaysMin(format: string, index: number): string;
    730  export function weekdaysMin(localeSorted: boolean): string[];
    731  export function weekdaysMin(localeSorted: boolean, index: number): string;
    732  export function weekdaysMin(localeSorted: boolean, format: string): string[];
    733  export function weekdaysMin(localeSorted: boolean, format: string, index: number): string;
    734
    735  export function min(moments: Moment[]): Moment;
    736  export function min(...moments: Moment[]): Moment;
    737  export function max(moments: Moment[]): Moment;
    738  export function max(...moments: Moment[]): Moment;
    739
    740  /**
    741   * Returns unix time in milliseconds. Overwrite for profit.
    742   */
    743  export function now(): number;
    744
    745  export function defineLocale(language: string, localeSpec: LocaleSpecification | null): Locale;
    746  export function updateLocale(language: string, localeSpec: LocaleSpecification | null): Locale;
    747
    748  export function locales(): string[];
    749
    750  export function normalizeUnits(unit: unitOfTime.All): string;
    751  export function relativeTimeThreshold(threshold: string): number | boolean;
    752  export function relativeTimeThreshold(threshold: string, limit: number): boolean;
    753  export function relativeTimeRounding(fn: (num: number) => number): boolean;
    754  export function relativeTimeRounding(): (num: number) => number;
    755  export function calendarFormat(m: Moment, now: Moment): string;
    756
    757  export function parseTwoDigitYear(input: string): number;
    758  /**
    759   * Constant used to enable explicit ISO_8601 format parsing.
    760   */
    761  export var ISO_8601: MomentBuiltinFormat;
    762  export var RFC_2822: MomentBuiltinFormat;
    763
    764  export var defaultFormat: string;
    765  export var defaultFormatUtc: string;
    766
    767  export var suppressDeprecationWarnings: boolean;
    768  export var deprecationHandler: ((name: string | null, msg: string) => void) | null | undefined;
    769
    770  export var HTML5_FMT: {
    771    DATETIME_LOCAL: string,
    772    DATETIME_LOCAL_SECONDS: string,
    773    DATETIME_LOCAL_MS: string,
    774    DATE: string,
    775    TIME: string,
    776    TIME_SECONDS: string,
    777    TIME_MS: string,
    778    WEEK: string,
    779    MONTH: string
    780  };
    781
    782}
    783
    784export = moment;
    785export as namespace moment;