import type { ISODateRecord } from '../../intrinsics/Temporal/PlainDate.mts'; import type { ISODateTimeRecord } from '../../intrinsics/Temporal/PlainDateTime.mts'; import type { TimeZoneIdentifier } from './addition.mts'; import { type EpochNanoseconds } from './temporal.mts'; import { Value, type PlainCompletion, type Integer } from '#self'; export declare function GetAvailableNamedTimeZoneIdentifier(timeZoneIdentifier: TimeZoneIdentifier): TimeZoneIdentifierRecord | undefined; /** https://tc39.es/ecma262/#sec-time-zone-identifier-record */ export interface TimeZoneIdentifierRecord { readonly Identifier: TimeZoneIdentifier; readonly PrimaryIdentifier: TimeZoneIdentifier; } export declare function GetNamedTimeZoneNextTransition(timeZoneIdentifier: TimeZoneIdentifier, _epochNanoseconds: EpochNanoseconds): bigint | null; export declare function GetNamedTimeZonePreviousTransition(timeZoneIdentifier: TimeZoneIdentifier, _epochNanoseconds: EpochNanoseconds): bigint | null; export declare function FormatOffsetTimeZoneIdentifier(offsetMinutes: Integer, style?: 'separated' | 'unseparated'): TimeZoneIdentifier; export declare function FormatUTCOffsetNanoseconds(offsetNanoseconds: Integer): string; export declare function FormatDateTimeUTCOffsetRounded(offsetNanoseconds: Integer): string; export declare function ToTemporalTimeZoneIdentifier(temporalTimeZoneLike: Value | string): PlainCompletion; export declare function GetOffsetNanosecondsFor(timeZone: TimeZoneIdentifier, epochNs: EpochNanoseconds): Integer; export declare function GetISODateTimeFor(timeZone: TimeZoneIdentifier, epochNs: EpochNanoseconds): ISODateTimeRecord; export declare function GetEpochNanosecondsFor(timeZone: TimeZoneIdentifier, isoDateTime: ISODateTimeRecord, disambiguation: 'compatible' | 'earlier' | 'later' | 'reject'): PlainCompletion; export declare function DisambiguatePossibleEpochNanoseconds(possibleEpochNs: readonly bigint[], timeZone: TimeZoneIdentifier, isoDateTime: ISODateTimeRecord, disambiguation: 'compatible' | 'earlier' | 'later' | 'reject'): PlainCompletion; export declare function GetPossibleEpochNanoseconds(timeZone: TimeZoneIdentifier, isoDateTime: ISODateTimeRecord): PlainCompletion; /** https://tc39.es/proposal-temporal/#sec-temporal-getstartofday */ export declare function GetStartOfDay(timeZone: TimeZoneIdentifier, isoDate: ISODateRecord): PlainCompletion; export declare function TimeZoneEquals(one: TimeZoneIdentifier, two: TimeZoneIdentifier): boolean; //# sourceMappingURL=time-zone.d.mts.map