import type { UUID } from "@elizaos/core"; import { type NormalizedTriggerDraft, type TriggerConfig, type TriggerTaskMetadata, type TriggerType, type TriggerWakeMode } from "./types"; export declare const MIN_TRIGGER_INTERVAL_MS = 60000; export declare const MAX_TRIGGER_INTERVAL_MS: number; export declare const DISABLED_TRIGGER_INTERVAL_MS: number; export declare const MAX_TRIGGER_RUN_HISTORY = 100; interface CronSchedule { minute: Set; hour: Set; dayOfMonth: Set; month: Set; dayOfWeek: Set; } export interface TriggerTiming { updatedAt: number; updateIntervalMs: number; nextRunAtMs: number; } interface DraftInput { displayName?: string; instructions?: string; triggerType?: TriggerType; wakeMode?: TriggerWakeMode; enabled?: boolean; createdBy?: string; timezone?: string; intervalMs?: number; scheduledAtIso?: string; cronExpression?: string; maxRuns?: number; } export declare function parseCronExpression(expression: string): CronSchedule | null; export declare function computeNextCronRunAtMs(expression: string, fromMs: number, timezone?: string): number | null; export declare function parseScheduledAtIso(scheduledAtIso: string): number | null; export declare function normalizeTriggerIntervalMs(intervalMs: number): number; export declare function resolveTriggerTiming(trigger: TriggerConfig, nowMs: number): TriggerTiming | null; export declare function buildTriggerMetadata(params: { existingMetadata?: TriggerTaskMetadata; trigger: TriggerConfig; nowMs: number; }): TriggerTaskMetadata | null; export declare function buildTriggerDedupeKey(parts: { triggerType: TriggerType; instructions: string; intervalMs?: number; scheduledAtIso?: string; cronExpression?: string; wakeMode: TriggerWakeMode; }): string; export declare function buildTriggerConfig(params: { draft: NormalizedTriggerDraft; triggerId: UUID; previous?: TriggerConfig; }): TriggerConfig; export declare function normalizeTriggerDraft(params: { input: DraftInput; fallback: { displayName: string; instructions: string; triggerType: TriggerType; wakeMode: TriggerWakeMode; enabled: boolean; createdBy: string; }; }): { draft?: NormalizedTriggerDraft; error?: string; }; export {}; //# sourceMappingURL=scheduling.d.ts.map