import { a as ReportResult } from "../types-EvlWp0P4.mjs"; import "../types-DHTY3l5T.mjs"; import "../api-CAycTX8Z.mjs"; import "../index-DIYCM-ZC.mjs"; import "../types-D3Or9gzv.mjs"; import "../index-DdWYJWZx.mjs"; import { r as Task } from "../types-KtXkz5Z7.mjs"; import { t as Generation } from "../types-KpXZZF6K.mjs"; import { EventEmitter } from "native-events"; //#region src/lib/promises.d.ts type EventMap = Record; interface EventfulListener { on: (eventName: Name, listener: (...args: Events[Name]) => void) => this; once: (eventName: Name, listener: (...args: Events[Name]) => void) => this; off: (eventName: Name, listener: (...args: Events[Name]) => void) => this; } type EventfulPromise = Promise & EventfulListener; //#endregion //#region src/helpers/generations/index.d.ts interface GenerationStartedEvent { id: string; } type GenerationProgressEvent = Omit; interface GenerationEvents extends Record { started: [GenerationStartedEvent]; progress: [GenerationProgressEvent]; } declare const isGenerationEnded: (gen: Generation) => boolean; type ReportGenerationPromise = EventfulPromise; /** * Start generation of a report and track progress * * @param taskOrId Task or Task's id * @param targets Override targets, also enable first level of debugging * * @fires #started When generation started. See `GenerationStartedEvent`. * @fires #progress When generation progress. See `GenerationProgressEvent`. Job's progress is * between 0 and 1 * * @throws If job's fails. **Not if generation fails !** * * @returns When the report is ready, returns the report result */ declare const generateAndListenReportOfTask: (taskOrId: Omit | string, period?: { start: Date; end: Date; }, targets?: string[]) => ReportGenerationPromise; /** * Listen to all generations * * @param onUpdate Function to call when a generation is updated * @param namespaces Namespaces to listen to * * @returns Function to remove listener */ declare function listenAllGenerations(onUpdate: (generation: Omit) => void, namespaces?: string[]): { stop: () => void; }; //#endregion export { GenerationProgressEvent, GenerationStartedEvent, generateAndListenReportOfTask, isGenerationEnded, listenAllGenerations }; //# sourceMappingURL=generations.d.mts.map