/** * `/api/v1/learn/schedules` (DES-learn-workflow ยง5.2): read, save, delete and run-now a learned * topic's refresh 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 { CoreAdapter } from '../core/adapter.js'; import type { AuditLog } from '../api/audit.js'; import { type LearnScheduleStore } from './schedule-store.js'; export declare const LearnSchedulePutSchema: z.ZodObject<{ repoRef: z.ZodString; slug: z.ZodString; topic: z.ZodString; everyHours: z.ZodNumber; enabled: z.ZodOptional; projectId: z.ZodOptional; }, "strict", z.ZodTypeAny, { repoRef: string; slug: string; topic: string; everyHours: number; projectId?: string | undefined; enabled?: boolean | undefined; }, { repoRef: string; slug: string; topic: string; everyHours: number; projectId?: string | undefined; enabled?: boolean | undefined; }>; export interface LearnRouteDeps { store: LearnScheduleStore; adapter: Pick; /** Days without re-verification after which an UNSCHEDULED topic's active claim counts as stale. */ defaultStaleDays?: number; audit: AuditLog; now?: () => Date; } export declare function registerLearnRoutes(app: FastifyInstance, deps: LearnRouteDeps): void; //# sourceMappingURL=routes.d.ts.map