import type { ScheduledLocalTime, ScheduledTask, ScheduledTaskRecurrence } from "./types"; export interface ZonedDateTimeParts { day: number; hour: number; minute: number; month: number; second: number; weekday: number; year: number; } /** Resolve a UTC timestamp into calendar parts for a named time zone. */ export declare function getZonedDateTimeParts(timestampMs: number, timezone: string): ZonedDateTimeParts; /** Resolve local time, rejecting DST gaps and choosing the earlier instant in a fold. */ export declare function resolveLocalScheduleAtMs(args: { date: string; time: ScheduledLocalTime; timezone: string; }): number | undefined; /** Compute the first recurring calendar occurrence strictly after a timestamp. */ export declare function getFirstRunAtMs(args: { afterMs: number; recurrence: ScheduledTaskRecurrence; timezone: string; }): number | undefined; /** Return the next fire time after a completed run, when the task recurs. */ export declare function getNextRunAtMs(task: ScheduledTask, scheduledForMs: number, afterMs?: number): number | undefined;