import type { Job, JobSettlement, NevermoreOptions } from "./types"; /** * Users of `nevermore` would rarely use this directly. * They should use {@link createExecutorStrategy} * for the function-wrapper API or {@link createSettlementSequence} for * the just-in-time batch API. * * Constructs a 'pipe' chaining Strategy instances. * * Combines the option parsing, Pipe creation routines to * compose a pipe chaining {@link Strategy} instances. The pipe * will always have a LauncherStrategy (that triggers and tracks * the jobs) then has arbitrary Strategies layered on top according * to the provided options. * * @param options The combined options for all behaviours needed in the pipeline. * @returns The combined strategy, ready to accept jobs */ export declare function createStrategyFromOptions>(options: NevermoreOptions): import("./types").Strategy; /** * Creates an `AsyncIterable` of `JobSettlement` from a sequence of jobs `J` * that you provide. It will manage the launching and tracking of your jobs * within the (e.g. concurrency, interval, timeout, retry) constraints defined * by your options. * * Consume the resulting AsyncIterable with `for await...of sequence` or `await * sequence.next()` to get the next settlement. * * A `JobSettlement` is equivalent to the values returned by * `Promise.allSettled()`. It will have either `status:"fulfilled", * value:Awaited>` or `status:"rejected", reason:unknown`. * However, it has an additional typed member `job:J` referencing the job which * is being settled. You can add arbitrary annotations to your jobs that will * help you when consuming settlements. * * See documentation of {@link NevermoreOptions} for more on the available behaviours. * * @param jobSequence An array, generator or other Iterable. Nevermore will pull * jobs from it just-in-time. * @param options The combined options for all behaviours needed in the * pipeline. * @returns AsyncIterable sequence of JobSettlement values. */ export declare function createSettlementSequence>(options: NevermoreOptions, jobSequence: Iterable | AsyncIterable | (() => Generator) | (() => AsyncGenerator)): AsyncIterable>; //# sourceMappingURL=sequence.d.ts.map