import type { Observable } from "rxjs"; import { TaskLogger, type TaskLoggerOptions } from "../domain/TaskLogger.js"; export type MaybePromise = Promise | T; type TaskPredicate = MaybePromise; export interface Task { title: string; task: (ctx: Ctx, operation: TaskLogger) => MaybePromise | Observable; skip?: boolean | string | ((ctx: Ctx) => TaskPredicate); enabled?: boolean | ((ctx: Ctx) => MaybePromise); type?: TaskLoggerOptions["type"]; } export {};