diff --git a/polyfill/index.d.ts b/polyfill/index.d.ts index 7d4f5ff55..83a10f8bd 100644 --- a/polyfill/index.d.ts +++ b/polyfill/index.d.ts @@ -26,7 +26,7 @@ export namespace Temporal { * * The default is `'constrain'`. */ - overflow?: 'constrain' | 'reject'; + overflow?: 'constrain' | 'reject' | undefined; }; /** @@ -45,7 +45,7 @@ export namespace Temporal { * * The default is `'constrain'`. */ - overflow?: 'constrain' | 'balance'; + overflow?: 'constrain' | 'balance' | undefined; }; /** @@ -75,7 +75,7 @@ export namespace Temporal { * The default is `'compatible'`. * * */ - disambiguation?: 'compatible' | 'earlier' | 'later' | 'reject'; + disambiguation?: 'compatible' | 'earlier' | 'later' | 'reject' | undefined; }; type OffsetDisambiguationOptions = { @@ -111,12 +111,10 @@ export namespace Temporal { * be used to choose the correct instant. However, if the offset is used * then the `disambiguation` option will be ignored. */ - offset?: 'use' | 'prefer' | 'ignore' | 'reject'; + offset?: 'use' | 'prefer' | 'ignore' | 'reject' | undefined; }; - export type ZonedDateTimeAssignmentOptions = Partial< - AssignmentOptions & ToInstantOptions & OffsetDisambiguationOptions - >; + export type ZonedDateTimeAssignmentOptions = AssignmentOptions & ToInstantOptions & OffsetDisambiguationOptions; /** * Options for arithmetic operations like `add()` and `subtract()` @@ -130,7 +128,7 @@ export namespace Temporal { * * The default is `'constrain'`. */ - overflow?: 'constrain' | 'reject'; + overflow?: 'constrain' | 'reject' | undefined; }; export type DateUnit = 'year' | 'month' | 'week' | 'day'; @@ -163,8 +161,8 @@ export namespace Temporal { * Options for outputting precision in toString() on types with seconds */ export type ToStringPrecisionOptions = { - fractionalSecondDigits?: 'auto' | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9; - smallestUnit?: SmallestUnit<'minute' | 'second' | 'millisecond' | 'microsecond' | 'nanosecond'>; + fractionalSecondDigits?: 'auto' | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | undefined; + smallestUnit?: SmallestUnit<'minute' | 'second' | 'millisecond' | 'microsecond' | 'nanosecond'> | undefined; /** * Controls how rounding is performed: @@ -180,27 +178,23 @@ export namespace Temporal { * negative infinity which is usually unexpected. For this reason, `trunc` * is recommended for most use cases. */ - roundingMode?: RoundingMode; + roundingMode?: RoundingMode | undefined; }; export type ShowCalendarOption = { - calendarName?: 'auto' | 'always' | 'never' | 'critical'; + calendarName?: 'auto' | 'always' | 'never' | 'critical' | undefined; }; - export type CalendarTypeToStringOptions = Partial; + export type CalendarTypeToStringOptions = ToStringPrecisionOptions & ShowCalendarOption; - export type ZonedDateTimeToStringOptions = Partial< - CalendarTypeToStringOptions & { - timeZoneName?: 'auto' | 'never' | 'critical'; - offset?: 'auto' | 'never'; - } - >; + export type ZonedDateTimeToStringOptions = CalendarTypeToStringOptions & { + timeZoneName?: 'auto' | 'never' | 'critical' | undefined; + offset?: 'auto' | 'never' | undefined; + }; - export type InstantToStringOptions = Partial< - ToStringPrecisionOptions & { - timeZone: TimeZoneLike; - } - >; + export type InstantToStringOptions = ToStringPrecisionOptions & { + timeZone?: TimeZoneLike | undefined; + }; /** * Options to control the result of `until()` and `since()` methods in @@ -213,7 +207,7 @@ export namespace Temporal { * `since()`, because those methods default behavior is not to round. * However, the same property is required for `round()`. */ - smallestUnit?: SmallestUnit; + smallestUnit?: SmallestUnit | undefined; /** * The largest unit to allow in the resulting `Temporal.Duration` object. @@ -231,14 +225,14 @@ export namespace Temporal { * The default is always `'auto'`, though the meaning of this depends on the * type being used. */ - largestUnit?: LargestUnit; + largestUnit?: LargestUnit | undefined; /** * Allows rounding to an integer number of units. For example, to round to * increments of a half hour, use `{ smallestUnit: 'minute', * roundingIncrement: 30 }`. */ - roundingIncrement?: number; + roundingIncrement?: number | undefined; /** * Controls how rounding is performed: @@ -256,7 +250,7 @@ export namespace Temporal { * negative infinity which is usually unexpected. For this reason, `trunc` * is recommended for most use cases. */ - roundingMode?: RoundingMode; + roundingMode?: RoundingMode | undefined; } /** @@ -282,7 +276,7 @@ export namespace Temporal { * increments of a half hour, use `{ smallestUnit: 'minute', * roundingIncrement: 30 }`. */ - roundingIncrement?: number; + roundingIncrement?: number | undefined; /** * Controls how rounding is performed: @@ -298,7 +292,7 @@ export namespace Temporal { * negative infinity which is usually unexpected. For this reason, `trunc` * is recommended for most use cases. */ - roundingMode?: RoundingMode; + roundingMode?: RoundingMode | undefined; }; /** @@ -340,7 +334,7 @@ export namespace Temporal { * If `smallestUnit` is larger, then `smallestUnit` will be used as * `largestUnit`, superseding a caller-supplied or default value. */ - largestUnit?: LargestUnit; + largestUnit?: LargestUnit | undefined; } | { /** @@ -349,7 +343,7 @@ export namespace Temporal { * required, but is optional if `largestUnit` is provided and not * undefined. */ - smallestUnit?: SmallestUnit; + smallestUnit?: SmallestUnit | undefined; /** * The largest unit to allow in the resulting `Temporal.Duration` @@ -378,7 +372,7 @@ export namespace Temporal { * to increments of a half hour, use `{ smallestUnit: 'minute', * roundingIncrement: 30 }`. */ - roundingIncrement?: number; + roundingIncrement?: number | undefined; /** * Controls how rounding is performed: @@ -397,7 +391,7 @@ export namespace Temporal { * unexpected. For this reason, `trunc` is recommended for most "round * down" use cases. */ - roundingMode?: RoundingMode; + roundingMode?: RoundingMode | undefined; /** * The starting point to use for rounding and conversions when @@ -423,7 +417,13 @@ export namespace Temporal { * time zone transitions and all days will be assumed to be 24 hours * long. */ - relativeTo?: Temporal.PlainDateTime | Temporal.ZonedDateTime | PlainDateTimeLike | ZonedDateTimeLike | string; + relativeTo?: + | Temporal.PlainDateTime + | Temporal.ZonedDateTime + | PlainDateTimeLike + | ZonedDateTimeLike + | string + | undefined; }); /** @@ -459,7 +459,13 @@ export namespace Temporal { * this option is omitted), then the operation will ignore time zone * transitions and all days will be assumed to be 24 hours long. */ - relativeTo?: Temporal.ZonedDateTime | Temporal.PlainDateTime | ZonedDateTimeLike | PlainDateTimeLike | string; + relativeTo?: + | Temporal.ZonedDateTime + | Temporal.PlainDateTime + | ZonedDateTimeLike + | PlainDateTimeLike + | string + | undefined; }; /** @@ -486,7 +492,13 @@ export namespace Temporal { * this option is omitted), then the operation will ignore time zone * transitions and all days will be assumed to be 24 hours long. */ - relativeTo?: Temporal.ZonedDateTime | Temporal.PlainDateTime | ZonedDateTimeLike | PlainDateTimeLike | string; + relativeTo?: + | Temporal.ZonedDateTime + | Temporal.PlainDateTime + | ZonedDateTimeLike + | PlainDateTimeLike + | string + | undefined; } /** @@ -495,16 +507,16 @@ export namespace Temporal { export type TransitionDirection = 'next' | 'previous' | { direction: 'next' | 'previous' }; export type DurationLike = { - years?: number; - months?: number; - weeks?: number; - days?: number; - hours?: number; - minutes?: number; - seconds?: number; - milliseconds?: number; - microseconds?: number; - nanoseconds?: number; + years?: number | undefined; + months?: number | undefined; + weeks?: number | undefined; + days?: number | undefined; + hours?: number | undefined; + minutes?: number | undefined; + seconds?: number | undefined; + milliseconds?: number | undefined; + microseconds?: number | undefined; + nanoseconds?: number | undefined; }; /** @@ -615,11 +627,11 @@ export namespace Temporal { export type PlainDateLike = { era?: string | undefined; eraYear?: number | undefined; - year?: number; - month?: number; - monthCode?: string; - day?: number; - calendar?: CalendarLike; + year?: number | undefined; + month?: number | undefined; + monthCode?: string | undefined; + day?: number | undefined; + calendar?: CalendarLike | undefined; }; /** @@ -673,7 +685,7 @@ export namespace Temporal { | string | { timeZone: TimeZoneLike; - plainTime?: Temporal.PlainTime | PlainTimeLike | string; + plainTime?: Temporal.PlainTime | PlainTimeLike | string | undefined; } ): Temporal.ZonedDateTime; toPlainYearMonth(): Temporal.PlainYearMonth; @@ -688,17 +700,17 @@ export namespace Temporal { export type PlainDateTimeLike = { era?: string | undefined; eraYear?: number | undefined; - year?: number; - month?: number; - monthCode?: string; - day?: number; - hour?: number; - minute?: number; - second?: number; - millisecond?: number; - microsecond?: number; - nanosecond?: number; - calendar?: CalendarLike; + year?: number | undefined; + month?: number | undefined; + monthCode?: string | undefined; + day?: number | undefined; + hour?: number | undefined; + minute?: number | undefined; + second?: number | undefined; + millisecond?: number | undefined; + microsecond?: number | undefined; + nanosecond?: number | undefined; + calendar?: CalendarLike | undefined; }; /** @@ -791,11 +803,11 @@ export namespace Temporal { export type PlainMonthDayLike = { era?: string | undefined; eraYear?: number | undefined; - year?: number; - month?: number; - monthCode?: string; - day?: number; - calendar?: CalendarLike; + year?: number | undefined; + month?: number | undefined; + monthCode?: string | undefined; + day?: number | undefined; + calendar?: CalendarLike | undefined; }; /** @@ -825,12 +837,12 @@ export namespace Temporal { } export type PlainTimeLike = { - hour?: number; - minute?: number; - second?: number; - millisecond?: number; - microsecond?: number; - nanosecond?: number; + hour?: number | undefined; + minute?: number | undefined; + second?: number | undefined; + millisecond?: number | undefined; + microsecond?: number | undefined; + nanosecond?: number | undefined; }; /** @@ -898,10 +910,10 @@ export namespace Temporal { export type PlainYearMonthLike = { era?: string | undefined; eraYear?: number | undefined; - year?: number; - month?: number; - monthCode?: string; - calendar?: CalendarLike; + year?: number | undefined; + month?: number | undefined; + monthCode?: string | undefined; + calendar?: CalendarLike | undefined; }; /** @@ -957,19 +969,19 @@ export namespace Temporal { export type ZonedDateTimeLike = { era?: string | undefined; eraYear?: number | undefined; - year?: number; - month?: number; - monthCode?: string; - day?: number; - hour?: number; - minute?: number; - second?: number; - millisecond?: number; - microsecond?: number; - nanosecond?: number; - offset?: string; - timeZone?: TimeZoneLike; - calendar?: CalendarLike; + year?: number | undefined; + month?: number | undefined; + monthCode?: string | undefined; + day?: number | undefined; + hour?: number | undefined; + minute?: number | undefined; + second?: number | undefined; + millisecond?: number | undefined; + microsecond?: number | undefined; + nanosecond?: number | undefined; + offset?: string | undefined; + timeZone?: TimeZoneLike | undefined; + calendar?: CalendarLike | undefined; }; export class ZonedDateTime {