import type { CronAdapterConfig, CronAdapterOptions, CronAdapterStartResult } from "@mono-agent/cron-adapter"; import type { ChannelDriver } from "../channels.js"; import { inspectCronControlStore, openCronControlStore, type CronControlInspection } from "../cron-control-store.js"; import { CronOperatorRegistry } from "../cron-operator-service.js"; interface CronChannelConfig extends CronAdapterConfig { readonly controlInspection: CronControlInspection; readonly effectiveEnabledByJobId: ReadonlyMap; } export interface CronChannelOverrides { readonly adapterFactory?: (options: CronAdapterOptions) => CronAdapterStartResult; /** Test seam for the owner-private durable control store. */ readonly inspectControlStore?: typeof inspectCronControlStore; /** Test seam for opening the owner-private durable control store. */ readonly openControlStore?: typeof openCronControlStore; /** Test seam for cooldown decisions; production uses the system clock. */ readonly now?: () => Date; /** Maximum wall-clock time before a hung run is aborted and its slot reclaimed. */ readonly maxRunMs?: number; } export declare function createCronChannelDriver(overrides?: CronChannelOverrides, operatorRegistry?: CronOperatorRegistry): ChannelDriver; export {}; //# sourceMappingURL=cron.d.ts.map