123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429 |
- /// <reference path="./locale/index.d.ts" />
- export = dayjs;
- declare function dayjs (date?: dayjs.ConfigType): dayjs.Dayjs
- declare function dayjs (date?: dayjs.ConfigType, format?: dayjs.OptionType, strict?: boolean): dayjs.Dayjs
- declare function dayjs (date?: dayjs.ConfigType, format?: dayjs.OptionType, locale?: string, strict?: boolean): dayjs.Dayjs
- declare namespace dayjs {
- interface ConfigTypeMap {
- default: string | number | Date | Dayjs | null | undefined
- }
- export type ConfigType = ConfigTypeMap[keyof ConfigTypeMap]
- export interface FormatObject { locale?: string, format?: string, utc?: boolean }
- export type OptionType = FormatObject | string | string[]
- export type UnitTypeShort = 'd' | 'D' | 'M' | 'y' | 'h' | 'm' | 's' | 'ms'
- export type UnitTypeLong = 'millisecond' | 'second' | 'minute' | 'hour' | 'day' | 'month' | 'year' | 'date'
- export type UnitTypeLongPlural = 'milliseconds' | 'seconds' | 'minutes' | 'hours' | 'days' | 'months' | 'years' | 'dates'
-
- export type UnitType = UnitTypeLong | UnitTypeLongPlural | UnitTypeShort;
- export type OpUnitType = UnitType | "week" | "weeks" | 'w';
- export type QUnitType = UnitType | "quarter" | "quarters" | 'Q';
- export type ManipulateType = Exclude<OpUnitType, 'date' | 'dates'>;
- class Dayjs {
- constructor (config?: ConfigType)
- /**
- * All Day.js objects are immutable. Still, `dayjs#clone` can create a clone of the current object if you need one.
- * ```
- * dayjs().clone()// => Dayjs
- * dayjs(dayjs('2019-01-25')) // passing a Dayjs object to a constructor will also clone it
- * ```
- * Docs: https://day.js.org/docs/en/parse/dayjs-clone
- */
- clone(): Dayjs
- /**
- * This returns a `boolean` indicating whether the Day.js object contains a valid date or not.
- * ```
- * dayjs().isValid()// => boolean
- * ```
- * Docs: https://day.js.org/docs/en/parse/is-valid
- */
- isValid(): boolean
- /**
- * Get the year.
- * ```
- * dayjs().year()// => 2020
- * ```
- * Docs: https://day.js.org/docs/en/get-set/year
- */
- year(): number
- /**
- * Set the year.
- * ```
- * dayjs().year(2000)// => Dayjs
- * ```
- * Docs: https://day.js.org/docs/en/get-set/year
- */
- year(value: number): Dayjs
- /**
- * Get the month.
- *
- * Months are zero indexed, so January is month 0.
- * ```
- * dayjs().month()// => 0-11
- * ```
- * Docs: https://day.js.org/docs/en/get-set/month
- */
- month(): number
- /**
- * Set the month.
- *
- * Months are zero indexed, so January is month 0.
- *
- * Accepts numbers from 0 to 11. If the range is exceeded, it will bubble up to the next year.
- * ```
- * dayjs().month(0)// => Dayjs
- * ```
- * Docs: https://day.js.org/docs/en/get-set/month
- */
- month(value: number): Dayjs
- /**
- * Get the date of the month.
- * ```
- * dayjs().date()// => 1-31
- * ```
- * Docs: https://day.js.org/docs/en/get-set/date
- */
- date(): number
- /**
- * Set the date of the month.
- *
- * Accepts numbers from 1 to 31. If the range is exceeded, it will bubble up to the next months.
- * ```
- * dayjs().date(1)// => Dayjs
- * ```
- * Docs: https://day.js.org/docs/en/get-set/date
- */
- date(value: number): Dayjs
- /**
- * Get the day of the week.
- *
- * Returns numbers from 0 (Sunday) to 6 (Saturday).
- * ```
- * dayjs().day()// 0-6
- * ```
- * Docs: https://day.js.org/docs/en/get-set/day
- */
- day(): number
- /**
- * Set the day of the week.
- *
- * Accepts numbers from 0 (Sunday) to 6 (Saturday). If the range is exceeded, it will bubble up to next weeks.
- * ```
- * dayjs().day(0)// => Dayjs
- * ```
- * Docs: https://day.js.org/docs/en/get-set/day
- */
- day(value: number): Dayjs
- /**
- * Get the hour.
- * ```
- * dayjs().hour()// => 0-23
- * ```
- * Docs: https://day.js.org/docs/en/get-set/hour
- */
- hour(): number
- /**
- * Set the hour.
- *
- * Accepts numbers from 0 to 23. If the range is exceeded, it will bubble up to the next day.
- * ```
- * dayjs().hour(12)// => Dayjs
- * ```
- * Docs: https://day.js.org/docs/en/get-set/hour
- */
- hour(value: number): Dayjs
- /**
- * Get the minutes.
- * ```
- * dayjs().minute()// => 0-59
- * ```
- * Docs: https://day.js.org/docs/en/get-set/minute
- */
- minute(): number
- /**
- * Set the minutes.
- *
- * Accepts numbers from 0 to 59. If the range is exceeded, it will bubble up to the next hour.
- * ```
- * dayjs().minute(59)// => Dayjs
- * ```
- * Docs: https://day.js.org/docs/en/get-set/minute
- */
- minute(value: number): Dayjs
- /**
- * Get the seconds.
- * ```
- * dayjs().second()// => 0-59
- * ```
- * Docs: https://day.js.org/docs/en/get-set/second
- */
- second(): number
- /**
- * Set the seconds.
- *
- * Accepts numbers from 0 to 59. If the range is exceeded, it will bubble up to the next minutes.
- * ```
- * dayjs().second(1)// Dayjs
- * ```
- */
- second(value: number): Dayjs
- /**
- * Get the milliseconds.
- * ```
- * dayjs().millisecond()// => 0-999
- * ```
- * Docs: https://day.js.org/docs/en/get-set/millisecond
- */
- millisecond(): number
- /**
- * Set the milliseconds.
- *
- * Accepts numbers from 0 to 999. If the range is exceeded, it will bubble up to the next seconds.
- * ```
- * dayjs().millisecond(1)// => Dayjs
- * ```
- * Docs: https://day.js.org/docs/en/get-set/millisecond
- */
- millisecond(value: number): Dayjs
- /**
- * Generic setter, accepting unit as first argument, and value as second, returns a new instance with the applied changes.
- *
- * In general:
- * ```
- * dayjs().set(unit, value) === dayjs()[unit](value)
- * ```
- * Units are case insensitive, and support plural and short forms.
- * ```
- * dayjs().set('date', 1)
- * dayjs().set('month', 3) // April
- * dayjs().set('second', 30)
- * ```
- * Docs: https://day.js.org/docs/en/get-set/set
- */
- set(unit: UnitType, value: number): Dayjs
- /**
- * String getter, returns the corresponding information getting from Day.js object.
- *
- * In general:
- * ```
- * dayjs().get(unit) === dayjs()[unit]()
- * ```
- * Units are case insensitive, and support plural and short forms.
- * ```
- * dayjs().get('year')
- * dayjs().get('month') // start 0
- * dayjs().get('date')
- * ```
- * Docs: https://day.js.org/docs/en/get-set/get
- */
- get(unit: UnitType): number
- /**
- * Returns a cloned Day.js object with a specified amount of time added.
- * ```
- * dayjs().add(7, 'day')// => Dayjs
- * ```
- * Units are case insensitive, and support plural and short forms.
- *
- * Docs: https://day.js.org/docs/en/manipulate/add
- */
- add(value: number, unit?: ManipulateType): Dayjs
- /**
- * Returns a cloned Day.js object with a specified amount of time subtracted.
- * ```
- * dayjs().subtract(7, 'year')// => Dayjs
- * ```
- * Units are case insensitive, and support plural and short forms.
- *
- * Docs: https://day.js.org/docs/en/manipulate/subtract
- */
- subtract(value: number, unit?: ManipulateType): Dayjs
- /**
- * Returns a cloned Day.js object and set it to the start of a unit of time.
- * ```
- * dayjs().startOf('year')// => Dayjs
- * ```
- * Units are case insensitive, and support plural and short forms.
- *
- * Docs: https://day.js.org/docs/en/manipulate/start-of
- */
- startOf(unit: OpUnitType): Dayjs
- /**
- * Returns a cloned Day.js object and set it to the end of a unit of time.
- * ```
- * dayjs().endOf('month')// => Dayjs
- * ```
- * Units are case insensitive, and support plural and short forms.
- *
- * Docs: https://day.js.org/docs/en/manipulate/end-of
- */
- endOf(unit: OpUnitType): Dayjs
- /**
- * Get the formatted date according to the string of tokens passed in.
- *
- * To escape characters, wrap them in square brackets (e.g. [MM]).
- * ```
- * dayjs().format()// => current date in ISO8601, without fraction seconds e.g. '2020-04-02T08:02:17-05:00'
- * dayjs('2019-01-25').format('[YYYYescape] YYYY-MM-DDTHH:mm:ssZ[Z]')// 'YYYYescape 2019-01-25T00:00:00-02:00Z'
- * dayjs('2019-01-25').format('DD/MM/YYYY') // '25/01/2019'
- * ```
- * Docs: https://day.js.org/docs/en/display/format
- */
- format(template?: string): string
- /**
- * This indicates the difference between two date-time in the specified unit.
- *
- * To get the difference in milliseconds, use `dayjs#diff`
- * ```
- * const date1 = dayjs('2019-01-25')
- * const date2 = dayjs('2018-06-05')
- * date1.diff(date2) // 20214000000 default milliseconds
- * date1.diff() // milliseconds to current time
- * ```
- *
- * To get the difference in another unit of measurement, pass that measurement as the second argument.
- * ```
- * const date1 = dayjs('2019-01-25')
- * date1.diff('2018-06-05', 'month') // 7
- * ```
- * Units are case insensitive, and support plural and short forms.
- *
- * Docs: https://day.js.org/docs/en/display/difference
- */
- diff(date?: ConfigType, unit?: QUnitType | OpUnitType, float?: boolean): number
- /**
- * This returns the number of **milliseconds** since the Unix Epoch of the Day.js object.
- * ```
- * dayjs('2019-01-25').valueOf() // 1548381600000
- * +dayjs(1548381600000) // 1548381600000
- * ```
- * To get a Unix timestamp (the number of seconds since the epoch) from a Day.js object, you should use Unix Timestamp `dayjs#unix()`.
- *
- * Docs: https://day.js.org/docs/en/display/unix-timestamp-milliseconds
- */
- valueOf(): number
- /**
- * This returns the Unix timestamp (the number of **seconds** since the Unix Epoch) of the Day.js object.
- * ```
- * dayjs('2019-01-25').unix() // 1548381600
- * ```
- * This value is floored to the nearest second, and does not include a milliseconds component.
- *
- * Docs: https://day.js.org/docs/en/display/unix-timestamp
- */
- unix(): number
- /**
- * Get the number of days in the current month.
- * ```
- * dayjs('2019-01-25').daysInMonth() // 31
- * ```
- * Docs: https://day.js.org/docs/en/display/days-in-month
- */
- daysInMonth(): number
- /**
- * To get a copy of the native `Date` object parsed from the Day.js object use `dayjs#toDate`.
- * ```
- * dayjs('2019-01-25').toDate()// => Date
- * ```
- */
- toDate(): Date
- /**
- * To serialize as an ISO 8601 string.
- * ```
- * dayjs('2019-01-25').toJSON() // '2019-01-25T02:00:00.000Z'
- * ```
- * Docs: https://day.js.org/docs/en/display/as-json
- */
- toJSON(): string
- /**
- * To format as an ISO 8601 string.
- * ```
- * dayjs('2019-01-25').toISOString() // '2019-01-25T02:00:00.000Z'
- * ```
- * Docs: https://day.js.org/docs/en/display/as-iso-string
- */
- toISOString(): string
- /**
- * Returns a string representation of the date.
- * ```
- * dayjs('2019-01-25').toString() // 'Fri, 25 Jan 2019 02:00:00 GMT'
- * ```
- * Docs: https://day.js.org/docs/en/display/as-string
- */
- toString(): string
- /**
- * Get the UTC offset in minutes.
- * ```
- * dayjs().utcOffset()
- * ```
- * Docs: https://day.js.org/docs/en/manipulate/utc-offset
- */
- utcOffset(): number
- /**
- * This indicates whether the Day.js object is before the other supplied date-time.
- * ```
- * dayjs().isBefore(dayjs('2011-01-01')) // default milliseconds
- * ```
- * If you want to limit the granularity to a unit other than milliseconds, pass it as the second parameter.
- * ```
- * dayjs().isBefore('2011-01-01', 'year')// => boolean
- * ```
- * Units are case insensitive, and support plural and short forms.
- *
- * Docs: https://day.js.org/docs/en/query/is-before
- */
- isBefore(date: ConfigType, unit?: OpUnitType): boolean
- /**
- * This indicates whether the Day.js object is the same as the other supplied date-time.
- * ```
- * dayjs().isSame(dayjs('2011-01-01')) // default milliseconds
- * ```
- * If you want to limit the granularity to a unit other than milliseconds, pass it as the second parameter.
- * ```
- * dayjs().isSame('2011-01-01', 'year')// => boolean
- * ```
- * Docs: https://day.js.org/docs/en/query/is-same
- */
- isSame(date: ConfigType, unit?: OpUnitType): boolean
- /**
- * This indicates whether the Day.js object is after the other supplied date-time.
- * ```
- * dayjs().isAfter(dayjs('2011-01-01')) // default milliseconds
- * ```
- * If you want to limit the granularity to a unit other than milliseconds, pass it as the second parameter.
- * ```
- * dayjs().isAfter('2011-01-01', 'year')// => boolean
- * ```
- * Units are case insensitive, and support plural and short forms.
- *
- * Docs: https://day.js.org/docs/en/query/is-after
- */
- isAfter(date: ConfigType, unit?: OpUnitType): boolean
- locale(): string
- locale(preset: string | ILocale, object?: Partial<ILocale>): Dayjs
- }
- export type PluginFunc<T = unknown> = (option: T, c: typeof Dayjs, d: typeof dayjs) => void
- export function extend<T = unknown>(plugin: PluginFunc<T>, option?: T): Dayjs
- export function locale(preset?: string | ILocale, object?: Partial<ILocale>, isLocal?: boolean): string
- export function isDayjs(d: any): d is Dayjs
- export function unix(t: number): Dayjs
- const Ls : { [key: string] : ILocale }
- }
|