12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788 |
- import { PluginFunc } from 'dayjs/esm'
- import { OpUnitType, UnitTypeLongPlural } from 'dayjs/esm';
-
- declare const plugin: PluginFunc
- export as namespace plugin;
- export = plugin
-
- declare namespace plugin {
- /**
- * @deprecated Please use more strict types
- */
- type DurationInputType = string | number | object
- /**
- * @deprecated Please use more strict types
- */
- type DurationAddType = number | object | Duration
-
- type DurationUnitsObjectType = Partial<{
- [unit in Exclude<UnitTypeLongPlural, "dates"> | "weeks"]: number
- }>;
- type DurationUnitType = Exclude<OpUnitType, "date" | "dates">
- type CreateDurationType =
- ((units: DurationUnitsObjectType) => Duration)
- & ((time: number, unit?: DurationUnitType) => Duration)
- & ((ISO_8601: string) => Duration)
- type AddDurationType = CreateDurationType & ((duration: Duration) => Duration)
-
- interface Duration {
- new (input: string | number | object, unit?: string, locale?: string): Duration
-
- clone(): Duration
-
- humanize(withSuffix?: boolean): string
-
- milliseconds(): number
- asMilliseconds(): number
-
- seconds(): number
- asSeconds(): number
-
- minutes(): number
- asMinutes(): number
-
- hours(): number
- asHours(): number
-
- days(): number
- asDays(): number
-
- weeks(): number
- asWeeks(): number
-
- months(): number
- asMonths(): number
-
- years(): number
- asYears(): number
-
- as(unit: DurationUnitType): number
-
- get(unit: DurationUnitType): number
-
- add: AddDurationType
-
- subtract: AddDurationType
-
- toJSON(): string
-
- toISOString(): string
-
- format(formatStr?: string): string
-
- locale(locale: string): Duration
- }
- }
-
- declare module 'dayjs/esm' {
- interface Dayjs {
- add(duration: plugin.Duration): Dayjs
- subtract(duration: plugin.Duration): Dayjs
- }
-
- /**
- * @param time If unit is not present, time treated as number of milliseconds
- */
- export const duration: plugin.CreateDurationType;
- export function isDuration(d: any): d is plugin.Duration
- }
|