import type { ScheduleDef } from "./schedule-def.js"; import { type BaseFinding, type ValidationResult } from "../util/validation.js"; /** * v1.3.2 §8 — static validation of a user schedule definition. Pure (no fs): * the caller supplies `promptExists` + `reservedIds` so this stays testable. * Finding shape mirrors the other managers ({code, message, field}); the * accumulation is the shared §9.1 `Findings` collector. */ export interface ScheduleFinding extends BaseFinding { id?: string; } export type ScheduleValidationResult = ValidationResult; export interface ValidateScheduleOptions { /** Does the backing `schedules/.md` prompt exist? */ promptExists?: (id: string) => boolean; /** Ids already taken (built-in routines + other defs) — collision = error. */ reservedIds?: ReadonlySet; } export declare function validateScheduleDef(def: ScheduleDef, opts?: ValidateScheduleOptions): ScheduleValidationResult;