/**
 * A single DST transition instant, with the UTC offset in effect immediately
 * before and after the change.
 */
export interface DstTransition {
    instant: string;
    offsetBefore: string;
    offsetAfter: string;
}
/**
 * List every DST transition instant for an IANA timezone within a given year.
 *
 * - A "transition" is any UTC offset change: a spring-forward gap (nonexistent
 *   local time) or a fall-back overlap (ambiguous local time) — see
 *   `docs/dst-disambiguation.md` for the gap/overlap terminology. This is
 *   distinct from `hasDaylightSaving` (whether a zone observes DST at all)
 *   and from the `disambiguation`/`offset` options (what to do when
 *   constructing a single instant that lands in a gap/overlap).
 * - Most zones have 0 or 2 transitions per year; some (e.g. `Africa/Casablanca`,
 *   which pauses DST for Ramadan) can have more.
 * - Returns `[]` for an invalid timeZone, a non-integer year, or a valid zone
 *   with zero transitions in that year (not an error case).
 *
 * @param timeZone IANA timeZone identifier
 * @param year calendar year to scan (must be an integer)
 * @returns array of `{ instant, offsetBefore, offsetAfter }`, in chronological order
 *
 * @example getDstTransitions("America/New_York", 2024)
 * // [
 * //   { instant: "2024-03-10T07:00:00Z", offsetBefore: "-05:00", offsetAfter: "-04:00" },
 * //   { instant: "2024-11-03T06:00:00Z", offsetBefore: "-04:00", offsetAfter: "-05:00" },
 * // ]
 * @example getDstTransitions("Asia/Tokyo", 2024) // []
 * @example getDstTransitions("Invalid/Zone", 2024) // []
 */
export declare function getDstTransitions(timeZone: string, year: number): DstTransition[];
