/** * `/api/v1/schedules` (DES-RUNS-REVIEW-001 ยง2): read, save, delete and run-now a workflow schedule. Writes are a * person's (the watch routes' human-operator predicate): a worker or system actor may read but never schedule spend. */ import type { FastifyInstance } from 'fastify'; import { z } from 'zod'; import type { AuditLog } from '../api/audit.js'; import { type WorkflowScheduler } from './scheduler.js'; import { type ScheduleStore } from './store.js'; export declare const SchedulePutSchema: z.ZodObject<{ workflow: z.ZodString; everyHours: z.ZodNumber; enabled: z.ZodOptional; projectIds: z.ZodOptional>; repoRef: z.ZodOptional>; problem: z.ZodOptional>; }, "strict", z.ZodTypeAny, { workflow: string; everyHours: number; problem?: string | null | undefined; repoRef?: string | null | undefined; enabled?: boolean | undefined; projectIds?: string[] | undefined; }, { workflow: string; everyHours: number; problem?: string | null | undefined; repoRef?: string | null | undefined; enabled?: boolean | undefined; projectIds?: string[] | undefined; }>; export interface ScheduleRouteDeps { store: ScheduleStore; scheduler: Pick; /** Whether a workflow id is one this daemon can launch. */ knowsWorkflow: (id: string) => boolean; /** The latest review (date and outcome) for Settings, when the schedule runs the review. */ lastReview?: () => { runId: string; launchedAt: string; endedAt: string | null; status: string; } | null; audit: AuditLog; now?: () => Date; } export declare function registerScheduleRoutes(app: FastifyInstance, deps: ScheduleRouteDeps): void; //# sourceMappingURL=routes.d.ts.map