@everwhen/temporal
Version:
34 lines (33 loc) • 1.85 kB
TypeScript
import { Temporal } from 'temporal-polyfill';
import { Duration } from './duration.js';
import { PlainDateTime } from './plain-date-time.js';
import { PlainDate } from './plain-date.js';
import { PlainTime } from './plain-time.js';
import { MethodParameters } from './type-utils.js';
export type ZonedDateTimeLike = ZonedDateTime | Temporal.ZonedDateTime | Temporal.ZonedDateTimeLike;
export declare class ZonedDateTime extends Temporal.ZonedDateTime {
static now(tzLike?: Temporal.TimeZoneLike): ZonedDateTime;
static from(...args: Parameters<typeof Temporal.ZonedDateTime.from>): ZonedDateTime;
compare(other: ZonedDateTimeLike | string): Temporal.ComparisonResult;
isBefore(other: ZonedDateTimeLike): boolean;
isAfter(other: ZonedDateTimeLike): boolean;
startOfDay(): ZonedDateTime;
startOfYear(): ZonedDateTime;
startOfMonth(): ZonedDateTime;
startOfWeek(): ZonedDateTime;
endOfYear(): ZonedDateTime;
endOfMonth(): ZonedDateTime;
endOfWeek(): ZonedDateTime;
add(...args: MethodParameters<Temporal.ZonedDateTime, 'add'>): ZonedDateTime;
subtract(...args: MethodParameters<Temporal.ZonedDateTime, 'subtract'>): ZonedDateTime;
with(...args: MethodParameters<Temporal.ZonedDateTime, 'with'>): ZonedDateTime;
withCalendar(calendar: Temporal.CalendarLike): ZonedDateTime;
withPlainTime(...args: MethodParameters<Temporal.ZonedDateTime, 'withPlainTime'>): ZonedDateTime;
withTimeZone(timeZone: Temporal.TimeZoneLike): ZonedDateTime;
round(...args: MethodParameters<Temporal.ZonedDateTime, 'round'>): ZonedDateTime;
since(...args: MethodParameters<Temporal.ZonedDateTime, 'since'>): Duration;
until(...args: MethodParameters<Temporal.ZonedDateTime, 'until'>): Duration;
toPlainDate(): PlainDate;
toPlainDateTime(): PlainDateTime;
toPlainTime(): PlainTime;
}