import type { CronListPageOptions, CronListPageResult } from "./service/list-page-types.js" ;
import type {
CronAddInput,
CronAddResult,
CronListResult,
CronRemoveResult,
CronRunMode,
CronRunResult,
CronStatusSummary,
CronUpdateInput,
CronUpdateResult,
CronWakeMode,
} from "./service/state.js" ;
import type { CronJob } from "./types.js" ;
export type { CronListPageOptions, CronListPageResult } from "./service/list-page-types.js" ;
export type CronWakeResult = { ok: true } | { ok: false };
export type CronServiceRunResult = CronRunResult | { ok: true ; ran: false ; reason: "invalid-spec" };
export interface CronServiceContract {
start(): Promise<void >;
stop(): void ;
status(): Promise<CronStatusSummary>;
list(opts?: { includeDisabled?: boolean }): Promise<CronListResult>;
listPage(opts?: CronListPageOptions): Promise<CronListPageResult>;
add(input: CronAddInput): Promise<CronAddResult>;
update(id: string, patch: CronUpdateInput): Promise<CronUpdateResult>;
remove(id: string): Promise<CronRemoveResult>;
run(id: string, mode?: CronRunMode): Promise<CronServiceRunResult>;
enqueueRun(id: string, mode?: CronRunMode): Promise<CronServiceRunResult>;
getJob(id: string): CronJob | undefined;
getDefaultAgentId(): string | undefined;
wake(opts: { mode: CronWakeMode; text: string }): CronWakeResult;
}
Messung V0.5 in Prozent C=100 H=99 G=99
¤ Dauer der Verarbeitung: 0.2 Sekunden
¤
*© Formatika GbR, Deutschland