/** * Python datetime module for TypeScript * * Provides date and time handling matching Python's datetime module, * including date, time, datetime, and timedelta classes. * * @see {@link https://docs.python.org/3/library/datetime.html | Python datetime documentation} * @module */ declare class timedelta { readonly days: number; readonly seconds: number; readonly microseconds: number; constructor(options?: { days?: number; seconds?: number; microseconds?: number; milliseconds?: number; minutes?: number; hours?: number; weeks?: number; }); totalSeconds(): number; toString(): string; add(other: timedelta): timedelta; subtract(other: timedelta): timedelta; multiply(n: number): timedelta; static min: timedelta; static max: timedelta; static resolution: timedelta; } declare class date { readonly year: number; readonly month: number; readonly day: number; constructor(year: number, month: number, day: number); static today(): date; static fromTimestamp(timestamp: number): date; static fromIsoFormat(dateString: string): date; static fromOrdinal(ordinal: number): date; replace(options?: { year?: number; month?: number; day?: number; }): date; toOrdinal(): number; weekday(): number; isoWeekday(): number; isoCalendar(): [number, number, number]; isoFormat(): string; strftime(format: string): string; toString(): string; __add__(delta: timedelta): date; __sub__(other: date | timedelta): date | timedelta; __lt__(other: date): boolean; __le__(other: date): boolean; __gt__(other: date): boolean; __ge__(other: date): boolean; __eq__(other: date): boolean; static min: date; static max: date; static resolution: timedelta; } declare class time { readonly hour: number; readonly minute: number; readonly second: number; readonly microsecond: number; readonly tzinfo: null; constructor(hour?: number, minute?: number, second?: number, microsecond?: number); static fromIsoFormat(timeString: string): time; replace(options?: { hour?: number; minute?: number; second?: number; microsecond?: number; }): time; isoFormat(timespec?: "auto" | "hours" | "minutes" | "seconds" | "milliseconds" | "microseconds"): string; strftime(format: string): string; toString(): string; static min: time; static max: time; static resolution: timedelta; } declare class datetime extends date { readonly hour: number; readonly minute: number; readonly second: number; readonly microsecond: number; readonly tzinfo: null; constructor(year: number, month: number, day: number, hour?: number, minute?: number, second?: number, microsecond?: number); static today(): datetime; static now(): datetime; static utcNow(): datetime; static fromTimestamp(timestamp: number): datetime; static utcfromTimestamp(timestamp: number): datetime; static fromIsoFormat(s: string): datetime; static combine(d: date, t: time): datetime; static strptime(dateString: string, format: string): datetime; replace(options?: { year?: number; month?: number; day?: number; hour?: number; minute?: number; second?: number; microsecond?: number; }): datetime; date(): date; time(): time; timestamp(): number; isoFormat(sep?: string, timespec?: "auto" | "hours" | "minutes" | "seconds" | "milliseconds" | "microseconds"): string; ctime(): string; strftime(format: string): string; toString(): string; __add__(delta: timedelta): datetime; __sub__(other: datetime | date | timedelta): datetime | timedelta; static min: datetime; static max: datetime; static resolution: timedelta; } declare function strftime(format: string, dt: datetime): string; declare function strptime(dateString: string, format: string): datetime; declare const MINYEAR = 1; declare const MAXYEAR = 9999; declare const datetimeModule_MAXYEAR: typeof MAXYEAR; declare const datetimeModule_MINYEAR: typeof MINYEAR; type datetimeModule_date = date; declare const datetimeModule_date: typeof date; type datetimeModule_datetime = datetime; declare const datetimeModule_datetime: typeof datetime; declare const datetimeModule_strftime: typeof strftime; declare const datetimeModule_strptime: typeof strptime; type datetimeModule_time = time; declare const datetimeModule_time: typeof time; type datetimeModule_timedelta = timedelta; declare const datetimeModule_timedelta: typeof timedelta; declare namespace datetimeModule { export { datetimeModule_MAXYEAR as MAXYEAR, datetimeModule_MINYEAR as MINYEAR, datetimeModule_date as date, datetimeModule_datetime as datetime, datetimeModule_strftime as strftime, datetimeModule_strptime as strptime, datetimeModule_time as time, datetimeModule_timedelta as timedelta }; } export { MAXYEAR as M, MINYEAR as a, date as b, datetime as c, datetimeModule as d, strptime as e, timedelta as f, strftime as s, time as t };