123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479 |
- // Type definitions for Moment.js 2.8.0
- // Project: https://github.com/timrwood/moment
- // Definitions by: Michael Lakerveld <https://github.com/Lakerfield>, Aaron King <https://github.com/kingdango>, Hiroki Horiuchi <https://github.com/horiuchi>, Dick van den Brink <https://github.com/DickvdBrink>, Adi Dahiya <https://github.com/adidahiya>, Matt Brooks <https://github.com/EnableSoftware>
- // Definitions: https://github.com/borisyankov/DefinitelyTyped
- declare module moment {
- interface MomentInput {
- /** Year */
- years?: number;
- /** Year */
- year?: number;
- /** Year */
- y?: number;
- /** Month */
- months?: number;
- /** Month */
- month?: number;
- /** Month */
- M?: number;
- /** Week */
- weeks?: number;
- /** Week */
- week?: number;
- /** Week */
- w?: number;
- /** Day/Date */
- days?: number;
- /** Day/Date */
- day?: number;
- /** Day/Date */
- date?: number;
- /** Day/Date */
- d?: number;
- /** Hour */
- hours?: number;
- /** Hour */
- hour?: number;
- /** Hour */
- h?: number;
- /** Minute */
- minutes?: number;
- /** Minute */
- minute?: number;
- /** Minute */
- m?: number;
- /** Second */
- seconds?: number;
- /** Second */
- second?: number;
- /** Second */
- s?: number;
- /** Millisecond */
- milliseconds?: number;
- /** Millisecond */
- millisecond?: number;
- /** Millisecond */
- ms?: number;
- }
- interface Duration {
- humanize(withSuffix?: boolean): string;
- as(units: string): number;
- milliseconds(): number;
- asMilliseconds(): number;
- seconds(): number;
- asSeconds(): number;
- minutes(): number;
- asMinutes(): number;
- hours(): number;
- asHours(): number;
- days(): number;
- asDays(): number;
- months(): number;
- asMonths(): number;
- years(): number;
- asYears(): number;
- add(n: number, p: string): Duration;
- add(n: number): Duration;
- add(d: Duration): Duration;
- subtract(n: number, p: string): Duration;
- subtract(n: number): Duration;
- subtract(d: Duration): Duration;
- toISOString(): string;
- toJSON(): string;
- }
- interface Moment {
- format(format: string): string;
- format(): string;
- fromNow(withoutSuffix?: boolean): string;
- startOf(unitOfTime: string): Moment;
- endOf(unitOfTime: string): Moment;
- /**
- * Mutates the original moment by adding time. (deprecated in 2.8.0)
- *
- * @param unitOfTime the unit of time you want to add (eg "years" / "hours" etc)
- * @param amount the amount you want to add
- */
- add(unitOfTime: string, amount: number): Moment;
- /**
- * Mutates the original moment by adding time.
- *
- * @param amount the amount you want to add
- * @param unitOfTime the unit of time you want to add (eg "years" / "hours" etc)
- */
- add(amount: number, unitOfTime: string): Moment;
- /**
- * Mutates the original moment by adding time. Note that the order of arguments can be flipped.
- *
- * @param amount the amount you want to add
- * @param unitOfTime the unit of time you want to add (eg "years" / "hours" etc)
- */
- add(amount: string, unitOfTime: string): Moment;
- /**
- * Mutates the original moment by adding time.
- *
- * @param objectLiteral an object literal that describes multiple time units {days:7,months:1}
- */
- add(objectLiteral: MomentInput): Moment;
- /**
- * Mutates the original moment by adding time.
- *
- * @param duration a length of time
- */
- add(duration: Duration): Moment;
- /**
- * Mutates the original moment by subtracting time. (deprecated in 2.8.0)
- *
- * @param unitOfTime the unit of time you want to subtract (eg "years" / "hours" etc)
- * @param amount the amount you want to subtract
- */
- subtract(unitOfTime: string, amount: number): Moment;
- /**
- * Mutates the original moment by subtracting time.
- *
- * @param unitOfTime the unit of time you want to subtract (eg "years" / "hours" etc)
- * @param amount the amount you want to subtract
- */
- subtract(amount: number, unitOfTime: string): Moment;
- /**
- * Mutates the original moment by subtracting time. Note that the order of arguments can be flipped.
- *
- * @param amount the amount you want to add
- * @param unitOfTime the unit of time you want to subtract (eg "years" / "hours" etc)
- */
- subtract(amount: string, unitOfTime: string): Moment;
- /**
- * Mutates the original moment by subtracting time.
- *
- * @param objectLiteral an object literal that describes multiple time units {days:7,months:1}
- */
- subtract(objectLiteral: MomentInput): Moment;
- /**
- * Mutates the original moment by subtracting time.
- *
- * @param duration a length of time
- */
- subtract(duration: Duration): Moment;
- calendar(): string;
- calendar(start: Moment): string;
- calendar(start: Moment, formats: MomentCalendar): string;
- clone(): Moment;
- /**
- * @return Unix timestamp, or milliseconds since the epoch.
- */
- valueOf(): number;
- local(): Moment; // current date/time in local mode
- utc(): Moment; // current date/time in UTC mode
- isValid(): boolean;
- invalidAt(): number;
- year(y: number): Moment;
- year(): number;
- quarter(): number;
- quarter(q: number): Moment;
- month(M: number): Moment;
- month(M: string): Moment;
- month(): number;
- day(d: number): Moment;
- day(d: string): Moment;
- day(): number;
- date(d: number): Moment;
- date(): number;
- hour(h: number): Moment;
- hour(): number;
- hours(h: number): Moment;
- hours(): number;
- minute(m: number): Moment;
- minute(): number;
- minutes(m: number): Moment;
- minutes(): number;
- second(s: number): Moment;
- second(): number;
- seconds(s: number): Moment;
- seconds(): number;
- millisecond(ms: number): Moment;
- millisecond(): number;
- milliseconds(ms: number): Moment;
- milliseconds(): number;
- weekday(): number;
- weekday(d: number): Moment;
- isoWeekday(): number;
- isoWeekday(d: number): Moment;
- weekYear(): number;
- weekYear(d: number): Moment;
- isoWeekYear(): number;
- isoWeekYear(d: number): Moment;
- week(): number;
- week(d: number): Moment;
- weeks(): number;
- weeks(d: number): Moment;
- isoWeek(): number;
- isoWeek(d: number): Moment;
- isoWeeks(): number;
- isoWeeks(d: number): Moment;
- weeksInYear(): number;
- isoWeeksInYear(): number;
- dayOfYear(): number;
- dayOfYear(d: number): Moment;
- from(f: Moment|string|number|Date|number[], suffix?: boolean): string;
- to(f: Moment|string|number|Date|number[], suffix?: boolean): string;
- toNow(withoutPrefix?: boolean): string;
- diff(b: Moment): number;
- diff(b: Moment, unitOfTime: string): number;
- diff(b: Moment, unitOfTime: string, round: boolean): number;
- toArray(): number[];
- toDate(): Date;
- toISOString(): string;
- toJSON(): string;
- unix(): number;
- isLeapYear(): boolean;
- zone(): number;
- zone(b: number): Moment;
- zone(b: string): Moment;
- utcOffset(): number;
- utcOffset(b: number): Moment;
- utcOffset(b: string): Moment;
- daysInMonth(): number;
- isDST(): boolean;
- isBefore(): boolean;
- isBefore(b: Moment|string|number|Date|number[], granularity?: string): boolean;
- isAfter(): boolean;
- isAfter(b: Moment|string|number|Date|number[], granularity?: string): boolean;
- isSame(b: Moment|string|number|Date|number[], granularity?: string): boolean;
- isBetween(a: Moment|string|number|Date|number[], b: Moment|string|number|Date|number[], granularity?: string): boolean;
- // Deprecated as of 2.8.0.
- lang(language: string): Moment;
- lang(reset: boolean): Moment;
- lang(): MomentLanguage;
- locale(language: string): Moment;
- locale(reset: boolean): Moment;
- locale(): string;
- localeData(language: string): Moment;
- localeData(reset: boolean): Moment;
- localeData(): MomentLanguage;
- // Deprecated as of 2.7.0.
- max(date: Moment|string|number|Date|any[]): Moment;
- max(date: string, format: string): Moment;
- // Deprecated as of 2.7.0.
- min(date: Moment|string|number|Date|any[]): Moment;
- min(date: string, format: string): Moment;
- get(unit: string): number;
- set(unit: string, value: number): Moment;
- set(objectLiteral: MomentInput): Moment;
- }
- type formatFunction = () => string;
- interface MomentCalendar {
- lastDay?: string | formatFunction;
- sameDay?: string | formatFunction;
- nextDay?: string | formatFunction;
- lastWeek?: string | formatFunction;
- nextWeek?: string | formatFunction;
- sameElse?: string | formatFunction;
- }
- interface BaseMomentLanguage {
- months ?: any;
- monthsShort ?: any;
- weekdays ?: any;
- weekdaysShort ?: any;
- weekdaysMin ?: any;
- relativeTime ?: MomentRelativeTime;
- meridiem ?: (hour: number, minute: number, isLowercase: boolean) => string;
- calendar ?: MomentCalendar;
- ordinal ?: (num: number) => string;
- }
- interface MomentLanguage extends BaseMomentLanguage {
- longDateFormat?: MomentLongDateFormat;
- }
- interface MomentLanguageData extends BaseMomentLanguage {
- /**
- * @param formatType should be L, LL, LLL, LLLL.
- */
- longDateFormat(formatType: string): string;
- }
- interface MomentLongDateFormat {
- L: string;
- LL: string;
- LLL: string;
- LLLL: string;
- LT: string;
- LTS: string;
- l?: string;
- ll?: string;
- lll?: string;
- llll?: string;
- lt?: string;
- lts?: string;
- }
- interface MomentRelativeTime {
- future: any;
- past: any;
- s: any;
- m: any;
- mm: any;
- h: any;
- hh: any;
- d: any;
- dd: any;
- M: any;
- MM: any;
- y: any;
- yy: any;
- }
- interface MomentStatic {
- version: string;
- fn: Moment;
- (): Moment;
- (date: number): Moment;
- (date: number[]): Moment;
- (date: string, format?: string, strict?: boolean): Moment;
- (date: string, format?: string, language?: string, strict?: boolean): Moment;
- (date: string, formats: string[], strict?: boolean): Moment;
- (date: string, formats: string[], language?: string, strict?: boolean): Moment;
- (date: string, specialFormat: () => void, strict?: boolean): Moment;
- (date: string, specialFormat: () => void, language?: string, strict?: boolean): Moment;
- (date: string, formatsIncludingSpecial: any[], strict?: boolean): Moment;
- (date: string, formatsIncludingSpecial: any[], language?: string, strict?: boolean): Moment;
- (date: Date): Moment;
- (date: Moment): Moment;
- (date: Object): Moment;
- utc(): Moment;
- utc(date: number): Moment;
- utc(date: number[]): Moment;
- utc(date: string, format?: string, strict?: boolean): Moment;
- utc(date: string, format?: string, language?: string, strict?: boolean): Moment;
- utc(date: string, formats: string[], strict?: boolean): Moment;
- utc(date: string, formats: string[], language?: string, strict?: boolean): Moment;
- utc(date: Date): Moment;
- utc(date: Moment): Moment;
- utc(date: Object): Moment;
- unix(timestamp: number): Moment;
- invalid(parsingFlags?: Object): Moment;
- isMoment(): boolean;
- isMoment(m: any): boolean;
- isDate(m: any): boolean;
- isDuration(): boolean;
- isDuration(d: any): boolean;
- // Deprecated in 2.8.0.
- lang(language?: string): string;
- lang(language?: string, definition?: MomentLanguage): string;
- locale(language?: string): string;
- locale(language?: string[]): string;
- locale(language?: string, definition?: MomentLanguage): string;
- localeData(language?: string): MomentLanguageData;
- longDateFormat: any;
- relativeTime: any;
- meridiem: (hour: number, minute: number, isLowercase: boolean) => string;
- calendar: any;
- ordinal: (num: number) => string;
- duration(milliseconds: Number): Duration;
- duration(num: Number, unitOfTime: string): Duration;
- duration(input: MomentInput): Duration;
- duration(object: any): Duration;
- duration(): Duration;
- parseZone(date: string): Moment;
- months(): string[];
- months(index: number): string;
- months(format: string): string[];
- months(format: string, index: number): string;
- monthsShort(): string[];
- monthsShort(index: number): string;
- monthsShort(format: string): string[];
- monthsShort(format: string, index: number): string;
- weekdays(): string[];
- weekdays(index: number): string;
- weekdays(format: string): string[];
- weekdays(format: string, index: number): string;
- weekdaysShort(): string[];
- weekdaysShort(index: number): string;
- weekdaysShort(format: string): string[];
- weekdaysShort(format: string, index: number): string;
- weekdaysMin(): string[];
- weekdaysMin(index: number): string;
- weekdaysMin(format: string): string[];
- weekdaysMin(format: string, index: number): string;
- min(...moments: Moment[]): Moment;
- max(...moments: Moment[]): Moment;
- normalizeUnits(unit: string): string;
- relativeTimeThreshold(threshold: string): number|boolean;
- relativeTimeThreshold(threshold: string, limit:number): boolean;
- /**
- * Constant used to enable explicit ISO_8601 format parsing.
- */
- ISO_8601(): void;
- defaultFormat: string;
- }
- }
- declare module 'moment' {
- var moment: moment.MomentStatic;
- export = moment;
- }
|